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

Как вывести отчет горизонтально!

Автор SpiritDark, 28 мар 2012, 13:19

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

SpiritDark

Скажите плз как вывести отчет по горизонтали??? Заранее огромное спасибо)

cska-fanat-kz

Вместо Вывести() делай Присоединить()
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

SpiritDark

Сделал как ты написал но горизонтально не вывел

   Макет = Отчеты.ОстаткиТМЦ.ПолучитьМакет("Макет1");
   Запрос = Новый Запрос;
   Запрос.Текст =
      "ВЫБРАТЬ
      |   ОстаткиТоваровОстаткиИОбороты.Номенклатура КАК Номенклатура,
      |   ОстаткиТоваровОстаткиИОбороты.КоличествоКонечныйОстаток,
      |   ОстаткиПоСкладамОстаткиИОбороты.Склад КАК Склад
      |ИЗ
      |   РегистрНакопления.ОстаткиТоваров.ОстаткиИОбороты КАК ОстаткиТоваровОстаткиИОбороты
      |      ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиПоСкладам.ОстаткиИОбороты КАК ОстаткиПоСкладамОстаткиИОбороты
      |      ПО ОстаткиТоваровОстаткиИОбороты.Номенклатура = ОстаткиПоСкладамОстаткиИОбороты.Номенклатура
      |ИТОГИ ПО
      |   Номенклатура,
      |   Склад";

   Результат = Запрос.Выполнить();

   ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
   ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
   ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
   ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");
   ОбластьНоменклатура = Макет.ПолучитьОбласть("Номенклатура");
   ОбластьСклад = Макет.ПолучитьОбласть("Склад");
   ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");

   ТабДок.Очистить();
   ТабДок.Вывести(ОбластьЗаголовок);
   ТабДок.Вывести(ОбластьШапкаТаблицы);

   ВыборкаНоменклатура = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

   Пока ВыборкаНоменклатура.Следующий() Цикл
      ОбластьНоменклатура.Параметры.Заполнить(ВыборкаНоменклатура);
      ТабДок.Вывести(ОбластьНоменклатура);

      ВыборкаСклад = ВыборкаНоменклатура.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

      Пока ВыборкаСклад.Следующий() Цикл
         ОбластьСклад.Параметры.Заполнить(ВыборкаСклад);
         ТабДок.Присоединить(ОбластьСклад);

         ВыборкаДетальныеЗаписи = ВыборкаСклад.Выбрать();

         Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
            ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
            ТабДок.Присоединить(ОбластьДетальныхЗаписей);
         КонецЦикла;
      КонецЦикла;
   КонецЦикла;

   ТабДок.Вывести(ОбластьПодвалТаблицы);
   ТабДок.Вывести(ОбластьПодвал);

cska-fanat-kz

Областью в этом случае должны быть не строки, а колонки.
Мне так кажется...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

has

Цитата: cska-fanat-kz от 28 мар 2012, 14:54
Областью в этом случае должны быть не строки, а колонки.
Мне так кажется...
+ либо их пересечение

Теги:

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

Рейтинг@Mail.ru

Поиск