gifts2017

Налоговый регистр по учету НДФЛ 2011 (ЗиК 7.7)

Опубликовал stalker-vn (stalker-vn) в раздел Отчеты - Бухгалтерские

Налоговый регистр по учету НДФЛ 2011 (ЗиК 7.7)

Представляю вниманию сообщества "Налоговый регистр по учету НДФЛ 2011" на ЗиК 7.7, релиз 306. 

Первое, что учитывалось при создании регистра - это минимальное внесение изменений в конфигурацию.

Расчет регистра (печатная форма) и проверки не работают в монопольном режиме, т.к. это особенность внешней компоненты 1С++. 

Возможно может понадобится драйвер "Microsoft Visual FoxPro OLE DB Provider" для работы с DBF базами. Лучше установить, не помешает ))

Были созданы:

  • Два документа:
    • Регистр НДФЛ. Налог - документ для учета НДФЛ.
    • Регистр НДФЛ. Начисление - документ для учета доходов.
  • Журнал для данных документов
  • И 3 обработки:
    • НалоговыйРегистрПоУчетуНДФЛ.ert - печатная форма регистра;
    • ПроверкаРегистраНДФЛ.ert - проверка регистра по сотрудникам;
    • ИтоговаяПроверкаРегистраНДФЛ.ert - проверка регистра сводная, за месяц.

В глобальный модуль, в процедуру "ПриНачалеРаботыСистемы()" добавлен код (позволяет автоматически загружать внешние компоненты при открытии базы):

Попытка
    Если ЗагрузитьВнешнююКомпоненту(КаталогИБ()+"ExtDll\1CPP.dll")  =  1 Тогда 
    Иначе
        Предупреждение("Не удалось подключить внешнюю компоненту 1С++.");
        Возврат;
    КонецЕсли;
Исключение              
    Предупреждение("Не удалось подключить внешнюю компоненту 1С++.");
    Возврат;
КонецПопытки;
Попытка
    Если ЗагрузитьВнешнююКомпоненту(КаталогИБ()+"ExtDll\FormEx.dll")  =  1 Тогда 
    Иначе
        Предупреждение("Не удалось подключить внешнюю компоненту FormEx.");
        Возврат;
    КонецЕсли;
Исключение              
    Предупреждение("Не удалось подключить внешнюю компоненту FormEx.");
    Возврат;
КонецПопытки;

В корень базы (в папку с базой) следует скопировать папки:

  • ExtDll - внешние компоненты. Необходимы для расчета.
  • ExtModuls - внешние модули документов "Регистр НДФЛ. Налог", "Регистр НДФЛ. Начисление" вынесены в текстовые файлы для удобства редактирования.
  • в папку "Extforms" следует скопировать папку "reports", в ней находятся внешние обработки.

Журнал регистров выведен в меню "Документы" - "Налоговый регистр по учету НДФЛ".

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

Регистр начислений заполняется на основании документов (главное чтобы они были перед этим рассчитаны), авансами, просто пустым списком и на конец месяца (с учетом уже введенных начислений).

Регистр налогов использует почти аналогичную систему.

 

