Имя: Пароль:
1C
 
ЗУП. Программное формирование табеля
0 sound
 
27.04.15
17:46
Братия и други, хелп!
Нужно в ЗУПе программно создать отчет "УнифицированнаяФормаТ13", установить отбор по подразделению, сформировать отчет и результат сохранить в Ексель.
Что-то вроде этого:

    ОтчетТабель = отчеты.УнифицированнаяФормаТ13.Создать();
    ОтчетТабель.КомпоновщикНастроек.Настройки.Отбор.Подразделение = Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000001012");
    ТабДок = Новый ТабличныйДокумент;
    ОтчетТабель.СформироватьОтчет(ТабДок);
    ТабДок.Показать();

Как сделать правильно, подскажите?
1 Cyberhawk
 
27.04.15
17:52
А в чем конкретно затык?
2 sound
 
27.04.15
17:59
(1) Да собственно затык в том что программно не знаю как это сделать. То есть нужно в итоге получить печатную форму данного отчета по конкретному выбранному подразделению
3 sound
 
27.04.15
18:05
Ну да, и за выбранный период соответственно
4 kumena
 
27.04.15
18:07
а зайти в документ табель и подсмотреть там слабо?
5 sound
 
27.04.15
18:26
(4) а причем тут документ? Или документ тоже программно этот отчет вызывает?
6 sound
 
27.04.15
19:06
(4) Все, спасибки за наводку, сделал так:

    ФильтрСоответствия = Новый Соответствие;
    
    ФильтрСоответствия.Вставить("Организация", Организация);
    ФильтрСоответствия.Вставить("Подразделение", Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000001012"));
    
    ФильтрСоответствия.Вставить("ОтборОрганизации", Истина);
    ФильтрСоответствия.Вставить("ОтборПодразделения", Истина);
    
    ФильтрСоответствия.Вставить("ВидСравненияОрганизации", ВидСравнения.Равно);
    ФильтрСоответствия.Вставить("ВидСравненияПодразделения", ВидСравнения.Равно);
    //ФильтрСоответствия.Вставить("ВидСравненияПодразделения", ВидСравнения.ВИерархии);
    
    ФильтрСоответствия.Вставить("ДатаНачала", НачалоДня(НачПериода));
    ФильтрСоответствия.Вставить("ДатаОкончания", КонецДня(КонПериода));
    
    ФильтрСоответствия.Вставить("ДатаЗаполнения",    ТекущаяДата());
    ФильтрСоответствия.Вставить("НомерДокумента",    "");
    ФильтрСоответствия.Вставить("ОтветственноеЛицо", ПараметрыСеанса.ТекущийПользователь);
    
    
    ТабДокумент = Новый ТабличныйДокумент;    
    ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Т13";
    ТабДокумент.АвтоМасштаб        = Истина;
    ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    ТабДокумент.Очистить();
    
    Отчет = Отчеты.УнифицированнаяФормаТ13.Создать();
    Отчет.УстановитьФильтр(ФильтрСоответствия);
    ТекстОшибки = "";
    Отчет.СформироватьОтчет(ТабДокумент, "Табель", ТекстОшибки);
    ТабДокумент.Показать();
7 Бертыш
 
27.04.15
19:29
(6) За наводку бы
на водку бы.

А вообще основой программирования в 1С всегда было чтение кода типовых. Тем более если надо типовую допиливать.
8 sound
 
27.04.15
19:40
(7) ну не жадничай, братан, тут вроде все помогают друг другу без водки :))
9 sound
 
28.04.15
08:53
тему можно закрывать )