Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Дополнение к внешней печатной форме          
GTown Подменю пользователя
сообщение 11.07.13, 8:50
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 2
Спасибо сказали: 0 раз
Рейтинг: 0

Здравствуйте, в реализации тмз есть внешняя печатная форма, не получается дописать в модуле, чтобы комментарий из документа отображался в печатной форме.

Процедура КнопкаВыполнитьНажатие(Кнопка)
    
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект);
    Запрос.УстановитьПараметр("Дата", СсылкаНаОбъект.Дата);
    Запрос.Текст =
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |    РеализацияТоваровУслуг.Номер,
    |    РеализацияТоваровУслуг.Дата,
    |    РеализацияТоваровУслуг.ДоговорКонтрагента,
    |    РеализацияТоваровУслуг.Контрагент КАК Получатель,
    |    РеализацияТоваровУслуг.Организация,
    |    РеализацияТоваровУслуг.Организация КАК Поставщик,
    |    РеализацияТоваровУслуг.СуммаДокумента,
    |    РеализацияТоваровУслуг.ВалютаДокумента,
    |    РеализацияТоваровУслуг.УчитыватьНДС,
    |    РеализацияТоваровУслуг.СуммаВключаетНДС,
    |    РеализацияТоваровУслуг.УчитыватьАкциз,
    |    РеализацияТоваровУслуг.СуммаВключаетАкциз,
    |    РеализацияТоваровУслуг.КурсВзаиморасчетов,
    |    РеализацияТоваровУслуг.КратностьВзаиморасчетов,
    |    РеализацияТоваровУслуг.Грузополучатель,
    |    РеализацияТоваровУслуг.Доверенность,
    |    РеализацияТоваровУслуг.Склад,
    |    РеализацияТоваровУслуг.ОтпускПроизвел,
    |    РеализацияТоваровУслуг.ОтпускРазрешил,
    |    ОтветственныеЛицаСклад.ФизическоеЛицо КАК ОтпустилМОЛ ,
    |    РеализацияТоваровУслуг.ДоверенностьЧерезКого    
    |ИЗ
    |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ОтветственныеЛица.СрезПоследних(&Дата, ) КАК ОтветственныеЛицаСклад
    |        ПО РеализацияТоваровУслуг.Склад = ОтветственныеЛицаСклад.СтруктурнаяЕдиница
    |ГДЕ
    |    РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент";

    Шапка = Запрос.Выполнить().Выбрать();
    Шапка.Следующий();

    ТекстКурс = "";

    СтрокаВыборкиПоляСодержания = ОбработкаТабличныхЧастей.ПолучитьЧастьЗапросаДляВыбораСодержания("РеализацияТоваровУслуг");

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект);
    //Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);
    Запрос.Текст =
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |    ВложенныйЗапросПоТоварам.Номенклатура,
    |    ВЫРАЗИТЬ(ВложенныйЗапросПоТоварам.Номенклатура.НаименованиеПолное КАК СТРОКА(1000)) КАК Товар,
    |    ВложенныйЗапросПоТоварам.Номенклатура.Код КАК Код,
    |    ВложенныйЗапросПоТоварам.Номенклатура.Артикул КАК Артикул,
    |    ВложенныйЗапросПоТоварам.Количество,
    |    ВложенныйЗапросПоТоварам.КоличествоМест,
    |    ВложенныйЗапросПоТоварам.ЕдиницаИзмерения.Представление КАК ЕдиницаЦены,
    |    ВложенныйЗапросПоТоварам.ЕдиницаИзмеренияМест.Представление КАК ЕдиницаМест,
    |    ВложенныйЗапросПоТоварам.Цена,
    |    ВложенныйЗапросПоТоварам.Сумма,
    |    ВложенныйЗапросПоТоварам.СуммаНДС,
    |    ВложенныйЗапросПоТоварам.СуммаАкциза,
    |    ВложенныйЗапросПоТоварам.ПроцентСкидкиНаценки КАК Скидка,
    |    ВложенныйЗапросПоТоварам.ПроцентАвтоматическихСкидок КАК АвтоматическаяСкидка,
    |    ВложенныйЗапросПоТоварам.ХарактеристикаНоменклатуры КАК Характеристика,
    |    ВложенныйЗапросПоТоварам.СтранаПроисхождения КАК СтранаПроисхождения,
    |    ВложенныйЗапросПоТоварам.НомерГТД КАК НомерГТД,
    |    ВложенныйЗапросПоТоварам.СерияНоменклатуры КАК Серия,
    |    ВложенныйЗапросПоТоварам.НомерСтроки КАК НомерСтроки,
    |    ВложенныйЗапросПоТоварам.Метка КАК Метка
    |ИЗ
    |    (ВЫБРАТЬ
    |        РеализацияТоваровУслуг.Номенклатура КАК Номенклатура,
    |        РеализацияТоваровУслуг.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
    |        РеализацияТоваровУслуг.ЕдиницаИзмеренияМест КАК ЕдиницаИзмеренияМест,
    |        РеализацияТоваровУслуг.Цена КАК Цена,
    |        РеализацияТоваровУслуг.СтавкаНДС КАК СтавкаНДС,
    |        РеализацияТоваровУслуг.ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки,
    |        РеализацияТоваровУслуг.ПроцентАвтоматическихСкидок КАК ПроцентАвтоматическихСкидок,
    |        РеализацияТоваровУслуг.СерияНоменклатуры.НомерГТД КАК НомерГТД,
    |        РеализацияТоваровУслуг.СерияНоменклатуры.СтранаПроисхождения КАК СтранаПроисхождения,
    |        РеализацияТоваровУслуг.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    |        РеализацияТоваровУслуг.СерияНоменклатуры КАК СерияНоменклатуры,
    |        СУММА(РеализацияТоваровУслуг.Количество) КАК Количество,
    |        СУММА(РеализацияТоваровУслуг.КоличествоМест) КАК КоличествоМест,
    |        СУММА(РеализацияТоваровУслуг.Сумма) КАК Сумма,
    |        СУММА(РеализацияТоваровУслуг.СуммаНДС) КАК СуммаНДС,
    |        СУММА(РеализацияТоваровУслуг.СуммаАкциза) КАК СуммаАкциза,
    |        МИНИМУМ(РеализацияТоваровУслуг.НомерСтроки) КАК НомерСтроки,
    |        0 КАК Метка
    |    ИЗ
    |        Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
    |    ГДЕ
    |        РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент
    |    
    |    СГРУППИРОВАТЬ ПО
    |        РеализацияТоваровУслуг.Номенклатура,
    |        РеализацияТоваровУслуг.ЕдиницаИзмерения,
    |        РеализацияТоваровУслуг.ЕдиницаИзмеренияМест,
    |        РеализацияТоваровУслуг.Цена,
    |        РеализацияТоваровУслуг.СтавкаНДС,
    |        РеализацияТоваровУслуг.ПроцентСкидкиНаценки,
    |        РеализацияТоваровУслуг.ПроцентАвтоматическихСкидок,
    |        РеализацияТоваровУслуг.СерияНоменклатуры,
    |        РеализацияТоваровУслуг.ХарактеристикаНоменклатуры,
    |        РеализацияТоваровУслуг.СерияНоменклатуры.НомерГТД,
    |        РеализацияТоваровУслуг.СерияНоменклатуры.СтранаПроисхождения) КАК ВложенныйЗапросПоТоварам
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    РеализацияТоваровУслуг.Номенклатура,
    |    " + СтрокаВыборкиПоляСодержания + ",
    |    РеализацияТоваровУслуг.Номенклатура.Код,
    |    РеализацияТоваровУслуг.Номенклатура.Артикул,
    |    РеализацияТоваровУслуг.Количество,
    |    NULL,
    |    РеализацияТоваровУслуг.Номенклатура.ЕдиницаХраненияОстатков.Представление,
    |    NULL,
    |    РеализацияТоваровУслуг.Цена,
    |    РеализацияТоваровУслуг.Сумма,
    |    РеализацияТоваровУслуг.СуммаНДС,
    |    0,
    |    РеализацияТоваровУслуг.ПроцентСкидкиНаценки,
    |    РеализацияТоваровУслуг.ПроцентАвтоматическихСкидок КАК АвтоматическаяСкидка,
    |    NULL,
    |    NULL,
    |    NULL,
    |    NULL,
    |    РеализацияТоваровУслуг.НомерСтроки,
    |    1
    |ИЗ
    |    Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслуг
    |ГДЕ
    |    РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    |    РеализацияТоваровУслуг.Номенклатура,
    |    ВЫРАЗИТЬ(РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное КАК СТРОКА(1000)),
    |    РеализацияТоваровУслуг.Номенклатура.Код,
    |    РеализацияТоваровУслуг.Номенклатура.Артикул,
    |    РеализацияТоваровУслуг.Количество,
    |    NULL,
    |    РеализацияТоваровУслуг.Номенклатура.ЕдиницаХраненияОстатков.Представление,
    |    NULL,
    |    РеализацияТоваровУслуг.Цена,
    |    РеализацияТоваровУслуг.Сумма,
    |    0,
    |    0,
    |    0,
    |    NULL,
    |    NULL,
    |    NULL,
    |    NULL,
    |    NULL,
    |    РеализацияТоваровУслуг.НомерСтроки,
    |    2
    |ИЗ
    |    Документ.РеализацияТоваровУслуг.ВозвратнаяТара КАК РеализацияТоваровУслуг
    |ГДЕ
    |    РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент
    |
    |УПОРЯДОЧИТЬ ПО
    |    Метка,
    |    НомерСтроки";

    ЗапросТовары = Запрос.Выполнить().Выгрузить();
        
    ТабДокумент = Новый ТабличныйДокумент;
    ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РеализацияТоваровУслуг_Накладная";
    
    Макет = ПолучитьМакет("Накладная");

    // Выводим шапку накладной

    ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
    ОбластьМакета.Параметры.ТекстЗаголовка = РаботаСДиалогами.СформироватьЗаголовокДокумента(СсылкаНаОбъект, "Расходная накладная");
    ТабДокумент.Вывести(ОбластьМакета);

    ОбластьМакета = Макет.ПолучитьОбласть("Поставщик");
    ПредставлениеПоставщика = ОбщегоНазначения.ОписаниеОрганизации(ОбщегоНазначения.СведенияОЮрФизЛице(Шапка.Организация, Шапка.Дата), "ПолноеНаименование,", Ложь);
    ОбластьМакета.Параметры.ПредставлениеПоставщика = ПредставлениеПоставщика;
    ОбластьМакета.Параметры.Поставщик = Шапка.Поставщик;
    ТабДокумент.Вывести(ОбластьМакета);

    ОбластьМакета = Макет.ПолучитьОбласть("Покупатель");
    ПредставлениеПолучателя = ОбщегоНазначения.ОписаниеОрганизации(ОбщегоНазначения.СведенияОЮрФизЛице(Шапка.Получатель, Шапка.Дата), "ПолноеНаименование,", Ложь);
    ОбластьМакета.Параметры.ПредставлениеПолучателя = СокрЛП(ПредставлениеПолучателя);
    ОбластьМакета.Параметры.Получатель = Шапка.Получатель;
    
    //ш-б
    //**************

    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    КонтактнаяИнформация.Представление
        |ИЗ
        |    РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
        |ГДЕ
        |    КонтактнаяИнформация.Вид = &парВидКонтактИнфо
        |    И КонтактнаяИнформация.Объект = &парКонтрагент";

    Запрос.УстановитьПараметр("парВидКонтактИнфо", Справочники.ВидыКонтактнойИнформации.ТелефонКонтрагента);
    Запрос.УстановитьПараметр("парКонтрагент", Шапка.Получатель);

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

    ТабДокумент.Вывести(ОбластьМакета);
    

    Если (Шапка.Получатель <> Шапка.Грузополучатель) И ЗначениеЗаполнено(Шапка.Грузополучатель) Тогда
        ОбластьМакета = Макет.ПолучитьОбласть("Грузополучатель");
        ПредставлениеГрузополучателя = ОбщегоНазначения.ОписаниеОрганизации(ОбщегоНазначения.СведенияОЮрФизЛице(Шапка.Грузополучатель, Шапка.Дата), "ПолноеНаименование,", Ложь);
        ОбластьМакета.Параметры.ПредставлениеГрузополучателя = СокрЛП(ПредставлениеГрузополучателя);
        ТабДокумент.Вывести(ОбластьМакета);
    КонецЕсли;
    
    Если ЗначениеЗаполнено(Шапка.Доверенность) Тогда
        ОбластьМакета = Макет.ПолучитьОбласть("Доверенность");
        ДанныеДляДоверенности = СокрЛП(Шапка.Доверенность);
        Если ЗначениеЗаполнено(Шапка.ДоверенностьЧерезКого) Тогда
            ДанныеДляДоверенности = ДанныеДляДоверенности + " выданной, "  + СокрЛП(Шапка.ДоверенностьЧерезКого);
        КонецЕсли;    
        ОбластьМакета.Параметры.Доверенность = ДанныеДляДоверенности;
        ТабДокумент.Вывести(ОбластьМакета);
    КонецЕсли;
    
    Если ЗначениеЗаполнено(Шапка.ДоговорКонтрагента) Тогда
        ОбластьМакета = Макет.ПолучитьОбласть("Основание");
        ОбластьМакета.Параметры.Основание = Шапка.ДоговорКонтрагента;
        ТабДокумент.Вывести(ОбластьМакета);
    КонецЕсли;
    
    Если СсылкаНаОбъект.Товары.Количество() + СсылкаНаОбъект.ВозвратнаяТара.Количество()<> 0 Тогда
        ОбластьМакета = Макет.ПолучитьОбласть("Склад");
        ОбластьМакета.Параметры.Склад = Шапка.Склад;
        ТабДокумент.Вывести(ОбластьМакета);
    КонецЕсли;    
    
    ЕстьСкидки = ЗапросТовары.Итог("Скидка") + ЗапросТовары.Итог("АвтоматическаяСкидка") <> 0;

    ДопКолонка = Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить();
    Если ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда
        ВыводитьКоды = Истина;
        Колонка = "Артикул";
    ИначеЕсли ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Код Тогда
        ВыводитьКоды = Истина;
        Колонка = "Код";
    Иначе
        ВыводитьКоды = Ложь;
    КонецЕсли;
    
    ВыводитьГТД = Ложь;

    //Проверим нужно ли выводить страну происхождения и ГТД
    Для Каждого Товар ИЗ ЗапросТовары Цикл
        Если ЗначениеЗаполнено(Товар.НомерГТД) Или ЗначениеЗаполнено(Товар.СтранаПроисхождения) Тогда
            ВыводитьГТД = Истина;
            Прервать;
        КонецЕсли;        
    КонецЦикла;
                      
    ОбластьНомера = Макет.ПолучитьОбласть("ШапкаТаблицы|НомерСтроки");
    ОбластьКодов  = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкаКодов");
    ОбластьТовар   = Макет.ПолучитьОбласть("ШапкаТаблицы|Товар");
    ОбластьДанных = Макет.ПолучитьОбласть("ШапкаТаблицы|КоличествоЦена");
    ОбластьСкидок = Макет.ПолучитьОбласть("ШапкаТаблицы|Скидка");
    ОбластьСуммы  = Макет.ПолучитьОбласть("ШапкаТаблицы|Сумма");
    ОбластьГТД  = Макет.ПолучитьОбласть("ШапкаТаблицы|ГТД");

    ТабДокумент.Вывести(ОбластьНомера);
    Если ВыводитьКоды Тогда
        ОбластьКодов.Параметры.ИмяКолонкиКодов = Колонка;
        ТабДокумент.Присоединить(ОбластьКодов);
    КонецЕсли;
    ТабДокумент.Присоединить(ОбластьТовар);
    
    ТабДокумент.Присоединить(ОбластьДанных);
    Если ЕстьСкидки Тогда
        ТабДокумент.Присоединить(ОбластьСкидок);
    КонецЕсли;
    
    ТабДокумент.Присоединить(ОбластьСуммы);
    
    Если ВыводитьГТД Тогда
        ТабДокумент.Присоединить(ОбластьГТД);
    КонецЕсли;
    
    ОбластьКолонкаТовар = Макет.Область("Товар");
    Если Не ВыводитьКоды Тогда
        ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки +
        Макет.Область("КолонкаКодов").ШиринаКолонки;
    КонецЕсли;
    Если НЕ ЕстьСкидки Тогда
        ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки +
        Макет.Область("СуммаБезСкидки").ШиринаКолонки +
        Макет.Область("СуммаСкидки").ШиринаКолонки;
    КонецЕсли;
    
    Если НЕ ВыводитьГТД Тогда
        ОбластьКолонкаТовар.ШиринаКолонки = ОбластьКолонкаТовар.ШиринаКолонки +
        Макет.Область("ГТД").ШиринаКолонки;
    КонецЕсли;

    ОбластьНомера = Макет.ПолучитьОбласть("Строка|НомерСтроки");
    ОбластьКодов  = Макет.ПолучитьОбласть("Строка|КолонкаКодов");
    ОбластьТовар  = Макет.ПолучитьОбласть("Строка|Товар");
    ОбластьДанных = Макет.ПолучитьОбласть("Строка|КоличествоЦена");
    ОбластьСкидок = Макет.ПолучитьОбласть("Строка|Скидка");
    ОбластьСуммы  = Макет.ПолучитьОбласть("Строка|Сумма");
    ОбластьГТД  = Макет.ПолучитьОбласть("Строка|ГТД");

    Сумма    = 0;
    СуммаНДС = 0;
    ВсегоСкидок    = 0;
    ВсегоБезСкидок = 0;
    
    Для каждого ВыборкаСтрокТовары из ЗапросТовары Цикл

        Если Не ЗначениеЗаполнено(ВыборкаСтрокТовары.Номенклатура) Тогда
            Сообщить("В одной из строк не заполнено значение номенклатуры - строка при печати пропущена.", СтатусСообщения.Важное);
            Продолжить;
        КонецЕсли;

        ОбластьНомера.Параметры.НомерСтроки = ЗапросТовары.Индекс(ВыборкаСтрокТовары) + 1;
        ТабДокумент.Вывести(ОбластьНомера);
        
        Если ВыводитьКоды Тогда
            Если Колонка = "Артикул" Тогда
                ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТовары.Артикул;
            Иначе
                ОбластьКодов.Параметры.Артикул = ВыборкаСтрокТовары.Код;
            КонецЕсли;
            ТабДокумент.Присоединить(ОбластьКодов);
        КонецЕсли;
        ОбластьТовар.Параметры.Заполнить(ВыборкаСтрокТовары);
        ОбластьТовар.Параметры.Товар = СокрЛП(ВыборкаСтрокТовары.Товар)
        + ФормированиеПечатныхФорм.ПредставлениеСерий(ВыборкаСтрокТовары)
        + ?(ВыборкаСтрокТовары.Метка = 2, " (возвратная тара)", "");        
        ТабДокумент.Присоединить(ОбластьТовар);
        
        ОбластьДанных.Параметры.Заполнить(ВыборкаСтрокТовары);
        ТабДокумент.Присоединить(ОбластьДанных);

        // Скидка может быть NULL
        ПроцентСкидки = ?(ЗначениеЗаполнено(ВыборкаСтрокТовары.Скидка),ВыборкаСтрокТовары.Скидка,0)
        + ?(ЗначениеЗаполнено(ВыборкаСтрокТовары.АвтоматическаяСкидка),ВыборкаСтрокТовары.АвтоматическаяСкидка,0);

        Если ПроцентСкидки = 100 Тогда
            СуммаДляСкидки = Окр(ВыборкаСтрокТовары.Цена * ВыборкаСтрокТовары.Количество,2,1);
        Иначе
            СуммаДляСкидки = ВыборкаСтрокТовары.Сумма;
        КонецЕсли;
        
        Скидка = УправлениеЦенообразованием.ПолучитьСуммуСкидки(СуммаДляСкидки, ПроцентСкидки);    

        Если ЕстьСкидки Тогда
            ОбластьСкидок.Параметры.Скидка         = Скидка;
            ОбластьСкидок.Параметры.СуммаБезСкидки =  ВыборкаСтрокТовары.Сумма + Скидка;
            ТабДокумент.Присоединить(ОбластьСкидок);
        КонецЕсли;

        ОбластьСуммы.Параметры.Заполнить(ВыборкаСтрокТовары);
        
        ТабДокумент.Присоединить(ОбластьСуммы);

        Если ВыводитьГТД Тогда
            ОбластьГТД.Параметры.НомерГТДСтранаПроисхождения = ?(ЗначениеЗаполнено(ВыборкаСтрокТовары.НомерГТД),
            СокрЛП(ВыборкаСтрокТовары.НомерГТД.Код)+",", "") + Символы.ПС + ВыборкаСтрокТовары.СтранаПроисхождения;        
            
            ТабДокумент.Присоединить(ОбластьГТД);
            
        КонецЕсли;
        
        Сумма          = Сумма       + ВыборкаСтрокТовары.Сумма +  ?((Шапка.УчитыватьАкциз И НЕ Шапка.СуммаВключаетАкциз), ВыборкаСтрокТовары.СуммаАкциза, 0);
        СуммаНДС       = СуммаНДС    + ВыборкаСтрокТовары.СуммаНДС;
        
        ВсегоСкидок    = ВсегоСкидок + Скидка;
        ВсегоБезСкидок = Сумма       + ВсегоСкидок;
        
        //прибавим к сумме акциз, если он не включен в стоимость
        ВсегоБезСкидок = ВсегоБезСкидок + ?((Шапка.УчитыватьАкциз И НЕ Шапка.СуммаВключаетАкциз), ВыборкаСтрокТовары.СуммаАкциза, 0);        
    КонецЦикла;

    // Вывести Итого
    ОбластьНомера = Макет.ПолучитьОбласть("Итого|НомерСтроки");
    ОбластьКодов  = Макет.ПолучитьОбласть("Итого|КолонкаКодов");
    ОбластьТовар  = Макет.ПолучитьОбласть("Итого|Товар");
    ОбластьДанных = Макет.ПолучитьОбласть("Итого|КоличествоЦена");
    ОбластьСкидок = Макет.ПолучитьОбласть("Итого|Скидка");
    ОбластьСуммы  = Макет.ПолучитьОбласть("Итого|Сумма");
    ОбластьГТД    = Макет.ПолучитьОбласть("Итого|ГТД");

    ТабДокумент.Вывести(ОбластьНомера);
    Если ВыводитьКоды Тогда
        ТабДокумент.Присоединить(ОбластьКодов);
    КонецЕсли;
    ТабДокумент.Присоединить(ОбластьТовар);
    
    ТабДокумент.Присоединить(ОбластьДанных);
    Если ЕстьСкидки Тогда
        ОбластьСкидок.Параметры.ВсегоСкидок    = ВсегоСкидок;
        ОбластьСкидок.Параметры.ВсегоБезСкидок = ВсегоБезСкидок;
        ТабДокумент.Присоединить(ОбластьСкидок);
    КонецЕсли;
    ОбластьСуммы.Параметры.Всего = ОбщегоНазначения.ФорматСумм(Сумма);
    ТабДокумент.Присоединить(ОбластьСуммы);
    Если ВыводитьГТД Тогда
        ТабДокумент.Присоединить(ОбластьГТД);
    КонецЕсли;
    
    // Вывести ИтогоНДС
    Если Шапка.УчитыватьНДС Тогда
        ОбластьНомера = Макет.ПолучитьОбласть("ИтогоНДС|НомерСтроки");
        ОбластьКодов  = Макет.ПолучитьОбласть("ИтогоНДС|КолонкаКодов");
        ОбластьТовар  = Макет.ПолучитьОбласть("ИтогоНДС|Товар");
        ОбластьДанных = Макет.ПолучитьОбласть("ИтогоНДС|КоличествоЦена");
        ОбластьСкидок = Макет.ПолучитьОбласть("ИтогоНДС|Скидка");
        ОбластьСуммы  = Макет.ПолучитьОбласть("ИтогоНДС|Сумма");
        ОбластьГТД    = Макет.ПолучитьОбласть("ИтогоНДС|ГТД");

        ТабДокумент.Вывести(ОбластьНомера);
        Если ВыводитьКоды Тогда
            ТабДокумент.Присоединить(ОбластьКодов);
        КонецЕсли;
        ТабДокумент.Присоединить(ОбластьТовар);
        
        ОбластьДанных.Параметры.НДС = ?(Шапка.СуммаВключаетНДС, "В том числе НДС:", "Сумма НДС:");
        ТабДокумент.Присоединить(ОбластьДанных);
        Если ЕстьСкидки Тогда
            ТабДокумент.Присоединить(ОбластьСкидок);
        КонецЕсли;
        ОбластьСуммы.Параметры.ВсегоНДС = ОбщегоНазначения.ФорматСумм(СуммаНДС);
        ТабДокумент.Присоединить(ОбластьСуммы);
        
        Если ВыводитьГТД Тогда
            ТабДокумент.Присоединить(ОбластьГТД);
        КонецЕсли;
        
        Если НЕ Шапка.СуммаВключаетНДС ТОгда
        ОбластьНомера = Макет.ПолучитьОбласть("ИтогоСНДС|НомерСтроки");
        ОбластьКодов  = Макет.ПолучитьОбласть("ИтогоСНДС|КолонкаКодов");
        ОбластьТовар  = Макет.ПолучитьОбласть("ИтогоСНДС|Товар");
        ОбластьДанных = Макет.ПолучитьОбласть("ИтогоСНДС|КоличествоЦена");
        ОбластьСкидок = Макет.ПолучитьОбласть("ИтогоСНДС|Скидка");
        ОбластьСуммы  = Макет.ПолучитьОбласть("ИтогоСНДС|Сумма");
        ОбластьГТД    = Макет.ПолучитьОбласть("ИтогоСНДС|ГТД");
        ТабДокумент.Вывести(ОбластьНомера);
        Если ВыводитьКоды Тогда
            ТабДокумент.Присоединить(ОбластьКодов);
        КонецЕсли;
        ТабДокумент.Присоединить(ОбластьТовар);
        ТабДокумент.Присоединить(ОбластьДанных);
        Если ЕстьСкидки Тогда
            ТабДокумент.Присоединить(ОбластьСкидок);
        КонецЕсли;
        ОбластьСуммы.Параметры.ВсегоСНДС = Сумма+СуммаНДС;
        ТабДокумент.Присоединить(ОбластьСуммы);
        
        Если ВыводитьГТД Тогда
            ТабДокумент.Присоединить(ОбластьГТД);
        КонецЕсли;
        
        КонецЕсли;

    КонецЕсли;

    // Вывести Сумму прописью
    ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью");
    СуммаКПрописи = Сумма + ?(Шапка.СуммаВключаетНДС, 0, СуммаНДС);

    ОбластьМакета.Параметры.ИтоговаяСтрока ="Всего наименований " + ЗапросТовары.Количество()
        + ", на сумму " + ОбщегоНазначения.ФорматСумм(СуммаКПрописи, Шапка.ВалютаДокумента);
        ОбластьМакета.Параметры.СуммаПрописью = ОбщегоНазначения.СформироватьСуммуПрописью(СуммаКПрописи, Шапка.ВалютаДокумента);
    
    ТабДокумент.Вывести(ОбластьМакета);

    // Вывести подписи
    ОбластьМакета = Макет.ПолучитьОбласть("Подписи");
    ОбластьМакета.Параметры.Экспедитор = СсылкаНаОбъект.Экспедитор;
    
    // Отпуск товара произвел
    Если ЗначениеЗаполнено(Шапка.ОтпускПроизвел) Тогда
        ФамилияИмяОтчествоФизЛица        = ФормированиеПечатныхФорм.ФамилияИмяОтчество(Шапка.ОтпускПроизвел, Шапка.Дата);
        ФамилияИмяОтчествоОтпускПроизвел = ФамилияИмяОтчествоФизЛица.Фамилия + " " + ФамилияИмяОтчествоФизЛица.Имя + " " + ФамилияИмяОтчествоФизЛица.Отчество;
        ФИООтпускПроизвел                = ОбщегоНазначения.ФамилияИнициалыФизЛица(ФамилияИмяОтчествоОтпускПроизвел);
        ОбластьМакета.Параметры.ОтветственныйПредставление = ФИООтпускПроизвел;
    Иначе//берем из ответственного по складу
        ОбластьМакета.Параметры.ОтветственныйПредставление = ОбщегоНазначения.ФамилияИнициалыФизЛица(Шапка.ОтпустилМОЛ);
    КонецЕсли;

    ТабДокумент.Вывести(ОбластьМакета);
    
    //Возврат ТабДокумент;
    ТабДокумент.Показать();

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

Vofka Подменю пользователя
сообщение 11.07.13, 9:04
Сообщение #2

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4519 раз
Рейтинг: 3641.2

Напоминает анек:

- Приборы!
- 210
- Что "210"?
- А что "приборы"?

Что именно не получается? Что вы дописали, куда, куда должно выводиться? Ну епт... faceoff.gif

asd34 Подменю пользователя
сообщение 11.07.13, 9:16
Сообщение #3

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 170
Из: где-то под Киевом
Спасибо сказали: 65 раз
Рейтинг: 0

В запросе шапка добавьте:
|    РеализацияТоваровУслуг.Комментарий,
потом в нужной области:
ОбластьМакета.Параметры.Комментарий = Шапка.Комментарий;

В макете укажите соотв. параметр.

GTown Подменю пользователя
сообщение 11.07.13, 9:39
Сообщение #4

Молчаливый
*
Группа: Пользователи
Сообщений: 2
Спасибо сказали: 0 раз
Рейтинг: 0

есть внешняя печатная форма, накладная 3-2, нужно чтобы после постащика и покупателя, шла строка комментария которая написана в документе реализация ТМЗ

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 18.04.24, 5:11
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!