Версия для печати темы (https://pro1c.org.ua/index.php?s=7fd3731a7b3645cdece2064f483ce79e&showtopic=47892)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 7.7 _ не могу найти печатную форму 1C:Предприятие 7.7

Автор: 4andriy 19.09.18, 15:43

Процедура Печать()
    
    Работа = 0; ПечататьРаботуВНакладной = 0;
    Если глПечатьДокументовСписком = 0 Тогда
        спПечатныхФорм = глПолучитьСписокПечатныхФорм("Документ."+Вид());
        Если СчетВзаиморасчетов.Валютный = 1 Тогда
            глУдалитьЗначение(спПечатныхФорм,"РасходнаяНакладная_М20");
            глУдалитьЗначение(спПечатныхФорм,"РасходнаяНакладная_1ТН");
        КонецЕсли;
        
        Если ОдинВидТМЦ > 0 Тогда//по одному виду ТМЦ
            Если ВидТМЦ.ВидТМЦ <> Перечисление.ВидыТМЦ.Работа Тогда
                глУдалитьЗначение(спПечатныхФорм,"РасходнаяНакладная_Акт");
            Иначе
                Работа = 1;
            КонецЕсли;
        Иначе//по многим видам ТМЦ        
            тз = СоздатьОбъект("ТаблицаЗначений");
            ВыгрузитьТабличнуюЧасть(тз,"ВидТМЦвСтроке");
            тз.Свернуть("ВидТМЦвСтроке",);
            тз.ВыбратьСтроки();
            Пока тз.ПолучитьСтроку() = 1 Цикл
                Если тз.ВидТМЦвСтроке.ВидТМЦ = Перечисление.ВидыТМЦ.Работа Тогда
                    Работа = 1;
                КонецЕсли;
            КонецЦикла;
            Если Работа = 0 Тогда
                глУдалитьЗначение(спПечатныхФорм,"РасходнаяНакладная_Акт");
            КонецЕсли;    
        КонецЕсли;
        РежимПечати = глПечать(Контекст,"Документ." + Вид(), спПечатныхФорм);
        Если ПустоеЗначение(РежимПечати) = 1 Тогда
            Возврат;
        КонецЕсли;
    Иначе
        РежимПечати = глРежимПечатиСписком;
    КонецЕсли;
    Если (РежимПечати = "РасходнаяНакладнаяФакс") или (РежимПечати = "РасходнаяНакладнаяПечать") или
         (РежимПечати = "РасходнаяНакладная_Акт") Тогда
        глПараметрыТаблицы(,1);
    ИначеЕсли (РежимПечати = "РасходнаяНакладная_М20") или (РежимПечати = "РасходнаяНакладная_1ТН") Тогда
        глПараметрыТаблицы(,2);
    КонецЕсли;
    Если глУстановкаПараметровПечати(РежимПечати) = 0 Тогда Возврат КонецЕсли;
    //Сформировать(РежимПечати);
    Если ((РежимПечати = "РасходнаяНакладнаяФакс") или (РежимПечати = "РасходнаяНакладнаяПечать")) и
         (Работа = 1) Тогда
         ПечататьРаботуВНакладной = Вопрос("Включати роботи в документ ?",4);    
    КонецЕсли;


Интересует гжде можно поправить форму из РежимПечати = "РасходнаяНакладнаяПечать". Никак не могу найти.

Автор: cos12 19.09.18, 16:19

4andriy @ Сегодня, 16:43 * ,
спПечатныхФорм = глПолучитьСписокПечатныхФорм("Документ."+Вид());
глПолучитьСписокПечатныхФорм - смотрите какой список форм он вам возвращает и откуда берет

Автор: 1Cv77 19.09.18, 16:21

4andriy @ Сегодня, 14:43 * ,

СмотриТЕ в глобальном модуле Процедуру глПараметрыТаблицы(.... (или функцию)

Там же, в глобалке и таблицы нужные


 ! 

http://pro1c.org.ua/index.php?act=announce&id=2: 1
 

Автор: 4andriy 19.09.18, 19:44

1Cv77 @ Сегодня, 17:21 * ,

Функция глПолучитьСписокПечатныхФорм(Объект) Экспорт
    Перем сп;                                    
          
    сп = СоздатьОбъект("СписокЗначений");
    
    //по таблице заданных в системе форм
    глПечатныеФормы.ВыбратьСтроки();
    Пока глПечатныеФормы.ПолучитьСтроку() = 1 Цикл
        Если глПечатныеФормы.Объект = Объект Тогда
            сп.ДобавитьЗначение(глПечатныеФормы.Идентификатор,глПечатныеФормы.Представление);
        КонецЕсли;
    КонецЦикла;
    
    //дополнительные формы
    Спр = СоздатьОбъект("Справочник.ПечатныеФормы");
    Спр.ВыбратьЭлементыПоРеквизиту("Объект",Объект);
    Пока Спр.ПолучитьЭлемент() = 1 Цикл
        Если Спр.ПометкаУдаления() = 1 Тогда
            Продолжить;
        КонецЕсли;
        Если Спр.ФлагПечатнойФормы = 3 Тогда
            сп.ДобавитьЗначение("Дополнительно","==Додаткові==");
            Прервать;
        КонецЕсли;
    КонецЦикла;


функцию нашел, а сам бланк, который можно редактировать не могу найти.

4andriy @ Сегодня, 20:41 * ,

нашел!!! в общих таблицах!!! всем спасибо!!!

Автор: 1Cv77 19.09.18, 22:33

4andriy @ Сегодня, 18:44 * ,
Кто ищет, то - всегда найдет )))))))))

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua