Как добавить доп реквизит в печатную форму

   HD_DoG

5 — 04.09.20 — 16:19

Функция СведенияОВнешнейОбработке() Экспорт

    ПараметрыРегистрации = Новый Структура;

    МассивНазначений = Новый Массив;

    МассивНазначений.Добавить(«Документ.ЗаказКлиента»);

    ПараметрыРегистрации.Вставить(«Вид», «ПечатнаяФорма»);  

    ПараметрыРегистрации.Вставить(«Назначение», МассивНазначений);

    ПараметрыРегистрации.Вставить(«Наименование», «ЗаказКлиентаКоличественный»);

    ПараметрыРегистрации.Вставить(«БезопасныйРежим», ЛОЖЬ);

    ПараметрыРегистрации.Вставить(«Версия», «1.0»);

    ПараметрыРегистрации.Вставить(«Информация», «Изготовлено wpg»);

    ТаблицаКоманд = ПолучитьТаблицуКоманд();

    ДобавитьКоманду(ТаблицаКоманд, «Заказ клиента количественный(шаблон)», «ЗаказКлиентаКоличественный», «ВызовСерверногоМетода», Истина, «ПечатьMXL»);

    ПараметрыРегистрации.Вставить(«Команды», ТаблицаКоманд);

Возврат ПараметрыРегистрации;

КонецФункции

Функция ПолучитьТаблицуКоманд()

    Команды = Новый ТаблицаЗначений;

    Команды.Колонки.Добавить(«Представление», Новый ОписаниеТипов(«Строка»));

    Команды.Колонки.Добавить(«Идентификатор», Новый ОписаниеТипов(«Строка»));

    Команды.Колонки.Добавить(«Использование», Новый ОписаниеТипов(«Строка»));

    Команды.Колонки.Добавить(«ПоказыватьОповещение», Новый ОписаниеТипов(«Булево»));

    Команды.Колонки.Добавить(«Модификатор», Новый ОписаниеТипов(«Строка»));

    Возврат Команды;

КонецФункции

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = «»)

    НоваяКоманда = ТаблицаКоманд.Добавить();

    НоваяКоманда.Представление = Представление;

    НоваяКоманда.Идентификатор = Идентификатор;

    НоваяКоманда.Использование = Использование;

    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;

    НоваяКоманда.Модификатор = Модификатор;

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

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, «ЗаказКлиентаКоличественный», «Заказ клиента с ячейками хранения», СформироватьПечатнуюФорму(МассивОбъектов[0], ОбъектыПечати));

КонецПроцедуры // Печать()

Функция СформироватьПечатнуюФорму(СсылкаНаДокумент, ОбъектыПечати)

ТабличныйДокумент = Новый ТабличныйДокумент;

ТабличныйДокумент.ИмяПараметровПечати = «ПАРАМЕТРЫ_ПЕЧАТИ_ЗаказКлиента_ЗаказКлиентаКоличественный»;

МакетОбработки = ПолучитьМакет(«ПФ_MXL_ЗаказКлиента_Количественный»);

ОбластьЗаголовок=МакетОбработки.ПолучитьОбласть(«Заголовок»);

ОбластьЗаголовок.Параметры.ТекстЗаголовка = «Заказ клиента № «+СсылкаНаДокумент.Номер+» от «+ СсылкаНаДокумент.Дата;

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

ОбластьПоставщик=МакетОбработки.ПолучитьОбласть(«Поставщик»);

ОбластьПоставщик.Параметры.ПредставлениеОрганизации =  СсылкаНаДокумент.Организация;

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

ОбластьПокупатель=МакетОбработки.ПолучитьОбласть(«Покупатель»);

ОбластьПокупатель.Параметры.ПредставлениеПартнера = СсылкаНаДокумент.Партнер;

        
    Запрос = Новый Запрос;

    Запрос.Текст =

        «ВЫБРАТЬ

        |    ПартнерыКонтактнаяИнформация.Представление КАК Представление

        |ИЗ

        |    Справочник.Партнеры.КонтактнаяИнформация КАК ПартнерыКонтактнаяИнформация

        |ГДЕ

        |    ПартнерыКонтактнаяИнформация.Ссылка = &Ссылка»;

    
    Запрос.УстановитьПараметр(«Ссылка», СсылкаНаДокумент.Партнер.Ссылка);

    
    РезультатЗапроса = Запрос.Выполнить();

    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

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

    //}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

Адрес = ВыборкаДетальныеЗаписи.Представление;

ОбластьПокупатель.Параметры.Адрес = Адрес;

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

ОбластьШапкаТаблицы=МакетОбработки.ПолучитьОбласть(«ШапкаТаблицы»);

ТабличныйДокумент.Вывести(ОбластьШапкаТаблицы);

ОбластьСтрокаТаблицы=МакетОбработки.ПолучитьОбласть(«СтрокаТаблицы»);

    //{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

    // Данный фрагмент построен конструктором.

    // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

    
    Запрос = Новый Запрос;

    Запрос.Текст =

        «ВЫБРАТЬ

        |    ЗаказКлиентаТовары.Номенклатура КАК Номенклатура,

        |    ЗаказКлиентаТовары.Номенклатура.Артикул КАК НоменклатураАртикул,

        |    ЗаказКлиентаТовары.Номенклатура.ЕдиницаИзмерения КАК НоменклатураЕдиницаИзмерения,

        |ВЫБОР

        |    КОГДА ЗаказКлиентаТовары.Номенклатура.ВесЗнаменатель <> 0

        |    ТОГДА ЗаказКлиентаТовары.Номенклатура.ВесЧислитель / ЗаказКлиентаТовары.Номенклатура.ВесЗнаменатель * ЗаказКлиентаТовары.Количество

        |    ИНАЧЕ &Ничего

        |КОНЕЦ КАК Вес,

        |ВЫБОР

        |    КОГДА ЗаказКлиентаТовары.Номенклатура.ВесЗнаменатель <> 0

        |    ТОГДА ЗаказКлиентаТовары.Номенклатура.ВесЕдиницаИзмерения

        |    ИНАЧЕ &Ничего

        |КОНЕЦ КАК ВесЕдИзм,

        |    ЗаказКлиентаТовары.Цена КАК Цена,

        |    ЗаказКлиентаТовары.Количество КАК Количество,

        |    ЗаказКлиентаТовары.Сумма КАК Сумма,

        |    ЗаказКлиентаТовары.НомерСтроки КАК НомерСтроки

        |ИЗ

        |    Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары

        |ГДЕ

        |    ЗаказКлиентаТовары.Ссылка = &Ссылка»;

           
    Запрос.УстановитьПараметр(«Ссылка», СсылкаНаДокумент.Ссылка);

    Запрос.УстановитьПараметр(«Ничего», «—«);

    
    РезультатЗапроса = Запрос.Выполнить();

    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

    КоличествоСтрок =  ВыборкаДетальныеЗаписи.Количество();

    
    СуммаКоличество = 0;

    СуммаВес = 0;

    СуммаОбъем = 0;

    

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

        ОбластьСтрокаТаблицы.Параметры.НомерСтроки = ВыборкаДетальныеЗаписи.НомерСтроки;

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

        ОбластьСтрокаТаблицы.Параметры.Количество = ВыборкаДетальныеЗаписи.Количество;

//        ОбластьСтрокаТаблицы.Параметры.Цена = ВыборкаДетальныеЗаписи.Цена;

//        ОбластьСтрокаТаблицы.Параметры.Сумма = ВыборкаДетальныеЗаписи.Сумма;

        ОбластьСтрокаТаблицы.Параметры.Артикул = ВыборкаДетальныеЗаписи.НоменклатураАртикул;

        ОбластьСтрокаТаблицы.Параметры.ЕдИзм = ВыборкаДетальныеЗаписи.НоменклатураЕдиницаИзмерения;

        ОбластьСтрокаТаблицы.Параметры.ЯчейкаХранения = ;

        Если ВыборкаДетальныеЗаписи.Вес = «—» Тогда

            ОбластьСтрокаТаблицы.Параметры.Вес = ВыборкаДетальныеЗаписи.Вес;

        Иначе

            ОбластьСтрокаТаблицы.Параметры.Вес = Формат(Окр(ВыборкаДетальныеЗаписи.Вес,1),»ЧДЦ=1″);

        КонецЕсли;

        
        ОбластьСтрокаТаблицы.Параметры.ВесЕдИзм = ВыборкаДетальныеЗаписи.ВесЕдИзм;

        
        ТабличныйДокумент.Вывести(ОбластьСтрокаТаблицы);

        
        ТекущВес=ВыборкаДетальныеЗаписи.Вес;

        Если ТекущВес = «—» Тогда

            ТекущВес = 0;

        КонецЕсли;

        
        
        СуммаКоличество =  СуммаКоличество +  ВыборкаДетальныеЗаписи.Количество;

        СуммаВес = СуммаВес + ТекущВес;

        
    
    
  
    КонецЦикла;

//    

//    //}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

ОбластьПодвалТаблицы=МакетОбработки.ПолучитьОбласть(«ПодвалТаблицы»);

    ОбластьПодвалТаблицы.Параметры.ИтогКоличество = СуммаКоличество;

    ОбластьПодвалТаблицы.Параметры.ИтогВес = Формат(окр(СуммаВес,1),»ЧДЦ=1″);

ТабличныйДокумент.Вывести(ОбластьПодвалТаблицы);

ОбластьПодписи=МакетОбработки.ПолучитьОбласть(«Подписи»);

ТекстИтоговойСтроки = НСтр(«ru = ‘Всего наименований %ВсегоНаименований% на сумму %Сумма% руб.'»);

ТекстИтоговойСтроки = СтрЗаменить(ТекстИтоговойСтроки,»%ВсегоНаименований%», КоличествоСтрок);

ТекстИтоговойСтроки = СтрЗаменить(ТекстИтоговойСтроки,»%Сумма%», СсылкаНаДокумент.СуммаДокумента);

ОбластьПодписи.Параметры.ИтоговаяСумма =  ТекстИтоговойСтроки;

ОбластьПодписи.Параметры.СуммаПрописью = ЧислоПрописью(СсылкаНаДокумент.СуммаДокумента,»Л = ru_RU; ДП = Истина»,»рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2″);

ОбластьПодписи.Параметры.Менеджер = СсылкаНаДокумент.Менеджер;

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

ТабличныйДокумент.АвтоМасштаб = Истина;

Возврат ТабличныйДокумент;

КонецФункции

Добрый день.
Есть организация, занимающаяся мелкооптовой торговлей.
Работа только с юрлицами и исключительно по безналу с комплектом документов: счет+Торг12 (НДС нет, ибо УСН).
Набор контрагентов более-менее стабильный (их штук 30-40), но контактные лица у контрагентов зачастую меняются.
В день — три-пять развозок.
Из-за смены контактных лиц у покупателей часто бывает проблема с тем, что экспедитор приезжает на адрес, и не может найти нужного человека, ибо периодичность доставок — где-то раз в две-три недели, и за это время контактный человек может смениться (а в телефон экспедитор слышит «что вы мне звоните я уже месяц там не работаю!»)
Насколько я знаю, у 1С Бухгалтерии есть механизм сохранения дополнительных сведений и, возможно, его было бы удобно использовать в моей ситуации, например, при выписке счета сразу в этих дополнительных сведениях указывать, кого искать на адресе при разгрузке.
Единственное, что я не понял в справке 1С — это как с этими доп.сведениями работать.
Может быть, здесь есть кто-то, кто мог бы «на пальцах» объяснить или посоветовать, где почитать при применение их в такой ситауции.
1С Бухгалтерия 8.3, редакция 3.0.60.44

Заранее благодарен за дельные советы!

Цитата (Ctocopok):Из-за смены контактных лиц у покупателей часто бывает проблема с тем, что экспедитор приезжает на адрес, и не может найти нужного человека, ибо периодичность доставок — где-то раз в две-три недели, и за это время контактный человек может смениться (а в телефон экспедитор слышит «что вы мне звоните я уже месяц там не работаю!»)

А как вам в этом могут помочь доп. сведения?
Ваш сотрудник приезжает и только потом узнает, что сделку заключает другое лицо… Что вы напишете в доп сведения?
Или вы все-таки знали, что у клиента новое контактное лицо, но ему об этом не сообщили?

Заполнить и подать уведомление об исчисленных суммах налогов и взносов

Возможно, я плохо сформулировал задачу 😀
Смысл в том, что при выписке счёта по телефонной ли или электронно-почтовой заявке, я уже знаю, кого искать на адресе. Эти данные я старательно записываю ручкой на бумажку, которую прикладываю к счёту. К следующей заявке-поставке эта бумажка может стать не актуальной. А может остаться актуальной, но потеряться. А может случиться так, что бумажка потеряется уже из рук экспедитора 😀
Я предполагал, что заведя доп-сведение (аналог подчиненного справочника в терминах 1С 7.7) на каждого контрагента, я мог бы как-то эту информацию в печатную форму вывести прямо в рамочке какой-то «Информация для экспедитора». И водителю удобно, не мой почерк разбирать, и буквы крупные, с плохим зрением не было бы проблемно прочитать. А если в печатную форму еще красиво оформить, то и бухгалтерию «на том конце» эти сведения бы не напугали.
Но во-первых, я не понимаю, как именно завести эти доп-сведения, во-вторых — как их в форме выписки счёта отобразить. Ну и в-втретьих, как вывести на печатную форму (решив первые две проблемы, третья, наверное решилась бы уже достаточно просто).

Цитата (Ctocopok):Смысл в том, что при выписке счёта по телефонной ли или электронно-почтовой заявке, я уже знаю, кого искать на адресе. Эти данные я старательно записываю ручкой на бумажку, которую прикладываю к счёту. К следующей заявке-поставке эта бумажка может стать не актуальной. А может остаться актуальной, но потеряться. А может случиться так, что бумажка потеряется уже из рук экспедитора 😀

Тогда понятно. А не проще обратиться к специалистам?
Самое простое на форму счета в шапку добавить поле Контактное лицо, чтобы его можно было выбрать. В печатную форму добавить Адрес доставки и контактное лицо.

Цитата (Ctocopok):Но во-первых, я не понимаю, как именно завести эти доп-сведения

Я тоже плохо представляю, как их использовать для вашего случая. Попробуйте. Администрирование — Общие настройки — Дополнительные реквизиты и сведения

Цитата (Встроенная справка):Дополнительные реквизиты и сведения — включите флажок, для того чтобы использовать дополнительные свойства для справочников и документов.
Реквизиты и сведения с общим списком значений — включите флажок, для того чтобы разрешить добавление реквизитов, у которых общий список значений с другими реквизитами (команда Добавить — Из другого набора — Сделать копию по образцу). Общие реквизиты и сведения — включите флажок, для того чтобы разрешить добавление реквизитов сразу к нескольким объектам программы одновременно (команда Добавить — Из другого набора — Сделать реквизит общим и добавить в набор).  Дополнительные реквизиты — настройка состава дополнительных реквизитов для справочников и документов. Дополнительные сведения — настройка состава дополнительных сведений для справочников и документов.

Потом надо определиться, что это будет реквизит или сведения.

Цитата (Встроенная справка):Дополнительные реквизиты и сведения объектов делятся на две категории:
■ Дополнительные реквизиты – хранятся в самом объекте (в специальной табличной части). Дополнительные реквизиты создаются для реализации таких свойств, которые являются неотъемлемой частью объекта, вводятся при его редактировании и доступны для редактирования тем же пользователям, которым доступен и сам объект со свойствами;
■ Дополнительные сведения – предназначены для хранения сведений об объекте, которые не являются неотъемлемой частью объекта. Дополнительные сведения, как правило, доступны для просмотра и/или редактирования пользователям, которые не имеют доступа к самому объекту. Дополнительные сведения редактируются в отдельной форме, которую можно открыть из формы объекта.

[img big=/Files/ForumUpload/2028012_big.Реквизит.id-o_1cd0bog026v51qs38us1eb41400d.JPG]/Files/ForumUpload/2028012.Реквизит.id-o_1cd0bog026v51qs38us1eb41400d.JPG[/img]
[img big=/Files/ForumUpload/2028012_big.Сведения.id-o_1cd0bosorhejj9u1m0u10je1o6di.JPG]/Files/ForumUpload/2028012.Сведения.id-o_1cd0bosorhejj9u1m0u10je1o6di.JPG[/img]

Спасибо, Kamushek.
Приведенные цитаты из справочника я читал в первоисточнике, но точного понимания смысла не приобрел.
Контактные лица — они отъемлемые или неотъемлемые части моего объекта? Или что у меня объект? Счёт на оплату или контрагент в нем?

Я уж не говорю о том, что не смог победить редакцию формы счеты (отображаемая экранная форма интерфейса).
пожалуй, действительно, мне стоит поискать совета у «технарей» на форумах, которые не по учёту, а по модификациям специализируются.

Спасибо за потраченное время.

Заполняйте платежки с актуальными на сегодня КБК, кодами дохода и другими обязательными реквизитами

Ctocopok, здравствуйте.

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

В форме документа можно штатно вывести только основное ответственное лицо контрагента, но в печатную форму счёта оно всё равно не попадает, причём при перезаписи или проведении документа, в форме документа ответственное лицо меняется на актуальное (если оно менялось).

Можно в форме списка документа отобразить значение дополнительного реквизита, но в печатную форму оно опять же попадает. Причём, если значение этого реквизита изменить на другое, то оно поменяется и для всех остальных документов с данным контрагентом в форме списка.

Проще (и дешевле) всего, сразу в имеющейся печатной форме в подходящем месте написать вручную контактное лицо и всё вместе распечатать. Разумеется, введённые данные не сохранятся в самом счёте — только на бумаге.

P.S. Чтобы каждый раз вручную не вводить, придётся вставлять значение из какого-нибудь текстового или  эксельного файлика, где будет вестись история изменений контактных лиц для разных контрагентов.

Сергей, здравствуйте.
Я предполагал (для начала) завести для счета на оплату дополнительное поле , хотя бы просто строковое, которое хранилось бы вместе со счётом, и, соответственно, копировалось бы при копировании счёта (ибо количество контрагентов конечно и использование их периодично).
Насколько я понял, печатную форму для стандартных документов можно изменять даже не запуская конфигуратор, возможно, ошибаюсь, но какие-то правки я вносил в какой-то из мириадов баз, с которыми приходилось работать.
Расширение конфигурации для меня сложно, а бюджета для заказа решения на стороне — нет. Я попробую найти аналогичные примеры использования штатного функционала. Пока что-то не везёт в поисках.

К счету я прикрепила объект Дополнительные сведения и показала, как вы это увидите.

Цитата (Ctocopok):Контактные лица — они отъемлемые или неотъемлемые части моего объекта?

Это объект, который вы создаете сами, заполняете сами и редактируете сами. Это — дополнительные сведения. Это не очень хорошее решение, потому что оно само по себе, но у каждого счета надо выбрать свое. Никакой привязки к справочнику Контрагенты или Контактные лица нет. Попробуйте создать Доп. сведения и подтянуть их в печатную форму. 

Цитата (Kamushek):Самое простое на форму счета в шапку добавить поле Контактное лицо, чтобы его можно было выбрать. В печатную форму добавить Адрес доставки и контактное лицо.

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

Цитата (Ctocopok):но точного понимания смысла не приобрел.

А что вы не понимаете, просто создайте объект к счету на оплату, там просто добавить. Оно не на что не повлияет. Это дополнительные данные, которые обычно используют в отчетах, в списках.

Цитата (Ctocopok):Я уж не говорю о том, что не смог победить редакцию формы счеты (отображаемая экранная форма интерфейса).

Это вообще не надо трогать, это делает специалист, если речь идет о Контактном лице.

Заполнить, проверить и сдать декларацию по НДС по актуальной на сегодня форме

2 / 2 / 3

Регистрация: 20.03.2015

Сообщений: 112

1

Как добавить реквизит на макет для печатной формы документа

25.12.2017, 16:34. Показов 23585. Ответов 17


Есть документ, использовала конструктор печати, и вынесла все необходимые реквизиты. Но в процессе создания макета пришлось создать новые реквизиты. В модуле менеджера добавила этот реквизит, создала его на макете, но при запуске программы и выводе на печать, этот реквизит не отображается, в чем дело? ( реквизит ГосНомер)



0



1142 / 689 / 203

Регистрация: 22.04.2013

Сообщений: 5,159

Записей в блоге: 1

25.12.2017, 17:53

2

может его просто нет ? запрос выполнить так просто, в консоли ?



0



2 / 2 / 3

Регистрация: 20.03.2015

Сообщений: 112

25.12.2017, 18:34

 [ТС]

3

В смысле нет? вот скрин самого документа, тут тоже он есть

Миниатюры

Как добавить реквизит на макет для печатной формы документа
 



0



1808 / 1228 / 442

Регистрация: 16.01.2015

Сообщений: 5,395

25.12.2017, 20:14

4

Ankoo, Посмотрите как заполняется область макета куда входит ГосНомер (по скрину не видно). Скорей всего там не прописано заполнение этого параметра



0



2 / 2 / 3

Регистрация: 20.03.2015

Сообщений: 112

25.12.2017, 21:44

 [ТС]

5

вы про это?

Миниатюры

Как добавить реквизит на макет для печатной формы документа
 



0



1808 / 1228 / 442

Регистрация: 16.01.2015

Сообщений: 5,395

25.12.2017, 21:52

6

Ankoo, Нет. Не про это.В коде заполнения макета (ваш второй скрин из трех), заполняется область в которую входит параметр ГосНомер. Предположим (по скрину не видно) ГосНомер входит в ОбластьМаршрут.
Должно быть как-то подобно такому: ОбластьМаршрут.Параметры.ГосНомер = Выборка.ГосНомер



0



2 / 2 / 3

Регистрация: 20.03.2015

Сообщений: 112

25.12.2017, 21:57

 [ТС]

7

Вот полностью модуль



0



1808 / 1228 / 442

Регистрация: 16.01.2015

Сообщений: 5,395

25.12.2017, 22:01

8

Ankoo, Покажите полный скрин макета, чтобы было понятно, куда вы поместили параметр ГосНомер



0



2 / 2 / 3

Регистрация: 20.03.2015

Сообщений: 112

25.12.2017, 22:06

 [ТС]

9

Он находится где государственный номерной знак

Миниатюры

Как добавить реквизит на макет для печатной формы документа
 

Как добавить реквизит на макет для печатной формы документа
 



0



1808 / 1228 / 442

Регистрация: 16.01.2015

Сообщений: 5,395

25.12.2017, 22:08

10

Ankoo, Нужен скрин где видны названия областей. Т.е. первый скрин снятый левее



0



2 / 2 / 3

Регистрация: 20.03.2015

Сообщений: 112

25.12.2017, 22:12

 [ТС]

11

Не пойму что двигать левее, корретка не двигается левее

Миниатюры

Как добавить реквизит на макет для печатной формы документа
 



0



1808 / 1228 / 442

Регистрация: 16.01.2015

Сообщений: 5,395

25.12.2017, 22:15

12

Ankoo, )))). Окно конфигурации, нажмите беленькую штучку типа овала левее Х (крестик закрытия окна)
окно свернется слева, весь макет будет виден ))))))



