Имя: Пароль:
1C
1C 7.7
v7: Нужно помощь по Нумерации строки
0 Popkorm
 
23.02.12
13:48
Не спец в 7.7,прошу помочь по НомерСтроки,не работает нумерация:
Процедура Сформировать()
   Перем Запрос, ТекстЗапроса, Таб;
   //Создание объекта типа Запрос
   Запрос = СоздатьОбъект("Запрос");
   ТекстЗапроса =
   "//{{ЗАПРОС(Сформировать)
   |Контрагенты = Справочник.Контрагенты.ТекущийЭлемент;
   |Менеджер = Справочник.Контрагенты.Менеджер;
   |МенеджерКанц = Справочник.Контрагенты.МенеджерКанц;
   |Группировка Контрагенты;
   |Условие(Менеджер в ВыбМенеджер);
   |"//}}ЗАПРОС
   ;
   // Если ошибка в запросе, то выход из процедуры
   Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
       Возврат;
   КонецЕсли;
   
   ТабЗапроса = СоздатьОбъект("ТаблицаЗначений");
   Запрос.Выгрузить(ТабЗапроса,1,0);
   // Подготовка к заполнению выходных форм данными запроса
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Сформировать");
   // Заполнение полей "Заголовок"
   Таб.ВывестиСекцию("Заголовок");
   Состояние("Заполнение выходной таблицы...");
   Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);  
   
//    Пока Запрос.Группировка(1) = 1 Цикл
   ТабЗапроса.ВыбратьСтроки();
   Пока ТабЗапроса.ПолучитьСтроку()=1 Цикл
       НомерСтр = 1;
       Если ТабЗапроса.Контрагенты.ЭтоГруппа() = 1 Тогда
           Продолжить;
       Иначе
       Менеджер=ТабЗапроса.Менеджер;
       Контрагенты=ТабЗапроса.Контрагенты;
         НомерСтроки=НомерСтр+1;
       Таб.ВывестиСекцию("Менеджер");
       КонецЕсли;
   КонецЦикла;
   // Вывод заполненной формы
   Таб.ТолькоПросмотр(1);
   Таб.Показать("Сформировать", "");
КонецПроцедуры
1 ПиН
 
23.02.12
13:50
НомерСтр = 1;

перед циклом должен стоять...
2 Popkorm
 
23.02.12
13:52
(1)в том то идело что перед циклом тож не работает
3 Sh1ko
 
23.02.12
13:53
(2) да ладно.
4 Rie
 
23.02.12
13:53
(2) Не только перед циклом поставь, но и зз цикла убери НомерСтр=1;
5 Popkorm
 
23.02.12
13:55
(3)вот так значение НомерСтр=2:
   НомерСтр = 1;  
   ТабЗапроса.ВыбратьСтроки();
   Пока ТабЗапроса.ПолучитьСтроку()=1 Цикл
       
       Если ТабЗапроса.Контрагенты.ЭтоГруппа() = 1 Тогда
           Продолжить;
       Иначе
       Менеджер=ТабЗапроса.Менеджер;
       Контрагенты=ТабЗапроса.Контрагенты;
         НомерСтроки=НомерСтр+1;
       Таб.ВывестиСекцию("Менеджер");
       КонецЕсли;
   КонецЦикла;
6 Popkorm
 
23.02.12
13:56
в 8-ке так работает
7 Sh1ko
 
23.02.12
13:56
(6) ахаха. это выход.
8 Rie
 
23.02.12
13:56
(5) А тебе как надо? Вот так:

Таб.ВывестиСекцию("Менеджер");
НомерСтр = НомерСтр+1;

(Внимательно!!!)
9 Sh1ko
 
23.02.12
13:57
У тебя в печатной форме что? НомерСтроки или НомерСтр?
10 Popkorm
 
23.02.12
13:59
(9)НомерСтроки
11 Rie
 
23.02.12
14:00
(10) Тогда
НомерСтроки = 1;
Пока ... Цикл
   НомерСтроки = НомерСтроки+1;
КонецЦикла;

Что-то одно - или НомерСтр, или НомерСтроки - но выбрать надо.
12 Popkorm
 
23.02.12
14:02
Все работает,всем спасибо,всех с праздником............