Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
26 Мар 2017, 00:35
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: (Не выводит в макет)  (Прочитано 615 раз)

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

Оффлайн GanG031

  • ***
  • Сообщений: 137
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-28
  • Сайт: 
  • Профессия: Ученик 1С
Доброго времени суток! Пишу отчет, точнее переделываю с обычных форм на управляемые, вот текст в управляемом приложении:

Процедура Сформировать(Команда)
   
    СформироватьНаСервере();

   
КонецПроцедуры

&НаСервере
Процедура СформироватьНаСервере()
      
   ТаличныйДокумент.Очистить();
   Запрос = Новый  Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |   СУММА(ПоступлениеТоваровУслуг.СуммаДокумента) КАК СуммаПокупок,
   |   СУММА(1) КАК КоличествоПокупок
   |ИЗ
   |   Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
   |ГДЕ
   |   ПоступлениеТоваровУслуг.Проведен = ИСТИНА
   |   И ПоступлениеТоваровУслуг.СуммаДокумента <= &СуммаДокумента
   |   И ПоступлениеТоваровУслуг.Дата МЕЖДУ &НачПериода И &КонПериода" ;
   Запрос.УстановитьПараметр("НачПериода", Период.ДатаНачала);
   Запрос.УстановитьПараметр("КонПериода",Период.ДатаОкончания);
   Запрос.УстановитьПараметр("СуммаДокумента", СуммаДокумента);
   Макет = РеквизитФормыВЗначение("Отчет").ПолучитьМакет("Макет");
   ОП = Макет.ПолучитьОбласть("Область");
   ОП.Параметры.ПериодОтчета = "" + Формат(Период.ДатаНачала, "ДФ=dd.MM.yyyy") + " - " + Формат(Период.ДатаОкончания, "ДФ=dd.MM.yyyy");
   
   ТабРез = Запрос.Выполнить().Выгрузить();
   Если Не ТабРез.Количество() = 0 Тогда
      ОП.Параметры.Заполнить(ТабРез[0]);
      ОП.Параметры.ТекущаяДата = ТекущаяДата();
      ТаличныйДокумент.Вывести(ОП);
   КонецЕсли   

КонецПроцедуры


Все это пишется в модуле формы, так же есть макет. Сам запрос верный, проверял в консоле запросов, но вот выводить в макет никак не хочет, выыводит только пустой макет. Я так понимаю, что не правильно передал какие то параметры, но вот не пойму  где ошибка...Подскажите пожалуйста! Заранее спасибо!




Оффлайн GanG031

  • ***
  • Сообщений: 137
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-28
  • Сайт: 
  • Профессия: Ученик 1С
Период - Реквизит формы, имеющий тип "Стандартный период"

Оффлайн LexaK

  • *****
  • Сообщений: 1173
  • РЕПУТАЦИЯ: 313
  • КПД: 27%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
необходимо сформировать табличный документ, вернуть его на клента и там его показать
ваш код с небольшими корректировками, попробуйте


&НаКлиенте
Процедура Сформировать(Команда)
    лкТаб = 0;
    СформироватьНаСервере(лкТаб);
    лкТаб.Показать(,,Ложь);
   
КонецПроцедуры

&НаСервере
Процедура СформироватьНаСервере(лкТаб)

   лкТаб = Новый ТабличныйДокумент;

   //ТаличныйДокумент.Очистить();
   Запрос = Новый  Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |   СУММА(ПоступлениеТоваровУслуг.СуммаДокумента) КАК СуммаПокупок,
   |   СУММА(1) КАК КоличествоПокупок
   |ИЗ
   |   Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
   |ГДЕ
   |   ПоступлениеТоваровУслуг.Проведен = ИСТИНА
   |   И ПоступлениеТоваровУслуг.СуммаДокумента <= &СуммаДокумента
   |   И ПоступлениеТоваровУслуг.Дата МЕЖДУ &НачПериода И &КонПериода" ;
   Запрос.УстановитьПараметр("НачПериода", Период.ДатаНачала);
   Запрос.УстановитьПараметр("КонПериода",Период.ДатаОкончания);
   Запрос.УстановитьПараметр("СуммаДокумента", СуммаДокумента);
   Макет = РеквизитФормыВЗначение("Отчет").ПолучитьМакет("Макет");
   ОП = Макет.ПолучитьОбласть("Область");
   ОП.Параметры.ПериодОтчета = "" + Формат(Период.ДатаНачала, "ДФ=dd.MM.yyyy") + " - " + Формат(Период.ДатаОкончания, "ДФ=dd.MM.yyyy");
   
   ТабРез = Запрос.Выполнить().Выгрузить();
   //таблицу лучше обходить для каждого ...
   //такой код подходит для всех случаев 0 строк в таблице, 1 или несколько
   Для каждого лкСтр из ТабРез Цикл   
      ОП.Параметры.Заполнить(лкСтр);
      ОП.Параметры.ТекущаяДата = ТекущаяДата();
      лкТаб.Вывести(ОП);
   КонецЦикла;

   //Если Не ТабРез.Количество() = 0 Тогда
      //ОП.Параметры.Заполнить(ТабРез[0]);
      //ОП.Параметры.ТекущаяДата = ТекущаяДата();
      //лкТаб.Вывести(ОП);
   //КонецЕсли   

КонецПроцедуры

Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн GanG031

  • ***
  • Сообщений: 137
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-28
  • Сайт: 
  • Профессия: Ученик 1С
Ругается: Переменная не определена (лкТаб)
в процедуре свормировать я ее объявил как у вас, лкТаб = 0....
Добавлено: 23 Мар 2016, 13:27

эммм...мне нужно вывести в табличный документ, который уже есть на форме. Сделал вот так:

&НаКлиенте
Процедура Сформировать(Команда)
   
    СформироватьНаСервере();
     ТаличныйДокумент.Показать(,,Ложь);

   
КонецПроцедуры

&НаСервере
Процедура СформироватьНаСервере()
   ЛкТаб = Новый ТабличныйДокумент;   
   ТаличныйДокумент.Очистить();
   Запрос = Новый  Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |   СУММА(ПоступлениеТоваровУслуг.СуммаДокумента) КАК СуммаПокупок,
   |   СУММА(1) КАК КоличествоПокупок
   |ИЗ
   |   Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
   |ГДЕ
   |   ПоступлениеТоваровУслуг.Проведен = ИСТИНА
   |   И ПоступлениеТоваровУслуг.СуммаДокумента <= &СуммаДокумента
   |   И ПоступлениеТоваровУслуг.Дата МЕЖДУ &НачПериода И &КонПериода" ;
   Запрос.УстановитьПараметр("НачПериода", Период.ДатаНачала);
   Запрос.УстановитьПараметр("КонПериода",Период.ДатаОкончания);
   Запрос.УстановитьПараметр("СуммаДокумента", СуммаДокумента);
   Макет = РеквизитФормыВЗначение("Отчет").ПолучитьМакет("Макет");
   ОП = Макет.ПолучитьОбласть("Область");
   ОП.Параметры.ПериодОтчета = "" + Формат(Период.ДатаНачала, "ДФ=dd.MM.yyyy") + " - " + Формат(Период.ДатаОкончания, "ДФ=dd.MM.yyyy");
   
   ТабРез = Запрос.Выполнить().Выгрузить();
   //Если Не ТабРез.Количество() = 0 Тогда
   //   ОП.Параметры.Заполнить(ТабРез[0]);
   //   ОП.Параметры.ТекущаяДата = ТекущаяДата();
   //   ТаличныйДокумент.Вывести(ОП);
   //КонецЕсли   
   Для каждого лкСтр Из ТабРез Цикл
   
          ОП.Параметры.Заполнить(лкСтр);
      ОП.Параметры.ТекущаяДата = ТекущаяДата();
      ТаличныйДокумент.Вывести(ОП);
   
   КонецЦикла;


но что то опять нет то...

Последний раз редактировалось: GanG031; 23 Мар 2016, 13:27. Причина: Объединение сообщений

Оффлайн LexaK

  • *****
  • Сообщений: 1173
  • РЕПУТАЦИЯ: 313
  • КПД: 27%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
ну вы блин даете!!! откуда у вас пальцы растут? что уже даже не можете кусок кода скопировать один в один!!! :angry:
я же прислал вам ваш же, исправленный код!
а вы запускаете совсем не то, и пишите про ошибки! :wacko:

да-а-а, клиника. :^454^:
Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн GanG031

  • ***
  • Сообщений: 137
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-28
  • Сайт: 
  • Профессия: Ученик 1С
а как вывести в табличный документ, который размещен на форме?


Теги:
 

Где лежит макет "Ценники на товары"

Автор hunterr5Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 2210
Последний ответ 28 Сен 2010, 11:22
от hunterr5
вывести макет с внешн. отчета в табличную часть отчета..

Автор sergei82Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 7
Просмотров: 4138
Последний ответ 28 Янв 2010, 09:07
от Slin
Макет "Счет на оплату (с учетом корректировок)" в УПП 8.2

Автор isiterРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 4427
Последний ответ 21 Ноя 2013, 12:36
от isiter
Как изменить макет печатной формы документа "Прием в ремонт" УНФ 1.6 Платформа 8.3

Автор AlexK39Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 325
Последний ответ 11 Дек 2016, 15:32
от cast
как найти макет"Расход с розничных складов в ценах АТТ" в УТТ 10.3?

Автор JalibРаздел Пользователям "1С - Предприятие 8"

Ответов: 4
Просмотров: 468
Последний ответ 06 Ноя 2016, 18:24
от alex0402

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
143 Сообщений
alex0402
112 Сообщений
Norfolk
51 Сообщений
LexaK
45 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
друган
21 Сообщений
AsadRoman
20 Сообщений
alexandr_ll
19 Сообщений
Константин5825
18 Сообщений
MrLvovsky MrLvovsky
16 Сообщений

* Кто онлайн

  • Точка Гостей: 144
  • Точка Скрытых: 0
  • Точка Пользователей: 5
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 

Dellos Catering - выездной ресторан кейтеринг по всему Миру
SimplePortal 2.3.5 © 2008-2012, SimplePortal