| 
    
        
     
     | 
    
  | 
Напечатать документы из отчета | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Sochinec    
     19.06.24 
            ✎
    17:56 
 | 
         
        УНФ 
 
        Сделан свой отчет на СКД Прошу подсказать - необходимо распечатать все документы необходимой печатной формой смысл такой - одним клиентам будет одна печатная форма - другим другая Отчет сделан . форма отчета то же 1 - как получить массив документов из отчета 2 -ну и вывести этот массив на печать Спасибо  | 
|||
| 
    1
    
        ЖНЕЦ    
     19.06.24 
            ✎
    18:35 
 | 
         
        (0) Элементарно
 
        в расшифровку контрагента - массив документов в расшифровку КНОПКИ - массив контрагентов нажал на кнопку -цикл по контрагентами (у них должен признак какой макет печатать) по всем его документам - печать  | 
|||
| 
    2
    
        Sochinec    
     20.06.24 
            ✎
    12:32 
 | 
         
        Не получилось ... сделал обработку где заполнена ТЧ ссыками док реализация 
 
        подскажите что должно быть в коде что бы масово напечатать УПД Спасибо  | 
|||
| 
    3
    
        Волшебник    
     20.06.24 
            ✎
    12:34 
 | 
         
        (2) цикл     
         | 
|||
| 
    4
    
        Sochinec    
     20.06.24 
            ✎
    12:37 
 | 
         
        (3) да помню что надо создать массив док и передать - а куда не помню в бсп -))
 
        Но там еще у меня будет что для разных кл разная печ форма  | 
|||
| 
    5
    
        Волшебник    
     20.06.24 
            ✎
    12:39 
 | 
         
        (4) попроб-й всё таки напис прог код и покаж его нам что б мы заценили, крут ты или чушь городиш_ъ
 
        Как слышно, приём?  | 
|||
| 
    6
    
        Михаил Козлов    
     20.06.24 
            ✎
    12:40 
 | 
         
        Посмотрите в Вашей конфигурации, что является менеджером печати для УПД. В КА - обработка ПечатьОбщихФорм. Скорее всего, у менеджера печати есть процедура Печать(...), в которую нужно передать массив ссылок на счета-фактуры выданные.
 
        Т.е. предварительно нужно эти СФ создать (и заполнить. Например, установить дату СФ). Либо (3) в цикле создать СФ и распечатать. Либо просто создать СФ, а печать массива документов - штатными средствами.  | 
|||
| 
    7
    
        Мультук    
     гуру 
    20.06.24 
            ✎
    12:51 
 | 
         
        (0) 
 
        Как я понимаю суть задачи. Есть отчёт на СКД. Пользователь вводит свои параметры и отборы, жмёт кнопку -- и отчёт выводит ему некий список документов (возможно с доп.полями: контрагент, сумма и т.п.) Далее пользователь хочет по нажатию кнопки для каждого документа, что есть в отчете, напечатать некие печатные формы У Sochinec по этому поводу вопрос: а как достать эти самые ссылки на документы из готового отчёта? 1) Вариант 1 В тайне от пользователя сформировать отчёт еще раз, но не в табличный документ, а в таблицуЗначений Минусы: -- отчёт то поменяется -- если структура отчёта это "таблица", то ничего не выйдет 2) Обойти расшифровки отчёта и достать данные оттуда Нюанс: скорее всего по нужному полю должна быть группировка (не проверял) Пример из СКД отчёта (но увы под обычные формы, возможно для УФ нужно что-то "подправить" Функция МассивКонтрагентов() ТипЛяля = Тип("СправочникСсылка.Контрагенты"); мас = Новый Массив; Для каждого строка из ДанныеРасшифровки.Элементы Цикл Если ТипЗнч(строка) = Тип("ЭлементРасшифровкиКомпоновкиДанныхПоля") Тогда ПоляЭлемента = Строка.ПолучитьПоля(); Для каждого строкаПоля из ПоляЭлемента Цикл Если строкаПоля.поле = "Контрагент" и типЗнч(строкаПоля.Значение) = ТипЛяля Тогда Если мас.Найти(строкаПоля.Значение) = неопределено Тогда мас.Добавить(строкаПоля.Значение); КонецЕсли; КонецЕсли; КонецЦикла; КонецЕсли; КонецЦикла; Возврат мас; КонецФункции 3) Еще вариант? Не знаю.  | 
|||
| 
    8
    
        Sochinec    
     20.06.24 
            ✎
    14:07 
 | 
         
        (5) заказы сделал 
 
        МасДок = новый Массив; Для Каждого стр из Объект.Документы цикл Если стр.пп тогда МасДок.Добавить(стр.Заказ); Конецесли; КонецЦикла; ИмяМенеджераПечати = "Документ.ЗаказПокупателя"; ИменаМакетов = "ЗаказПокупателя"; ДополнительныеПараметрыПечати = Новый Структура(); // здесь можно передать необходимые дополнительные параметры, которые будут видны в функции печати ПараметрыПечати = Новый Структура("ЗаголовокФормы,Идентификатор,ДополнительныеПараметры","Заказ Покупателя","ЗаказПокупателя",ДополнительныеПараметрыПечати); МассивОбъектов = Новый Массив(); УправлениеПечатьюКлиент.ВыполнитьКомандуПечати(ИмяМенеджераПечати, ИменаМакетов, МасДок, ЭтотОбъект, ПараметрыПечати);  | 
|||
| 
    9
    
        Sochinec    
     20.06.24 
            ✎
    14:11 
 | 
         
        так то работает - но думал что задействовать Общую Форму "ПечатьДокументов"     
         | 
|||
| 
    10
    
        Sochinec    
     20.06.24 
            ✎
    14:25 
 | 
         
        А вот с УПД как я понимаю печатается через 
 
        Обработка.ПечатьСчетФактура.УниверсальныйПередаточныйДокумент точнее не понимаю как -))  | 
|||
| 
    11
    
        Kongo2019    
     20.06.24 
            ✎
    14:31 
 | 
         
        В типовых сделано так что обработка печати на входе получает массив доков. Ну чтобы можно было несколько выделить их списка и напечатать сразу. Может сюда как-то привязаться?     
         | 
|||
| 
    12
    
        Sochinec    
     20.06.24 
            ✎
    14:54 
 | 
         
        понимаю что кол экземпляров надо задать в "ДополнительныеПараметрыПечати" но не вижу как называется значение     
         | 
|||
| 
    13
    
        Sochinec    
     20.06.24 
            ✎
    15:04 
 | 
         
        ДополнительныеПараметрыПечати = Новый Структура(); ДополнительныеПараметрыПечати.Вставить("КоличествоЭкземпляров", 2);
 
        ПараметрыПечати = Новый Структура("ЗаголовокФормы,Идентификатор,ДополнительныеПараметры","Накладная","Накладная",ДополнительныеПараметрыПечати); Все равно 1 ввывел Экземпляров - то же не взлетело  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |