Имя: Пароль:
1C
1С v8
подскажите как в цикле делать такое.
,
0 zippygrill
 
25.06.12
10:48
задачка скорее всего тривиальная для многих.
есть сл. таблица https://dl.dropbox.com/u/9627383/Screens/img.jpg
пока тек. значение в колонке NDOC не отличается от следующей то скажем создать документ?
1 Адинэснег
 
25.06.12
10:49
выбери в запросе с группировкой, потом обход с группировкой
2 izekia
 
25.06.12
10:51
сравнивать с предыдущим значением никак?
3 Рэйв
 
25.06.12
10:51
ндосДО="QDFWEFSDF";
Для каждого Стр Из Таб Цикл
 Если Стр.ТекНДОС<>ндосДО Тогда
    //тут создаем новый док
 КонецЕсли;
 //тут заполняем
  //....


  ндосДО=Стр.ТекНДОС;
КонецЕсли;

//вконце записываем последний док
4 izekia
 
25.06.12
10:51
ндосДО=Неопределено;
так правильнее
5 Адинэснег
 
25.06.12
10:52
Пока ВыбДок.Следующий() Цикл
   // Создаем док, заполняем шапку
   ВыбНоменклатура = ВыбДок.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
   Пока ВыбНоменклатура.Следующий() Цикл
   // Заполняем ТЧ
   КонецЦикла;
   // Проводим
КонецЦикла;
6 Рэйв
 
25.06.12
10:53
(4)Да одна фигня:-)
7 zippygrill
 
25.06.12
10:54
(6) запрос понял как. больше интересует программно.
(3) спс. сейчас так попробую.
8 Rizhij_Nikitos
 
25.06.12
10:54
Если это табличное поле, тогда делай так:

СтараяСтрока="";
Для каждого Строка из ТабличноеПоле Цикл

Если Строка.NDOC<>СтараяСтрока Тогда
  НовыйДокумент=Документы.ИмяДокумента.НовыйДокумент();
  НовыйДокумент.Дата=ТекущаяДата();
  НовыйДокумент.Записать();
КонецЕсли;

СтараяСтрока=Строка.NDOC;

КонецЦикла;
9 zippygrill
 
25.06.12
10:56
(4) тип моей колонке строка и лучше будет ндосДО=""; :)
10 izekia
 
25.06.12
10:57
(9) ну изначально не было определено что значение не может быть пустой строкой, поэтому правильнее все же в (4)
11 zippygrill
 
25.06.12
10:58
(10) ага
12 Reset
 
25.06.12
11:00
(8) Табличное поле - это не коллекция. Не коллекция, ять.
13 Rizhij_Nikitos
 
25.06.12
11:02
(12)Я думаю меня все поняли.
Основная теорема систематики: Новые системы плодят новые проблемы.