Это моя первая публикация, так что не судите строго. Сам очень ждал регистра от 1С, но потом терпение лопнуло и решил написать. Конечно есть недочеты, но не будем об этом)). Глобальных изменений в 1С не рискнул вносить, т.к. надеюсь что 1С выпустит что-нибудь тоже интересное (хотя вериться с трудом), к этому времени у меня уже будут данные для переноса в их обработки. Время покажет)

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Конфигурация+Драйвер
.rar 8,14Mb
20.11.14
695
.rar 8,14Mb 695 Скачать
Форма регистра в MS Excel
.xls 42,00Kb
20.11.14
101
.xls 42,00Kb 101 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Александр Козлов (triple777) 26.02.11 10:25
Респект и уважуха тебе!
Только собрался сам писать а ты всю работу уже сделал. Спасибо. Еще допишу чтоб налоги можно было заполнять из дока "Ввод расчета списку сотрудников", ну это нашему бухгалтеру надо.
Только один косяк есть, при закрытии 1с на 2008 серваке выскакивает ошибка о прекращении работы 1с и чтото связано с "Имя модуля с ошибкой: ntdll.dll"
Ты хоть телефон скажи, денег тебе кинуть немного!
2. Александр Рытов (Арчибальд) 26.02.11 10:56
Безумство храбрых - вот мудрость жизни.
3. stalker-vn (stalker-vn) 28.02.11 11:18
triple777, По поводу ошибки "Имя модуля с ошибкой: ntdll.dll" ничего сказать ни могу, у нас на серваках все нормально, без ошибок. По поводу денег, спасибо конечно, но целью была не нажива а просто поделиться со всеми идеей по этому поводу.
Сайт хороший, много интересных идей с него черпаю, вот пришло и мое время тоже что-нибудь опубликовать.
4. Геннадий Малиновский (Гена) 28.02.11 11:43
приведите скрин печатной формы индкарточки по сотру взамен 1-НДФЛ и общего регистра по фирме... дабы понять - с чем имеем дело...
artbear; rekapiva; +2 Ответить 1
5. elis lis (elis99) 01.03.11 15:31
Ошибка при выполнении
УжеВведНачисление = Запрос1.ВыполнитьИнструкцию(ТекстЗапроса1);
{D:\BASE_1C_LOCAL\...\EXTFORMS\REPORTS\НАЛОГОВЫЙРЕГИСТРПОУЧЕТУНДФЛ.ERT(156)}: FAILED! ICommandText::Execute(): Function name is missing ).
6. Артур Аюханов (artbear) 02.03.11 09:06
(0) Да, ждем скриншотов из (4) Без этого непонятно :(
7. elis lis (elis99) 02.03.11 10:26
Я добавила в документ
РеестрНДФЛНалог
ввод на основании "РеестрНДФЛНачисление", тогда не приходится ручками вносить данные о уже выплаченных суммах и перечисленном с ними налоге.

Кроме того, в документ РеестрНДФЛНалог добавила процедуру очищения пустых строк - если не брать уволенных и т.п. при заполнении - потеряем тех, кому бухи доплачивают уже после увольнения, а если выбирать - много нулевых строк. А зачем они в документе.
Но с ошибкой пока не разобралась...
8. elis lis (elis99) 02.03.11 10:28
И еще предупреждение - 30 и 35% занулены, у кого используются - дописывайте.
9. stalker-vn (stalker-vn) 02.03.11 11:05
Опубликовал скин, но т.к. печ. форма большая прикрепил еще файл "Форма регистра" в MS Excel.
Гена, Общего регистра по фирме вообще не существует, т.к. налоговая советует такую форму не вести.
По поводу ошибки (5). База DBF или SQL? Если DBF (т.к. на SQL не работаю) нужно установить прогу "Microsoft Visual FoxPro OLE DB Provider". Устанавливать нужно на компах с которых запускается база. Возможно только из-за этого ошибка.
10. elis lis (elis99) 02.03.11 14:18
Спасибо!!! Разобралась со всем - все работает. Только для остальных инструкция:
1. Проводите документ НДФЛ начисление по всем межрасчетным выплатам. По ним же формируете НДФЛ Налог
2. В конце месяца формируете начисление на всех и налог на всех. Далее отчеты.
11. Геннадий Малиновский (Гена) 02.03.11 21:06
не так я вижу карточки... скелет должен быть таким...

1. карточка 1-НДФЛ остаётся в том же виде, что и раньше
2. по щелчку по ячейке месяца идёт подённая расшифровка месяца в виде:
дата регистрации ... дата действия... код дохода ... сумма дохода ...
почему важна дата действия? да потому, что необходимо фиксировать неизбежные исправления ошибок в закрытых периодах...
3. по щелчку по ячейке итога идёт подённая расшифровка всего года... это важно
4. аналогично расшифровается НДФЛ_удержанный подённо по датам выплаты дохода из доков выплат... здесь же возврат НДФЛ по исправлению ошибок в закрытых периодах...
------
с 1-НДФЛ всё...

5. отдельный сборный налоговый регистр по всей фирме на основании 3. и 4. карточек 1-НДФЛ
дата регистрации ... дата действия ... НДФЛ_исчисленный ... НДФЛ_удержанный ... НДФЛ_перечисленный
перечисленный НДФЛ берётся из нового дока регистрации платёжных поручений по перечислению НДФЛ в бюджет

6. теперь по карточке 2-НДФЛ
на любую дату выдачи справки или же на дату годовой отчётности в ИФНС из налогового регистра 5. всегда известен коэффициент К = Мин(1,НДФЛ_перечисленный_Итого/НДФЛ_удержанный_Итого)

тот новый грустный пункт 5.5 в 2-НДФЛ о перечисленном налоге за сотра авторассчитывается напрямую при формировании карточки как К * НДФЛ_удержанный (п.5.4)
12. stalker-vn (stalker-vn) 03.03.11 10:18
(11). По 1-НДФЛ. Интересно где же нам тогда взять дату получения дохода, например при выплате аванса или выплате зарплаты? Из док-та "Выплата з/п", сомневаюсь, по авансу у нас вообще почти нет никаких данных (ни видов расчетов, да ничего, только док-т "Выплата з/п"). А по выплате зарплаты, некоторые бухгалтера предпочитают выплачивать зарплату документом "Выплата з\п" последним числом месяца, это по базе, а по факту деньги перечисляются платежкой в начале следующего. И тем более из документа "Выплата з\п" сомневаюсь, что вы вытащите коды доходов и суммы по ним (при выплате все плюсуется, вычитается, короче каша)) ). Возникает тогда вопрос: "Что нам даст дата регистрации ... дата действия если в регистре нужно указывать дату получения дохода? Да ничего.

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

Каждый имеет право на свое видение этой проблемы, да и любой другой. Но уважаемые пользователь если вам не нравится мой вариант, предложите свой. Опубликуйте свой вариант регистра НДФЛ, мне кстати было бы очень интересно взглянуть на него. А то получается, что (с декабря 2010 года) уже 3 месяца пользователи 1С ищут по всему инету хоть какой нибудь вариант реализации этой проблемы и ничего (сам искал), даже печатную форму с трудом найдете.
Видят многие, а вот реализовывают не все. Выкладывайте свои варианты, не стесняйтесь.
13. Геннадий Малиновский (Гена) 03.03.11 11:01
дата получения дохода однозначно вытягивается для кодов 2000 и 2012 последним днём периода действия дохода... для всех остальных кодов - по дате выплаты... это раз

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

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

не царское дело писать модули - это четыре
14. stalker-vn (stalker-vn) 03.03.11 12:28
(13) >не царское дело писать модули - это четыре
Откуда же ты их тогда берешь .....
Значит не долго тебе царствовать, гляди как бы народ не взбунтовался )))
15. Геннадий Малиновский (Гена) 03.03.11 12:47
Вам дали алгоритм... лучше б его реализовали да выложили бы под некую оплату... рублей в 300... вот и был бы толк... спрос гарантирован... для ЗиКи...
16. elis lis (elis99) 03.03.11 14:11
Ген, критиковать - многие могут. Я тоже подумываю выкладывать что-то для народа. 1С совсем озверела - 7-ку почти не сопровождают. Получение дохода, кроме введенных начислений с перечисленным налогом, идет последним числом месяца. Это по законодательству.

Что касается формы карточки - этот вид выложен на некоторых сайтах. И многим он вполне подойдет, при условии что по закону - форма должна быть принята уставом предприятия.
17. Геннадий Малиновский (Гена) 03.03.11 14:23
дело не в виде... дело в принципе реализации подённого учёта... алгоритм уже продуман... осталась платная реализация на компоненте Расчёт... я же тогда авторитетно на бухфорумах рекламно прорекомендую... пользователи созрели для покупки подобного внешнего отчёта...

пока можно платёжные перечисления в бюджет сделать не новым доком, а таблично в диалоге вкладки общего по фирме налогового регистра этого будущего внешнего отчёта...
18. Denis Lookin (lookindenis) 03.03.11 22:49
Скачал
спс )

хотя юзать не смогу, но... про запас скачал)

Вот завидую йа тем, кто может себе позволить
заниматься х..ней ))) бесплатно =)))
(ждем 30.. релиза с воплощенным 1с'ом регистром)
при всем уважении к Автору, позволю заметить:
- идея целиком из рекомендаций налоговиков
- не просто так они не дали саму форму
- кому будет нужна эта форма после опубликования офф версии?

поясню:
цель налоговиков: поймать не вовремя уплач налог...
у нас 500+ сотр, по 5-6 видов начисления, с 2-4 видами скидок...
на 1 сотр будет примерно две страницЫ в месяц )
*12
...
они повесяцо ) искать, да и просто смотреть эту кипу бумаги )))
(нигде нет инфры, что это надо хранить в эл виде)
хотя отдаю дань творчеству stalker-vn'а... и первые пару месяцев
ГБ сможет прикрыть ж...у )
(штраф 10к)

зы 2Гена, жадность - грех) чел реально вывесил работу,
не стыриную и не копипаст...
нефиГ укорять!)
хочите за бабки?) делайте заказ =)))
19. Мария Иванова (Миродин) 03.03.11 23:19
stalker-vn, репект и уважуха тебе, работа действительно проделана не малая! Я сама хожу вокруг да около этого регистра, не зная с какой стороны подойти.

все бы хорошо, но от меня главбух хочет разбивку на аванс и выплату з/п (т.е. по датам фактически полученного дохода)

а вообще, прав lookindenis, если нет четких указаний, а что то типа "разрабатываете форму самостоятельно", это лишний повод им же (налоговикам) придраться к этой форме.... Боюсь как бы слова "и первые пару месяцев
ГБ сможет прикрыть ж...у (штраф 10к)" не оказались пророческими, доказывай потом что ты не верблюд:(
20. Кирилл К. (poapk) 04.03.11 09:10
Автор, использовать внешние компоненты обязательно надо было?
У меня почему то жутко тормозит прорисовка сформированной печатной формы регистра НДФЛ при прокрутке. Фактически по одной строчке за пару секунд перерисовывается. С другими печатными формами такого нет.
21. stalker-vn (stalker-vn) 04.03.11 10:06
(20) Внешние компоненты не обязательно использовать. Только тогда нужно будет все прямые запросы переписать на язык 1С, и "избавиться" (переписать) от индексированных таблиц. Прорисовка печатной формы никак не влияет на внешние компоненты. А на сколько человек сформирована печатная форма регистра? Может долго прорисовывать из-за того, что очень большой файл (на большое кол-во сотрудников) печатной формы. У меня нормально прокручивается печ. форма (если немного сотрудников), а вот если побольше (около 600 чел.) тогда с трудом. Это вообще-то на всех печатных формах с выводом большого кол-ва информации, попробуйте сформировать справки 2-НДФЛ на человек этак 500 и вы получите такую же картину.
22. Кирилл К. (poapk) 04.03.11 10:38
stalker-vn пишет:

(20) Прорисовка печатной формы никак не влияет на внешние компоненты. А на сколько человек сформирована печатная форма регистра? Может долго прорисовывать из-за того, что очень большой файл (на большое кол-во сотрудников) печатной формы. У меня нормально прокручивается печ. форма (если немного сотрудников), а вот если побольше (около 600 чел.) тогда с трудом. Это вообще-то на всех печатных формах с выводом большого кол-ва информации, попробуйте сформировать справки 2-НДФЛ на человек этак 500 и вы получите такую же картину.

На 100 человек. Но стандартная 1-НДФЛ сформированная на те же 100 человек прорисовывается и прокручивается без проблем.
23. nickVZ (nickVZ) 04.03.11 15:12
Лично мне неясно вообще, на кой это нужно. Что так взволновала непрожеванная каша в виде "должны вести учет"? Ведем учет. Ведем. Вот Журнал расчетов, вот разные доходы, вот удержания, вот налог начисленный, вот налог удержанный. Зачем новые сущности? Что не хватает? Когда возник доход? Для "зарплатных" ВР - в конце месяца. Даже если предмет дохода (работа) был строго в первом дне месяца. Для прочих - в день выплаты. Когда удержали? Когда деньги выдавали. Строго по НК, можете посмотреть: нет выплат - нет удержанного НДФЛ. Когда перечислил? Кто?? Налогоплательщик? А он не перечисляет. Его обязанность перед государством кончается тогда, когда у него деньги удержали. А лично ничего не перечисляет. И налоговый агент с персональными данными ничего не перечисляет. Липа вся эта колонка "перечислено". Он начала и до конца. Налоговикам не ндравиЦЦа? Лично я переживу это горе. Нормативные документы есть? Нормативных документов нет.
Все можно соорудить без лишних сущностей. Отчетом. И вот тут макет вывода будет полезным ;)
24. Лев Lionarus (Lionarus) 09.03.11 17:19
Все отлично, но непонятно, почему у вас стандартные вычеты идут нарастающим итогом, например - вычет на ребенка - 1000 рублей...
Логично, что облагаемая база каждый месяц составляет не 50000 рублей, а 49000...у вас получается
Январь 50000 - 1000 = 49000
Февраль 50000 - 2000 = 48000
Март 50000 - 3000 = 47000 и так далее...

PS надо бы вычитать из "БазаСтВычет.СуммаВычета" сумму вычетов предыдущих месяцев, если Сч>1...
25. Андрей Нагыев (NagNag) 16.03.11 15:46
Мне выдает
Рез = База.Соединение(Соединение);
{Документ.РеестрНДФЛНалог.Форма.Модуль(44)}: FAILED! IDataInitialize::GetDataSource(): Класс не зарегистрирован :o

Что с этим делать? :?:
ЛюбочкаТ; +1 Ответить
26. irisha (irisha) 17.03.11 11:49
А почему внутренние совместители выводятся отдельно? Доход-то по основному считается.
27. Андрей Нагыев (NagNag) 17.03.11 12:49
Получилось
Скачал отсюда компоненту vfpoledb.dll
http://uzhast.fatal.ru/vfpoledb/
Поместил ее в каталог базы и сделал Regsvr32 vfpoledb.dll :D :idea:
28. Александр Козлов (triple777) 22.03.11 16:18
А как поправить твой запрос чтоб выбирались сотрудники по ОСНОВНОМУЭЛЕМЕНТУ,чтоб и совместители и основные суммарно выводились в регистр?
29. Александр Козлов (triple777) 23.03.11 10:17
30. Александр Козлов (triple777) 23.03.11 10:19
irisha пишет:

А почему внутренние совместители выводятся отдельно? Доход-то по основному считается.

Если нужно могу подсказать какие строки в запросе поменять, чтоб совместитель вместе с основным выводился в отчет.
31. Лев Lionarus (Lionarus) 28.03.11 11:08
32. Bender Rodriguez (Rodriguez) 29.03.11 09:30
triple777 пишет:

А как поправить твой запрос чтоб выбирались сотрудники по ОСНОВНОМУЭЛЕМЕНТУ,чтоб и совместители и основные суммарно выводились в регистр?

Так ты сразу тут пиши, что бы все могли исправить, кому нужно.
33. stalker-vn (stalker-vn) 30.03.11 11:14
(24) Спасибо за ошибку. Заменяем строки с 960 по 985 на:
...
пБаза13 = База.ПолучитьЗначение(стр,"Сумма");
//замена +
стр1 = ""; ВычЗаМес = 0;
Если БазаСтВычет.НайтиЗначение(сч,стр1,"Мес") = 1 Тогда
ВычЗаМес = 0;
Для вв = стр1 По БазаСтВычет.КоличествоСтрок() Цикл
БазаСтВычет.ПолучитьСтрокуПоНомеру(вв);

Если БазаСтВычет.флаг = 1 Тогда
Продолжить;
КонецЕсли;

Если БазаСтВычет.Мес <> Сч Тогда
Прервать
КонецЕсли;

БазаСтВычет.Флаг = 1;
ВычЗаМес = ВычЗаМес + БазаСтВычет.СуммаВычета;

КонецЦикла;
КонецЕсли;

ЗаПрМесяц = 0;
Если Сч > 1 Тогда
стр1 = "";
Если БазаСтВычет.НайтиЗначение(сч-1, стр1,"Мес") = 1 Тогда
Для вв = стр1 По БазаСтВычет.КоличествоСтрок() Цикл
БазаСтВычет.ПолучитьСтрокуПоНомеру(вв);

Если БазаСтВычет.флаг2 = 1 Тогда
Продолжить;
КонецЕсли;

Если БазаСтВычет.Мес <> Сч-1 Тогда
Прервать
КонецЕсли;

БазаСтВычет.Флаг2 = 1;
ЗаПрМесяц = ЗаПрМесяц + БазаСтВычет.СуммаВычета;
КонецЦикла;
КонецЕсли;
КонецЕсли;

ВычЗаМес1 = ВычЗаМес - ЗаПрМесяц; //вычитаем предыдущий месяц, т.к. сумма вычетов идет нарастающим итогом с начала года
пБаза13 = пБаза13 - ВычЗаМес1;
//замена -

стр1 = "";
Если БазаИмВычет.НайтиЗначение(сч,стр1,"Мес") = 1 Тогда
...

Где создается таблица "БазаСтВычет", добавляем строку:

БазаСтВычет.НоваяКолонка("Флаг2", "Число", 1);
34. Арам Замзам (Арамзамзам) 23.09.11 05:06
Тру разработка, я тут пофлужу, ибо нада файл скачать, а новые правила всё такое...сами понимаете, но на самом деле, качал давно, палён нормальный, плюс поставил сразу после тестов, адаптировал под себя, немного модернизировал.
35. Денис Панасюк (dennispn) 27.09.11 18:19
Отлично, на много лучше стандартной реализации
36. Валерий Фролов (Dosperanso) 28.09.11 14:01
Долгое время пользовался данной надстройкой, но когда появилась официальная версия от 1С перешли на неё.
37. Александр Зеленский (alevize) 04.10.11 14:06
Спасибо большое!
Правда использовал ее как идею, и модифицировал без использования внешних библиотек:)
единственное не доработал еще дату и номер выплат
40. Dmitry Bas (b-dm) 08.11.11 20:16
Такой вопрос: а без внешней компоненты как то можно обойтись, для чего она потребовалась в обработке ?
41. stalker-vn (stalker-vn) 18.11.11 12:41
(40) Можно. 1С++ - для работы с индексированными таблицами и еще много всего (сайт 1cpp.ru, кажется). если без 1С++ тогда перепишите код на простые таблицы и всё.
Добавьте в гл проц. ПриНачалеРаботыСистемы()

Попытка
Если ЗагрузитьВнешнююКомпоненту(КаталогИБ()+"ExtDll\1CPP.dll") = 1 Тогда
Иначе
Предупреждение("Не удалось подключить внешнюю компоненту 1С++.");
Возврат;
КонецЕсли;
Исключение
Предупреждение("Не удалось подключить внешнюю компоненту 1С++.");
Возврат;
КонецПопытки;

И живите спокойно. А 1С++ очень полезная вещь в 7.7. Зря вы про неё так.. ))))
42. Dmitry Bas (b-dm) 18.11.11 15:29
(41) - то есть простым смертным без 1CPP.dll работать сней нельзя ?
stalker-vn; +1 Ответить
43. Сергей (ksaur) 21.11.11 01:34
Спасибо, очень выручил, пришлось бы самому писать, а заказчик срочно требовал.
44. Михаил Смирнов (wins_101) 21.12.11 15:38
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа