|
Заполнение табличной части запросом | ☑ | ||
---|---|---|---|---|
0
JuixyJes
18.04.19
✎
14:49
|
Есть код заполняющий табличную часть документа, но проблема в том, что один реквизит берется из другого документа, и он выводится после заполнения, второй строчкой
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | КосякСотрудника.Наряд КАК Наряд, | КосякСотрудника.Сотрудник КАК Сотрудник, | КосякСотрудника.Ссылка КАК Косяк, | КосякСотрудника.СуммаК КАК СуммаК, | КосякСотрудника.Продукция КАК Продукция, | КосякСотрудника.Технология КАК Технология, | NULL КАК Сумма |ИЗ | Документ.КосякСотрудника КАК КосякСотрудника |ГДЕ | КосякСотрудника.Наряд.Заявка = &Заявка | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | NULL, | NULL, | NULL, | NULL, | NULL, | NULL, | НарядТехнологии.Сумма |ИЗ | Документ.Наряд.Технологии КАК НарядТехнологии |ГДЕ | НарядТехнологии.Ссылка.Заявка = &Заявка"; Запрос.УстановитьПараметр("Заявка", Заявка); РезультатЗапроса = Запрос.Выполнить(); ТЧЗП.Очистить(); ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл НовСтрока = ТЧЗП.Добавить(); НовСтрока.Наряд = ВыборкаДетальныеЗаписи.Наряд; НовСтрока.Сотрудник = ВыборкаДетальныеЗаписи.Сотрудник; НовСтрока.Продукция = ВыборкаДетальныеЗаписи.Продукция; НовСтрока.Технология = ВыборкаДетальныеЗаписи.Технология; НовСтрока.Сумма = ВыборкаДетальныеЗаписи.Сумма; НовСтрока.Косяк = ВыборкаДетальныеЗаписи.Косяк; НовСтрока.СуммаКосяка = ВыборкаДетальныеЗаписи.СуммаК; НовСтрока.КТУ = "1.0"; КонецЦикла; |
|||
1
piter3
18.04.19
✎
14:51
|
Весельчаки)
|
|||
2
igork1966
18.04.19
✎
14:52
|
(0) бредовый запрос, по которому логика непонятна
"НарядТехнологии.Ссылка.Заявка" За это нужно бить канделябром |
|||
3
user-ok
18.04.19
✎
14:52
|
Я бы сказал "планокуры"
ТС открой для себя конструкцию ТЧЗП.Загрузить(Запрос.Выполнить.Выгрузить); к делу не относится, но писать меньше и читать проще |
|||
4
user-ok
18.04.19
✎
14:53
|
а вообще-то тебе вместо объединения, наверное, нужно левое соединеие
|
|||
5
НЕА123
18.04.19
✎
14:53
|
Объеденить нельзя, Соединить.(с) казнить нельзя помиловать.
|
|||
6
1Сергей
18.04.19
✎
14:59
|
"ВЫБРАТЬ
| КосякСотрудника.Наряд КАК Наряд, | КосякСотрудника.Сотрудник КАК Сотрудник, | КосякСотрудника.Ссылка КАК Косяк, | КосякСотрудника.СуммаК КАК СуммаК, | КосякСотрудника.Продукция КАК Продукция, | КосякСотрудника.Технология КАК Технология, | КосякСотрудника.Наряд.Сумма КАК Сумма |ИЗ | Документ.КосякСотрудника КАК КосякСотрудника |ГДЕ | КосякСотрудника.Наряд.Заявка = &Заявка "; |
|||
7
lodger
18.04.19
✎
15:06
|
(3) имхо... конструкция вида "ТЧЗП.Загрузить(Запрос.Выполнить.Выгрузить())" произведет 2 цикла с промежуточным помещением в память (может быть большой) таблицей. это помимо того, что в теле запроса и так существует эта же таблица. методологи 1ц рекомендуют использовать нативную конструкцию с выборкой, которая обежит таблицу, которая существует в теле запроса, не создавая промежуточную ТЗ. в ходе цикла выборки же и добавлять новые строки в ТЧ. если очень лениво писать то можно вызывать микроцикл с конструкцией вида ЗаполнитьЗначенияСвойств().
|
|||
8
user-ok
18.04.19
✎
15:08
|
(7) Не знал. Спасибо
|
|||
9
Darych
18.04.19
✎
15:10
|
(7) ток иногда так быстрее, когда грузишь потом сразу в тч... замерял
|
|||
10
1Сергей
18.04.19
✎
15:15
|
Какой-то быдлокодинг. В чью, необременённую голову интеллектом, пришла гениальная мысль так назвать документ?
|
|||
11
Sysanin_1ц
18.04.19
✎
15:18
|
(7) Вообще то никто не мешает 1с оптимизировать работу с таблицами значений. А так да, быстрее будет выполняться на ассемблере
|
|||
12
Sysanin_1ц
18.04.19
✎
15:19
|
(10) Особенно понравилось КосякСотрудника.Ссылка ))
|
|||
13
hhhh
18.04.19
✎
15:26
|
(12) по идее должно быть КосякСотрудников
|
|||
14
Sayan_mi
18.04.19
✎
15:31
|
А кто мешает ТЧЗП = РезультатЗапроса.Выгрузить, Предварительно добавив в запрос поле КТУ = "1.0";
|
|||
15
piter3
18.04.19
✎
15:39
|
А почему кту строка?
|
|||
16
Sayan_mi
18.04.19
✎
15:43
|
(15) не знаю почему в (0) КТУ строка.
|
|||
17
piter3
18.04.19
✎
15:44
|
(16)Так я к автору,забыл номер указать
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |