|
Заполнение данными из таб части документа в макет | ☑ | ||
---|---|---|---|---|
0
Валидатор
23.04.13
✎
13:48
|
Написал запрос на выборку данных из ТЧ Товары и Услуги документа Заказ Поставщику:
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЗаказПоставщикуТовары.Номенклатура КАК Номенклатура |ИЗ | Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары |ГДЕ | ЗаказПоставщикуТовары.Ссылка = &Ссылка | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ЗаказПоставщикуУслуги.Номенклатура |ИЗ | Документ.ЗаказПоставщику.Услуги КАК ЗаказПоставщикуУслуги"; Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл План.Параметры.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура; КонецЦикла; но такой запрос заполняет последними только найденными данными из таблицы услуги, а мне нужно чтобы было столько строк, сколько позици й твб частях документа, кк сделать? |
|||
1
Rie
23.04.13
✎
13:49
|
(0) Так ты же и перебираешь в цикле _все_ записи, сохраняя в План.Параметры.Номенклатура только последнюю.
|
|||
2
zak555
23.04.13
✎
13:49
|
сделай читабельный запрос
|
|||
3
Валидатор
23.04.13
✎
13:50
|
(2)
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЗаказПоставщикуТовары.Номенклатура КАК Номенклатура |ИЗ | Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары |ГДЕ | ЗаказПоставщикуТовары.Ссылка = &Ссылка | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ЗаказПоставщикуУслуги.Номенклатура |ИЗ | Документ.ЗаказПоставщику.Услуги КАК ЗаказПоставщикуУслуги"; Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл План.Параметры.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура; КонецЦикла; |
|||
4
Валидатор
23.04.13
✎
13:50
|
(1) а как сделать, чтобы все записывались по очреди? то есть найдена 1 позиция, хорп записалась, вторая так е, и так пока цикл идет?
|
|||
5
exwill
23.04.13
✎
13:51
|
+(1) ... из всех документов
|
|||
6
exwill
23.04.13
✎
13:52
|
(4) записалось куда? в макет?
|
|||
7
Валидатор
23.04.13
✎
13:52
|
(5) не из всех, из определенного
|
|||
8
Валидатор
23.04.13
✎
13:52
|
(6) да
|
|||
9
Валидатор
23.04.13
✎
13:53
|
План.Параметры.Номенклатура - это строка в макете, вот хочу чтобы в нее писалось
|
|||
10
Валидатор
23.04.13
✎
13:54
|
к (9) не строка, а параметр в строке, вот
|
|||
11
Валидатор
23.04.13
✎
13:57
|
выводить строку в каждом цикле? типа
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл План.Параметры.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура; Макет.вывести(ОбластьСтрока) // областьстрока - строка где как раз значение параметра Номенклатура должно отображаться КонецЦикла; но так ведь тоже только последнее значение будет записываться? |
|||
12
exwill
23.04.13
✎
14:01
|
(11) Молодец! Сам ответил.
Нет, не одна строка, а много. ... очень много )))) |
|||
13
Валидатор
23.04.13
✎
14:02
|
(12) так выводится все равно последнее значение из 2х этих ТЧ (Товары и Услуги), т.е., если консолью запросов смотреть получается так
Номенклатура Номенклатура Номенклатура Услуга а на макет выводится только Услуга |
|||
14
Валидатор
23.04.13
✎
14:05
|
хотя да, получилось, спс
|
|||
15
Валидатор
23.04.13
✎
14:10
|
хотя еще вопрос, есть колонка с нумерацией, там 1, 2,3, и т.д. и нужно чтобы цифры автоматом подставлялись для каждой строки в которую ставится номенклатура, это задаем в цикле ведь самом уже?
|
|||
16
Валидатор
23.04.13
✎
14:16
|
все, сп, сделал
|
|||
17
exwill
23.04.13
✎
14:20
|
Ты условие для таб.части Услуги забыл.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |