|
Ввод на основании - как перейти на клиента перед стандартными процедурами | ☑ | ||
---|---|---|---|---|
0
slafor
29.04.22
✎
15:12
|
Надо ввести ПКО на основании Списания товаров, но перед Обработкой заполнения надо, чтобы пользователь мог выбрать хозяйственную операцию. Сама ОбработкаЗаполнения выполняется на сервере, а нам надо вывести на экран список значений для выбора нужного. А сделать это можно только на клиенте. Не подскажете, как лучше? Может быть, что-то выполняется перед Обработкой заполнения?
|
|||
1
lubitelxml
29.04.22
✎
15:17
|
Выбирайте хозяйственную операцию в док. Списание товаров и ее передавайте в обработку заполнения
|
|||
2
Ryzeman
29.04.22
✎
15:20
|
(0) А в каком контексте ты собираешься это делать если у тебя документ создаётся на сервере и фактически ни в каком виде не существует на клиенте? Либо (1) либо уже в открывающейся форме нового документа выбирать.
|
|||
3
slafor
29.04.22
✎
15:23
|
(1) Да это я понимаю, не пойму только, выполняется ли вообще что-то клиентское в Списании, если я использую типовой механизм Ввода на основании?
|
|||
4
slafor
29.04.22
✎
15:23
|
Я ведь могу и из формы списка выбрать ввод на основании...
|
|||
5
hhhh
29.04.22
✎
15:26
|
(3) сделай отдельную кнопку, что ты уперся в этот ввод на основании?
|
|||
6
slafor
29.04.22
✎
15:27
|
(2) А если выбирать в "уже в открывающейся форме нового документа", то форма, наверное, будет неправильная - она же зависит от вида хоз. операции.
|
|||
7
slafor
29.04.22
✎
15:28
|
(5) А ссылки в стандартных отчетах (Связанные документы) не будет работать, наверное?
|
|||
8
Ryzeman
29.04.22
✎
15:29
|
(4) Особых событий для ввода на основании точно нет. В типовом ты можешь конечно вклиниться в клиентские процедуры которые параметры формы получают и туда что-нибудь дописать... Но я ХЗ, так делать за гранью добра и зла ИМХО)
|
|||
9
Kassern
29.04.22
✎
15:29
|
(0) оповещения вам в помощь
|
|||
10
lubitelxml
29.04.22
✎
15:31
|
(7) будут, связанные документы ищут связь по реквизитам указанным в критерии отбора. Главное поле для связи заполни
|
|||
11
lubitelxml
29.04.22
✎
15:32
|
То есть выводишь свою кнопку - по ней - выбираешь на клиенте операция, далее методом Заполнить() попадаешь в обработку заполнения
|
|||
12
ptiz
29.04.22
✎
15:47
|
(6) В форме анализируй при открытии:
&НаКлиенте Процедура ПриОткрытии(Отказ) Если ЗначениеЗаполнено(ПараметрыОснование) Тогда Если НЕ ЗначениеЗаполнено(ВидОперации) Тогда Отказ = Истина; Список = Новый СписокЗначений; Список.Добавить("Значение1"); Список.Добавить("Значение2"); Список.ПоказатьВыборЭлемента(Новый ОписаниеОповещения("ПриОткрытииЗавершение", ЭтотОбъект), "Выберите операцию"); Иначе Сообщить(ВидОперации); КонецЕсли; КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ПриОткрытииЗавершение(ВыбранныйЭлемент, ДополнительныеПараметры) Экспорт ВыбЭлемент = ВыбранныйЭлемент; Если ВыбЭлемент <> Неопределено Тогда Струк = Новый Структура("ВидОперации,Основание", ВыбЭлемент.Значение, ПараметрыОснование); ОткрытьФорму("Документ.Документ2СоставнойТип.Форма.ФормаДокумента", Струк); КонецЕсли; КонецПроцедуры &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) ПараметрыОснование = Параметры.Основание; Если Параметры.Свойство("ВидОперации") Тогда ВидОперации = Параметры.ВидОперации; КонецЕсли; КонецПроцедуры ПараметрыОснование - это реквизит формы |
|||
13
lubitelxml
29.04.22
✎
15:51
|
(12) тоже вариант, но в том случае, если хоз. операция не участвует в коде обработки заполнения
|
|||
14
lubitelxml
29.04.22
✎
15:52
|
сначала ведь обработка заполнения, потом при создании на сервере, и только потом при открытии
|
|||
15
hhhh
29.04.22
✎
17:05
|
(14) просто код из обработки заполнения надо перенести в ПриОткрытии
|
|||
16
lubitelxml
29.04.22
✎
17:48
|
(15) то есть предлагаешь сломать весь типовой код по заполнению, потом в ПриОткрытии сделать серверный вызов с кодом обработки заполнения? Тогда надо и код при создании на сервере повторить будет... короче гемор еще тот
|
|||
17
Kassern
29.04.22
✎
17:55
|
(0) всю ветку не читал, но не понимаю проблемы. Надо вызвать открытие формы выбора перед вводом на основании? Так не проблема, переопределите процедуру ввода на основании, выполните оповещение с выбором хоз операции. Далее в зависимости от выбора выполняйте ввод на основании с выбранной хоз операцией.
|
|||
18
slafor
29.04.22
✎
18:55
|
Все спасибо, уйма новой информации )
На самом деле, вопрос решили иначе - просто анализируем документ-основание, и на основании того, какая аналитика указана в списании, выбираем и аналитику в ПКО. А вот мысль в отчете (17) интересна, но непонятна - как же я смогу переопределить процедуру ввода на основании? |
|||
19
lubitelxml
29.04.22
✎
19:11
|
(18) это верное решение.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |