|
Обновление данных на упр.форме после заполнения тч | ☑ | ||
---|---|---|---|---|
0
lxs
31.07.18
✎
17:01
|
Привет всем, короткий вопрос.
После заполнения табличной части документа внешней обработкой заполнения ТЧ, данные на форме не появляются сразу, требуется вызов команды Обновить на форме документа. Обработка использует вызов клиентского метода и открывает свою форму перед заполнением для указания ряда параметров. После заполнения надо обновить элементы. Вопрос: если делали - как? |
|||
1
Cyberhawk
31.07.18
✎
17:03
|
ОбновитьОтображениеДанных
|
|||
2
lxs
31.07.18
✎
17:10
|
(1) И к чему присобачить это обновление?
Есть лишь ссылка на объект. |
|||
3
Cyberhawk
31.07.18
✎
17:16
|
(2) Так ты объект в БД записываешь что ли?
|
|||
4
Cyberhawk
31.07.18
✎
17:17
|
Форма объекта доступна как владелец формы твоей обработки
|
|||
5
lxs
31.07.18
✎
17:19
|
(3) Да, сразу записываю
|
|||
6
Cyberhawk
31.07.18
✎
17:19
|
Ну тогда и "Прочитать" пойдет
|
|||
7
palsergeich
31.07.18
✎
17:20
|
ПолучитьОбъект()
ЗначениеВРеквизитФормы() |
|||
8
lxs
31.07.18
✎
17:21
|
(6) Спасибо, Человечище.
|
|||
9
lxs
01.08.18
✎
00:02
|
Ещё проблемка. Не могу передать значение реквизита формы или реквизита обработки в серверную процедуру. На форме обработки заполняю значение реквизита, но при выполнении процедуры заполнения значение не заполнено. Где косячу?
|
|||
10
Cyberhawk
01.08.18
✎
00:14
|
Покажи код по изменению реквизита и заголовок серверного метода
|
|||
11
lxs
01.08.18
✎
09:12
|
(10) Кода изменения реквизита нет, он меняется интерактивно.
При запуске обработки вызывается процедура на клиенте: &НаКлиенте Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения) Экспорт Если ИдентификаторКоманды = "ЗаполнитьТЧ" Тогда ОткрытьФорму("ВнешняяОбработка.ОбработкаЗаполненияТЧ.Форма.Форма",,,,,,Новый ОписаниеОповещения("ВыполнитьКомандуЗавершение", ЭтотОбъект, Новый Структура("ОбъектыНазначения", ОбъектыНазначения)), РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ВыполнитьКомандуЗавершение(Результат, ДополнительныеПараметры) Экспорт ЗаполнитьТЧНаСервере(ДополнительныеПараметры.ОбъектыНазначения); ВладелецФормы.Прочитать(); КонецПроцедуры &НаСервере Процедура ЗаполнитьТЧНаСервере(ОбъектыНазначения) //Тут мне надо получить значение из Объект.Реквизит, выведенный на форму //но оно не передаётся, даже через параметры процедуры Для каждого ДокументСсылка Из ОбъектыНазначения Цикл ДокументОбъект = ДокументСсылка.ПолучитьОбъект(); |
|||
12
lxs
01.08.18
✎
09:14
|
..либо туплю
|
|||
13
aleks_default
01.08.18
✎
09:26
|
//Тут мне надо получить значение из Объект.Реквизит, выведенный на форму
//но оно не передаётся, даже через параметры процедуры не понял зачем его передавать, прямое обращение Объект.Реквизит почему нельзя использовать? |
|||
14
aleks_default
01.08.18
✎
09:30
|
Может ты имеешь ввиду что Объект.Реквизит - это значение должно заполняться после закрытия формы обработки заполнения? Ну так у тебя же в процедуре ВыполнитьКомандуЗавершение никак не обрабатывается результат выбора формы.
|
|||
15
lxs
01.08.18
✎
09:31
|
(13) В том и дело, что Объект.Реквизит - там пусто, хотя на форме обработки я выбрал ссылку
|
|||
16
lxs
01.08.18
✎
09:32
|
(14) Объект.Реквизит выведен на форму. Я выбираю ссылку и нажимаю кнопку Заполнить на форме, которая просто закрывает форму. Далее обработчик завершения вызывает процедуру заполнения на сервере, но Объект.Реквизит пуст.
|
|||
17
aleks_default
01.08.18
✎
09:42
|
<ОписаниеОповещенияОЗакрытии> (необязательный)
Тип: ОписаниеОповещения. Содержит описание процедуры, которая будет вызвана при закрытии формы со следующими параметрами: <РезультатЗакрытия> - значение, переданное при вызове метода Закрыть открываемой формы, Это означает что в процедуре, вызваемой по завершении выбора, ты должен обработать результат выбора |
|||
18
lxs
01.08.18
✎
10:08
|
(17) Это всё понятно.. Передавать нечего. Значение на форме есть (визуально). Когда я выполняю команду на форме, в процедуре которой есть только Закрыть(), я даже в Сообщить(Объект.Реквизит) уже не вижу значение.. Тут до обработчика завершения дело даже не доходит.
|
|||
19
lxs
01.08.18
✎
10:12
|
(17) Всё, мужик, ты меня навёл на мысль, спасибо. Получилось. В Закрыть() параметром передал значение Объект.Реквизит.
|
|||
20
aleks_default
01.08.18
✎
10:19
|
У тебя форма не форма выбора поэтому она ничего не возвращает
|
|||
21
lxs
01.08.18
✎
11:13
|
(20) Ну, как бы это было и так понятно, я ж сказал, что это форма обработки заполнения ТЧ, которую я просто открываю для задания параметров заполнения.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |