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

Неверно открываются реквизиты ПФР в справочнике организаций БП 3.0.47.33

Автор pro-g8, 10 мар 2017, 21:11

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

pro-g8

Здравствуйте,
Вопрос по Бухгалтерии предприятия 3.0.47.33
В связи с переходом пенсионных платежей в налоговую, бухгалтер стала править соответствующие настройки в справочнике организаций.
Жалуется, что, если нажать на "Платежные реквизиты" в части "Пенсионный фонд", то появляется окно с другими реквизитами.

Попытался разобраться.

Оказалось, что реквизит "Код территориального органа" - строка 7 знаков (например, "123-456").
При нажатии на "ссылку"  "Платежные реквизиты", открывается справочник контрагентов  с формой "ПлатежныеРеквизитыГосударственныхОрганов", куда и передается этот код в числе прочих реквизитов.

В указанной форме в событии "ПриСозданииНаСервере" происходит запрос данных ПФР:
Данные = ДанныеГосударственныхОрганов.ГосударственныйОрган(ВидГосударственногоОргана, КодГосударственногоОргана);

В модуле "ДанныеГосударственныхОрганов" в функции "ГосударственныйОрган" происходит неопсредственно запрос к справочнику "Контрагенты".
Однако "Код органа" предварительно "урезается" в функции
Код = КодГосударственногоОрганаДляЗапросаРеквизитов(ВидГосударственногоОргана, КодГосударственногоОргана);

Функция КодГосударственногоОрганаДляЗапросаРеквизитов(ВидГосударственногоОргана, КодГосударственногоОргана)
   
   Если ВидГосударственногоОргана = Перечисления.ВидыГосударственныхОрганов.НалоговыйОрган Тогда
      Возврат Лев(КодГосударственногоОргана, 4);
   ИначеЕсли ВидГосударственногоОргана = Перечисления.ВидыГосударственныхОрганов.ОрганПФР Тогда
      Возврат Лев(КодГосударственногоОргана, 3);
   ИначеЕсли ВидГосударственногоОргана = Перечисления.ВидыГосударственныхОрганов.ОрганФСС Тогда
      Возврат Лев(КодГосударственногоОргана, 4);
   Иначе
      Возврат КодГосударственногоОргана;
   КонецЕсли;
   
КонецФункции

В частности для ПФР - до первых трех символов.

И уже потом этот трехсимвольный код вставляется в текст запроса, в котором выбирается только ПЕРВЫЙ результат, хотя коды подразделений хранятся полностью (для ПФР = 7 символов).
Т.е. если есть несколько территориальных подразделений "123-001", "123-002", "123-003" с одинаковыми первыми тремя символами, то запрос будет всегда возвращать КАКОЙ-ТО ПЕРВЫЙ результат.
Иногда он будет совпадать,  но чаще - нет.

Поясните, пожалуйста, новичку.
Или я что-то не понимаю, или это логическая ошибка.
Спасибо.






Теги:

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

Рейтинг@Mail.ru Rambler's Top100

Поиск