0



2 / 2 / 3

Регистрация: 20.03.2015

Сообщений: 112

25.12.2017, 22:19

 [ТС]

13

вот левее))

Миниатюры

Как добавить реквизит на макет для печатной формы документа
 



0



polax

1808 / 1228 / 442

Регистрация: 16.01.2015

Сообщений: 5,395

25.12.2017, 22:31

14

Ankoo, Теперь понятно. Параметр ГосНомер входит в шапку. непонятно в коде вот эта строка:

1C
1
ТабДок.Вывести(Шапка, Выборка.Уровень())

Попробуйте просто

1C
1
ТабДок.Вывести(Шапка)

Все остальное вроде без ошибок, по крайней мере, я их не вижу



0



2 / 2 / 3

Регистрация: 20.03.2015

Сообщений: 112

25.12.2017, 23:01

 [ТС]

15

Эх не работает(



0



1808 / 1228 / 442

Регистрация: 16.01.2015

Сообщений: 5,395

25.12.2017, 23:16

16

Ankoo, А ГосНомер в документе Путевой Лист заполнен?
Попробуйте после
Шапка.Параметры.Заполнить(Выборка)
добавить принудительно
Шапка.Параметры.ГосНомер = Выборка.ГосНомер

Хотя……. причина в чем-то другом

Добавлено через 7 минут
Вот что. Поставьте точку останова на
Шапка.Параметры.Заполнить(Выборка)
и посмотрите что возвращает Шапка.Параметры, есть ли в списке параметров ваш ГосНомер



0



Котовчанин

942 / 482 / 200

Регистрация: 16.02.2010

Сообщений: 3,338

Записей в блоге: 37

26.12.2017, 11:21

17

Ankoo, так а ГосНомер вообще есть в результате запроса? Я не про поле, а про значение поля.



0



Модератор

Эксперт 1С

3708 / 2905 / 572

Регистрация: 10.03.2011

Сообщений: 11,442

Записей в блоге: 1

30.12.2017, 01:51

18

Ankoo, может нужно просто заполнить в документе гос номер?



0



В типовых конфигурациях при формировании печатных форм продажи товаров (ТОРГ-12, счет-фактура, УПД) в колонку Код можно вывести на выбор или артикул или внутренний код товара. Бывают ситуации, когда у пользователей возникает необходимость вывести туда какое-то третье значение — артикул поставщика, идентификатор товара на сайте и прочее. В то же время у них может не быть возможности использовать для этого поле Артикул, так как там тоже находится нужная информация.

Именно для такого случая и создана данная обработка. Она позволяет заполнять колонку Код в ТОРГ-12, счет-фактуре и УПД на основе любого выбранного дополнительного реквизита номенклатуры.

Рассмотрим конкретный пример, допустим есть такое поле в товарной карточке:

доп.реквизит номенклатуры

Его будем выводить на печать. После добавления обработки в интерфейс в списке команд печати документа Реализация товаров и услуг добавятся новые команды:

команды печати в реализации товаров

Команда Настройки печати типовых форм добавляется после установки файла product586 (Счет на оплату):

файлы обработок

Перед печатью необходимо выбрать дополнительный реквизит для подстановки в печатные формы. Для этого в списке команд печати выберем Настройки печати типовых форм. В открывшемся окне заполним нужное свойство. Нажимаем Сохранить и закрыть.

выбор дополнительного реквизита

Так выглядит результат в ТОРГ-12:

печать доп.реквизита в ТОРГ-12

Т.к. в счет-фактуре нет отдельной колонки для кода, значение реквизита указывается в наименовании товара:

доп.реквизит в СФ

В УПД печатаем в отдельную колонку:

доп. реквизит номенклатуры в УПД

Распечатывать можно как отдельный документ, так и список.

Релиз 586.1.1.2 от 31.01.2019

Добавлена возможность вывода дополнительного реквизита в счет на оплату (прикрепляется к заказу клиента):

вывод кода в счет на оплату

Релиз 586.1.1.3 от 07.08.2019

Теперь можно выводить в колонку Код еще и штрихкод номенклатуры.

вывод штрихкода в ТОРГ-12, УПД, счет-фактуру и счет на оплату

Релиз 586.1.1.4 от 05.07.2021

Разработка адаптирована под новые редакции УПД и счет-фактуры (по постановлению 534).

Релиз 586.1.1.5 от 03.10.2021

Теперь в печатных формах можно выводить дополнительные реквизиты не только номенклатуры, но и характеристик.


Дмитрий Медведков

Дмитрий Медведков

Программист, консультант 1С

Начал работать с 1С в 2012-м, специализируюсь на УТ 11

  1. Добрый день!
    Имеется УНФ 1С:Предприятие 8.3 (8.3.15.1489), необходимо создать печатную форму для документа «Заказ на производство», причем в документ добавлен дополнительный реквизит с наименованием «Места выдачи». Проблема в том, что
    не могу получить значение дополнительного реквизита. Делаю так:

    ДопСвойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию(«Места выдачи»);
    Значение = СсылкаНаОбъект.ДополнительныеРеквизиты.Найти(ДопСвойство);
    ОбластьШапки.Параметры.МестаВыдачи = Значение;

    В результате получаю пустое поле (ошибок не выдается). Что здесь не так?


  2. 1cUserAndrew

    Offline

    1cUserAndrew
    Профессионал в 1С
    Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    5.153
    Симпатии:
    217
    Баллы:
    104

    Попробуйте так:

    Значение = УправлениеСвойствами.ЗначениеСвойства(СсылкаНаОбъект, ДопСвойство);
  3. Большое спасибо! Сработало!

  4. Столкнулся с неожиданной проблемой:
    Имеется три дополнительных реквизита, все три пытаюсь выводить так:

    ДопСвойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию(«Дополнительный реквизит1»);
    Значение = УправлениеСвойствами.ЗначениеСвойства(СсылкаНаОбъект, ДопСвойство);
    ОбластьШапки.Параметры.ТипКлиента = Значение;

    В результате Дополнительный реквизит1 и Дополнительный реквизит2 выводятся нормально, а вместо значения Дополнительный реквизит3 — пустое поле. Что может быть не так с третьим реквизитом? Может быть дело в том, что первые два реквизита относятся к документу, для которого делается печатная форма, а третий к справочнику Контрагенты?


  5. 1cUserAndrew

    Offline

    1cUserAndrew
    Профессионал в 1С
    Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    5.153
    Симпатии:
    217
    Баллы:
    104

    Ну да, в параметр СсылкаНаОбъект нужно передавать владельца доп.свойства.
    В третьем случае, получается, что нужно передавать не документ, а контрагента.

  6. Не совсем понял: из документа «Заказы на производство» единственный путь добраться до справочника Контрагенты через поле «Заказ покупателя», т.е. так СсылкаНаОбъект.ЗаказПокупателя.Контрагент, пробовал так:

    Значение = УправлениеСвойствами.ЗначениеСвойства(СсылкаНаОбъект.ЗаказПокупателя.Контрагент, ДопСвойство);

    — безрезультатно.


  7. 1cUserAndrew

    Offline

    1cUserAndrew
    Профессионал в 1С
    Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    5.153
    Симпатии:
    217
    Баллы:
    104

    Точнее, к сожалению, не могу сказать. Нужно разбираться с конкретным случаем.
    В общем случае, судя по описанию, вроде, все верно.

  8. Помогла статья http://1c-bezproblem.ru/blog/v-pomo…polnitelnye-rekvizity-v-1c-8-3-na-primere-unf . Работоспособным оказался следующий код:

    ЗакКонтрагент = СсылкаНаОбъект.ЗаказПокупателя.Контрагент;

    ДопСвойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию(«Тип клиента (Контрагенты)»);
    Значение = ЗакКонтрагент.ДополнительныеРеквизиты.Найти(ДопСвойство).Значение;


1C-pro.ru - форум по 1С:Предприятию 7.7, 8.0, 8.1, 8.2, 8.3

Обсуждение (12)

  1. Приложение

    Добрый день!
    Я программист БухЭксперт8 и Оксана попросила меня дополнительно посмотреть ваш вопрос, чтобы максимально полно его раскрыть. 🙂
    В релизе 3.0.113 разработчики добавили возможность пользователям создавать свои макеты к документам 1С.
    Правда, это не всегда просто, но показать, как работает этот новый функционал я попробую в своем ответе.

    Чтобы создать новый макет к документу Выпуск продукции перейдите в раздел Администрирование — Печатные формы, отчеты и обработки — Макеты печатных форм. Найдите документ, к которому будете создавать свою печатную форму, встаньте на него курсором и нажмите кнопку Создать.

  2. Приложение

    Появится окошко в котором вы можете указать как будет отображаться новая печатная форма в списке или ничего не менять, тогда название печатной формы будет «Новая печатная форма»

    В открывшемся листе, похожем на Excel,
    нужно нарисовать нужный макет (с таблицами, колонками) и подтянуть нужные сведения из окошка справа.

    Чтобы упростить себе задачу прорисовки макета, мы скопируем его из той формы, которую хотим доработать.

  3. Для этого сформируйте печатную форму М-11 и по кнопке ЕЩЕ- Изменить макет перейдите в макет этой формы. Выделите все строки действующего макета и скопируйте их в буфер по правой кн. мыши — скопировать или кнопочке вверху на командной панели.

    Возвращаетесь к новому макету и по выделенной кнопке командной панели вставляете из буфера в новый макет.

  4. Приложение

    Теперь нужно привести размеры колонок в сжатый вид, как в исходном макете, поэтому с колонок 12 по 51 мы либо вручную сдвигаем мышкой колонки влево, либо выделаем колонки 12-51 и задаем ширину колонок 1,5 по правой кнопке мышки — Ширина колонок.

    У нас должен получиться аккуратный макет, как в исходной форме.
    Делаем мы это из-за того, что при вставке из буфера не сохраняются размеры ширины колонок и их приходится править в новом макете.

    Итак, макет мы получили. Теперь мы должны очистить все выделенные поля и вместо них подставить данные из доступных реквизитов в окне справа.

    Очистить обязательно, потому что выделенные значения прописывались программно в модуле печати и таких данных в нашем документе напрямую нет.

  5. Приложение

    Прописывание делается очень просто: вы встаете на нужное поле по правой кн. мыши вызываете команду Очистить — Содержимое, после этого перетаскиваете на это место из правого окошка нужный реквизит, например, ПредставлениеОрганизации -> Организация, ПредставлениеПодразделения -> Подразделение затрат и т.д..

    Сложность может быть с заголовком, тут нужно сначала вручную ввести текст «Требование-накладная №», а в следующей колонке Номер из окна правой части.

  6. Приложение

    Но сначало обязательно очистите старые данные «Заголовок», таких данных в самом документе и доступных реквизитам правого окна нет.
    Когда очистите поле Заголовок, удобно расположите сначала текст Требование-накладная № (или любой другой, что хотите видеть), а в следующей колонке подтяните поле Номер из окошка в правой части макета.

  7. Приложение

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

    С шапкой мы закончили, теперь нужно вставить колонку Продукция в табличную часть материалов.
    Вы встаете курсором на колонку 4 и пр. кнопкой мыши вызываете команду Раздвинуть. После этого корректируете макет так, чтобы все было красиво и заполняете данные после очистки старых из правого окна доступных реквизитов.

  8. Вам могут понадобиться команды объединения и установки линий в таблице через Свойства ячеек, смотри скрины.

  9. Приложение

    В результате в макете у вас должно быть так.

  10. Приложение

    Сохраняете изменения по кнопке Записать и закрыть.
    Устанавливаете флаг в новом макете (без флага новая печатная форма не будет видна в списке печатных форм)

  11. Приложение

    Теперь в списке печатных форм Выпуска продукции будет отображаться новая печатная форма.

  12. Единственная засада для нового макета — цена и сумма, которая определяется в расчетным путем в программном коде и данных этих нет в доступных полях для нового макета этого документа. В этом месте в исходнике помещен специальный запрос для определения данных из бухучета, и в этом конструкторе печатных форм вставить запрос не получится: конструктор все-таки простейший.

    Поэтому я подробно показала как работать с новым функционалом, если нужны будут доработки по реквизитам, которые в самой форме документа есть и это можно делать самим, без привлечения программиста, что очень ценно! 🙂

Комментарии закрыты

По мере использования 1С, у многих предприятий возникает потребность создать для какого-либо объекта информационной базы реквизит, позволяющий хранить дополнительную информацию, например, добавление дополнительного специфического, характерного для вашей продукции описания номенклатуры в текстовом виде или же в виде числовых характеристик. Для удовлетворения данной потребности есть два пути либо заказать доработку конфигурации у фирмы 1С:Франчайзи, либо воспользоваться механизмом добавления дополнительных реквизитов.

В данной статье будет описан второй вариант. Использование механизма дополнительных реквизитов позволяет добавить реквизит в режиме 1С Предприятия, не прибегая к помощи «конфигуратора». Если ваша цель ограничена лишь добавлением дополнительной аналитики объекта и последующего использования этой аналитики в типовых отчетах (например, использование дополнительного реквизита в качестве условия отбора или простого вывода в табличный документ), то не понадобится даже помощь программиста. Однако стоит сразу оговориться, что более сложные задачи, связанные с дополнительным реквизитом, например, вывод в печатную форму, все же потребует изменений в программном коде.

Дополнительные реквизиты можно найти на форме объекта – Ещё – Изменить состав дополнительных реквизитов или же через НСИАдминистрирование – Общие настройки, как показано на рисунке 1. На данном рисунке видно, что сначала необходимо проставить флажок для включения интересующей нас опции. Так же видно, что помимо реквизитов, есть и дополнительные сведения. С точки зрения пользователя они отличаются тем, что доп. реквизиты вынесены на форму, а сведения вызываются отдельной формой специальной командой из кнопки Ещё на форме объекта.

НСИАдминистрирование – Общие настройки

Рисунок 1 – Настройка дополнительных реквизитов и сведений через Общие настройки

На рисунке 2 можно увидеть окно, в котором можно увидеть список доп. реквизитов, а также возможность создать их.

Дополнительные реквизиты


Рисунок 2 – Окно «Дополнительные реквизиты»

На рисунке 3 изображено окно непосредственного создания нового реквизита.

Пользователю доступны следующие настройки:

1.     Наименование – Имя реквизита, которое видит пользователь

2.     Для разработчиков, Имя – Уникальное имя реквизита, по которому разработчик сможет получатьизменять значения, модифицировать элемент формы связанный с доп. реквизитом.

3.     Тип значения:

  • Строка – доступна настройка длины строки, настройки элемента ввода элемента (однострочноемногострочное поле ввода)
  • Число – доступны настройки длины числа, точности, флажок неотрицательное, представления нуля и отрицательных чисел.
  •  Булево – Просто флажок.
  • Дата – Есть возможность выбора формата даты, состава даты (дата, время, дата и время), а также представления пустой даты
  • Составной тип данных – Пользователь сам выбирает тип данных при вводе.
  • Дополнительные значения – При выборе данного типа значения задаются на вкладке «значения», рисунок 3.
  • Пользователь – значение из справочника пользователи.

4.     Настройки видимости, доступности и обязательности заполнения элемента формы.

Окно создания дополнительного реквизита

Рисунок 3 – Окно создания дополнительного реквизита

Добавим дополнительные реквизиты для справочника Организации, рисунок 4, 5. Дополнительные реквизиты, в зависимости от структуры элемента формы, добавляются на закладку «Дополнительно» или в подраздел «Дополнительные реквизиты» в порядке создания реквизитов.

Добавленные реквизиты

Рисунок 4 – Добавленные реквизиты

Элементы формы дополнительных реквизитов

Рисунок 5 – Элементы формы дополнительных реквизитов

Теперь попробуем применить новые элементы справочника Организации на примере отчета «Универсальный отчет» и выведем их на экран. Как видно из рисунка 6, к новым реквизитам (у данных реквизитов после названия в скобках указан справочник, которому они принадлежат) можно обратиться «через точку».

Использование новых реквизитов при настройке варианта отчета

Рисунок 6 – Использование новых реквизитов при настройке варианта отчета

Вывод дополнительных реквизитов на экран с помощью универсального отчета

Рисунок 7 – Вывод дополнительных реквизитов на экран с помощью «универсального отчета»

В итоге на рисунке 7 мы видим, что возможно добавление новой аналитики в отчет, не прибегая к помощи разработчиков используя механизм дополнительных реквизитов.

Нужна помощь с 1С?

Мы можем взять на себя ваш бухгалтерский учет. Вам не нужно будет думать о расчете налогов и сдаче отчетности. Мы будем вести финансовую ответственность за ошибки. Мы — команда профессионалов, а не один бухгалтер, мы не заболеем, не пропадем и не уйдем внезапно в отпуск. Сосредоточьтесь на управлении. А учет и отчетность мы возьмем на себя. Чтобы получить бесплатную консультацию по автоматизации своего бизнеса Вы можете пообщаться с нашими специалистами в офисе компании или позвонив по телефону: 8-800-707-01-02.

Сопровождение 1С

Наш специалист

Владислав Быков

Специалист отдела разработки


Чем мы можем быть вам полезны?

Понравилась статья? Поделить с друзьями:
  • Как добавить компанию в варкрафт 3 рефордж
  • Как добавить компанию на яндекс навигаторе
  • Как добавить контрагента в тинькофф бизнес
  • Как добавить реквизит в группу справочника
  • Как добавить реквизит в отбор формы списка