После обновления обработки для обмена данными между 1С и Диадок на версию 4.27 у нас возникли вопросы по коду обработок:
В модуле объекта обработки Ядро в процедуре ИнициализироватьКонтекстФоновогоЗадания появилась строка
ПараметрыКонтекста.Вставить("ЭтоДлительнаяОперация", Истина);
она приводит к тому, что не отрабыватывает следующая за этим процедура
ХранилищеКэш_Инициализировать(УИД);
и попытка получить экземпляр объекта - обработку, например, ХранениеДанных приводит к аварийному завершению.
Возможно ли вместо безусловного присвоения реквизиту ПараметрыКонтекста.ЭтоДлительнаяОперация
поместить в это место код вида:
Если ПараметыОперации.Свойство("ЭтоДлительнаяОперация") Тогда
ПараметрыКонтекста.Вставить("ЭтоДлительнаяОперация", ПараметыОперации.ЭтоДлительнаяОперация);
Иначе
ПараметрыКонтекста.Вставить("ЭтоДлительнаяОперация", Истина);
КонецЕсли;
В модуле объекта обработки Диадок_КонтурЭДО в процедуре ВыполнитьРегламентныеДействия() появилась строка
Модуль_Ядро.ЗавершитьРаботуЯдра();
При использовании предыдущих версий обработки возможно было использовать экземпляр объекта - обработки Ядро
после завершения работы процедуры ВыполнитьРегламентныеДействия().
Возможно ли также вместо безусловного исполнения этой процедуры вставить в это место следующий код?:
Если ПараметрыВыполненияКоманды.Свойство("ЗавершитьРаботуЯдра") И ПараметрыВыполненияКоманды.ЗавершитьРаботуЯдра = Истина Тогда
Модуль_Ядро.ЗавершитьРаботуЯдра();
КонецЕсли;
Здравствуйте!
После обновления обработки для обмена данными между 1С и Диадок на версию 4.27 у нас возникли вопросы по коду обработок:
Возможно ли вместо безусловного присвоения реквизиту ПараметрыКонтекста.ЭтоДлительнаяОперация поместить в это место код вида:
Если ПараметыОперации.Свойство("ЭтоДлительнаяОперация") Тогда ПараметрыКонтекста.Вставить("ЭтоДлительнаяОперация", ПараметыОперации.ЭтоДлительнаяОперация); Иначе ПараметрыКонтекста.Вставить("ЭтоДлительнаяОперация", Истина); КонецЕсли;
Возможно ли также вместо безусловного исполнения этой процедуры вставить в это место следующий код?:
Если ПараметрыВыполненияКоманды.Свойство("ЗавершитьРаботуЯдра") И ПараметрыВыполненияКоманды.ЗавершитьРаботуЯдра = Истина Тогда Модуль_Ядро.ЗавершитьРаботуЯдра(); КонецЕсли;