Ваши комментарии

Да. На этом дистрибутиве определённо лучше. Но возникла ещё одна проблема.


Система обращается к коннектору для получения записей документа. Коннектор возвращает объект с списком продуктов и штрих-кодами. Но при попытке считать штрихкод терминал не может найти продукт с таким штрихкодом. На прошлом дистрибутиве всё работало, коннектор после этого не меняли.


Прилагаю скриншот объекта, который возвращает коннектор. Что интересно в списке продуктов на терминале все эти продукты отображаются.



Сканирую штрихкод: "0003101115" - продукт с таким штрихкодом не найден!

Как я понял ошибки сыпались из-за того, что при перезагрузки сервера он не подтягивает коннектор.

Итак что я делаю.

1. Останавливаю сервер

2. Удаляю все документы с сервера и с эмулятора

3. Удаляю библиотеку коннектора. Добавляю библиотеку коннектора.

4. Запускаю сервер. Запускаю эмулятор

5. Список документов формируется отлично. Пытаюсь сканировать товар:

1; 14; 02.11.2015 15:13:53.392 ERROR

ADDITION TEXT: InvokeMethodAction.InvokeMethod
MESSAGE: System.Web.Services.Protocols.SoapException: Серверу не удалось обработать запрос. ---> System.Exception: Ваша версия сервера (драйвер 1С Wi-Fi) не поддерживает внешние вызовы к учетной системе.
в Cleverence.Warehouse.DataStorage.InvokeRemoteMethod(String methodPath, String invokeArgs, String deviceInfoXml)
--- Конец трассировки внутреннего стека исключений ---
TYPE:System.Web.Services.Protocols.SoapException
SOURCE:System.Web.Services
TARGETSITE: ReadResponse
[STACK TRACE]
в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
в System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke(IAsyncResult asyncResult)
в Cleverence.Warehouse.Compact.DataStorage.Invoke(String methodName, Object[] parameters)
в Cleverence.Warehouse.Compact.DataStorage.InvokeRemoteMethod(String methodPath, String invokeArgs, String deviceInfoXml)
в Cleverence.Warehouse.Compact.InvokeMethodAction.InvokeMethod()
[STACK TRACE]
DETAIL:System.Xml.XmlElement
SUBCODE: null
DATA:System.Collections.ListDictionaryInternal
HELPLINK: null


А вот этого не знал. Сделал конфигурацию локально сохранил в документы сервера. Запустил сервер - и он подтянул новую конфигурацию. Интересно что теперь при попытке подключится к серверу из панели управления - получаю ту же ошибку, что делает невозможным правки на горячую. Но с этим можно жить. А также после перезагрузки сервера коннектор отваливается. Его невозможно дебажить и кажется его совсем перестает видеть сервер терминалов и пишет в логи ошибки об этом.


Должен сказать очень много ошибок записывает система во все файлы. Даже сложно проследить какая ошибка после чего появляется. В предыдущей версии изредка появлялся только лог сервера с ошибкой в Cleverence.Hosting ...


Пробую сформировать документ с эмулятора терминала. Список документов я получаю через коннектор как и прежде безупречно. Открываю документ - "сканирую" товар - терминал выдаёт ошибку. Во время сканирования никакой интеграции с коннектором происходить не должно и не происходит как я вижу из отладчика.

Логи эмулятора:


1; 7; 02.11.2015 14:02:07.763 ошибка

ADDITION TEXT: InvokeMethodAction.InvokeMethod
MESSAGE: System.Web.Services.Protocols.SoapException: Серверу не удалось обработать запрос. ---> System.Exception: Ваша версия сервера (драйвер 1С Wi-Fi) не поддерживает внешние вызовы к учетной системе.
в Cleverence.Warehouse.DataStorage.InvokeRemoteMethod(String methodPath, String invokeArgs, String deviceInfoXml)
--- Конец трассировки внутреннего стека исключений ---
TYPE:System.Web.Services.Protocols.SoapException
SOURCE:System.Web.Services
TARGETSITE: ReadResponse
[STACK TRACE]
в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
в System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke(IAsyncResult asyncResult)
в Cleverence.Warehouse.Compact.DataStorage.Invoke(String methodName, Object[] parameters)
в Cleverence.Warehouse.Compact.DataStorage.InvokeRemoteMethod(String methodPath, String invokeArgs, String deviceInfoXml)
в Cleverence.Warehouse.Compact.InvokeMethodAction.InvokeMethod()
[STACK TRACE]
DETAIL:System.Xml.XmlElement
SUBCODE: null
DATA:System.Collections.ListDictionaryInternal
HELPLINK: null


1; 13; 02.11.2015 14:02:18.152 ERROR
ADDITION TEXT: DataExchanging.UploadDocuments function
MESSAGE: System.Web.Services.Protocols.SoapException: Серверу не удалось обработать запрос. ---> System.Exception: В строке документа '35d99b1a-9a9d-4b90-93a7-e7e12fe0617d' указан товар с неизвестным Id= 'UnknownRequest0'.
в Cleverence.Warehouse.DataStorage.CheckDocuments(DocumentCollection documents)
в Cleverence.Warehouse.DataStorage.SetDocumentsInternal(String documentCollectionXml, Boolean checkForDemo, String deviceInfoXml)
в Cleverence.Warehouse.DataStorage.SetDocumentsFromTerminal(String documentCollectionXml, String deviceInfoXml)
--- Конец трассировки внутреннего стека исключений ---
TYPE:System.Web.Services.Protocols.SoapException
SOURCE:System.Web.Services
TARGETSITE: ReadResponse
[STACK TRACE]
в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
в System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke(IAsyncResult asyncResult)
в Cleverence.Warehouse.Compact.DataStorage.Invoke(String methodName, Object[] parameters)
в Cleverence.Warehouse.Compact.DataStorage.SetDocumentsFromTerminal(String documentCollectionXml, String deviceInfoXml)
в Cleverence.Warehouse.Compact.DataExchanging.UploadDocuments(DocumentType type, Int32& count)
[STACK TRACE]
DETAIL:System.Xml.XmlElement
SUBCODE: null
DATA:System.Collections.ListDictionaryInternal
HELPLINK: null

Не понял фразу "откройте папку через панель сервера/документы"


Если в панели управления делать конфигурацию локально, не подключаясь к серверу то подключение создаётся и конфигурация сохраняется. А если пробовать выгрузить конфигурацию на сервер то получаю такую ошибку. И не совсем понятно как я могу с отключенным сервером выгрузить кофигурацию на него.

Сервер терминалов перезагрузил в первую очередь. Название коннектора даже копировал из проекта.

Вот ещё лог панели управления


1; 1; 02.11.2015 12:51:29.604 ERROR

MESSAGE: System.Web.Services.Protocols.SoapException: Серверу не удалось обработать запрос. ---> System.InvalidOperationException: Connector with id: BPMConnector1 was not found
в Cleverence.Warehouse.DataStorage.GetConnectorState(String connectorId)
--- Конец трассировки внутреннего стека исключений ---
TYPE:System.Web.Services.Protocols.SoapException
SOURCE:System.Web.Services
TARGETSITE: ReadResponse
[STACK TRACE]
в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
в System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
в Cleverence.Warehouse.DataStorage.GetConnectorState(String connectorId)
в Cleverence.Warehouse.StorageConnector.GetConnectorState(String connectorId)
[STACK TRACE]
DETAIL:System.Xml.XmlElement
DATA:System.Collections.ListDictionaryInternal



1; 1; 02.11.2015 12:51:29.606 ERROR
MESSAGE: System.Web.Services.Protocols.SoapException: Серверу не удалось обработать запрос. ---> System.InvalidOperationException: Connector with id: BPMConnector1 was not found
в Cleverence.Warehouse.DataStorage.GetConnectorState(String connectorId)
--- Конец трассировки внутреннего стека исключений ---
TYPE:System.Web.Services.Protocols.SoapException
SOURCE:System.Web.Services
TARGETSITE: ReadResponse
[STACK TRACE]
в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
в System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
в Cleverence.Warehouse.DataStorage.GetConnectorState(String connectorId)
в Cleverence.Warehouse.StorageConnector.GetConnectorState(String connectorId)
в Cleverence.Warehouse.Design.ConnectorManager.UpdateConnectorState()
[STACK TRACE]
DETAIL:System.Xml.XmlElement
DATA:System.Collections.ListDictionaryInternal



1; 1; 02.11.2015 12:51:35.397 ERROR
MESSAGE: System.Web.Services.Protocols.SoapException: Серверу не удалось обработать запрос. ---> System.InvalidOperationException: Connector with id: BPMConnector1 was not found
в Cleverence.Warehouse.DataStorage.GetConnectorState(String connectorId)
--- Конец трассировки внутреннего стека исключений ---
TYPE:System.Web.Services.Protocols.SoapException
SOURCE:System.Web.Services
TARGETSITE: ReadResponse
[STACK TRACE]
в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
в System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
в Cleverence.Warehouse.DataStorage.GetConnectorState(String connectorId)
в Cleverence.Warehouse.StorageConnector.GetConnectorState(String connectorId)
[STACK TRACE]
DETAIL:System.Xml.XmlElement
DATA:System.Collections.ListDictionaryInternal



1; 1; 02.11.2015 12:51:35.398 ERROR
MESSAGE: System.Web.Services.Protocols.SoapException: Серверу не удалось обработать запрос. ---> System.InvalidOperationException: Connector with id: BPMConnector1 was not found
в Cleverence.Warehouse.DataStorage.GetConnectorState(String connectorId)
--- Конец трассировки внутреннего стека исключений ---
TYPE:System.Web.Services.Protocols.SoapException
SOURCE:System.Web.Services
TARGETSITE: ReadResponse
[STACK TRACE]
в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
в System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
в Cleverence.Warehouse.DataStorage.GetConnectorState(String connectorId)
в Cleverence.Warehouse.StorageConnector.GetConnectorState(String connectorId)
в Cleverence.Warehouse.Design.ConnectorManager.Validate(String propertyName, Object newValue, Object oldValue)
[STACK TRACE]
DETAIL:System.Xml.XmlElement
DATA:System.Collections.ListDictionaryInternal



1; 1; 02.11.2015 12:51:35.402 ERROR
MESSAGE: В экземпляре объекта не задана ссылка на объект.
TYPE:System.NullReferenceException
SOURCE:Cleverence.MobileSMARTS.Design
TARGETSITE: ConnectorIdChanging
[STACK TRACE]
в Cleverence.Warehouse.Design.EnvironmentHost.ConnectorIdChanging(TreeListNode connectorNode, String newId, String oldId)
[STACK TRACE]
DATA:System.Collections.ListDictionaryInternal



1; 1; 02.11.2015 12:51:39.554 ERROR
MESSAGE: System.Web.Services.Protocols.SoapException: Серверу не удалось обработать запрос. ---> System.Runtime.Serialization.SerializationException: Serialization schema for 'Cleverence.Connectivity.ConnectorCollection' doesn't allow 'BPMConnector' child nodes.
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag, String[] nodesForPass)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag, String[] nodesForPass)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag, String[] nodesForPass)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag, String[] nodesForPass)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlReader reader, ISerializationHelper helper)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlReader reader)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(String xml, ISerializationHelper helper)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(String xml)
в Cleverence.Warehouse.DataStorage.SetServerEventsBook(String xml)
--- Конец трассировки внутреннего стека исключений ---
TYPE:System.Web.Services.Protocols.SoapException
SOURCE:System.Web.Services
TARGETSITE: ReadResponse
[STACK TRACE]
в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
в System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
в Cleverence.Warehouse.DataStorage.SetServerEventsBook(String xml)
в Cleverence.Warehouse.StorageConnector.SetServerEvents(ServerEvents book)
[STACK TRACE]
DETAIL:System.Xml.XmlElement
DATA:System.Collections.ListDictionaryInternal




В логах почему-то везде "BPMConnector1 " но на самом деле название я пишу BPMConnector. Ещё раз:



Здравствуйте! Тестируем новую версию программы. Но появилась новая ошибка не возникавшая никогда ранее.


Порядок наших действий:

1. Удалили старую версию программы, а также все её папки и файлы.

2. Установили новую версию.

3. К нашему проекту коннектора подключили библиотеки из новой версии.

4. Скомпилированные файлы коннектора добавил в "C:\Program Files (x86)\Cleverence Soft\Driver1C WiFi\Server\bin" и в "C:\Program Files (x86)\Cleverence Soft\Driver1C WiFi\Control Panel\Addins" (папки Addins по умолчанию не было как в прежней версии, создавал вручную)

5. В панели управления добавляю соединение. Выбираю свой BPMConnector.

6. Нажимаю "Сохранить внешние соединения" или "Выгрузить внешние соединения" и получаю ошибку. (см. скриншот)




В предыдущей используемой версии такого не наблюдалось. Коннектор добавлялся без проблем.


Также прилагаю логи сервера после ошибки:


2; 13; 02.11.2015 11:17:11.090 ERROR

MESSAGE: Connector with id: BPMConnector1 was not found
TYPE:System.InvalidOperationException
SOURCE:Cleverence.MobileSMARTS.DataService
TARGETSITE: GetConnectorState
[STACK TRACE]
в Cleverence.Warehouse.DataStorage.GetConnectorState(String connectorId)
[STACK TRACE]
DATA:System.Collections.ListDictionaryInternal



