Каталог решений - УТ 10.3: как сделать периодическими налоговые реквизиты организации (ИНН, КПП, Юридический адрес).

УТ 10.3: как сделать периодическими налоговые реквизиты организации (ИНН, КПП, Юридический адрес).

УТ 10.3: как сделать периодическими налоговые реквизиты организации (ИНН, КПП, Юридический адрес).

В наличии

Думаю, вряд ли кто-то будет отрицать, что  в плане решения задач оперативного учёта, УТ 10.3  является одной из наиболее удачных конфигураций.
Однако и в ней порой нет-нет да и наткнёшься на маленькие шероховатости, которые хочется ласково и с любовью доработать напильником.
Например  – налоговые реквизиты организаций и контрагентов (ИНН, КПП, Юридический адрес) не являются периодическими.

Категория:

Описание

Да, к сожалению, в УТ 10.3  налоговые реквизиты организаций и контрагентов (ИНН, КПП, Юридический адрес) не являются периодическими.

Если у организации поменялся юридический адрес (и, соответственно, КПП), становится проблематичным

распечатать документы за прошлые месяцы  (со старыми значениями реквизитов). 

 

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

  1. Добавляем в конфигурацию новый периодический независимый регистр сведений ИсторияНалоговыхРеквизитовОрганизаций.

Периодичность – в пределах дня.  С одним измерением и тремя ресурами.

Измерение:     Объект  (тип СправочникСсылка.Организации, СправочникСсылка.Контрагенты)

Ресурсы:            ИНН (Строка, 12);   КПП (Строка, 9); ЮридическийАдрес (Строка, 200)

 

 

  1. Открываем общий модуль УправлениеКонтактнойИнформацией,   находим функцию СведенияОЮрФизЛице().

Эта функция возвращает  структуру реквизитов организации (или контрагента).

Необычайное удобство этой функции состоит в том, что она используется  при  заполнении ВСЕХ типовых печатных форм (ТОРГ-12, Акт оказания услуг, СФ, и прочее),

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

 

        Переходим в конец функции, находим там следующий фрагмент:

Если Данные <> Неопределено Тогда
	Сведения.Вставить("Представление",    Данные.Наименование);
	Сведения.Вставить("ИНН",              Данные.ИНН);
	Сведения.Вставить("Телефоны",         ПолучитьТелефонИзКонтактнойИнформации(ЮрФизЛицо));
	Сведения.Вставить("НомерСчета",       Данные.НомерСчета);
	Сведения.Вставить("Банк",             Данные.Банк);
	Сведения.Вставить("БИК",              Данные.БИК);
	Сведения.Вставить("АдресБанка",       Данные.АдресБанка);
	Сведения.Вставить("КоррСчет",         Данные.КоррСчет);
	Сведения.Вставить("ЮридическийАдрес", ПолучитьАдресИзКонтактнойИнформации(ЮрФизЛицо,"Юридический"));
	Сведения.Вставить("ФактическийАдрес", ПолучитьАдресИзКонтактнойИнформации(ЮрФизЛицо,"Фактический"));

 	Если НЕ ЗначениеЗаполнено(Сведения.ПолноеНаименование) Тогда
		Сведения.ПолноеНаименование = Сведения.Представление;
	КонецЕсли;
КонецЕсли;

 

И добавляем после этого фрагмента свои пять копеек:

 

	//{ Пацталоцци
	//если налоговые реквизиты организации когда-нибудь менялись, тогда старые реквизиты (актуальные на ДатаПериода)
	//могут храниться в регистре сведений ИсторияНалоговыхРеквизитовОрганизаций
	//
	СтарыеНалоговыеРеквизиты = ПолучитьНалоговыеРеквизиты(ЮрФизЛицо, ДатаПериода);

	Если СтарыеНалоговыеРеквизиты.ИНН <> Неопределено Тогда
		Сведения.Вставить("ИНН", СтарыеНалоговыеРеквизиты.ИНН);
	КонецЕсли;

	Если СтарыеНалоговыеРеквизиты.КПП <> Неопределено Тогда
		Сведения.Вставить("КПП", СтарыеНалоговыеРеквизиты.КПП);
	КонецЕсли;

	Если СтарыеНалоговыеРеквизиты.ЮридическийАдрес <> Неопределено Тогда
		Сведения.Вставить("ЮридическийАдрес", СтарыеНалоговыеРеквизиты.ЮридическийАдрес);
	КонецЕсли;
	//} Пацталоцци

               

 

  1. Теперь осталось отписать функцию ПолучитьНалоговыеРеквизиты(ЮрФизЛицо, ДатаПериода)

Её можно поместить в любой общий модуль, который доступен на сервере и на клиенте. Например, в модуль УправлениеКонтактнойИнформацией.

(Но чтобы не париться с обновлениями, правильнее для самопальных функций создать дополнительный общий модуль).

 Вот текст функции:

 

               

	// Пацталоцци
	// Функция возвращает коды ИНН и КПП объекта (организации или контрагента) на указанную дату
	//
	Функция ПолучитьНалоговыеРеквизиты(Ссылка, ДатаПериода) Экспорт

		Запрос = Новый Запрос;
		Запрос.УстановитьПараметр("Ссылка",      Ссылка);
		Запрос.УстановитьПараметр("ДатаПериода", ДатаПериода);

 		Запрос.Текст =
		"ВЫБРАТЬ
		|	ИНН КАК ИНН,
		|	КПП КАК КПП,
		|	ЮридическийАдрес КАК ЮридическийАдрес
		|ИЗ
		|	РегистрСведений.ИсторияНалоговыхРеквизитовОрганизаций.СрезПоследних(&ДатаПериода, Объект = &Ссылка)
		|";

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

 		Результат = Новый Структура("ИНН, КПП, ЮридическийАдрес");

 		Результат.ИНН	= Выборка.ИНН;
		Результат.КПП	= Выборка.КПП;
		Результат.ЮридическийАдрес	= Выборка.ЮридическийАдрес;

		Возврат Результат;

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

 
  1. Собственно,  этих настроек достаточно для решения задачи. 

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

Достаточно просто  зайти в регистр и вручную внести туда запись.

У меня была ситуация, когда посреди квартала (точнее, с 03.09) поменялся юр.адрес и КПП одной организации.

Я открыл регистр, добавил туда 2 записи.  Одна запись с периодом 01.01.2001,  вторая — от 03.09.2013.  Вот и всё.

 

has been added to your cart:
Оформление заказа