Запрос к общему реестру налоговых накладных ГНАУ

Запрос к общему реестру налоговых накладных ГНАУ по налоговым накладным. Заполнение списка автоматом и обработка результата, полученного из ГНАУ

Сделано на основе типового отчета «Запрос к общему реестру налоговых накладных ГНАУ».

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

9 Comments

  1. Igortid

    Спасибо, скачал и работает, что редко бывает без доработки. Конфигурация УТП. Так держать. Плюсую!

    Reply ↓
  2. Igortid

    да, чуть не забыл, …Сейчас настроено на Регистрацию Входящих налоговых документов, без труда можно переделать на Налоговые Накладные исходящие … сделайте, пожалуйста, такую опцию, если не трудно … с меня еще плюс…

    Reply ↓
  3. Igortid

    Автор, вы забыли вставить фильтр по организации … ну типа так в запросе

    Запрос.Текст = «ВЫБРАТЬ

    | РегистрацияВходящегоНалоговогоДокумента.НомерВходящегоДокумента КАК Номер,

    | РегистрацияВходящегоНалоговогоДокумента.ДатаВходящегоДокумента КАК Дата,

    | РегистрацияВходящегоНалоговогоДокумента.ТребуетПроверкиВключенияВЕдиныйРеестрНалоговыхНакладных,

    | РегистрацияВходящегоНалоговогоДокумента.ДатаВключенияВЕдиныйРеестрНалоговыхНакладных,

    | РегистрацияВходящегоНалоговогоДокумента.Контрагент.ИНН КАК ИНН,

    | РегистрацияВходящегоНалоговогоДокумента.ВидОперации,

    | РегистрацияВходящегоНалоговогоДокумента.ДатаВключенияВЕдиныйРеестрНалоговыхНакладных КАК ДатаВключения,

    | РегистрацияВходящегоНалоговогоДокумента.СпецРежимНалогообложения КАК СпецРежим,

    | РегистрацияВходящегоНалоговогоДокумента.ОбособленноеПодразделение

    |ИЗ

    | Документ.РегистрацияВходящегоНалоговогоДокумента КАК РегистрацияВходящегоНалоговогоДокумента

    |ГДЕ

    | РегистрацияВходящегоНалоговогоДокумента.ТребуетПроверкиВключенияВЕдиныйРеестрНалоговыхНакладных = ИСТИНА

    | И РегистрацияВходящегоНалоговогоДокумента.Дата МЕЖДУ &ДатаНачала И &ДатаКонца

    | И РегистрацияВходящегоНалоговогоДокумента.Проведен = ИСТИНА

    | И РегистрацияВходящегоНалоговогоДокумента.ПометкаУдаления = ЛОЖЬ

    | И РегистрацияВходящегоНалоговогоДокумента.Организация = &Организация» + УсловиеПоУчасткуУчета;

    Reply ↓
  4. Igortid

    Спасибо за плюсик … вот смотрю Вашу обработку и думаю как сделать импорт с ДБФ, так как МЕДОК дает ответ в ДБФ…

    Reply ↓
  5. stevie.ray.85

    (5) Igortid, по поводу фильтра проверю, спасибо за подсказку.Для Налоговых сделаю в ближайшее время.

    МЕДОК выгружает и в xml, я гружу выписку из реестра, сохраненную из МЕДОК. Может пропустили что то? Спасибо за хороший отзыв

    Reply ↓
  6. Igortid

    Антон, в периоде также ошибка. Нужно примерно вот так, чтобы взять последний день полностью по времени

    Запрос.УстановитьПараметр(«ДатаНачала», НачалоДня(НИБ_ДатаНачала));

    Запрос.УстановитьПараметр(«ДатаКонца», КонецДня(НИБ_ДатаКонца));

    Запрос.УстановитьПараметр(«Организация», Организация);

    Reply ↓
  7. nikk911

    Добрый день.

    Отличная обработка. Собирался писать сам, а тут счастье привалило. ))

    Маленький баг: в налоговых накладных в которых в номере присутствует дробь в табличную часть заезжает номер без дроби.

    Огромное спасибо.

    Reply ↓
  8. Sheva1313

    Пожалуйста, если не сложно, киньте код для вывода результата запроса, а то мой криво выводит.) Буду благодарен!)))

    Reply ↓
  9. dimisa
     К = 1;
    
    ЭлементыФормы.Состояние.МаксимальноеЗначение = ТаблицаЗначений.Количество();
    ЭлементыФормы.Состояние.ОтображатьПроценты = Истина;
    КодСтроки = «T1R0000″;
    Для каждого СтрокаТаблицыЗначений ИЗ ТаблицаЗначений Цикл
    Если К > 1 Тогда
    ВставитьДополнительнуюСтроку();
    КонецЕсли;
    
    НовКод = СтрДлина(Строка(Формат(К,»ЧЦ=4; ЧГ=»)));
    НовКодСтроки = Лев(КодСтроки,СтрДлина(КодСтроки)-НовКод)+Формат(К,»ЧЦ=4; ЧГ=»);
    
    ОбластьНомер = НовКодСтроки + «G21»;
    ОбластьРежим = НовКодСтроки + «G22″;
    ОбластьКод = НовКодСтроки +»G23″;
    ОбластьДата = НовКодСтроки +»G3D»;
    ОбластьВидОперации = НовКодСтроки +»G4S»;
    ОбластьИНН = НовКодСтроки +»G5″;
    
    СтрокаНомер = ЭлементыФормы.ПолеТабличногоДокументаНалоговыйДокумент.Область(ОбластьНомер);
    СтрокаНомер.Значение = ПолучитьНомерДок(СтрокаТаблицыЗначений.Номер);
    
    СтрокаРежим = ЭлементыФормы.ПолеТабличногоДокументаНалоговыйДокумент.Область(ОбластьРежим);
    // СтрокаРежим.Значение = ПолучитьРежим(СтрокаТаблицыЗначений.Номер);
    СтрокаРежим.Значение = ?(СтрокаТаблицыЗначений.СпецРежим=0,»»,СтрокаТаблицыЗначений.СпецРежим);
    
    СтрокаНомер = ЭлементыФормы.ПолеТабличногоДокументаНалоговыйДокумент.Область(ОбластьКод);
    // СтрокаНомер.Значение = ПолучитьКодФилиала(СтрокаТаблицыЗначений.Номер);
    СтрокаНомер.Значение = СтрокаТаблицыЗначений.ОбособленноеПодразделение;
    
    СтрокаДата = ЭлементыФормы.ПолеТабличногоДокументаНалоговыйДокумент.Область(ОбластьДата);
    СтрокаДата.Значение = СтрокаТаблицыЗначений.Дата;
    
    СтрокаВидДокумента = ЭлементыФормы.ПолеТабличногоДокументаНалоговыйДокумент.Область(ОбластьВидОперации);
    СтрокаВидДокумента.Значение = ПолучитьВидДокумента(СтрокаТаблицыЗначений.ВидОперации);
    
    СтрокаИНН = ЭлементыФормы.ПолеТабличногоДокументаНалоговыйДокумент.Область(ОбластьИНН);
    СтрокаИНН.Значение = СтрокаТаблицыЗначений.ИНН;
    
    ЭлементыФормы.Состояние.Значение = К;
    К= К+1;
    ОбработкаПрерыванияПользователя();
    КонецЦикла;
    

    Показать

    Reply ↓

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *