Завершен

С ТСД не выгрудается больше 3х документов

ExtraM 3 года назад в Прочие разделы / - Вопросы по разработке обновлен Илларион (Специалист) 3 года назад 9

Столкнулись с проблемой, что на ТСД было завершено 5 документов, но они никак не хотели выгружаться на сервер. Перезагружали ПК, перезагружали терминал, ничего не помогало. В итоге зашли в лог Мобайл-Смартс на терминале и увидели ошибку ,связанную с нехваткой памяти (оперативной?). "Раззавершили" 1 документ - не помогло, "раззавершили" второй документ и остальные 3 тут-же улетели на сервер, за тем завершили те два и они также улетели на сервер.

Получается нельзя работать более, чем с 3-я документами???

Лог:

MobileSMARTS.exe; Exchange; 05.04.2017 14:00:35.342 ERROR

ADDITION TEXT: DataExchanging.UploadDocuments function
MESSAGE: OutOfMemoryException
TYPE:System.OutOfMemoryException
[STACK TRACE]
at System.String.GetStringForStringBuilder(String value, Int32 startIndex, Int32 length, Int32 capacity)
at System.String.GetStringForStringBuilder(String value, Int32 capacity)
at System.Text.StringBuilder.GetNewString(String currentString, Int32 requiredLength)
at System.Text.StringBuilder.Append(String value)
at System.IO.StringWriter.Write(String value)
at System.Xml.XmlTextEncoder.Write(String text)
at System.Xml.XmlTextWriter.WriteString(String text)
at Cleverence.DataCollection.Xml.XmlSerializer.SerializePrimitive(String rootName, Object value, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.SerializeNew(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.SerializeNew(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializationFormatter.WriteNode(XmlSerializationSchema schema, String xmlName, Object value, Boolean writeTypeName)
at Cleverence.Warehouse.DocumentItem.WriteObjectData(XmlSerializationSchema schema, XmlSerializationFormatter formater)
at Cleverence.DataCollection.Xml.XmlSerializer.SerializeNew(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.SerializeNew(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializationFormatter.WriteNode(XmlSerializationSchema schema, String xmlName, Object value, Boolean writeTypeName)
at Cleverence.Warehouse.Document.WriteObjectData(XmlSerializationSchema schema, XmlSerializationFormatter formater)
at Cleverence.DataCollection.Xml.XmlSerializer.SerializeNew(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.SerializeNew(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root, String rootName, Boolean writeTypeName, XmlSerializationBag bag)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root, ISerializationHelper helper, XmlWriter writer, Boolean buildIndex)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root, ISerializationHelper helper, XmlWriter writer)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root, ISerializationHelper helper)
at Cleverence.DataCollection.Xml.XmlSerializer.Serialize(Object root)
at Cleverence.Warehouse.Compact.DataExchanging.SaveObjectToString(Object obj, Boolean canGzip)
at Cleverence.Warehouse.Compact.DataExchanging.UploadDocuments(DocumentType type, Int32& count)
at Cleverence.Warehouse.Compact.AdvDataExchanger.UploadDocuments(DocumentType docType)
at Cleverence.Warehouse.Compact.AdvDataExchanger.UploadDocuments()
at Cleverence.Warehouse.Compact.AdvDataExchanger.ExchangeThread()
[STACK TRACE]


Установленный продукт:
ПРОФ
Версия драйвера:
2.7.1
Типовая конфигурация драйвера?:
Нет
Операционная система:
Windows10Pro
Версия и конфигурация 1С, и режим работы (Файловы или Серверный):
УПП 8.2 Серверный
Типовая конфигурация 1с?:
Нет
Модель ТСД:
Chipherlab 9200
ХОРОШО, МНЕ ПОНРАВИЛОСЬ
Оценка удовлетворенности от ExtraM 3 года назад

Добрый день,

ТСД у вас с лицензией или тестируете в демо режиме?

По сколько строк в этих документах?

Приложите лог с ТСД полностью.

errors.log

Добрый день!

Терминал с лицензией (всего к этому ПК подключаем 5 ТСД, все с лицензиями).

На ТСД выгружаем номенклатуру (около 25 тыс.строк), следом заказы, в которых ведётся подбор товаров по серийным номерам...

1 заказ - теоретически может быть до 32 строк, но по факту редко превышает 15.

На один ТСД может быть выгружено до 20 заказов, однако фактически заказы "делятся" между сотрудниками и каждый собирает 3-7 заказов.

То есть когда сотрудник приносит ТСД, в нём 3-7 завершённых документа, остальные не тронуты.


P.S. Мы копировали с ТСД папку MobileSMARTS в день выявления ошибки. На всякий случай прилагаю её заархивированную копию. MobileSMARTS170405.zip

Скорее всего, дело в проблеме с сетью - с самой выгрузкой, посмотрите в вашем логе до ошибки с памятью много строк:

MobileSMARTS.exe; Exchange; 05.04.2017 13:34:48.167 ERROR
ADDITION TEXT: DataExchanging.LoadEnvironment function
MESSAGE: Could not establish connection to network.


Еще есть такая ошибка: Компонент 'V83.Application' приложения «1С:Предприятие 8.3» не зарегистрирован в реестре на данной машине, проделайте следующее:

Запустите cmd.exe от администратора и не важно если Вы админ на пк, запуск именно правой кнопкой мыши! - запуск от имени ...
1) Запустите из командной строки команды: 1cv8.exe /RegServer и regsvr32 comcntr.dll из папки 1С\bin (пример расположения папки: C:\Program Files (x86)\1cv82\8.2.19.83\bin)
2) Запустите с правами администратора файл "Зарегистрировать COM.bat" из папки C:\Program Files\Cleverence

Soft\Driver1C WiFi Prof\Control Panel
3) Перезапустите службу драйвера: C:\Program Files (x86)\Cleverence Soft\Driver1C WiFi Prof\Server\Server.Config.exe

ТСД подключаются по USB к ПК, где установлен Сервер Mobile Smarts. То есть подключение прямое, без участия локальной сети как таковой. Поэтому не очень понимаю о какой сети идёт речь в логе и куда тут можно копать. Я думаю эта ошибка могла появляться в логе из-за многократных подключений/отключений ТСД к/от ПК. Также хочу уточнить, что я к проблеме "подключился" 05/04/2017 около 17:30 и пытался её решить разными способами около часа (включая все перезагрузки, и т.п.), а как раз в этом промежутке этой ошибки не было. По этому, думаю, к данной проблеме она отношения не имеет.


По поводу второй ошибки - мы при подключении промежуточной базы по некоторым причинам выбрали не ту редакцию 1С, что у нас установлена... Заметив эту ошибку в логе, мы исправили подключение к промежуточной базе и эта ошибка больше не появлялась.

В логе видно только три ошибки:

1. Ошибка с сетью, может так же возникать при плохом контакте например, вы не обращали внимание на экране ТСД не было ли значка - отсутствия доступа к БД? Обратите внимание ошибка сети есть и за предыдущие дни, 3-4

2. OutOfMemoryException - 30 строк в документе это очень мало для ошибки памяти, 500 - 1000 строк должен спокойно обрабатывать Ваш ТСД.

3. Компонент 'V83.Application'


Вы используете продукт на старой версии платформы 2.7 которая уже не поддерживается (не дорабатывается, ошибки не исправляются), возможно Вам стоит перейти на третью версию продукта.

1. ТСД все новые, сомневаюсь, что есть проблема с контактами, но повторюсь, что ошибка с сетью 100% не относится к данной проблеме, так как мы даже проводили эксперимент, который показал, что после обмена ТСД с ПК в логе появляется единственная ошибка - OutOfMemoryException. Если "раззавершить" пару доков

3. Устранено путём корректной настройки промежуточной базы.


Переход на 3.0 будем пробовать... Не найду пока руководства по переходу...

Посмотрите видео инструкцию по переходу на третью версию.

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

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