2; 4; 02.11.2015 11:17:18.657 ERROR
MESSAGE: Serialization schema for 'Cleverence.Connectivity.ConnectorCollection' doesn't allow 'BPMConnector' child nodes.
TYPE:System.Runtime.Serialization.SerializationException
SOURCE:Cleverence.DataCollection
TARGETSITE: Deserialize
[STACK TRACE]
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag, String[] nodesForPass)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag, String[] nodesForPass)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag, String[] nodesForPass)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag, String[] nodesForPass)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlSerializationSchema parentSchema, XmlSerializationBag bag)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlReader reader, ISerializationHelper helper)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(XmlReader reader)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(String xml, ISerializationHelper helper)
в Cleverence.DataCollection.Xml.XmlSerializer.Deserialize(String xml)
в Cleverence.Warehouse.DataStorage.SetServerEventsBook(String xml)
[STACK TRACE]
DATA:System.Collections.ListDictionaryInternal

Хорошо. Спасибо большое!

Когда ожидать исправления?

Вышлете на почту?

Прошу прощения не правильно выложил логи после ошибки. Файл с таким содержанием создается после подобной ошибки:


2; 11; 17.10.2015 13:18:53.742 ERROR

ADDITION TEXT: Unhandled exception (System.NullReferenceException):
MESSAGE: В экземпляре объекта не задана ссылка на объект.
TYPE:System.NullReferenceException
SOURCE:Cleverence.Hosting
TARGETSITE: get_RemoteIP
[STACK TRACE]
в Cassini.Connection.get_RemoteIP()
в Cassini.Request.GetRemoteAddress()
в System.Web.HttpRequest.get_UserHostAddress()
в Cleverence.Warehouse.ServerEvents.<>c__DisplayClass1.<InvokeDocumentCall>b__0()
в System.Threading.ThreadHelper.ThreadStart_Context(Object state)
в System.Threading.ExecutionContext.runTryCode(Object userData)
в System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
в System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
в System.Threading.ThreadHelper.ThreadStart()
[STACK TRACE]
DATA:System.Collections.ListDictionaryInternal



1; 11; 17.10.2015 13:18:53.908 ERROR
ADDITION TEXT: Unhandled exception (System.NullReferenceException):
MESSAGE: В экземпляре объекта не задана ссылка на объект.
TYPE:System.NullReferenceException
SOURCE:Cleverence.Hosting
[STACK TRACE]
в Cassini.Connection.get_RemoteIP()
в Cassini.Request.GetRemoteAddress()
в System.Web.HttpRequest.get_UserHostAddress()
в Cleverence.Warehouse.ServerEvents.<>c__DisplayClass1.<InvokeDocumentCall>b__0()
в System.Threading.ThreadHelper.ThreadStart_Context(Object state)
в System.Threading.ExecutionContext.runTryCode(Object userData)
в System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
в System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
в System.Threading.ThreadHelper.ThreadStart()
[STACK TRACE]
DATA:System.Collections.ListDictionaryInternal

Ошибка описанная логе:

1; 11; 15.10.2015 17:49:21.714 ERROR
ADDITION TEXT: Unhandled exception (System.NullReferenceException):
MESSAGE: В экземпляре объекта не задана ссылка на объект.
TYPE:System.NullReferenceException
SOURCE:Cleverence.Hosting
[STACK TRACE]
в Cassini.Connection.get_RemoteIP()
в Cassini.Request.GetRemoteAddress()
в System.Web.HttpRequest.get_UserHostAddress()
в Cleverence.Warehouse.ServerEvents.<>c__DisplayClass1.<InvokeDocumentCall>b__0()
в System.Threading.ThreadHelper.ThreadStart_Context(Object state)
в System.Threading.ExecutionContext.runTryCode(Object userData)
в System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
в System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
в System.Threading.ThreadHelper.ThreadStart()
[STACK TRACE]
DATA:System.Collections.ListDictionaryInternal

В нашем коннекторе выполняется обмен данными с системой BPMOnline по средствам передачи xml данных и sql запросов. После завершения документа на терминале ни одна из функций коннектора не вызывается, а сразу падает в эту ошибку. В процессе выполнения скрипта коннектора всё отлично, но вот иногда процесс не доходит до коннектора.
Помогает перезагрузка компьютера на котором установлен сервер терминалов, но лишь на какое-то время.

Да. На временной лицензии кажется всё работает правильно.

Где можно узнать цену и порядок приобритения такой лицензии?


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