|
Как программно сформировать отчет. | ☑ | ||
---|---|---|---|---|
0
Wasp16
17.07.12
✎
09:31
|
Суть такова:
Необходимо сформировать отчет при запуске 1С. Делаю следующее: в общий модуль в процедуру ПриНачалеРаботыСистемы кидаю следующий код, но отчет открывается, но не формируется. Что делаю не так, подскажите пожалуйста: СписокПлатежек=Отчеты.СписокПлатежек.ПолучитьФорму("ФормаОтчета"); СписокПлатежек.Открыть(); СписокПлатежек.Обновить(); |
|||
1
Stim
17.07.12
✎
09:31
|
скд?
|
|||
2
Pro-tone
модератор
17.07.12
✎
09:37
|
Если скд, то программно надо задать настройки сперва, и обновить() тут лишнее
|
|||
3
Wasp16
17.07.12
✎
09:37
|
да, скд.
а как задать настройки? |
|||
4
Pro-tone
модератор
17.07.12
✎
09:38
|
и форму с параметрами не так получать надо, а просто через ПолучитьФорму() или ОткрытьФорму()
|
|||
5
Stim
17.07.12
✎
09:41
|
а зачем форму? выбирай компоновщик, задавай параметры, формируй и выводи в свой табличныйДокумент
|
|||
6
Stim
17.07.12
✎
09:42
|
форма - она нужна только для отчета
|
|||
7
Wasp16
17.07.12
✎
09:43
|
а что за компоновщик? я очень очень low level в 1с...
простите за тупые вопросы |
|||
8
Wasp16
17.07.12
✎
09:44
|
необходимо потом этот документ после всего сохранить в виде HTML документа
|
|||
9
Stim
17.07.12
✎
09:46
|
гугл тебе в руки
|
|||
10
AaNnDdRrEeYy
17.07.12
✎
09:47
|
//при начале работы системы
Открытьформу("Отчеты.ТвойОтчет.Форма"); //в отчете при создании на сервере СкомпоноватьРезультат(); |
|||
11
AaNnDdRrEeYy
17.07.12
✎
09:47
|
ОтчетОбъект.<Имя отчета> (ReportObject.<Имя отчета>)
СкомпоноватьРезультат (ComposeResult) Синтаксис: СкомпоноватьРезультат(<Результат>, <ИнформацияРасшифровки>) Параметры: <Результат> (обязательный) Тип: ТабличныйДокумент. Табличный документ, в который будет выводиться результат. <ИнформацияРасшифровки> (необязательный) Переменная, в которую будет записана информация расшифровки. Если не указано - расшифровка заполняться не будет. Описание: Выполняет компоновку. Доступность: Сервер, толстый клиент, внешнее соединение. Примечание: Пользователь может при помощи комбинации клавиш Ctrl+Break прервать выполнение отчета. При этом будет вызвано исключение. |
|||
12
Wasp16
17.07.12
✎
09:53
|
уже обгуглил все, найти похожий код не могу никак(((
|
|||
13
Wasp16
17.07.12
✎
10:13
|
Не могли бы вы на примере показать как это работает, не могу разобраться в синтаксисе
|
|||
14
Wasp16
17.07.12
✎
10:58
|
Я правильно понимаю: можно вызвать программно команду "сформировать" с настройками по умолчанию?
Или же нужно задавать параметры, как в запросе ЗАПРОС ИЗ ? |
|||
15
AaNnDdRrEeYy
17.07.12
✎
11:59
|
Что конкретно тут не понятно?
Процедура ПриНачалеРаботыСистемы() ОткрытьФорму("Отчеты.ИмяТвоегоОтчета.Форма"); КонецПроцедуры //в модуле формы отчета &НаСервере Процедура ПриСозданиинаСервере() СкомпоноватьРезультат(); КонецПроцедуры |
|||
16
Wasp16
17.07.12
✎
12:14
|
разобрался сам, при инициализации необходимо довнести процедуру формирования отчета.
Причем данная тема не работает под СКД, а только через конструктор запросов. Процедура Отчет1Инициализация() //{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПОСТРОИТЕЛЬОТЧЕТА_ИНИЦИАЛИЗАЦИЯ(Отчет1) // Данный фрагмент построен конструктором. // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!! ПостроительОтчетаОтчет1.Текст = "ВЫБРАТЬ | ПлатежноеПоручение.Номер, | ПлатежноеПоручение.Дата КАК Дата, | ПлатежноеПоручение.Организация, | ПлатежноеПоручение.Контрагент, | ПлатежноеПоручение.СуммаДокумента, | ПлатежноеПоручение.ИННПолучателя |ИЗ | Документ.ПлатежноеПоручение КАК ПлатежноеПоручение | |УПОРЯДОЧИТЬ ПО | Дата"; ПостроительОтчетаОтчет1.ЗаполнитьНастройки(); ПостроительОтчетаОтчет1.ЗаполнениеРасшифровки = ВидЗаполненияРасшифровкиПостроителяОтчета.ЗначенияГруппировок; ПостроительОтчетаОтчет1.ТекстЗаголовка = "Платежные поручения"; Настройка = ВосстановитьЗначение("НастройкаОтчетыСписокПлатежекОтчет1_64944573-045d-46b2-ba5d-0d2b1b51e8a1"); Если Настройка <> Неопределено Тогда ПостроительОтчетаОтчет1.УстановитьНастройки(Настройка); КонецЕсли; Отчет1Вывести(); //}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПОСТРОИТЕЛЬОТЧЕТА_ИНИЦИАЛИЗАЦИЯ КонецПроцедуры Процедура Отчет1Вывести() //{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПОСТРОИТЕЛЬОТЧЕТА_ВЫПОЛНИТЬ(Отчет1) // Данный фрагмент построен конструктором. // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!! ЭлементыФормы.ПолеТабличногоДокумента.Очистить(); ПостроительОтчетаОтчет1.Выполнить(); ПостроительОтчетаОтчет1.РазмещениеИзмеренийВСтроках = ТипРазмещенияИзмерений.Вместе; ПостроительОтчетаОтчет1.РазмещениеРеквизитовИзмеренийВСтроках = ТипРазмещенияРеквизитовИзмерений.Отдельно; ПостроительОтчетаОтчет1.РазмещениеРеквизитовИзмеренийВКолонках = ТипРазмещенияРеквизитовИзмерений.Отдельно; ПостроительОтчетаОтчет1.МакетОформления = ПолучитьМакетОформления(СтандартноеОформление.Классика); ПостроительОтчетаОтчет1.Вывести(ЭлементыФормы.ПолеТабличногоДокумента); //}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПОСТРОИТЕЛЬОТЧЕТА_ВЫПОЛНИТЬ КонецПроцедуры |
|||
17
Wasp16
17.07.12
✎
12:15
|
Большое Спасибо за помощь, друзья!
|
|||
18
AaNnDdRrEeYy
17.07.12
✎
12:38
|
(17)Построитель запроса это не разу не скд
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |