Вход | Регистрация


Заполнение табличной части дока из выборки запроса.

Заполнение табличной части дока из выборки запроса.
Я
   bizon2008
 
27.10.16 - 12:46
Привет народ.
А гляньте плиз.
Что-то я походу фигню рисую.
Задача в принципе простая. Есть результат запроса, как только в нем меняется строка, надо ее записать в новую строку дока.
ПерваяСтрока = Истина;
       
    Пока Выборка.Следующий() Цикл
        Если ПерваяСтрока Тогда
              ТекСтрока = Выборка.Продукция;
              ТекСтрТовары = НовДок.Товары.Добавить();
        КонецЕсли;
        Если ТекСтрока <> Выборка.Продукция Тогда
            ТекСтрока = Выборка.Продукция;
            ТекСтрТовары = НовДок.Товары.Добавить();
        КонецЕсли;
          
  
          
          
           ПерваяСтрока = Ложь;
        
    Сообщить(Строка(Выборка.Продукция) + " - " + Строка(Выборка.КодМарки));
    КонецЦикла;
 
 
   Лефмихалыч
 
1 - 27.10.16 - 12:48
>Есть результат запроса, как только в нем меняется строка

ЩИТО?.. что значит "меняется строка"?
   Ёпрст
 
2 - 27.10.16 - 12:53
(0) воткни в запрос итоги по номенклатуре, не надо будет извратов с переменными, просто обойдешь группировку и добавишь строки с разной номенклатурой.
   bizon2008
 
3 - 27.10.16 - 12:53
Ну типа
В запросе.
Товар1
Товар1
Товар1
Товар1
Товар1
Товар2
Товар2
Товар2
Товар3
Товар3
В доке должно
Товар1
Товар2
Товар3

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

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует