![]() |
|
После проведения документа из ФормыСписка запуск процедуры этого документа | ☑ | ||
---|---|---|---|---|
0
web_profiler
29.05.14
✎
19:15
|
Подскажите, пожалуйста, как можно после выполнения процедуры ОбработкаПроведения документа из ФормыСписка запустить процедуру из модуля этого же документа?
|
|||
1
web_profiler
29.05.14
✎
19:16
|
Ненавижу 1С и снова привет
|
|||
2
Ненавижу 1С
гуру
29.05.14
✎
19:16
|
а если не из формы списка?
|
|||
3
Ненавижу 1С
гуру
29.05.14
✎
19:16
|
web_profiler привет
|
|||
4
web_profiler
29.05.14
✎
19:17
|
ситуация такова: при открытии дока можна в в модуле формы ПослеЗаписи делать че угодно, а как вот без отрытия поступить?
|
|||
5
butterbean
29.05.14
✎
19:18
|
как вариант можно свою кнопку проведения сделать, но по-хорошему надо подход менять
|
|||
6
web_profiler
29.05.14
✎
19:19
|
(5) согласен, т.е. вариантов нет?
|
|||
7
web_profiler
29.05.14
✎
19:21
|
мож существует функционал принудительного завершения проведения в процедуре ОбработкаПроведения?
|
|||
8
Ненавижу 1С
гуру
29.05.14
✎
19:22
|
(4) а программное перепроведение? вообще туши свет
|
|||
9
web_profiler
29.05.14
✎
19:23
|
(8) не понял
|
|||
10
web_profiler
29.05.14
✎
19:25
|
документ делает движение по регистрам, мне надо потом эти данные обрабатывать в момент, когда пользователь проводит документ из ФормыСписка
|
|||
11
web_profiler
29.05.14
✎
19:30
|
мож ПодпискиНаСобытия?
|
|||
12
Ненавижу 1С
гуру
29.05.14
✎
19:30
|
(10) подробнее
|
|||
13
Ненавижу 1С
гуру
29.05.14
✎
19:31
|
а внутрь ОбработкаПроведения внедриться нельзя?
|
|||
14
web_profiler
29.05.14
✎
19:31
|
(13) так мне надо проверять уже проведенные данные
|
|||
15
web_profiler
29.05.14
✎
19:31
|
а пока процедура обработкаПроведения не отработает данных я не вижу
|
|||
16
web_profiler
29.05.14
✎
19:34
|
(12) Док: ПоступлениеОплаты
Если после проведения по региструНакопления задолженность = 0, то я программно получаю договор данного контрагента и меняю в нем статус Открыт на Закрыт |
|||
17
Ненавижу 1С
гуру
29.05.14
✎
19:36
|
(16) какой-то одноразовый договор
это реализовать можно как в модуле документа, так и в модуле набора записей |
|||
18
web_profiler
29.05.14
✎
19:44
|
(17) а как в модуле документа, если я еще не вышел из ОбработкиПроведения (т.е. данных у меня еще нет) мне проверить задолженность по регистру накопления?
|
|||
19
Ненавижу 1С
гуру
29.05.14
✎
19:47
|
(18) ну ты данные можешь уже записать и проверить
|
|||
20
web_profiler
29.05.14
✎
19:53
|
(19) как? я нахожусь в ОбработкеПроведения - данные по регистрам не прошли еще, как проверять?
|
|||
21
Ненавижу 1С
гуру
29.05.14
✎
19:56
|
(20) запиши в регистр и считай итоги
|
|||
22
web_profiler
29.05.14
✎
19:58
|
(21) т.е. ты предлагаешь вручную писать по регистрам?
|
|||
23
Ненавижу 1С
гуру
29.05.14
✎
20:00
|
+(21) используй
НЗ = РегистрыНакопления.ТвойРегистр.СоздатьНаборЗаписей() НЗ.Отбор.Регистратор.Установить(Ссылка); //тут запись данных НЗ.Записать(); //теперь проверка вместо: НЗ = Движения.ТвойРегистр; //тут запись данных |
|||
24
web_profiler
29.05.14
✎
20:02
|
так это я зная все, просто хотел движениями документа организовать, спс
|
|||
25
Crush
29.05.14
✎
20:02
|
После обработки проведения срабатывают события перед и после записи в модуле набора (17). Универсальнее сделать там что нужно
|
|||
26
Crush
29.05.14
✎
20:04
|
Тьфу после = при:)
Кстати тут уже можно обращаться к данным регистра |
|||
27
Ненавижу 1С
гуру
29.05.14
✎
20:04
|
(24) еще вариант - прверка в модуле набора записей
но там нужно проверить, на удаляемость записей, чтоб не затерло |
|||
28
Ненавижу 1С
гуру
29.05.14
✎
20:05
|
(26) кстати почему то 1С их не особо юзает, по крайней мере в в УТ 10
|
|||
29
Crush
29.05.14
✎
20:05
|
(28) они и на спецов не сдают:)
|
|||
30
Crush
29.05.14
✎
20:07
|
(27) НаборЗаписей.Количество()=0
|
|||
31
web_profiler
29.05.14
✎
20:09
|
помогите проблемку порешать
|
|||
32
Ненавижу 1С
гуру
29.05.14
✎
21:41
|
(30) в теории это не совсем так, но на практике почему и нет
(31) уже же много набросали |
|||
33
Crush
29.05.14
✎
22:01
|
(32) В ПриЗаписи данные уже в регистре, а в отборе можно найти регистратора. Набор записей скорее всего еще содержит данные, записанные в регистр.
Я так понимаю, что автор хочет читать данные всего регистра с учетом движений документа. В ПриЗаписи - самое оно. |
|||
34
web_profiler
30.05.14
✎
10:25
|
Спасибо всем, рассказываю как я выкрутился (написал гав...код):
в модуле документа в ОбработкеПроведения в самом начале определил глоб. переменную и открываю форму Форм = ЭтотОбъект.ПолучитьФорму("ФормаДокумента"); БылМодифицирован = Истина; Форм.Открыть(); при открытии формы прописал следующее: Если БылМодифицирован Тогда ЭтотОбъект.Записать(РежимЗаписиДокумента.Проведение); ЗакрытиеДоговоров(); ЭтаФорма.Закрыть(); КонецЕсли; И вуаля "гов...код" отрабатывает с формы списка: проводит документ, и выполняет нужные после проведения действия |
|||
35
web_profiler
30.05.14
✎
10:28
|
Ну и в процедуре ПослеЗаписи Формы документа тоже:
Процедура ПослеЗаписи() ЗакрытиеДоговоров(); КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |