|
Заполнение табличной части дока из выборки запроса. | ☑ | ||
---|---|---|---|---|
0
bizon2008
27.10.16
✎
12:46
|
Привет народ.
А гляньте плиз. Что-то я походу фигню рисую. Задача в принципе простая. Есть результат запроса, как только в нем меняется строка, надо ее записать в новую строку дока. ПерваяСтрока = Истина; Пока Выборка.Следующий() Цикл Если ПерваяСтрока Тогда ТекСтрока = Выборка.Продукция; ТекСтрТовары = НовДок.Товары.Добавить(); КонецЕсли; Если ТекСтрока <> Выборка.Продукция Тогда ТекСтрока = Выборка.Продукция; ТекСтрТовары = НовДок.Товары.Добавить(); КонецЕсли; ПерваяСтрока = Ложь; Сообщить(Строка(Выборка.Продукция) + " - " + Строка(Выборка.КодМарки)); КонецЦикла; |
|||
1
Лефмихалыч
27.10.16
✎
12:48
|
>Есть результат запроса, как только в нем меняется строка
ЩИТО?.. что значит "меняется строка"? |
|||
2
Ёпрст
27.10.16
✎
12:53
|
(0) воткни в запрос итоги по номенклатуре, не надо будет извратов с переменными, просто обойдешь группировку и добавишь строки с разной номенклатурой.
|
|||
3
bizon2008
27.10.16
✎
12:53
|
Ну типа
В запросе. Товар1 Товар1 Товар1 Товар1 Товар1 Товар2 Товар2 Товар2 Товар3 Товар3 В доке должно Товар1 Товар2 Товар3 Однако вот. |
|||
4
AlexToo
27.10.16
✎
12:53
|
Если правильно понял тебя, то вот так наверно сделал бы :
ТекСтрока =""; Пока Выборка.Следующий() Цикл Если ТекСтрока <> Выборка.Продукция Тогда ТекСтрока = Выборка.Продукция; ТекСтрТовары = НовДок.Товары.Добавить(); ТекСтрТовары = ТекСтрока ; Сообщить(Строка(Выборка.Продукция) + " - " + Строка(Выборка.КодМарки)); КонецЕсли; КонецЦикла; |
|||
5
bizon2008
27.10.16
✎
12:54
|
(2) Группировка там не катит, там хвост очень нужный.
|
|||
6
AlexToo
27.10.16
✎
12:54
|
ТекСтрТовары.КолонкаТаблицы = ТекСтрока ;
|
|||
7
Ёпрст
27.10.16
✎
12:55
|
(5) че ?
|
|||
8
bizon2008
27.10.16
✎
12:55
|
(4) О точно же ТекСтрока ="";. Спасибо.
|
|||
9
Михаил Козлов
27.10.16
✎
12:56
|
(5) И чем итоги мешают?
|
|||
10
bizon2008
27.10.16
✎
12:57
|
(7) И все. Некогда мне однако красивые запросы писать. Я потома еще зайду. Мну тут зулусы мешают, подумать.
|
|||
11
Лефмихалыч
27.10.16
✎
12:57
|
запросом выбрать те и только те строки, которые должны быть в ТЧ, а потом ТЧ.Загрузить(РезультатЗапроса.Выгрузить())
|
|||
12
Ёпрст
27.10.16
✎
12:58
|
(11) скорее всего, у него егаис и помимо номенклатуры, он еще заполняет еще одну таб часть с марками.
Один хрен, добавив одну строку в текст запроса селал бы решение красившее и понятнее |
|||
13
Ёпрст
27.10.16
✎
12:59
|
акт постановки на баланс лепит поди
|
|||
14
Михаил Козлов
27.10.16
✎
12:59
|
(10) Ну да - добавить строку в запрос "ИТОГИ ПО Номенклатура" много времени требует.
|
|||
15
bizon2008
27.10.16
✎
13:00
|
(12) Угуй. Я это, котелок допинаю, научишь потома, а? С меня коньяку будет. Запросы чето у мну полоховато получаются.
|
|||
16
LeReve
27.10.16
✎
13:29
|
(11) а в чем отличие между: >запросом выбрать те и только те строки
и запросом выбрать только те строки |
|||
17
Лефмихалыч
27.10.16
✎
13:29
|
(12) все равно это решается путем Загрузить(Выгрузить()), а не вот этим вот клюшкодавством из циклов, говна и палок
|
|||
18
Лефмихалыч
27.10.16
✎
13:30
|
(16) это разница между "необходимо" и "необходимо и достаточно"
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |