|
Использование параметра объекты "ДополнительныеСвойства" | ☑ | ||
---|---|---|---|---|
0
biimmap
19.12.16
✎
16:01
|
Объясните мне плиз, что нужно, чтоб в форме я в эту структуру вставил несколько полей, и они были бы доступны в событиях "ОбработкаПроверкиЗаполнения" и "ОбработкаПроведения"?
Я так понял что запись данных в ДополнительныеСвойства производится только в процедуре формы ПередЗаписьюНаСервере. Собственно там записываю в неё новые свойства, а в описанных обработчиках в модуле объекта они недоступны. Нужно это для того, чтоб дважды не выполнялся довольно громоздкий код. На стороне формы мне нужно на при наличии ошибок спросить у пользователя нужно провести документ или нет. А в модуле на основании тех данных, которые получает громоздкий код строить остальные проверки. Оставшиеся проверки не требуют подтверждения пользователя, поэтому они выполняются в модуле объекта. |
|||
1
END
19.12.16
✎
16:03
|
Лучше сделать реквизиты формы.
|
|||
2
biimmap
19.12.16
✎
16:04
|
причём тут реквизит формы в МОДУЛЕ ОБЪЕКТА??
|
|||
3
Вафель
19.12.16
✎
16:06
|
покажи код как ты записываешь
|
|||
4
biimmap
19.12.16
✎
16:08
|
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) ТекущийОбъект.ДополнительныеСвойства.Вставить("СписокСотрудниковСПериодами", СписокСотрудниковСПериодами); КонецПроцедуры |
|||
5
biimmap
19.12.16
✎
16:09
|
СписокСотрудниковСПериодами - это таблица. допустим она хранится на момент записи в реквизите формы. вот мне эту таблицу надо увидеть в модуле объекта при проведении
|
|||
6
RomanYS
19.12.16
✎
16:11
|
судя по
http://2.bp.blogspot.com/-oAJp8hb-r0Q/VQ6pppNJjEI/AAAAAAAAAP8/SsJB4ccqX8A/s1600/2.png ОбработкаПроверкиЗаполнения объекта вызывается раньше ПередЗаписьюНаСервере формы |
|||
7
biimmap
19.12.16
✎
16:13
|
5 баллов! спасибо!
|
|||
8
biimmap
19.12.16
✎
17:16
|
Теперь могу нормально пояснить суть:
1. В событии ПередЗаписью (на клиенте) вызывается серверный метод, который получает нужные мне таблицы для проверок. Одновременно с этим по данным таблицы происходит одна из проверок и на клиенте выводится вопрос пользователю в случае наличия ошибок. 2. В модуле формы проверки заполнения нет. Она есть только в модуле объекта. 3. А записать ДополнительныеСвойства можно только в обработчике формы ПередЗаписьюНаСервере. так вот задача в том, чтоб после проверки в п.1 в п.2 (который выполняется в модуле объекта) передать таблицы с данными для проверок и повторно не выполнять сложные запросы. |
|||
9
aleks_default
19.12.16
✎
17:17
|
В модуле формы проверки заполнения нет. Она есть только в модуле объекта - есть
|
|||
10
biimmap
19.12.16
✎
17:20
|
в модуле формы есть событие "ОбработкаПроверкиЗаполненияНаСервере". вы наверно не в курсе. посмотрите схему выше коллега прислал
|
|||
11
aleks_default
19.12.16
✎
17:29
|
(10)Это я ваши слова опроверг. В кавычки забыл взять.
|
|||
12
RomanYS
19.12.16
✎
17:34
|
(8) в модуле объекта делай проверку в ПередЗаписью, туда допсвойства уже придут
|
|||
13
biimmap
19.12.16
✎
17:44
|
(12) я оттуда не смогу пользователю выдать вопрос. и если пользователь ответит отрицательно, то собственно дальше ничего не нужно делать.
Может ещё есть способ передать в модуль объекта данные? я сходы могу придумать ТЧ, которая на старте заполняется, на финише очищается. и по сути не хранится, просто будет неиспользуемый объект метаданных. но выход тупой. |
|||
14
Лефмихалыч
19.12.16
✎
17:49
|
(13) схеронить их во временном хранилище
|
|||
15
biimmap
19.12.16
✎
17:50
|
(14) можно код? что в каких процедурах делать? хранилище доступно при переходе из одного модуля в другой?
|
|||
16
RomanYS
19.12.16
✎
17:55
|
(13) предложение было перенести (дополнительную, опциональную) проверку в модуле объекта из ОбработкаПроверкиЗаполнения в ПередЗаписью. Проверка на клиенте остается и "передеает" отключение проверки объекта через допсвойства.
|
|||
17
biimmap
19.12.16
✎
17:58
|
(16) а ничем не грозит тот факт, что ПередЗаписью уже транзакция началась?
так в целом вроде в теории всё красиво ложится... |
|||
18
Лефмихалыч
19.12.16
✎
17:59
|
(15) ПоместитьВоВременноеХранилище(<Данные>, <Адрес>)
ПолучитьИзВременногоХранилища(<Адрес>) |
|||
19
biimmap
19.12.16
✎
18:01
|
(18) могу ли я через это самое хранилище передать структуру, в которой одно поле будет таблицей а второе Менеджер временных талиц?
|
|||
20
RomanYS
19.12.16
✎
18:23
|
(18) а адрес как передавать?
|
|||
21
biimmap
19.12.16
✎
18:44
|
(18) с временным хранилищем не работает!!!
нет возможности передать адрес и ошибку выдаёт какую-то, что в кэше что-то лишнее... |
|||
22
Vaflya
19.12.16
✎
20:33
|
Манать управляемые формы! Записанные в Объект свойства в событии формы недоступны в событиях Объекта?
|
|||
23
biimmap
19.12.16
✎
20:46
|
(22) да. всё именно так))) с первой частью фразы прям полностью согласен
|
|||
24
RomanYS
19.12.16
✎
20:58
|
(23) с (16)-то получилось? или не пробовал?
|
|||
25
biimmap
20.12.16
✎
09:38
|
мне не подходит. там транзакция запускается... у меня всё висеть будет и фалы кэша будут расти сильно (24)
|
|||
26
biimmap
20.12.16
✎
09:40
|
(24) буду делать табличные части, которые на старте буду заполнять а на финише очищать в событии ПослеЗаписи
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |