Завершен

Выгрузка номенклатуры из 1с Управление торговлей алкогольной продукцией 8 редакция 11.1

Дмитрий Исмагилов 9 лет назад обновлен Алексей (Рук. ТП) 9 лет назад 8

Добрый день.
Подскажите пожалуйста подскажите пожалуйста по выгрузке номенклатуры из 1С: Управление торговлей алкогольной продукцией 8, редакция 11.1 (11.1.10.200) в тсд MobileBase DS5 Variance.
База Mobile SMARTS: ЕГАИС v 5554
Версия клиента 3.0.0.49


Проблема в выгрузке алкогольных полей номенклатуры. В ТСД поподают только часть значений а все что с алкоголем нет. Выгружаю через обработку "Выгрузка базы товаров в ТСД".


Фрагменты кода из 1с. Эти поля загружаются в тсд нормально.


// Преобразуем массив структур в массив списка значений с предопределенным и фиксированным порядком полей:

// 0 - Штрихкод

// 1 - Номенклатура

// 2 - ЕдиницаИзмерения

// 3 - ХарактеристикаНоменклатуры

// 4 - СерияНоменклатуры

// 5 - Качество

// 6 - Цена

// 7 - Количество


СтрокаМассиваТСД = Новый СписокЗначений; // Не массив для сохранения совместимости с обработками обслуживания.


СтрокаМассиваТСД.Добавить(текСтрока.Штрихкод);

СтрокаМассиваТСД.Добавить(НаименованиеНоменклатуры);

СтрокаМассиваТСД.Добавить(текСтрока.ЕдиницаИзмерения);СтрокаМассиваТСД.Добавить(текСтрока.ХарактеристикаНоменклатуры);

СтрокаМассиваТСД.Добавить(текСтрока.СерияНоменклатуры);

СтрокаМассиваТСД.Добавить(текСтрока.Качество);

СтрокаМассиваТСД.Добавить(текСтрока.Цена);

СтрокаМассиваТСД.Добавить(текСтрока.Количество);


Потом формируются данные для выгрузки в виде записи xml.


//ДанныеДляВыгрузки

ЗаписьXML = Новый ЗаписьXML;

ЗаписьXML.УстановитьСтроку("UTF-8");

ЗаписьXML.ЗаписатьОбъявлениеXML();

ЗаписьXML.ЗаписатьНачалоЭлемента("Table");


Для Каждого Позиция Из ДанныеЗагрузки Цикл

ЗаписьXML.ЗаписатьНачалоЭлемента("Record");

ЗаписьXML.ЗаписатьАтрибут("BarCode" , Строка(Позиция[0].Значение));

ЗаписьXML.ЗаписатьАтрибут("Name", Строка(Позиция[1].Значение));

ЗаписьXML.ЗаписатьАтрибут("UnitOfMeasurement" ,Строка(Позиция[2].Значение));

ЗаписьXML.ЗаписатьАтрибут("CharacteristicOfNomenclature",Строка(Позиция[3].Значение));

ЗаписьXML.ЗаписатьАтрибут("SeriesOfNomenclature",Строка(Позиция[4].Значение));

ЗаписьXML.ЗаписатьАтрибут("Quality", Строка(Позиция[5].Значение));

ЗаписьXML.ЗаписатьАтрибут("Price",Строка(Позиция[6].Значение));

ЗаписьXML.ЗаписатьАтрибут("Quantity", Строка(Позиция[7].Значение));

ЗаписьXML.ЗаписатьКонецЭлемента();

КонецЦикла;

ЗаписьXML.ЗаписатьКонецЭлемента();


и далее наши сформированные ДанныеДляВыгрузки передаем в драйвер клеверенс.


Ответ = ОбъектДрайвера.ВыгрузитьТаблицу(ПараметрыПодключения.ИДУстройства, ДанныеДляВыгрузки, СтатусПакета);


ОбъектДрайвера это Addln.Cleverence_TO_TSD.Cleverence.TO_TSD




Я выбрал в 1с и добавил нужные мне поля для номенклатуры.

Вопрос ...какие мне указывать атрибуты в xml записях? Не нашел в документациях и поиском.


ЗаписьXML.ЗаписатьАтрибут("Алко", Строка(Позиция[8].Значение));

ЗаписьXML.ЗаписатьАтрибут("АлкоВидЛиц" ,Строка(Позиция[9].Значение));

ЗаписьXML.ЗаписатьАтрибут("АлкоМарк", Строка(Позиция[10].Значение));

ЗаписьXML.ЗаписатьАтрибут("АлкоКодВ", Строка(Позиция[11].Значение));

ЗаписьXML.ЗаписатьАтрибут("АлкоНаимВ", Строка(Позиция[12].Значение));

ЗаписьXML.ЗаписатьАтрибут("АлкоОбъем", Строка(Позиция[13].Значение));

ЗаписьXML.ЗаписатьАтрибут("АлкоКрепость", Строка(Позиция[14].Значение));

ЗаписьXML.ЗаписатьАтрибут("Производитель", Строка(Позиция[15].Значение));

ЗаписьXML.ЗаписатьАтрибут("ПроизвИНН", Строка(Позиция[16].Значение));

ЗаписьXML.ЗаписатьАтрибут("ПроизвКПП", Строка(Позиция[17].Значение));

ЗаписьXML.ЗаписатьАтрибут("АлкоКод", Строка(Позиция[18].Значение));

ЗаписьXML.ЗаписатьАтрибут("АлкоНаим" , Строка(Позиция[19].Значение));


Вместо Алко, АлкоВидЛиц, АлкоКодВ итд должны быть другие атрибуты как я понимаю.

Так как в файл созданный 1с Cleverence.Warehouse.ProductsBook.xml мои значения не поподают.


Можете написать какие должны быть атрибуты что бы правильно сформировался xml файл?


















Начат

Добрый день,

Проверьте с обработкой из вложения ms УТАП 11 Выгрузка номенклатуры АЛКО.epf

Выходит ошибка "Поле объекта не обнаружено (СтрокаПодключения)"



Вот какие значения имеет ПараметрыТСД.



Если же заменить ПараметрыТСД.СтрокаПодключения на ПараметрыТСД.СтрокаПодключенияКСерверу то открывается форма и при попытке нажать кнопку заполнить выходит подобная ошибка.


Меняем в месте ошибки так же СтрокаПодключения на СтрокаПодключенияКСерверу и снова жмем заполнить. Выходит такая ошибка.



Так же стали сбиваться драйвер ТСД когда тестировал обработку и останавливал в конфигураторе. Вот скрин нормально работающих настроек.


А вот с ошибкой.


Если драйвер сбивается то до ошибок которые указал выше в сообщении не доходит и обработка вываливается в ошибку раньше.


Что значит "сбивается драйвер"?

Что происходит чтобы получить данную ошибку?

Для создания скринов останавливал обработки в местах ошибок. И тут же завершал отладку.

После запуска 1с в режиме предприятия появлялись в настройках драйвера такие сообщения красным а обработка уже останавливалась на этапе подключения к драйверу. Но сейчас вроде все нормально.

Если все закрыть и перезапустить 1с нормально определяет драйвер. Думаю просто не стоило посреди выполнения обработки завершать отладку.


По поводу присланных выше обработок. Вроде все пошло. Ошибок нет. Сейчас в ТСД проверим и отпишу.

Все отлично подгрузилось! Большое спасибо! Где тут лайк поставить? :)

Сервис поддержки клиентов работает на платформе UserEcho