|
УФ Открытие форм в цикле | ☑ | ||
---|---|---|---|---|
0
spiller26
13.11.15
✎
15:23
|
На клиенте пытаюсь обработать Табличную часть обработки, в некоторых обрабатываемых строках необходимо чтобы открывалась форма выбора из таблицы.
Но получается так, что формы открываются все. &НаКлиенте Процедура ОбработкаТЧ() Для Каждого СтрокаДокумента Из ДокументыКИмпорту Цикл СтруктураПП = СфоормироватьСтруктуруНайденныхПлатежныхПоручений(СтруктураДанных); Если СтруктураПП.ЕстьПП Тогда ТекстИнформации = СтрокаДокумента.НазначениеПлатежа; СтруктураПараметров = Новый Структура; СтруктураПараметров.Вставить("АдресТЗ", СтруктураПП.АдресТЗ); СтруктураПараметров.Вставить("ТипДокументов", "ПлатежноеПоручение"); СтруктураПараметров.Вставить("Информация", ТекстИнформации); СтруктураПараметров.Вставить("СуммаИзБанка", СтрокаДокумента.Сумма); СтруктураПараметров.Вставить("ЗаголовокФормы", "Выбор документа ""Платежное поручение"" по которому будет идти Списание с расч.счета"); СтруктураПараметров.Вставить("ПлатежноеПоручениеСсылка", ПредопределенноеЗначение("Документ.ПлатежноеПоручение.ПустаяСсылка")); //для возврата ФормаВыбораДокументаПП = ПолучитьФорму("ВнешняяОбработка.КлиентБанк.Форма.ФормаВыбораДокумента", СтруктураПараметров, ЭтотОбъект); ФормаВыбораДокументаПП.Открыть(); КонецЕсли; КонецЦикла; КонецПроцедуры &НаСервере Функция СформироватьСтруктуруНайденныхПлатежныхПоручений(СтруктураДанных) СтруктураВыход = Новый Структура; СтруктураВыход.Вставить("АдресТЗ", ""); СтруктураВыход.Вставить("ЕстьПП", Ложь); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ПлатежноеПоручение.Ссылка, | ПлатежноеПоручение.Номер, | ПлатежноеПоручение.Дата, | ПлатежноеПоручение.Проведен, | ПлатежноеПоручение.ДокументОснование, | ПлатежноеПоручение.Контрагент, | ПлатежноеПоручение.СчетКонтрагента, | ПлатежноеПоручение.НазначениеПлатежа, | ПлатежноеПоручение.СуммаДокумента, | ПлатежноеПоручение.ВалютаДокумента, | ПлатежноеПоручение.Оплачено, | ПлатежноеПоручение.энЗаявкаНаРасходованиеСредств |ИЗ | Документ.ПлатежноеПоручение КАК ПлатежноеПоручение |ГДЕ | ПлатежноеПоручение.ПометкаУдаления = ЛОЖЬ | И ПлатежноеПоручение.Дата МЕЖДУ &ДатаН И &ДатаК | И ПлатежноеПоручение.Организация = &Организация | И ПлатежноеПоручение.СчетОрганизации.НомерСчета = &РасчСчет | И ПлатежноеПоручение.Контрагент В | (ВЫБРАТЬ | Контрагенты.Ссылка КАК КонтрагентСсылка | ИЗ | Справочник.Контрагенты КАК Контрагенты | ГДЕ | Контрагенты.ИНН = &ИНН | И Контрагенты.КПП ПОДОБНО &КПП | И Контрагенты.ПометкаУдаления = ЛОЖЬ | И Контрагенты.ЭтоГруппа = ЛОЖЬ)"; Запрос.УстановитьПараметр("ДатаН", СтруктураДанных.ДатаН); //Дата Запрос.УстановитьПараметр("ДатаК", СтруктураДанных.ДатаК); Запрос.УстановитьПараметр("ИНН", СтруктураДанных.ПолучательИНН); Запрос.УстановитьПараметр("КПП", СтруктураДанных.ПолучательКПП); Запрос.УстановитьПараметр("РасчСчет", СтруктураДанных.РасчСчет); Запрос.УстановитьПараметр("Организация", СтруктураДанных.Организация); ТаблицаДокументовПП = Запрос.Выполнить().Выгрузить(); Если ТаблицаДокументовПП.Количество() > 0 Тогда СтруктураВыход.АдресТЗ = ПоместитьВоВременноеХранилище(ТаблицаДокументовПП, Новый УникальныйИдентификатор); СтруктураВыход.ЕстьПП = Истина; КонецЕсли; Возврат СтруктураВыход; КонецФункции //-------------------------------------------- //---------- В форме "ФормаВыбораДокумента" -- //Режим открытия = Блокировать весь интерфейс &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) АдресТЗ = Параметры.АдресТЗ; КонецПроцедуры &НаКлиенте Процедура ПриОткрытии(Отказ) Попытка ТЗ = ПолучитьИзВременногоХранилища(Параметры.АдресТЗ); Исключение ТЗ = Неопределено; КонецПопытки; КонецПроцедуры |
|||
1
VikingKosmo
13.11.15
✎
15:26
|
Что бы все формы не открывались в цикле, прекрати открывать их в цикле и попробуй объяснить, что ты вообще хочешь сделать
|
|||
2
Горогуля
13.11.15
✎
15:27
|
(1) да он просто похвастаться зашёл
|
|||
3
VikingKosmo
13.11.15
✎
15:27
|
(2) а, ну тогда расходимся
|
|||
4
aleks_default
13.11.15
✎
15:28
|
хвастун - находка для бандита
|
|||
5
spiller26
13.11.15
✎
15:32
|
(1)
загрузка из банка, платежки. Некоторые входящие номера платежек не соответствуют номерам в базе. По каждой строке идет проверка документов ПП (выбирается запросом). Далее если есть платежки, то должно выводиться окно, в котором пользователь (операционист) выбирает нужную ему платежку из таблицы. |
|||
6
spiller26
13.11.15
✎
15:33
|
И так до конца табличной части
|
|||
7
VikingKosmo
13.11.15
✎
15:34
|
и нафига при этом открывать в цикле формы документов?
|
|||
8
spiller26
13.11.15
✎
15:36
|
(7) Какие формы документов, там список документов, из которого должны выбрать.
|
|||
9
Горогуля
13.11.15
✎
15:39
|
(8) это у тебя такие фантазии, расходящиеся с реальностью?
|
|||
10
VikingKosmo
13.11.15
✎
15:39
|
(8) это ты так думаешь. По факту там в цикле открывается форма
|
|||
11
spiller26
13.11.15
✎
15:40
|
(10) Я понимаю "пятница", тем более 13, но все же.
|
|||
12
VikingKosmo
13.11.15
✎
15:42
|
(11) все же прекрати открывать форму в цикле и заставь себя сделать то, что ты хочешь
|
|||
13
Горогуля
13.11.15
✎
15:43
|
(11) завтра похмелись, в воскресенье отойди, а в понедельник приступай к задаче
|
|||
14
aleks_default
13.11.15
✎
15:44
|
(10)Вроде же даже программный код уже русским языком написан... Просто даже понять что написано не могут.
|
|||
15
VikingKosmo
13.11.15
✎
15:45
|
(14) ну тут два варианта: или не могут, или не хотят. Можно голосовалку прикрутить
|
|||
16
spiller26
13.11.15
✎
15:59
|
Короче никому такое не попадалось
|
|||
17
Горогуля
13.11.15
✎
16:00
|
(16) сколько раз видел. человек пишет одно, думает другое, говорит третье
|
|||
18
Любопытная
13.11.15
✎
16:07
|
(16) В УФ код не останавливается в момент открытия чего-либо в ожидании действий юзера. Он полностью отрабатывается. Поэтому лучшим вариантом будет - сделать пост обработку. На каждый неправильный документ сделать сообщение пользователю, переходя по этим сообщениям, пользователь может поочередно обработать каждый документ. но уже после проверки, а не во время.
|
|||
19
VikingKosmo
13.11.15
✎
16:08
|
ТАКОЕ точно не попадалось
|
|||
20
aleks_default
13.11.15
✎
16:11
|
(16) дык форма ж не модально открывается, причем тут УФ не УФ...
|
|||
21
Alex unde
13.11.15
✎
16:17
|
в УФ можно модально открывать, в чем проблема? это же не веб клиент через браузер...
|
|||
22
VikingKosmo
13.11.15
✎
16:17
|
(21) в УФ может быть режим использования модальности Не использовать, внезапно?
|
|||
23
Alex unde
13.11.15
✎
16:19
|
(22) Внезапно) Недостаточно исходных данных
ФормаРедактирования = ПолучитьФорму("Документ.ЗаказПокупателя.Форма.ФормаРедактирования", , ,Новый Структура("Ключ", Объект.Ссылка)); ФормаРедактирования.ОткрытьМодально(); это если можно использовать - примерчик |
|||
24
VikingKosmo
13.11.15
✎
16:20
|
(23) вообще в УФ за
ПолучитьФорму("Документ.ЗаказПокупателя.Форма.ФормаРедактирования", , ,Новый Структура("Ключ", Объект.Ссылка)); ФормаРедактирования.ОткрытьМодально(); руки отрывают по колено |
|||
25
Любопытная
13.11.15
✎
16:21
|
(23) А если нельзя использовать? Нашел чем хвалиться
|
|||
26
Alex unde
13.11.15
✎
16:23
|
(24) та что ты говоришь?
|
|||
27
VikingKosmo
13.11.15
✎
16:25
|
(26) кури ОткрытьФорму()
|
|||
28
Alex unde
13.11.15
✎
16:26
|
(25) Если можно - то я дал пример, если нельзя - то достаточно умников, типа вас, которые могут написать подобный комментарий "по теме", благодаря которым, поиск полезной инфы на форуме = прочитать простыню бредовых комментов, и может потом что-то и найдется..
|
|||
29
Alex unde
13.11.15
✎
16:27
|
(0) человек, подкинь инфы к размышлению!)
|
|||
30
Любопытная
13.11.15
✎
16:31
|
(28) Что найдется? ОткрытьМодально()? Вроде как все эти танцы с управляемыми формами и заводились для отказа от модальности, разве нет? И с чего это мой комментарий не "по теме"?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |