![]() |
|
Заполнение результата запроса в отдельный список и его загрузка на форму | ☑ | ||
---|---|---|---|---|
0
deadpuma
03.08.12
✎
09:51
|
Есть запрос, результат которого заполняется в табличную часть документа по отдельной записи.
Запрос = Новый Запрос("ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка КАК Реализация, | РеализацияТоваровУслуг.бтВнешнийНомерДокумента КАК ВнешНомер |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг |ГДЕ | НЕ РеализацияТоваровУслуг.ПометкаУдаления | И РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон | " + ?(Организация.Пустая(),"","И РеализацияТоваровУслуг.Организация = &Организация") + " | |УПОРЯДОЧИТЬ ПО | РеализацияТоваровУслуг.Дата"); Запрос.УстановитьПараметр("ДатаКон",ДатаКон); Запрос.УстановитьПараметр("ДатаНач",ДатаНач); Запрос.УстановитьПараметр("Организация",Организация); иначе Запрос = Новый Запрос("ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка КАК Реализация, | РеализацияТоваровУслуг.бтВнешнийНомерДокумента КАК ВнешНомер |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг |ГДЕ | НЕ РеализацияТоваровУслуг.ПометкаУдаления | И РеализацияТоваровУслуг.бтВнешнийНомерДокумента В (&Заказы) | И РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон | " + ?(Организация.Пустая(),"","И РеализацияТоваровУслуг.Организация = &Организация") + " | |УПОРЯДОЧИТЬ ПО | РеализацияТоваровУслуг.Дата"); Запрос.УстановитьПараметр("ДатаКон",ДатаКон); Запрос.УстановитьПараметр("ДатаНач",ДатаНач); Запрос.УстановитьПараметр("Организация",Организация); Запрос.УстановитьПараметр("Заказы",лмасЗаказы); КонецЕсли; рез = Запрос.Выполнить().Выбрать(); // СтрДанных = Новый Структура(); Пока рез.Следующий() Цикл ЗаполнитьЗначенияСвойств(Список.Добавить(),рез); КонецЦикла; Необходимо сделать заполнение чтобы сначала результат заполнялся в отдельный список, а потом уже загрузить весь список целиком на форму. так можно будет сделать? если да то подскажите как лучше? |
|||
1
Maxus43
03.08.12
✎
09:55
|
ЭтаФорма.ТабПоле1.Значение = Запрос.Выполнить.Выгрузить();
ЭтаФорма.ТабПоле1.СоздатьКолонки(); |
|||
2
Кир Пластелинин
03.08.12
✎
09:56
|
а для чего в начале грузить отдельно, а потом только выводить? О_о
|
|||
3
deadpuma
03.08.12
✎
10:00
|
(2) так попросили, какие-то проблемы возникают при загрузке по одному
(1) вы наверное неправильно поняли меня, вот форма <a target="_blank" href="http://www.radikal.ru"><img src="http://s40.radikal.ru/i089/1208/58/712b6975c4a1.jpg" ></a> |
|||
4
Maxus43
03.08.12
✎
10:06
|
конечно не понял. какой тип у ТП в форме у (3)? там столбцов много, а в запросе только 2. что загружать и как хотим?
|
|||
5
Кир Пластелинин
03.08.12
✎
10:08
|
(3) как объяснили - так и поняли.
|
|||
6
deadpuma
03.08.12
✎
10:20
|
(4) надо загрузить значения столбцов в отдельный промежуточный список (или еще куда-то) а потом из него уже на форму. Т.е загружать поля Масса, Гос.Номер и т.д у них разные типы строка, число,булево и есть тип ДокументСсылка.РеализацияТоваровУслуг.
У ТП тип Список. У Списка 11 реквизитов. |
|||
7
Кир Пластелинин
03.08.12
✎
10:28
|
(6) так для чего грузить в промежуточный объект? какие проблемы возникают?
|
|||
8
deadpuma
03.08.12
✎
10:33
|
(6) при загрузке документов, курсор мыши не успевает за ними, постоянно перескакивает в середину.
|
|||
9
Maxus43
03.08.12
✎
10:34
|
(8) чо?
|
|||
10
Кир Пластелинин
03.08.12
✎
10:35
|
(8) О_О. ах ты ж ептить. сегодня ж пятница) если вопрос в фокусе на определенную сторку, то его можно устанавливать на какой хочешь строке
|
|||
11
Maxus43
03.08.12
✎
10:38
|
и нафига вобще выводить в процессе загрузки, загрузил ВСЁ - потом вывел, с позиционированием там где надо
|
|||
12
deadpuma
03.08.12
✎
11:08
|
(11) так я это и пытаюсь выяснить загрузить ВСЕ куда-то, а потом сразу вывести.
|
|||
13
Maxus43
03.08.12
✎
11:10
|
как сечас сделано покажи, я не понимаю как по кускам вывод сделали, это изначально неправильно имхо
|
|||
14
deadpuma
03.08.12
✎
11:11
|
Процедура ЗаполнитьНажатие(Элемент)
лмасЗаказы = новый массив; лмасЗаказы.Очистить(); Для инд = 1 по стрЧислоСтрок(ФильтрЗаказов) ЦИкл лстр = стрПолучитьСтроку(ФильтрЗаказов,инд); лмасЗаказы.Добавить(СокрП(лстр)); КонецЦикла; Если лмасЗаказы.Количество()<2 и СокрП(ФильтрЗаказов)="" Тогда Запрос = Новый Запрос("ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка КАК Реализация, | РеализацияТоваровУслуг.бтВнешнийНомерДокумента КАК ВнешНомер |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг |ГДЕ | НЕ РеализацияТоваровУслуг.ПометкаУдаления | И РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон | " + ?(Организация.Пустая(),"","И РеализацияТоваровУслуг.Организация = &Организация") + " | |УПОРЯДОЧИТЬ ПО | РеализацияТоваровУслуг.Дата"); Запрос.УстановитьПараметр("ДатаКон",ДатаКон); Запрос.УстановитьПараметр("ДатаНач",ДатаНач); Запрос.УстановитьПараметр("Организация",Организация); иначе Запрос = Новый Запрос("ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка КАК Реализация, | РеализацияТоваровУслуг.бтВнешнийНомерДокумента КАК ВнешНомер |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг |ГДЕ | НЕ РеализацияТоваровУслуг.ПометкаУдаления | И РеализацияТоваровУслуг.бтВнешнийНомерДокумента В (&Заказы) | И РеализацияТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон | " + ?(Организация.Пустая(),"","И РеализацияТоваровУслуг.Организация = &Организация") + " | |УПОРЯДОЧИТЬ ПО | РеализацияТоваровУслуг.Дата"); Запрос.УстановитьПараметр("ДатаКон",ДатаКон); Запрос.УстановитьПараметр("ДатаНач",ДатаНач); Запрос.УстановитьПараметр("Организация",Организация); Запрос.УстановитьПараметр("Заказы",лмасЗаказы); КонецЕсли; рез = Запрос.Выполнить().Выбрать(); // СтрДанных = Новый Структура(); //заполнение табличной части в отдельный список и загрузка данного списка в таблицу значений! Пока рез.Следующий() Цикл ЗаполнитьЗначенияСвойств(Список.Добавить(),рез); КонецЦикла; КонецПроцедуры |
|||
15
Maxus43
03.08.12
✎
11:13
|
Список - это значение ТП? тип ТаблицаЗначений?
|
|||
16
Maxus43
03.08.12
✎
11:20
|
если это ТЗ то:
Список = Запрос.Выполнить.Выгрузить(); если это СписокЗначений то Список1 = Новый СписокЗначений; Пока рез.Следующий() Цикл ЗаполнитьЗначенияСвойств(Список1.Добавить(),рез); КонецЦикла; Список = Список1; типа того |
|||
17
deadpuma
03.08.12
✎
11:24
|
(16) сейчас попробую так сделать. Список это вот http://s019.radikal.ru/i631/1208/67/d870b1902af2.jpg
|
|||
18
Maxus43
03.08.12
✎
11:29
|
сразу бы сказал.
Список.Загрузить(Запрос.Выполнить.Выгрузить()) |
|||
19
Maxus43
03.08.12
✎
11:29
|
вопрос про ТИП значения был в (4) ещё, это самаое главно для решения конкретной задачи
|
|||
20
deadpuma
03.08.12
✎
11:42
|
(19)спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |