8.х Несоответствие типов (параметр номер '1')

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем proffkrep777, 1 май 2016.

  1. TopicStarter Overlay
    proffkrep777
    Offline

    proffkrep777

    Регистрация:
    9 апр 2015
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Добрый день
    такая ошибка!
    Код:
    {Форма.Форма.Форма(4)}: Ошибка при вызове метода контекста (РеквизитФормыВЗначение)
    тотОбьект= РеквизитФормыВЗначение(Объект);
    по причине:
    Несоответствие типов (параметр номер '1')
    вызываю функцию в модуле объекта из модуля формы таким способом
    Код:
    &НаСервере
    Процедура Команда1НаСервере()
    тотОбьект= РеквизитФормыВЗначение(Объект);
    тотОбьект.ВыгрузитьВCSV("C:\my.csv");
    КонецПроцедуры
    
    &НаКлиенте
    Процедура Команда1(Команда)
        Команда1НаСервере();
       
    КонецПроцедуры
    
    код в модуле объекта
    Код:
    // Выполним запрос к справочнику Номенклатуры
    // Получим Таблицу Значений
    Функция ПолучитьНоменклатуру()
        Запрос = Новый Запрос;
        Запрос.Текст =
            "ВЫБРАТЬ ПЕРВЫЕ 100
            |    Номенклатура.Наименование
            |ИЗ
            |    Справочник.Номенклатура КАК Номенклатура";
        Результат = Запрос.Выполнить();
        ТаблицаЗначений = Результат.Выгрузить();
        возврат ТаблицаЗначений;
    КонецФункции //   
    
    // Создаем строку загоовков для CSV-файла
    Функция СоздатьЗаголовкиCSV(ТаблицаЗначений,разделитель)
        //разделитель = "|";
        колонкиТЗ=ТаблицаЗначений.колонки;
        Для каждого колонка Из колонкиТЗ Цикл
            стрКолонки = "" + стрКолонки + колонка.Имя + разделитель ;
        КонецЦикла;
        Возврат стрКолонки;
    КонецФункции
    
    // Создаем текст CSV:
    // текст заголовков и
    // текст данных
    Функция СоздатьДанныеCSV(ТаблицаЗначений,разделитель)
       
        текст="";
        для каждого запись из ТаблицаЗначений Цикл
            если текст="" тогда
                текст=СоздатьЗаголовкиCSV(ТаблицаЗначений,разделитель)
                    + Символы.ПС;   
            КонецЕсли;   
                   
            сообщить(запись.Наименование);
            текст = текст + запись.Ссылка
                + разделитель + запись.Код
                + разделитель + запись.Родитель
                + разделитель + запись.Наименование            
                + Символы.ПС;       
        КонецЦикла;
           
        //сообщить(текст);
        Возврат текст;
    
    КонецФункции //
    
    // Запишем данные в файл
    Функция ЗаписатьCSV(текст,имяФайла)             
        кодировка = КодировкаТекста.ANSI;
       
        ТекстовыйФайлЗапись = Новый ЗаписьТекста(имяФайла,Кодировка);           
        ТекстовыйФайлЗапись.ЗаписатьСтроку(текст);
        ТекстовыйФайлЗапись.Закрыть();   
        Возврат 0;
    
    КонецФункции //
    
    // Основная логика:
    Функция ВыгрузитьВCSV(имяФайлаCSV);
        разделитель = "|";
        ТаблицаЗначений = ПолучитьНоменклатуру();
        текст = СоздатьДанныеCSV(ТаблицаЗначений,разделитель);
        ЗаписатьCSV(текст,имяФайлаCSV);
    
    КонецФункции
    

    Помогите пожалуйста я новичок уже 3ю неделю пытаюсь решить не получается(
  2. Dem0lisher
    Offline

    Dem0lisher Профессионал в 1С

    Регистрация:
    4 авг 2009
    Сообщения:
    1.028
    Симпатии:
    51
    Баллы:
    54
    Вы читали,что написано про РеквизитФормыВЗначение(ИмяРеквизита) в синтакс-помощнике?
    1.Туда нужно передавать имя реквизита формы, значение которого хотите получить.
    А теперь откройте вкладу реквизиты на упр. форме и посмотрите, есть ли там такой реквизит с именем "Объект"?
    2. Передавать нужно имя, т.е строку "Объект", "Обработка", а не сам Объект или Обработка..
  3. TopicStarter Overlay
    proffkrep777
    Offline

    proffkrep777

    Регистрация:
    9 апр 2015
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    спасибо передал строку
    Код:
    тотОбьект= РеквизитФормыВЗначение("Объект");
    тотОбьект.ВыгрузитьВCSV("C:\my.csv");
    
    теперь вылезает ошибка
    Код:
    {Форма.Форма.Форма(5)}: Метод объекта не обнаружен (ВыгрузитьВCSV)
    тотОбьект.ВыгрузитьВCSV("C:\my.csv")
    ничего не понимаю(
  4. TopicStarter Overlay
    proffkrep777
    Offline

    proffkrep777

    Регистрация:
    9 апр 2015
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Все разобрался забыл добавить ЭКСПОРТ

Поделиться этой страницей