Имя: Пароль:
1C
1С v8
v8: Определить откуда проведен документ: из формы или нет в подписчиках
0 Falex
 
26.11.12
08:26
Здравствуйте. Можно ли как-то в подписчиках на события (без дополнительных реквизитов документов) определить проведен документ из формы или из формы списка (ну или программно)?
1 shuhard
 
26.11.12
08:27
(0) да
2 Fragster
 
гуру
26.11.12
08:27
в форме устанавливать ДополнительныеСвойства у объекта. только вот нафига?
3 Нуф-Нуф
 
26.11.12
08:33
(2) например отключить некоторые вещи при программном проведении
4 MSII
 
26.11.12
08:38
(3) Вынести этот предполагаемый к отключению функционал в другие события, например, в событие формы документа ПередЗаписьюНаСервере, нет? А в обработке проведения оставить только то, что действительно должно выполняться при любом проведении.
5 Fragster
 
гуру
26.11.12
08:50
(3) какие например?
6 shuhard
 
26.11.12
08:52
(5) например в УПП документы при проведение не делают движения по Рг НДС
7 Sammo
 
26.11.12
08:54
Емнип, для отключения части проверок в подписках помимо доп. свойств делают ОбменДанными.Загрузка = Истина.
Например, при программной записи могут убрать запрет на запись в закрытом периоде в подписке
8 Fragster
 
гуру
26.11.12
08:56
(6) отложенное проведение по части регистров? и зачем тут (0)?
9 shuhard
 
26.11.12
08:59
(8) (0) тут напрямую
в типовой обработка проведения проверяет ДополнительныеСвойства и ветвится, поняв что запущена не обработкой
10 Serg_1960
 
26.11.12
09:09
Миста, ох уж эта Миста... Чел спросил - "Как?", а ему в ответ - обсуждение на тему "Зачем?"
11 Undefined vs NULL
 
26.11.12
09:11
проведение из списка это интерактивное?
а из журнала?
12 samozvanec
 
26.11.12
09:11
(10) чел спросил, можно ли, первый же ответ - да
13 Falex
 
26.11.12
09:13
Хорошо. Если можно, то как?
Я как раз имею ввиду отловить в подписке не интерактивное проведение документа (из формы).
14 Undefined vs NULL
 
26.11.12
09:16
(13) ответь на (11)
15 kosts
 
26.11.12
09:18
(10) Потому что такой вопрос возможно говорит о неверной концепции.
16 Falex
 
26.11.12
09:20
из журнала, из обработки (программно) - это тоже интерактивное.
из формы - не интерактивное.
17 shuhard
 
26.11.12
09:21
(16) 100500 раз перечитай (2)
18 kosts
 
26.11.12
09:23
(16) Смысл, как-то наоборот...
19 Defender aka LINN
 
26.11.12
09:25
(16) Любопытная теория
20 Falex
 
26.11.12
09:39
согласен, что не так написал:
21 Falex
 
26.11.12
09:40
вообще задача отследить проведение (запись) из формы и остальными методами.
22 Undefined vs NULL
 
26.11.12
09:40
(21) чем из формы отличается от не из формы (из списка, например?)
23 Falex
 
26.11.12
09:42
надо отловить программное проведение от проведение из формы.
24 Falex
 
26.11.12
09:43
ну и так же из формы списка
25 Falex
 
26.11.12
10:00
Как подскажите пожалуйста?
26 Serg_1960
 
26.11.12
10:01
(25) См.(2)
27 Falex
 
26.11.12
10:05
Всмысле? У меня есть созданный документ. Я провожу его программно или из формы. Далее в подписке как я определю программно ли проведен документ?
28 MSII
 
26.11.12
10:11
(27) Ты (2) принципиально читать не хочешь?
В подписке анализируй Источник.ДополнительныеСвойства
29 Serg_1960
 
26.11.12
10:16
(28) Вероятно, автора не "устраивает" использование ДополнительныеСвойства(). Например, при анализе в подписке, где Источник - все документы. Ну не будешь же, в самом деле, во все формы всех документов вносить изменения...
30 Falex
 
26.11.12
10:20
Да. Изменения в формы вносить не буду, т.к. потом обновлять конфигурацию хотелось бы быстро и на лету.
31 MSII
 
26.11.12
10:21
(29) Зачем во все формы? Только в те, где нужно определить интерактивное проведение.
32 Falex
 
26.11.12
10:31
Ну даже в те не хочется. Больше никак?
33 Serg_1960
 
26.11.12
10:32
ТС, понимаешь, тут такая засада есть... не всегда можно определить открыта ли форма документа :(

У документа, в принципе, может не быть "формы документа" или быть их несколько :)

Предположим "форма документа" - эта та, которая указана в конфигурации в метаданных... а если документ проводится "из-под" другой формы - тогда как?
34 Falex
 
26.11.12
10:34
Здесь имеется ввиду из формы, которая в конфигурации
35 Maxus43
 
26.11.12
10:36
(34) нет других способов нормальных, (2) самый лучший
36 Falex
 
26.11.12
10:41
Понятно. Спасибо.
37 Serg_1960
 
26.11.12
10:41
Тс, для эксперементов болванка :)

   Для Каждого ФормаОбъекта Из ДокументОбъект.Метаданные().Формы Цикл
       ИмяФормы = ФормаОбъекта.Имя;
       ТекФорма = ДокументОбъект.Ссылка.ПолучитьФорму(ИмяФормы);
       Сообщить(ИмяФормы + " (" + ?(ТекФорма.Открыта(),"","не ") + "открыта)");
   КонецЦикла;
38 Serg_1960
 
26.11.12
10:44
И подсказка :)  во многих формах документов есть "НастройкаПравДоступа.ОпределитьДоступностьВозможностьИзмененияДокументаПоДатеЗапрета()" и "ЗаполнениеДокументов.ЗаполнитьШапкуДокумента()"
39 Falex
 
26.11.12
10:58
По последней подсказке не понял. По пред.болванке а если открыто несколько однотипных документов.
40 Maxus43
 
26.11.12
11:05
(39) он намекает что доп свойства можно прописать там, 1 раз, а не вкаждом доке
41 Falex
 
26.11.12
11:08
аа )
42 Falex
 
26.11.12
22:22
А в форме списка как передать доп.свойства?

Так не получается

Процедура СписокПередПроведением(Элемент, Отказ)
   Элемент.ТекущаяСтрока.ПолучитьОбъект().ДополнительныеСвойства.Вставить("ЗаписанИзФормы",Истина);

КонецПроцедуры
43 kosts
 
27.11.12
07:59
(42)

Процедура СписокПередПроведением(Элемент, Отказ)
   Отказ = Истина;
   Об = Элемент.ТекущаяСтрока.ПолучитьОбъект();
   об.ДополнительныеСвойства.Вставить("ЗаписанИзФормы", Истина);
КонецПроцедуры
44 kosts
 
27.11.12
08:19
(43) + Об.Записать(РежимЗаписиДокумента.Проведение);
45 Falex
 
29.11.12
09:08
Спасибо.