Автор Тема: Драйвер в 1С записывает только последний пакет данных  (Прочитано 362 раз)

Оффлайн Romeo

  • Newbie
  • *
  • Сообщений: 3
Используем рекомендованный драйвер для 1С = CitySoftLiteEquipmentDriver из последнего дистрибутива "CITYSOFT Lite_v5_8_3_260.exe". Установлена прошивка в ТСД из последней поставки дистрибутива драйвера.
Используем ТСД CipherLab 8001L.

Данные в ТСД через драйвер отправляются пакетно командой
"ОбъектДрайвера.ВыгрузитьТаблицу(<ИДУстройства>, <ДанныеДляВыгрузки>, <СтатусПакета>)".
Где ДанныеДляВыгрузки содержит XML-пакет из n-ного кол-ва записей.
По умолчанию кол-во записей в типовых 1С установлено = 200.

Экспериментально проверено, что по факту в ТСД записывается ТОЛЬКО последний пакет данных, затирая все ранее отправленные в ТСД пакеты.

Вопрос: как можно справиться с этой досадной ситуацией ?
« Последнее редактирование: 10.06.2019, 17:18:22 от Romeo »

Оффлайн Дмитрий (SCAN CITY)

  • Newbie
  • *
  • Сообщений: 22
  • СКАН СИТИ
Используем рекомендованный драйвер для 1С = CitySoftLiteEquipmentDriver из последнего дистрибутива "CITYSOFT Lite_v5_8_3_260.exe".
В настоящий момент в статусе беты находится следующая версия дистрибутива, 5.9.0, попробуйте, пожалуйста, с ней:
https://drive.google.com/open?id=19C486KMmfQE4NoDXiIDyWM_EKuI7IXjC
Нужно установить дистрибутив и обновить драйвер из макета.

Используем ТСД CipherLab 8001L.
На него должна быть загружена задача 1C_8000_DB_OUT.AGW или 1C_8000_FILE_OUT.AGW. Для работы в качестве драйвера БПО требуются именно эти задачи, другие задачи (загружаемые внешней обработкой вроде CSL_retail.epf) не подойдут.

Данные в ТСД через драйвер отправляются пакетно командой
"ОбъектДрайвера.ВыгрузитьТаблицу(<ИДУстройства>, <ДанныеДляВыгрузки>, <СтатусПакета>)".
Где ДанныеДляВыгрузки содержит XML-пакет из n-ного кол-ва записей.
Если вы вызываете эту функцию драйвера самостоятельно, вам необходимо передавать СтатусПакета в соответствии с требованиями к драйверам БПО: для первого пакета "first", для второго...предпоследнего — "regular", для последнего — "last". Если пакет единственный, то "last".

Также проверьте настройки драйвера. Попробуйте снять галочку «Очищать ТСД перед выгрузкой на него данных» и сравнить поведение.

Если ничего не изменится, пришлите, пожалуйста, на support(собачка)scancity.ru логи (в письме дайте ссылку на этот топик, чтобы не потерялось):
C:\Users\профиль\AppData\Local\Temp\scLite.log
C:\Users\профиль\AppData\Roaming\SCAN CITY\CITYSOFT Lite\CitySoftLiteEquipmentDriver.log
« Последнее редактирование: 14.06.2019, 12:16:40 от Дмитрий (SCAN CITY) »

Оффлайн zpav

  • Newbie
  • *
  • Сообщений: 1
Здравствуйте. Та же проблема.
ТСД Sipherlab8001
1c Розница 2.2 (2.2.11.24)
платформа 8.3.13.1690
драйвер ТСД 5.9.0.271
Задача стандартная 1C_8000_DB_OUT.AGW

Логи отправлю дополнительно на почту

Лог пишет следующее:

26.05.2019 11:50:35 $2760     DEBUG UploadTable: выгрузка завершена, строк: 200.
26.05.2019 11:50:37 $2760     DEBUG UploadTable: выгрузка данных на ТСД...
26.05.2019 11:50:37 $2760     DEBUG packageStatus = regular
26.05.2019 11:50:37 $2760     DEBUG Удаление данных на ТСД...
26.05.2019 11:50:37 $2760     DEBUG Удалено 200 строк базы данных
26.05.2019 11:51:20 $2760     DEBUG UploadTable: выгрузка завершена, строк: 200.
26.05.2019 11:51:20 $2760     DEBUG UploadTable: выгрузка данных на ТСД...
26.05.2019 11:51:20 $2760     DEBUG packageStatus = last
26.05.2019 11:51:20 $2760     DEBUG Удаление данных на ТСД...
26.05.2019 11:51:20 $2760     DEBUG Удалено 200 строк базы данных
26.05.2019 11:51:30 $2760     DEBUG UploadTable: выгрузка завершена, строк: 44.

Оффлайн Дмитрий (SCAN CITY)

  • Newbie
  • *
  • Сообщений: 22
  • СКАН СИТИ
Спасибо за лог. Ошибка исправлена:
https://drive.google.com/open?id=1CyTvShTfAnPfwkunPOfCaEUf2z6p9RQX
Проверьте, пожалуйста.