Имя: Пароль:
1C
1С v8
Как можно хранить переменную при приемке/отправке пакета при обмене
0 a2a4
 
25.03.13
10:08
Необходимо на время принятия/отправки пакета при обмене хранить определенное значение. Пока мысли остановились только на параметре сеанса. Может есть другие варианты?
1 Maxus43
 
25.03.13
10:18
цель какая?
2 a2a4
 
25.03.13
10:27
(1) определить - проводить обмен или нет. В определенной ситуации расчет может занимать чувствительное время, поэтому втыкать процедуру в модуль объекта плана обмена накладно (будет расчет на каждом передаваемом объекте, а этих передаваемых объектов может быть очень много).
3 Maxus43
 
25.03.13
10:28
(2) определить - проводить обмен или нет
всмысле выгружать/загружать надо или нет конкретный элемент?
4 a2a4
 
25.03.13
11:57
(3) в принципе определить принимать данный пакет или нет. Но лезть в типовые механизмы обмена желания нет.
5 Maxus43
 
25.03.13
11:58
(4) Это решается другим путём. Не надо регистрировать для обмена данные, которые не нужны в том узле
6 Галахад
 
гуру
25.03.13
12:01
Номер сообщения. Не?
7 Maxus43
 
25.03.13
12:02
или я не так понял вобще?)
8 vde69
 
25.03.13
12:03
(5) не обязательно, иногда условия находятся за пределами базы (например нельзя перезаписываь уже изменненные ддокумены в другой базе), по этому частенько условие ставится в процедуру загрузки....
9 Maxus43
 
25.03.13
12:06
ситуации конечно разные, но я не понял чем автору поможет "переменная"
10 a2a4
 
25.03.13
13:49
Приходит пакет. Либо его принимаем либо не принимаем.

Если сунуть проверку в модуль объекта, то проверка будет производиться для каждого объекта. Делаю переменную ДелатьОбмен и инициализирую на первом объекте, на всех последующих объектах просто смотрю значение переменной.
Как то так.
11 vde69
 
25.03.13
13:54
глобальный модуль ПередЗагрузкойДанных

Параметры.Вставить("МояПеременная", Ложь);

далее "Параметры" доступны везде
12 a2a4
 
04.04.13
11:55
(11) рыл рыл, так и не нарыл - а что такое "глобальный модуль ПередЗагрузкойДанных" и где оно живет
13 rozer76
 
04.04.13
12:58
в правилах для параметра ставишь галки "передавать при выгрузке" и "использовать при загрузке" (например параметр "НомерПачки")далее в глобальном обработчике "после загрузки параметров" т.е. уже в базе-получателе имеем например:

Если НЕ ЗначениеЗаполнено(Параметры.НомерПачки) Тогда
   Отказ = Истина;
   ПричинаОтказа = "Неопределен номер пачки загрузки";
КонецЕсли;