Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
29 мар 2024, 05:17

Как вывести в шапке макета УПД Налоговый Номер(БИН) для Казахстанских контрагентов

Автор r.paklin, 03 сен 2018, 12:14

0 Пользователей и 1 гость просматривают эту тему.

r.paklin

Добрый день, дамы и господа!
Прошу помощи для недостойного))) Имею 1С 8.3 БП3.0., типовой конфигурации, использующуюся для работы на экспорт в Казахстан. Бухгалтер попросил меня подумать покумекать что можно сделать, чтобы в УПД выводилось ниже ИНН/КПП для РФ строка с БИНом.
Залез в конфигуратор, поправил макет УПД, добавив ячейку с параметром НалоговыйНомер.
http://prntscr.com/kpyz90

В процедуре ВывестиСчетФактуруВТабличныйДокумент(ТабДокумент, Макет, ВыборкаСФ, ЭтоУниверсальныйПередаточныйДокумент = Ложь) добавил
Если ЭтоУниверсальныйПередаточныйДокумент Тогда

НомерСчетаФактуры = "Универсальный передаточный документ № " + ДанныеШапки.Номер + " от " + Формат(ДанныеШапки.Дата, "ДЛФ='ДД'");

ОбластьМакета.Параметры.Номер = ДанныеШапки.Номер;
ОбластьМакета.Параметры.Дата  = Формат(ДанныеШапки.Дата, "ДЛФ='ДД'");

ОбластьМакета.Параметры.НомерИсправления = ДанныеШапки.НомерИсправления;
ОбластьМакета.Параметры.ДатаИсправления  = Формат(ДанныеШапки.ДатаИсправления, "ДЛФ='ДД'");

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

ОбластьМакета.Параметры.ПредставлениеПоставщика = ДанныеШапки.ПредставлениеПоставщика;
ОбластьМакета.Параметры.ИННПоставщика = ?(ДанныеШапки.Свойство("ИННКПППоставщика"),
ДанныеШапки.ИННКПППоставщика,
"" + ДанныеШапки.ИННПоставщика + ?(ЗначениеЗаполнено(ДанныеШапки.КПППоставщика), "/" + ДанныеШапки.КПППоставщика, ""));
ОбластьМакета.Параметры.АдресПоставщика = ДанныеШапки.АдресПоставщика;
ОбластьМакета.Параметры.ПредставлениеГрузоотправителя = ДанныеШапки.ПредставлениеГрузоотправителя;

ОбластьМакета.Параметры.ПредставлениеПокупателя = ДанныеШапки.ПредставлениеПокупателя;
ОбластьМакета.Параметры.ИННПокупателя = ?(ДанныеШапки.Свойство("ИННКПППокупателя"),
ДанныеШапки.ИННКПППокупателя,
"" + ДанныеШапки.ИННПокупателя + ?(ЗначениеЗаполнено(ДанныеШапки.КПППокупателя), "/" + ДанныеШапки.КПППокупателя, ""));
ОбластьМакета.Параметры.АдресПокупателя = ДанныеШапки.АдресПокупателя;
//Роман
ОбластьМакета.Параметры.НалоговыйНомер = ДанныеШапки.НалоговыйНомер;
//Роман//
ОбластьМакета.Параметры.ПредставлениеГрузополучателя = ДанныеШапки.ПредставлениеГрузополучателя;

Иначе

НомерСчетаФактуры = "Счет-фактура № " + ДанныеШапки.Номер + " от " + Формат(ДанныеШапки.Дата, "ДЛФ='ДД'");

ОбластьМакета.Параметры.Номер = НомерСчетаФактуры;
ОбластьМакета.Параметры.НомерИсправления = "Исправление № " + ДанныеШапки.НомерИсправления + " от " + Формат(ДанныеШапки.ДатаИсправления, "ДЛФ='ДД'");
ОбластьМакета.Параметры.ПредставлениеПоставщика = "Продавец: " + ДанныеШапки.ПредставлениеПоставщика;
ОбластьМакета.Параметры.АдресПоставщика = "Адрес: " + ДанныеШапки.АдресПоставщика;
ОбластьМакета.Параметры.ИННПоставщика = "ИНН/КПП продавца: " + ?(ДанныеШапки.Свойство("ИННКПППоставщика"),
ДанныеШапки.ИННКПППоставщика,
"" + ДанныеШапки.ИННПоставщика + ?(ЗначениеЗаполнено(ДанныеШапки.КПППоставщика), "/" + ДанныеШапки.КПППоставщика, ""));
ОбластьМакета.Параметры.ПредставлениеГрузоотправителя = "Грузоотправитель и его адрес: " + ДанныеШапки.ПредставлениеГрузоотправителя;
ОбластьМакета.Параметры.ПредставлениеГрузополучателя = "Грузополучатель и его адрес: " + ДанныеШапки.ПредставлениеГрузополучателя;
ОбластьМакета.Параметры.ПоДокументу = "К платежно-расчетному документу № " + ДанныеШапки.ПоДокументу;
ОбластьМакета.Параметры.ПредставлениеПокупателя = "Покупатель: " + ДанныеШапки.ПредставлениеПокупателя;
ОбластьМакета.Параметры.АдресПокупателя = "Адрес: " + ДанныеШапки.АдресПокупателя;
//Роман
ОбластьМакета.Параметры.НалоговыйНомер = "БИН: " + ?(ДанныеШапки.Свойство("НалоговыйНомер"),
ДанныеШапки.НалоговыйНомер,
"" + ДанныеШапки.НалоговыйНомер);
//Роман//
ОбластьМакета.Параметры.ИННПокупателя = "ИНН/КПП покупателя: " + ?(ДанныеШапки.Свойство("ИННКПППокупателя"),
ДанныеШапки.ИННКПППокупателя,
"" + ДанныеШапки.ИННПокупателя + ?(ЗначениеЗаполнено(ДанныеШапки.КПППокупателя), "/" + ДанныеШапки.КПППокупателя, ""));
ОбластьМакета.Параметры.Валюта = "Валюта: наименование, код " + ДанныеШапки.ВалютаНаименование;

КонецЕсли;

И тогда оно стало ругаться:
http://prntscr.com/kpz3vb

Что делать? где копать? Хелп ми плиз)

Каримдат

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

r.paklin

Цитата: Каримдат от 03 сен 2018, 13:12
Предполагаю, что вы создали ещё один макет, в него добавили нужные параметры, а в коде не поправили ПолучитьМакет. Вы не тот макет получаете при заполнении.
К сожалению Макетов всего 2: старая форма и 981. Новых макетов не создавалось. Все махинации идут с существующим макетом. В процессе изысканий понял, что ОбластьМакета.Параметры.НалоговыйНомер = - это я говорю какой ячейке в макете назначить что либо, но что назначить видимо не знаю. :dfbsdfbsdf:
Теперь меняю на ОбластьМакета.Параметры.НалоговыйНомер = Справочники.Контрагенты.ЗаполнитьНалоговыйНомерИностранногоКонтрагента();

Но получаю
{ОбщийМодуль.УчетНДС.Модуль(11622)}: Обращение к процедуре объекта как к функции (ЗаполнитьНалоговыйНомерИностранногоКонтрагента)

pavl_vs

Цитата: r.paklin от 03 сен 2018, 13:25
...Макетов всего 2: старая форма и 981. Новых макетов не создавалось. Все махинации идут с существующим макетом. В процессе изысканий понял, что ОбластьМакета.Параметры.НалоговыйНомер = - это я говорю какой ячейке в макете назначить что либо, но что назначить видимо не знаю...
Старый макет, или новый - в любом случае должна быть ячейка, содержащая параметр <НалоговыйНомер> и, возможно, с указанием в его свойствах пути к данным. Иначе и будете получать "Поле объекта не обнаружено (НалоговыйНомер)"

r.paklin

Цитата: pavl_vs от 03 сен 2018, 16:59
Старый макет, или новый - в любом случае должна быть ячейка, содержащая параметр <НалоговыйНомер> и, возможно, с указанием в его свойствах пути к данным. Иначе и будете получать "Поле объекта не обнаружено (НалоговыйНомер)"

Поле есть, в свойствах стоит параметр <НалоговыйНомер>, я ж уже вроде писал. На самом деле я не знал как в него поместить нужные мне данные, точнее как к чему обратиться чтобы получить нужные данные и как их запихать в переменную ДанныеШапки.

Решилось с помощью хороших людей с миста форума.

В функцию "ПодготовитьДанныеШапкиСчетаФактуры1137(.." в разделе //Наименование Покупателя:

ДанныеШапки.Вставить("НалоговыйНомерВСтранеРегистрации", ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(СведенияОПокупателе, "НалоговыйНомерВСтранеРегистрации, "));


В продседуру "ВывестиСчетФактуруВТабличныйДокумент(.." в разделе//Вывод шапки:

ОбластьМакета.Параметры.НалоговыйНомер = "БИН: " + ДанныеШапки.НалоговыйНомерВСтранеРегистрации;

Все работает.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск