Имя: Пароль:
1C
 
Конвертация данных ошибка
0 Shur1cIT
 
23.01.18
08:57
Опять со своей конвертацией(

Гружу номенклатуру с остатка 43 счета БУХ 3.0 в серию номенклатуры в документ Опреходование товаров (при этом номенклатура условно фиксирована)

Для табличной части реквизита "СерияНоменклатуры" прописал следующий код в  перед выгрузкой
апрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1
|    ОтчетПроизводстваЗаСменуПродукция.Ссылка.Дата КАК Дата
|ИЗ
|    Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ОтчетПроизводстваЗаСменуПродукция
|ГДЕ
|    ОтчетПроизводстваЗаСменуПродукция.Номенклатура = &Номенклатура";

Запрос.УстановитьПараметр("Номенклатура",ОбъектКоллекции.Номенклатура);
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
ДатаВыпуска  = НачалоДня(Выборка.Дата);
ДатаГодности = НачалоМесяца(ДобавитьМесяц(ДатаВыпуска,12));  
Серия        = СокрЛП(Сред(ОбъектКоллекции.Номенклатура,Найти(ОбъектКоллекции.Номенклатура," серия")+8,3));
Наименование = Серия+", "+Формат(ДатаГодности,"ДФ=dd.MM.yyyy");
Комментарий  = "Перенесен из БУХ 3.0";


ВыборкаДокумент = Новый Структура();
ВыборкаДокумент.Вставить("Комментарий", Комментарий);
ВыборкаДокумент.Вставить("Наименование", Наименование);
ВыборкаДокумент.Вставить("ДатаИзготовления",ДатаВыпуска);
ВыборкаДокумент.Вставить("СерийныйНомер", Серия);
ВыборкаДокумент.Вставить("СрокГодности", ДатаГодности);
ВыборкаДокумент.Вставить("Владелец", ОбъектКоллекции.Номенклатура);
Значение = ВыборкаДокумент;

скриншот https://radikal.ru/lfp/c.radikal.ru/c15/1801/a2/ecfe41deab7dt.jpg/htm

Создал правило "НоменклатуруВСерию" которые данные получает полностью из входящих данных (из структуры которую я привел выше) https://a.radikal.ru/a31/1801/18/6d514c7114e7t.jpg
Поля поиска СерийныйНомер и владелец

при выгрузке ругается


Ошибка получения свойства объекта из входящих данных
    ПКО                    =  НоменклатуруВСерию  (Справочник: Номенклатура)
    ПКС                    =  4  (--> СерийныйНомер)
    Объект                 =  Структура  (Структура)
    СвойствоПриемника      =  СерийныйНомер  (Строка)
    ОписаниеОшибки         =  Получение элемента по индексу для значения не определено
    ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(9624)
    КодСообщения           =  68

Ошибка получения свойства объекта из входящих данных
    ПКО                    =  НоменклатуруВСерию  (Справочник: Номенклатура)
    ПКС                    =  6  (--> Владелец)
    Объект                 =  Структура  (Структура)
    СвойствоПриемника      =  Владелец  (СправочникСсылка.Номенклатура)
    ОписаниеОшибки         =  Получение элемента по индексу для значения не определено
    ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(9624)
    КодСообщения           =  68

Ошибка получения свойства объекта из входящих данных
    ПКО                    =  НоменклатуруВСерию  (Справочник: Номенклатура)
    ПКС                    =  1  (--> Комментарий)
    Объект                 =  Структура  (Структура)
    СвойствоПриемника      =  Комментарий  (Строка)
    ОписаниеОшибки         =  Получение элемента по индексу для значения не определено
    ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(9624)
    КодСообщения           =  68

Ошибка получения свойства объекта из входящих данных
    ПКО                    =  НоменклатуруВСерию  (Справочник: Номенклатура)
    ПКС                    =  2  (--> Наименование)
    Объект                 =  Структура  (Структура)
    СвойствоПриемника      =  Наименование  (Строка)
    ОписаниеОшибки         =  Получение элемента по индексу для значения не определено
    ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(9624)
    КодСообщения           =  68

тоесть на все поля. вопрос в чем причина? как лечить? пересмотрел видео по конвертиции данных + другие конвертации вроде все правильно делаю
1 Shur1cIT
 
23.01.18
09:04
(0) могу допустить что запрос пустой, но например поле Комментарий у меня жестко задаёться, а на нем всеравно ошибка.
Комментарий  = "Перенесен из БУХ 3.0";
2 Shur1cIT
 
23.01.18
09:05
только что увидел что заголовок в моём посте непонятный не раскрывает суть вопроса скопипастил криво не проверил(((
3 Мандалай
 
23.01.18
09:08
В отладку ходил, что говорит? И посмотри что в файле выгрузки лежит. Проверь для начала на одном элементе.
Ты Бояркина почитай, там есть много полезного.
4 Мандалай
 
23.01.18
09:19
Такое ощущение, что у тебя структура не совпадает с загружаемой. Проверь что обе конфигурации именно те которые необходимо.
5 Shur1cIT
 
23.01.18
09:20
(3) файл не выгружаеться даже с галочкой отладка пришет загрузка окончена а окно сохранения результата не деёт.
Поставил Сообщить перед отправкой структуры, данные есть

ВыборкаДокумент = Новый Структура();
ВыборкаДокумент.Вставить("Комментарий", Комментарий);
ВыборкаДокумент.Вставить("Наименование", Наименование);
ВыборкаДокумент.Вставить("ДатаИзготовления",ДатаВыпуска);
ВыборкаДокумент.Вставить("СерийныйНомер", Серия);
ВыборкаДокумент.Вставить("СрокГодности", ДатаГодности);
ВыборкаДокумент.Вставить("Владелец", ОбъектКоллекции.Номенклатура);
Сообщить(Комментарий);
Сообщить(Наименование);
Сообщить(ДатаВыпуска);
Сообщить(Серия);
Сообщить(ДатаГодности);
Сообщить(ОбъектКоллекции.Номенклатура);
Значение = ВыборкаДокумент;
6 Shur1cIT
 
23.01.18
09:32
(4) структура совпадает на скриншоте видно
https://radikal.ru/lfp/a.radikal.ru/a31/1801/18/6d514c7114e7t.jpg/htm

галочки получать из входящих данных стоит
7 LordCMEPTb
 
23.01.18
09:36
Если стоит "Получать из входящих данных", то должна быть сформирована структура "ВходящиеДанные", а в (0) формируется значение для чтения без этого флажка
8 Shur1cIT
 
23.01.18
10:09
(7) спасибо,снял галочки и всё зарапботало... странно в примере тоже структуру формировали запихивали в значение
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший