|
v7: Как определить в процедуре ОбработкаПроведения() откуда пришел вызов? | ☑ | ||
---|---|---|---|---|
0
Смотрящий
14.08.16
✎
08:51
|
Как однозначно определить в процедуре ОбработкаПроведения() откуда пришел вызов ? Из формы документы или из метода .Провести()
|
|||
1
Горогуля
14.08.16
✎
09:01
|
а ей не поровну?
|
|||
2
Генератор
14.08.16
✎
09:03
|
обработка проведения вроде параметр принимает
|
|||
3
nordbox
14.08.16
✎
09:07
|
(0) В 7.7 вроде бы пофигу откуда
|
|||
4
Смотрящий
14.08.16
✎
09:09
|
Мне надо стартануть одну процедуру в модуле проведения если вызов прилетел из формы, а не программно
|
|||
5
nordbox
14.08.16
✎
09:24
|
(4) Ну можешь вообще совершенно тупо сделать,
переменную назначь и присваивай ей значение, а в модуле проведения смотри ее и делай как надо |
|||
6
DmitriyDI
14.08.16
✎
09:29
|
(0)
А нельзя эту процедуру в форме и выполнять? |
|||
7
nordbox
14.08.16
✎
09:29
|
+5 хотя это правило плохого тона )))
я 7.7 сейчас плохо помню, смотреть все надо |
|||
8
Смотрящий
14.08.16
✎
09:30
|
Править код буду уж совсем в крайнем случае, желательно без вмешательства
|
|||
9
nordbox
14.08.16
✎
09:31
|
(6) Поддерживаю, если вызов модуля проведения из формы то сначала процедура потом модуль, если как обычно то как обычно
|
|||
10
Смотрящий
14.08.16
✎
12:21
|
А что скажут Епрст и Злопчинский ?
|
|||
11
welwel
14.08.16
✎
13:49
|
Можно параметр использовать
ОбработкаПроведения(<3нач>) Параметры: <3нач> Необязательный параметр. Идентификатор переменной, в которую системой будет передано значение параметра, если проведение документа запущено программно при помощи метода Провести. Использовать данное значение можно, например, для того, чтобы в процедуре ОбработкаПроведения правильно отработать режим проведения, т. к. в случае вызова метода Провести это будет программный, а не интерактивный и не групповой (см. ГрупповаяОбработка) способ проведения документа. |
|||
12
welwel
14.08.16
✎
13:50
|
и также смотреть ГрупповаяОбработка()
|
|||
13
Злопчинский
14.08.16
✎
13:56
|
Присоединяюсь к 11 посту
мну сильно не нравится идея разного поведения проведения при программном и при интерактивном. |
|||
14
Смотрящий
14.08.16
✎
14:05
|
(11)(13) вызов с параметром ОбработкаПроведения подразумевает отказ от команды #Провести на функции кнопки и перевод ее на процедуру, что не есть хорошо
|
|||
15
Злопчинский
14.08.16
✎
14:30
|
(14) у тебя результат программного и интерактивного проведения - одинаковый?
|
|||
16
Злопчинский
14.08.16
✎
14:33
|
(14) с чего ты это взял?
штатное провести по кнопке - будет с ОбработкаПроведения(ЗначениеПоУмолчанию=0) - например а программное проведение будет с явно заданным значением.. ??? |
|||
17
Aleksey
14.08.16
✎
14:46
|
(13), (14) Почему?
Удобно когда нужно "допровести" по части данным. Или когда добавил новый регистр и хочешь чтобы появились новые движения без изменений старых |
|||
18
Смотрящий
14.08.16
✎
14:46
|
(15) По движняку товаров, взаиморасчетов и т.п - одинаков
Надо стартовать процедуру одну статистическую, которую не надо дергать при восстановлении последовательности или при программном проведении документа |
|||
19
Aleksey
14.08.16
✎
14:49
|
(18)
Процедура ОбработкаПроведения(ВидыДвижений) .... Если Найти(ВидыДвижений, "Прайс") <> 0 Тогда ПроведениеПоРегиструПрайс(); Иначе Если (ПустоеЗначение(ВидыДвижений) = 1) ИЛИ (Найти(ВидыДвижений, "Регистр") <> 0) Тогда ПроведениеПоРегистрам(); ... Соответственно там где нужно сделать движение так и пишешь например Док.Провести(,"Прайс") |
|||
20
Aleksey
14.08.16
✎
14:54
|
Только не забудь отключить автоматическое удаление движений
|
|||
21
Злопчинский
14.08.16
✎
16:18
|
(17) это все - нештатная работа и оправдано при ИНИЦИАЛИЗАЦИИ данных
|
|||
22
Aleksey
14.08.16
✎
16:25
|
(21) Например в оперативном режиме можно проводить по регистру остатки ТМЦ, а затем ночью уже рассчитывать себестоимость и допроводить партии
|
|||
23
Остап Сулейманович
14.08.16
✎
16:38
|
(22) Не. Самый показательный пример допроведения - это работа нескольких операторов, когда остатки списываются не после проведения всего документа, а сразу при изменении количества в строке.
|
|||
24
Aleksey
14.08.16
✎
16:40
|
(23) А разве так в 7-ке можно? Оператор будет сидеть в документе, он будет заблокирован. Или редактирование документов с помощью внешней обработки?
|
|||
25
Остап Сулейманович
14.08.16
✎
16:47
|
(24) Зачем в обработке? Провести() вполне вызывается из модуля формы. И можно передать параметр и получить результат провелось/не провелось.
|
|||
26
Злопчинский
14.08.16
✎
17:19
|
Дятлы потомучто
Вполне очевидно что оператор здесь работает не с сущностью документа А с сущностью "строка" Соответственно на этапе приемки звонка или оперативного резервирования надо работать с "однострочным документом" |
|||
27
mishaPH
модератор
14.08.16
✎
17:46
|
(4) для этого есть глобальныые переменные.
|
|||
28
Карст
15.08.16
✎
01:40
|
взятьконтекст , учи матчасть
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |