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

А кроме как прописать процедуру в  событие сервера НеНайденТовар еще что-нибудь надо настраивать? А свойствах справочника Номенклатуры? И еще процедура отработает с одним параметром штрихкод? Может есть документация по этому поводу?

Спасибо за оперативность

т.е. Если процедуру повесить на событие сервера, то оно всегда будет заполнять поле товар в просмотре?

Стали плодится висящие процессы. Службу останавливаю, а процессы все равно остаются висеть. Что делать?

Так я этот процесс не запускаю. Его служба запускает. И как я его буду деинициализировать?

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

вроде не плодится. А как его заксыпать программно?

Переделал так:


Пока НомСтр+1<=КолвоСтрок Цикл



СтрокаДокумента = СтрокиДокумента.Элемент(НомСтр);

ТаблицаТоваров.НоваяСтрока();
ТаблицаТоваров.Номенклатура = СтрокаДокумента.productId;
ТаблицаТоваров.Количество = СтрокаДокумента.currentQuantity;
ТаблицаТоваров.Серия = СтрокаДокумента.ПолучитьПоле("СерияНоменклатуры");
НомСтр = НомСтр + 1;

КонецЦикла;


И все заработало. Оказывается имя Товара не перегружалось. Спасибо за помощь.

Спасибо за подсказку. Но не все работает. Не могу получить значение дополнительного поля через Вызов внешней системы.

Делаю вот так. Но процедура спотыкается на выделенной строке. Если ее убрать, то все работает, т.е. основные поля получаю. При этом если из 1С делать запрос к дополнительному полю строки, то эта конструкция работает.


СтрокиДокумента = мStorageConnector.FromXml(Stroki);
Для Инд = 0 По СтрокиДокумента.Count-1 Цикл
СтрокаДокумента = СтрокиДокумента.Элемент(Инд);

ТаблицаТоваров.НоваяСтрока();
ТаблицаТоваров.Номенклатура = СокрЛП(СтрокаДокумента.Product.Name);

ТаблицаТоваров.Количество = СокрЛП(СтрокаДокумента.CurrentQuantity);


ТекСерия = СтрокаДокумента.GetField("СерияНоменклатуры");

КонецЦикла;


Вот логи:


5; 10; 13.04.2017 20:58:53.718 ERROR
ADDITION TEXT: Метод: OneC_DriverConnector:ПечатьОписи, Аргументы: Stroki6038993594455600030000100355000368145 Рн-МС00013472017-04-11T00:00:00True016-1-41008164607007360029000300355000368145 Рн-МС00013472017-04-11T00:00:00True0Barcode_korob990100000000000004
MESSAGE: Неизвестное имя. (Исключение из HRESULT: 0x80020006 (DISP_E_UNKNOWNNAME))
TYPE: System.Runtime.InteropServices.COMException
SOURCE: mscorlib
TARGETSITE: InvokeDispMethod
[STACK TRACE]
в System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters)
в System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParams)
в Cleverence.Connectivity.OneC.V77.OneC_77_Connector.DoInvokeMethod(String methodName, Object[] args)
в Cleverence.Connectivity.OneC.V77.OneC_77_Connector.InvokeMethod(String methodName, Object[] args)
в Cleverence.Connectivity.ConnectivityManager.InvokeMethod(String methodName, Object[] args)
в Cleverence.Warehouse.ServerEvents.Invoke(String methodName, Object[] args, DeviceInfo dInfo, Boolean& isDemo)
в Cleverence.Warehouse.DataStorage.InvokeRemoteMethod(String methodPath, String invokeArgs, String deviceInfoXml)
[STACK TRACE]
ERRORCODE: -2147352570
DATA: System.Collections.ListDictionaryInternal



Я не так доп.поле получаю? Спасибо. Жду ответа.


Хорошо. А направьте пожалуйста в нужном направлении. Как мне передать таблицу строк документа во внешнюю систему не завершая документ на терминале?

Проблема решилась. Очистил дерикторию WinClient. И при новом заходе, все заработало. Спасибо.



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