Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 мар 2024, 17:22

Re: 1с 7.7 Склад Ошибка

Автор antoha86, 28 фев 2014, 17:46

0 Пользователей и 1 гость просматривают эту тему.

antoha86

Помогите пожалуйста, отчет не выводит запрос с регистра Партии товаров, ошибок не выдает

Текст модуля:
Перем КолГруппировок, Таб;
Процедура ПриОткрытии()
   СЗ.ДобавитьЗначение("Номенклатура");
   СЗ.ДобавитьЗначение("Контрагент");   
КонецПроцедуры

Процедура СдвинутьЗначение ()
   Если СЗ.ТекущаяСтрока()=1 Тогда
      СЗ.СдвинутьЗначение(1, СЗ.ТекущаяСтрока());
   Иначе
      СЗ.СдвинутьЗначение(-1,СЗ.ТекущаяСтрока());
   КонецЕсли;
КонецПроцедуры 
Процедура СформироватьТаблицу(Запрос, НомГруппировки)   
   Отступ="";
   нн=0;
   Если НомГруппировки<>1 Тогда
      Для КолСимвТабуляции=1 По НомГруппировки Цикл
         Отступ=Отступ+"  ";
      КонецЦикла;
   КонецЕсли;
   Пока Запрос.Группировка(НомГруппировки)=1 Цикл
      Значение=Отступ+Запрос.ЗначениеУпорядочивания(НомГруппировки);
      Сумма=Запрос.Сумма;
      Если Запрос.Номенклатура.ЭтоГруппа()=1 Тогда
         Таб.ВывестиСекцию("Группа");
      Иначе
         нн=нн+1;
         Таб.ВывестиСекцию("Строка");
      КонецЕсли;
      Если НомГруппировки <> КолГруппировок Тогда
         СформироватьТаблицу(Запрос, НомГруппировки+1);
      КонецЕсли;
   КонецЦикла;
КонецПроцедуры

Процедура Сформировать()
   Таб=СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Сформировать");
   Таб.ВывестиСекцию("Шапка");
   Запрос=СоздатьОбъект("Запрос");
   
   ТекстЗапроса=
   "//((ЗАПРОС(Запрос1)
   |Период с НачДата по КонДата;
   |Номенклатура=Регистр.Прибыль.Номенклатура;
   |Контрагент=Регистр.Прибыль.Контрагент;
   |Сумма=Регистр.Прибыль.Сумма;
   |Партия=Регистр.ПартииТоваров.Партия;
   |Функция Прибыль=Сумма(Сумма);";
   
   КолГруппировок=0;
   Для Ном=1 По СЗ.РазмерСписка() Цикл
      Если СЗ.Пометка(Ном)=1 Тогда
         ТекстЗапроса=ТекстЗапроса+"
         |Группировка "+ СЗ.ПолучитьЗначение(Ном)+";"; //СЗ.ПолучитьЗначение(Ном);"
         КолГруппировок=КолГруппировок+1;
      КонецЕсли;
   КонецЦикла;
   Если КолГруппировок = 0 Тогда
      Предупреждение("Нельзя построить отчет без группировок!",60);
      Возврат;
   КонецЕсли;
   Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
      Возврат;
   КонецЕсли;
   СформироватьТаблицу(Запрос,1);
   Таб.ТолькоПросмотр(1);
   Таб.Опции(0,0,0,0);
   Таб.Показать("");
КонецПроцедуры

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск