8.х Печатная форма

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем Tihonidy, 11 дек 2014.

  1. TopicStarter Overlay
    Tihonidy
    Offline

    Tihonidy

    Регистрация:
    27 фев 2014
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте, подскажите пожалуйста, создала печатную форму (1С 8.1), при предварительном просмотре (Масштаб: по ширине страницы или в коде ТабДокумент.АвтоМасштаб=Истина) вся моя таблица в левом верхнем углу. Что мне нужно добавить в модуль что бы таблица была на всю страницу.
    ПФ_1.png ПФ_2.png
  2. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Ну вы тут в парамтерах странице уберите автомаштаб и поиграйтсь с процентами, а затем в коде вместо автомаштаб проставьте процент
  3. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    попробуйте область печати в макете задать... мне помогало
  4. TopicStarter Overlay
    Tihonidy
    Offline

    Tihonidy

    Регистрация:
    27 фев 2014
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    Установила Ориентация: Портрет, Масштаб:80, появились пустые листы. Задание области печати не помогло.
    ПФ_3.png
  5. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    выложить можете?
  6. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    НУ у Вас там значит в макете пустые строки добавлеы. Создайте новый макет, скопируйте туда из старого только там где что то есть и задайте название областей и попробуйте.
  7. TopicStarter Overlay
    Tihonidy
    Offline

    Tihonidy

    Регистрация:
    27 фев 2014
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    Код:
    ТабДокумент.Вывести(ОбластьМакета);
                //ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
                //ТабДокумент.ВывестиВертикальныйРазделительСтраниц();
             
                СтрокНаСтранице =30;
                НомерСтраницы   = 2;
                Ном=0;     
             
                ИтогоРезультатИзлишекКолво   = 0;
                ИтогоРезультатИзлишекСумма   = 0;
                ИтогоРезультатНедостачаКолво = 0;
                ИтогоРезультатНедостачаСумма = 0;
                ИтогоПересортИзлишкиКолво = 0;
                ИтогоПересортИзлишкиСумма = 0;
                ИтогоПересортНедостачиКолво = 0;
                ИтогоПересортНедостачиСумма = 0;
                ИтогоСуммаФакт=0;
                ИтогоСуммаУчет=0;
                ИтогоКоличествоУчет=0;
                ИтогоКоличествоФакт=0;
             
                ЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТаблицы1");
                ЗаголовокТаблицы.Параметры.НомерСтраницы = "Страница " + НомерСтраницы;
                ТабДокумент.Вывести(ЗаголовокТаблицы);     
             
                ТаблицаРезультата.Очистить();
                //цикл по таблице
                НомерСтроки = 0;
                флБылиСтроки=Ложь;
                Пока ВыборкаВложенная.Следующий() Цикл
                 
                    чКолво = ВыборкаВложенная.Количество-ВыборкаВложенная.КоличествоУчет;
                 
                    чСуммаИзлишек=ВыборкаВложенная.Сумма-ВыборкаВложенная.СуммаУчет;
                    флБылиСтроки=Истина;
                    НомерСтроки = НомерСтроки+1;
                    СтрокаТаблицыРезультата = ТаблицаРезультата.Добавить();
                    ///************************************************************
                    СтрокаТаблицыРезультата.Количество=ВыборкаВложенная.Количество;
                    СтрокаТаблицыРезультата.КоличествоУчет=ВыборкаВложенная.КоличествоУчет;
                     //СтрокаТаблицыРезультата.СуммаФакт=0;
                    //****************************************************
                    СтрокаТаблицыРезультата.НомерСтроки = НомерСтроки;
                    СтрокаТаблицыРезультата.Номенклатура = ВыборкаВложенная.Номенклатура;             
                    СтрокаТаблицыРезультата.РезультатНедостачаКолво = 0;
                    СтрокаТаблицыРезультата.РезультатИзлишекКолво   = 0;
                    СтрокаТаблицыРезультата.РезультатИзлишекСумма   = 0;                             
                    СтрокаТаблицыРезультата.РезультатНедостачаСумма = 0;
    
                   Если чКолво > 0 Тогда
                        СтрокаТаблицыРезультата.РезультатИзлишекКолво   = чКолво;
                        СтрокаТаблицыРезультата.РезультатИзлишекСумма   = чСуммаИзлишек;
                    ИначеЕсли чКолво < 0 Тогда
                        СтрокаТаблицыРезультата.РезультатНедостачаКолво = -чКолво;
                        СтрокаТаблицыРезультата.РезультатНедостачаСумма = -чСуммаИзлишек;
                    КонецЕсли; 
                 
                КонецЦикла;
             
                Если НЕ флБылиСтроки Тогда
                    Продолжить;
                КонецЕсли; 
             
                ИтогоСтраницыРезультатИзлишекКолво   = 0;
                ИтогоСтраницыРезультатИзлишекСумма   = 0;
                ИтогоСтраницыРезультатНедостачаКолво = 0;
                ИтогоСтраницыРезультатНедостачаСумма = 0;
                ИтогоСтраницыПересортИзлишкиКолво = 0;
                ИтогоСтраницыПересортИзлишкиСумма = 0;
                ИтогоСтраницыПересортНедостачиКолво = 0;
                ИтогоСтраницыПересортНедостачиСумма = 0;
                ИтогоСтраницыРезультатКоличествоФакт=0;
                ИтогоСтраницыКоличествоУчет=0;
                ИтогоСтраницыСуммаФакт=0;
                ИтогоСтраницыСуммаУчет=0;
             
                Для Каждого СтрокаТаблицыРезультата из ТаблицаРезультата Цикл
                 
                 
                    Если Ном = СтрокНаСтранице Тогда
                        Ном = 0;
                        ОбластьИтоговПоСтранице = Макет.ПолучитьОбласть("ИтогоСтраницы");
                        ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыРезультатИзлишекКолво   = ИтогоСтраницыРезультатИзлишекКолво;
                        ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыРезультатИзлишекСумма   = ИтогоСтраницыРезультатИзлишекСумма;
                        ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыРезультатНедостачаКолво = ИтогоСтраницыРезультатНедостачаКолво;
                        ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыРезультатНедостачаСумма = ИтогоСтраницыРезультатНедостачаСумма;
                        ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыРезультатКоличествоФакт=ИтогоСтраницыРезультатКоличествоФакт;
                        ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыКоличествоУчет=ИтогоСтраницыКоличествоУчет;
                        ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыСуммаФакт=ИтогоСтраницыСуммаФакт;
                        ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыСуммаУчет=ИтогоСтраницыСуммаУчет;
    
                     
                     
                        ТабДокумент.Вывести(ОбластьИтоговПоСтранице);
                     
                        ИтогоСтраницыРезультатИзлишекКолво   = 0;
                        ИтогоСтраницыРезультатИзлишекСумма   = 0;
                        ИтогоСтраницыРезультатНедостачаКолво = 0;
                        ИтогоСтраницыРезультатНедостачаСумма = 0;
                        ИтогоСтраницыПересортИзлишкиКолво = 0;
                        ИтогоСтраницыПересортИзлишкиСумма = 0;
                        ИтогоСтраницыПересортНедостачиКолво = 0;
                        ИтогоСтраницыПересортНедостачиСумма = 0;
                        ИтогоСтраницыРезультатКоличествоФакт=0;
                        ИтогоСтраницыКоличествоУчет=0;
                        ИтогоСтраницыСуммаФакт=0;
                        ИтогоСтраницыСуммаУчет=0;
    
                        НомерСтраницы = НомерСтраницы + 1;
                        ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
                     
                        ЗаголовокТаблицы.Параметры.НомерСтраницы = "Страница " + НомерСтраницы;
                        ТабДокумент.Вывести(ЗаголовокТаблицы);
                    КонецЕсли;
                 
                    НомерСтроки = СтрокаТаблицыРезультата.НомерСтроки;
                    Товар = СтрокаТаблицыРезультата.Номенклатура;
                    Если Товар.ПОлучитьОбъект() = неопределено тогда
                        продолжить;
                    конецесли;
                    ОбластьМакета = Макет.ПолучитьОбласть("СтрокаТаблицы1");
                    ЕдиницаИзмерения = ОмОбщиеПроцедурыИФункции.ПолучитьБазовуюЕдиницуИзмерения(Товар);
                 
                    //получаем розничную цену
                    запрос = новый запрос;
                    запрос.текст = "ВЫБРАТЬ
                                  |    ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена
                                  |ИЗ
                                  |    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, ) КАК ЦеныНоменклатурыСрезПоследних
                                  |ГДЕ
                                  |    ЦеныНоменклатурыСрезПоследних.СтруктурнаяЕдиница = ЗНАЧЕНИЕ(Справочник.СтруктурныеЕдиницы.ПустаяСсылка)
                                  |    И ЦеныНоменклатурыСрезПоследних.Фирма = &Фирма
                                  |    И ЦеныНоменклатурыСрезПоследних.КатегорияЦен = &КатегорияЦен
                                  |    И ЦеныНоменклатурыСрезПоследних.Номенклатура = &Номенклатура
                                  |    И ЦеныНоменклатурыСрезПоследних.ЕдиницаИзмерения = &ЕдиницаИзмерения";
                    запрос.УстановитьПараметр("Дата",СсылкаНаОбъект.Дата);
                    запрос.УстановитьПараметр("фирма",СсылкаНаОбъект.Фирма);
                    запрос.УстановитьПараметр("КатегорияЦен",КатегорияЦен);
                    запрос.УстановитьПараметр("Номенклатура",Товар);
                    запрос.УстановитьПараметр("ЕдиницаИзмерения",ЕдиницаИзмерения);
     
                 
                Попытка
                    ЦенаРозн = запрос.Выполнить().Выгрузить()[0].Цена;
                    //Сообщить(ЦенаРозн);
                Исключение
                      ЦенаРозн=0;
                     Сообщить("Нет переоценки на:'"+Товар+"'по заданной категории цен "+КатегорияЦен+" и фирме "+ТекущаяФирма+" ");
                КонецПопытки;
             
                         
                   ОбластьМакета.Параметры.Номер = НомерСтроки;
                    ОбластьМакета.Параметры.ТоварКод = Товар.код;
                    ХарактеристикаНаименование = ?(СтрокаТаблицыРезультата.Характеристика = Неопределено или СтрокаТаблицыРезультата.Характеристика = Null,"",СокрЛП(СтрокаТаблицыРезультата.Характеристика.Наименование));
                    ОбластьМакета.Параметры.ТоварКод = Товар[ИмяКолонкиСТр];
                    ОбластьМакета.Параметры.ТоварНаименование = СокрЛП(Товар.Наименование)+?(ХарактеристикаНаименование = "","",", "+ХарактеристикаНаименование);
                    ОбластьМакета.Параметры.ЕдиницаИзмеренияНаименование = ЕдиницаИзмерения.Наименование;
                    ОбластьМакета.Параметры.РезультатНедостачаКолво = СтрокаТаблицыРезультата.РезультатНедостачаКолво;
                    ОбластьМакета.Параметры.РезультатИзлишекКолво = СтрокаТаблицыРезультата.РезультатИзлишекКолво;
                    РезультатНедостачаСумма = Окр(СтрокаТаблицыРезультата.РезультатНедостачаКолво*ЦенаРозн,2);
                    РезультатИзлишекСумма = Окр(СтрокаТаблицыРезультата.РезультатИзлишекКолво * ЦенаРозн,2);
                    ОбластьМакета.Параметры.РезультатНедостачаСумма = РезультатНедостачаСумма;
                    ОбластьМакета.Параметры.РезультатИзлишекСумма = РезультатИзлишекСумма;
                    ОбластьМакета.Параметры.ЦенаРозн = ЦенаРозн;
                   
    
                 
                    ///**************************************************
                    ОбластьМакета.Параметры.Количество = СтрокаТаблицыРезультата.Количество;
                    ОбластьМакета.Параметры.КоличествоУчет = СтрокаТаблицыРезультата.КоличествоУчет;
                    РезультатСуммаФакт = Окр(СтрокаТаблицыРезультата.Количество * ЦенаРозн,2);
                    ОбластьМакета.Параметры.СуммаФакт = РезультатСуммаФакт;
                    РезультатСуммаУчет = Окр(СтрокаТаблицыРезультата.КоличествоУчет * ЦенаРозн,2);
                    ОбластьМакета.Параметры.СуммаУчет = РезультатСуммаУчет;
                      //************************************************     
                    ИтогоРезультатНедостачаКолво = ИтогоРезультатНедостачаКолво + СтрокаТаблицыРезультата.РезультатНедостачаКолво;
                    ИтогоРезультатНедостачаСумма = ИтогоРезультатНедостачаСумма + РезультатНедостачаСумма;
                    ИтогоРезультатИзлишекКолво = ИтогоРезультатИзлишекКолво + СтрокаТаблицыРезультата.РезультатИзлишекКолво;
                    ИтогоРезультатИзлишекСумма = ИтогоРезультатИзлишекСумма + РезультатИзлишекСумма;
                    ИтогоСуммаФакт=ИтогоСуммаФакт+РезультатСуммаФакт;
                    ИтогоСуммаУчет=ИтогоСуммаУчет+РезультатСуммаУчет;
                    ИтогоКоличествоУчет= ИтогоКоличествоУчет+ СтрокаТаблицыРезультата.КоличествоУчет;
                    ИтогоКоличествоФакт=ИтогоКоличествоФакт+ СтрокаТаблицыРезультата.Количество;
                 
                 
                    ИтогоСтраницыРезультатИзлишекКолво   = ИтогоСтраницыРезультатИзлишекКолво + СтрокаТаблицыРезультата.РезультатИзлишекКолво;
                    ИтогоСтраницыРезультатИзлишекСумма   = ИтогоСтраницыРезультатИзлишекСумма + РезультатИзлишекСумма;
                    ИтогоСтраницыРезультатНедостачаКолво = ИтогоСтраницыРезультатНедостачаКолво + СтрокаТаблицыРезультата.РезультатНедостачаКолво;
                    ИтогоСтраницыРезультатНедостачаСумма = ИтогоСтраницыРезультатНедостачаСумма + РезультатНедостачаСумма;
                    ИтогоСтраницыРезультатКоличествоФакт = ИтогоСтраницыРезультатКоличествоФакт +СтрокаТаблицыРезультата.Количество;
                    ИтогоСтраницыСуммаФакт=ИтогоСтраницыСуммаФакт+РезультатСуммаФакт;
                    ИтогоСтраницыКоличествоУчет=ИтогоСтраницыКоличествоУчет+СтрокаТаблицыРезультата.КоличествоУчет;
                    ИтогоСтраницыСуммаУчет=ИтогоСтраницыСуммаУчет+РезультатСуммаУчет;
                             
                 
                    ТабДокумент.Вывести(ОбластьМакета);
                    Ном = Ном + 1;
                 
                    ИтогоПересортИзлишкиКолво = ИтогоРезультатИзлишекКолво;
                    ИтогоПересортИзлишкиСумма = ИтогоРезультатИзлишекСумма;
                    ИтогоПересортНедостачиКолво = ИтогоРезультатНедостачаКолво;
                    ИтогоПересортНедостачиСумма = ИтогоРезультатНедостачаСумма;
                 
                    ИтогоСтраницыПересортИзлишкиКолво = ИтогоСтраницыРезультатИзлишекКолво;
                    ИтогоСтраницыПересортИзлишкиСумма = ИтогоСтраницыРезультатИзлишекСумма;
                    ИтогоСтраницыПересортНедостачиКолво = ИтогоСтраницыРезультатНедостачаКолво;
                    ИтогоСтраницыПересортНедостачиСумма = ИтогоСтраницыРезультатНедостачаСумма;
                 
                 
                КонецЦикла; 
             
             
                ОбластьИтоговПоСтранице = Макет.ПолучитьОбласть("ИтогоСтраницы");
                ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыРезультатИзлишекКолво   = ИтогоСтраницыРезультатИзлишекКолво;
                ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыРезультатИзлишекСумма   = ИтогоСтраницыРезультатИзлишекСумма;
                ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыРезультатНедостачаКолво = ИтогоСтраницыРезультатНедостачаКолво;
                ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыРезультатНедостачаСумма = ИтогоСтраницыРезультатНедостачаСумма;
                ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыРезультатКоличествоФакт= ИтогоСтраницыРезультатКоличествоФакт;
                ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыКоличествоУчет= ИтогоСтраницыКоличествоУчет;
                ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыСуммаФакт=ИтогоСтраницыСуммаФакт;
                ОбластьИтоговПоСтранице.Параметры.ИтогоСтраницыСуммаУчет=ИтогоСтраницыСуммаУчет;
             
                ТабДокумент.Вывести(ОбластьИтоговПоСтранице);                 
             
                ОбластьИтогов = Макет.ПолучитьОбласть("ИтогоТаблицы1");
                ОбластьИтогов.Параметры.ИтогоРезультатИзлишекКолво   = ИтогоРезультатИзлишекКолво;
                ОбластьИтогов.Параметры.ИтогоРезультатИзлишекСумма   = ИтогоРезультатИзлишекСумма;
                ОбластьИтогов.Параметры.ИтогоРезультатНедостачаКолво = ИтогоРезультатНедостачаКолво;
                ОбластьИтогов.Параметры.ИтогоРезультатНедостачаСумма = ИтогоРезультатНедостачаСумма;
                ОбластьИтогов.Параметры.ИтогоСуммаФакт   = ИтогоСуммаФакт;
                ОбластьИтогов.Параметры.ИтогоСуммаУчет =ИтогоСуммаУчет;
                ОбластьИтогов.Параметры.ИтогоКоличествоУчет=ИтогоКоличествоУчет;
                ОбластьИтогов.Параметры.ИтогоКоличествоФакт=ИтогоКоличествоФакт;
             
             
                ТабДокумент.Вывести(ОбластьИтогов);
             
                ОбластьМакета = Макет.ПолучитьОбласть("Подвал");
                ОбластьМакета.Параметры.ФИОБухгалтера =  Бухгалтер;
                ТабДокумент.Вывести(ОбластьМакета);
             
             
                // Зададим параметры макета
                ТабДокумент.ПолеСверху = 0;
                ТабДокумент.ПолеСлева  = 0;
                ТабДокумент.ПолеСнизу  = 0;
                ТабДокумент.ПолеСправа = 0;
                ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;
             
                         
             
                // ТабДокумент.АвтоМасштаб=Истина;
                ТабДокумент.МасштабПечати=80;
                 ТабДокумент.ЭкземпляровНаСтранице=1;
               
             
                ОмРаботаСФормами.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер, ОмРаботаСФормами.СформироватьЗаголовокДокумента(СсылкаНаОбъект, СсылкаНаОбъект.Метаданные().Представление()));
             
            КонецЦикла;
  8. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    1. пользуйтесь тегами code при офомлении кода
    2. если это ваш ответ на мой пост, то я не код просила, а реально макет надо глянуть... хоть скрин выложите тогда
  9. TopicStarter Overlay
    Tihonidy
    Offline

    Tihonidy

    Регистрация:
    27 фев 2014
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
  10. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    как то вот область печати у вас не прослеживается.... попробуйте последовать совету Draco
  11. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Нам интересно где у подвала пунктирная линия заканчивается .......Справа - Вы то же пунктирную линию Всю видите так же как и слева?
  12. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    Андрей, у подвала то ее и видно, а вот у вышестоящих областей - нет...

    можно попробовать выделить весь макет - снять область печати, заем выделить нужные области и заново задать область печати
  13. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.628
    Симпатии:
    946
    Баллы:
    204
    Вообщем пусть либо текущйи макет правят, либо скоприуют все в новый
  14. TopicStarter Overlay
    Tihonidy
    Offline

    Tihonidy

    Регистрация:
    27 фев 2014
    Сообщения:
    13
    Симпатии:
    0
    Баллы:
    1
    Наверное лучше скопировать новый, старый как я только не правила.

Поделиться этой страницей