Контроль удержанного НДФЛ. ЗУП 2.5 и ЗКБУ 1.0.91




Принцип обмена данными из 1С с сайтом (на MySQL) и выдачи (публикации) этих данных по запросу.
PHP-Скрипт автоматической загрузки данных из файла данных в формате CSV в базу данных сайта работающего на WordPress.

В продолжение моей темы: 1С:Альфа-Авто Автосалон Автосервис: обмен с сайтом.
С помощью данного скрипта можно загружать в автоматическом режиме, по расписанию, данные сервисных книжек (ремонтов авто) из 1С:Альфа-Авто Автосалон Автосервис.
Также можно загружать данные в ручном режиме: для этого делается скрытая страница, где размещается специальная кнопка.
Комментарии размещенные внутри скрипта разъяснят логику и порядок действия.
Комментарии с "/////    echo" использовались для отладки.
Дополнительно создана таблица для журналирования результатов загрузки данных.
Скрипт включает в себя защиту от SQL инъекций (думаю безопасность соблюдена в полной мере).
В кратце:
1. Пишется скрипт, который запускает этот.
2. Создается регламентное задание в WordPress, по которому запускается скрипт из п.1. 
3. Этот скрипт осуществляет проверку на существование файла обмена в папке.
4. Если данные не новые, загрузка не производится.
5. Если данные новые, очищается таблица сервисных книжек.
6. Загружаются новые данные.

Собственно сам скрипт:

<?php // Полная загрузка сервисных книжек, создан 2024-01-05 12:44:55

global $wpdb2;
global $failure;
global $file_hist;

/////  echo '<H2><b>Старт загрузки</b></H2><br>';

$failure=FALSE;
//подключаемся к базе
$wpdb2 = include_once 'connection.php'; ; // подключаемся к MySQL
// если не удалось подключиться, и нужно оборвать PHP с сообщением об этой ошибке
if (!empty($wpdb2->error))
{
/////   echo '<H2><b>Ошибка подключения к БД, завершение.</b></H2><br>';
$failure=TRUE;
wp_die( $wpdb2->error );
}

$m_size_file=0;
$m_mtime_file=0;
$m_comment='';
/////проверка существования файлов выгрузки из 1С
////файл выгрузки сервисных книжек
$file_hist = ABSPATH.'/_1c_alfa_exchange/AA_hist.csv';
if (!file_exists($file_hist))
{
/////   echo '<H2><b>Файл обмена с сервисными книжками не существует.</b></H2><br>';
$m_comment='Файл обмена с сервисными книжками не существует';
$failure=TRUE;
}

/////инициируем таблицу лога
/////если не существует файла то возврат и ничего не делаем
if ($failure){
///включает защиту от SQL инъекций и данные можно передавать как есть, например: $_GET['foo']
/////   echo '<H2><b>Попытка вставить запись в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>$m_comment));
wp_die();
/////    echo '<H2><b>Возврат в начало.</b></H2><br>';
return $failure;
}
/////проверка лога загрузки, что бы не загружать тоже самое
$masiv_data_file=stat($file_hist);   ////передаем в массив свойство файла
$m_size_file=$masiv_data_file[7];    ////получаем размер файла
$m_mtime_file=$masiv_data_file[9];   ////получаем дату модификации файла
////создаем запрос на получение последней удачной загрузки
////выбираем по штампу времени создания (редактирования) файла загрузки AA_hist.csv, $m_mtime_file

/////   echo '<H2><b>Размер файла: '.$m_size_file.'</b></H2><br>';
/////   echo '<H2><b>Штамп времени файла: '.$m_mtime_file.'</b></H2><br>';
/////   echo '<H2><b>Формирование запроса на выборку из лога</b></H2><br>';
////препарируем запрос
$text_zaprosa=$wpdb2->prepare("SELECT * FROM `vin_logs` WHERE `last_mtime_upload` = %s", $m_mtime_file);
$results=$wpdb2->get_results($text_zaprosa);

if ($results)
{   foreach ( $results as $r)
{
////если штамп времени и размер файла совпадают, возврат
if (($r->last_mtime_upload==$m_mtime_file) && ($r->last_size_upload==$m_size_file))
{////echo '<H2><b>Возврат в начало, т.к. найдена запись в логе.</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>$m_mtime_file,'last_size_upload'=>$m_size_file,'comment'=>'Загрузка отменена, новых данных нет, т.к. найдена запись в логе.'));
wp_die();
return $failure;
}
}
}
////если данные новые, пишем в лог запись о начале загрузки
/////echo '<H2><b>Попытка вставить запись о начале загрузки в лог таблицу</b></H2><br>';
$insert_fail_zapros=$wpdb2->insert('vin_logs', array('time_stamp'=>time(),'last_mtime_upload'=>0, 'last_size_upload'=>$m_size_file, 'comment'=>'Начало загрузки'));

////очищаем таблицу
$clear_tbl_zap=$wpdb2->prepare("TRUNCATE TABLE %s", 'vin_history');
$clear_tbl_zap_repl=str_replace("'","`",$clear_tbl_zap);
$results=$wpdb2->query($clear_tbl_zap_repl);
/////   echo '<H2><b>Очистка таблицы сервисных книжек</b></H2><br>';
if (empty($results))
{
/////   echo '<H2><b>Ошибка очистки таблицы книжек, завершение.</b></H2><br>';
//// если очистка не удалась, возврат
$failure=TRUE;
wp_die();
return $failure;
}

////загружаем данные
$table='vin_history';         // Имя таблицы для импорта
//$file_hist Имя CSV файла, откуда берется информация     // (путь от корня web-сервера)
$delim=';';          // Разделитель полей в CSV файле
$enclosed='"';      // Кавычки для содержимого полей
$escaped='\

81 Comments

  1. PowerBoy

    Спасибо за отчет.

    Чтобы выделить только строку с конечным отрицательным остатком, необходимо добавить в отборе условия условного оформления: Уровень = 3

    Reply
  2. user_2010

    Спасибо за оценку и за совет…. но кажется это немного не то, чтобы я хотела:

    сейчас у меня выделяются цветом сама ячейка с отрицательным конечным сальдо,

    также выделяется поле-заголовок «Дата получения дохода» — только в случае если итого по строке получилось отрицательное конечное сальдо

    и аналогично выделяется цветом поле-заголовок «Документ-регистратор» — только в случае если итого по столбцу получилось отрицательное конечное сальдо.

    А хочется настроить, чтобы выделялись поля-заголовки «Дата получения дохода» и «Документ-регистратор» — если хотя бы один раз встречалось отрицательное конечное сальдо в строке или столбце — чтобы сразу видеть где проблемы…

    я попробовала как вы посоветовали — добавила отбор по уровню 3 — стали выделяться только строки для Физлиц, но само Физлицо, к сожалению не выделяется…

    Может быть я чего-то недопоняла?

    Reply
  3. user_2010

    Стоп! Обнаружила ошибку в отчете — в отчет не попадают остатки по сотрудникам, по которым не было движения…. сейчас попробую разобраться…

    Если убрать Отбор Регистратор = Заполнено — тогда все сотрудники попадают в отчет, но появляется 2 дополнительных столбца с какими-то итогами… — вот чтобы эти два лишних столбца не попадали в отчет я и настроила Отбор Регистратор = Заполнено… буду думать — как это обойти…

    чтобы сейчас отчет формировал остатки по всем сотрудникам (а это необходимо для сверки остатков на начало 2016 года) — уберите галочку у Отбора Регистратор = Заполнено.

    Извиняюсь — моя недоработка…

    Reply
  4. user_2010

    В принципе, такой отчет можно настроить самим:

    Отчеты — Вспомогательные отчеты — Универсальный отчет (по регистрам, документам, справочникам) —

    Тип данных = Регистр накопления

    Объект = НДФЛ расчеты с бюджетом

    Таблица = Остатки и обороты

    Жмем кнопку «Настройки» и далее смотрим на картинках.

    Reply
  5. user_2010

    настраиваем отбор и сортировку

    Reply
  6. user_2010

    настраиваем условное оформление

    Reply
  7. user_2010

    для удобства выводим на форму отбор по организации

    Reply
  8. user_2010

    сохраняем настройки отчета — для дальнейшего применения в любое время

    Reply
  9. user_2010

    При необходимости сформировать отчет «Контроль удержанного НДФЛ» — загружаем ранее сохраненные настройки отчета.

    Reply
  10. user_2010

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

    Жаль только что настройки универсального отчета нельзя сохранить в файл..

    Reply
  11. SergVB

    (10) можно. Откройте Справочники>Сохраненные настройки. Там и обнаружите вашу настройку, которую можете сохранить в файл.

    Reply
  12. sergey_s_

    Для ЗУП 3.0 у Вас есть что-нибудь подобное?

    Reply
  13. SergVB

    Скажите пожалуйста, что здесь не так?

    Reply
  14. user_2010

    (12) sergey_s_, могу сделать

    Reply
  15. user_2010

    (13) seizon, в вашем случае есть удержанный НДФЛ, но еще нет его исчисленного.

    Перепроведите Ведомость в банк — этого расхода не должно сформироваться.

    Логика такая: сначала возникает НДФЛ исчисленный — это записи «Приход», которые формирую документы Начисление зарплаты, Отпуска, Больничные.

    Если есть исчисленный НДФЛ, то при выплате зарплаты возникает удержанный НДФЛ — зто записи «Расход», которые формируют документы — в вашем случае — Ведомость в банк. Удержанного НДФЛ не может быть, пока нет исчисленного НДФЛ.

    Reply
  16. user_2010

    (13) seizon, у вас какая-то бюджетная конфигурация? у меня нет такой чтобы посмотреть… (если можете выслать базу — то посмотрю)

    Почему у вас документ «Начисление зарплаты» сформировал НДФЛ с датой получения 08/02/2016? Это больничные или отпуска? Если это отпуск или больничный, который вы выплачиваете 9 февраля, тогда Дата получения дохода должна быть 9 февраля, а не 8 февраля. ИМХО!!!

    Если это сумма зарплаты — тогда дата получения должна быть 31/01/2016.

    Если смотреть документы — то у вас все логично: 8 февраля начислили зарплату, 9 выплачиваете, если последовательно провести документы, то программа должна верно сформировать исчисленный и удержанный НДФЛ.

    Reply
  17. user_2010

    (13) seizon, единственный момент меня смутил — скорее всего вам НДФЛ нужно контролировать еще или по статье финансирования? да?

    Reply
  18. user_2010

    (12) sergey_s_, сделала — Контроль удержанного налога для Бухгалтерии 3.0. и для ЗУП 3.0 http://infostart.ru/public/501851/

    Reply
  19. SergVB

    (16) дата 8.02 возникла потому, что выплатили зарплату при увольнении 08.02. Документы перепроводил, результат тот же

    Reply
  20. user_2010

    (19) seizon, уволен 8 числа, выплатили зарплату уволенному 9 — так?

    Reply
  21. user_2010

    стоп — у вас же еще на начало Начисления зарплаты есть минусовое сальдо — 1440? оно откуда? до 08/02/2016 в проведении документов все нормально?

    скорее всего вам надо раньше смотреть.

    Reply
  22. user_2010

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

    попробую смоделировать вашу ситуацию.

    Reply
  23. SergVB

    (21) раньше только з/п за январь. Там всё нормально.

    (20) всё верно

    Reply
  24. user_2010

    (23) seizon, понятно!

    получается, в целом по сотруднику по датам получения дохода минусов нет, т.е все верно должно отразиться в 6-НДФЛ.

    такое впечатление, что у вас сначала учитывается документ выплаты зарплаты, а потом уже документ начисления зарплаты…

    почему программа так это видит? посмотреть бы базу…

    Reply
  25. sergey_s_

    (18) Большое спасибо! Будем пробовать.

    Reply
  26. vadim1011985

    Я думаю , что лучше , условное оформление не делать , а просто установить Галочку отрицательное красным

    Reply
  27. user_2010

    (26) vadim1011985, как хотите — просто когда много данных, то цвет фона — помогает заметить ошибку

    Reply
  28. user_2010

    Опишу проблему, с которой столкнулись, побороть ее не смогли, …но и.., могу сказать, что эта ситуация не всегда является ошибкой.

    Подробнее: Проблема проявляется на уволенных сотрудниках и проявляется только в месяце увольнения!

    Сотрудник увольняется в середине месяца. Рассчитали документ «Увольнение». Окончательный расчет зарплаты делаем документом «Начисление зарплаты», дату документа ставим равную дате увольнения, на закладке НДФЛ Дату получения дохода ставим равную дате увольнения или дате выплаты окончательного расчета с работником. Но, не смотря на то, что документ «Начисление зарплаты» мы ввели датой увольнения, программа «для себя» записывает его последним днем месяца, за который считается зарплата. И при формировании отчета «Контроль удержанного НДФЛ» для документа «Начисление зарплаты» будет показан отрицательный начальный остаток, затем для документа «Зарплата к выплате» программа будет показывать отрицательное конечное сальдо, и будет выделять розовым цветом. И так отрицательное конечное сальдо будет выводиться до конца месяца, в котором уволился сотрудник.

    Еще раз повторюсь, все это из-за того, что не смотря на дату документа «Начисление зарплаты», в регистре накопления программа относит это движение на конец месяца.

    Важно убедиться, что итого по данной строке — не будет минусового остатка! Тогда в 6-НДФЛ — будет все корректно!

    Reply
  29. vadim1011985

    (28) У меня документ встает нужной датой , но все равно краснота идет. Подозреваю что из-за даты получения дохода почему-то он оплату раньше воспринимает чем начисление , хотя я время менял и даже день оплаты один фиг , в регистры он пишет время без учета часов минут и секунд

    Reply
  30. SergVB

    (29) vadim1011985, а посмотрите по этому сотруднику Регистр накоплений>НДФЛ расчеты с бюджетом и там скорее всего будет стоять дата последнее число месяца, отсюда и минуса.

    Reply
  31. vadim1011985

    (30) seizon, Так отчет как раз по этому регистру и дата там 17.03.15 , проверенно неоднократно, иначе бы он эти документы разнеся бы по разным датам получения дохода ))

    Reply
  32. SergVB

    (31) vadim1011985, обратите внимание на дату. И если вы сделаете зарплату к выплате любым числом после 31 марта, ваши минуса уйдут

    Reply
  33. vadim1011985

    (32) seizon, А вот нельзя сделать ее поле 31 т.к. это увольнение сотрудника , а по ТК РФ если сотрудник увольняется в середине месяца, датой получения дохода является последний рабочий день сотрудника. Сотрудник увольняется 17 числа , значит датой получения дохода должно быть именно 17 число

    Reply
  34. SergVB

    (33) vadim1011985, я и не спорю, что так нельзя. Я пытаюсь объяснить из-за чего лезут минуса

    Reply
  35. user_2010

    (32) seizon, в некоторых ситуациях даже если и оплата и начисление идет 29 февраля, программа все-равно сначала пишет выплату в регистр, только потом начисление зарплаты… надо докопаться до истины… почему так.. насколько я поняла, это проявляется, если есть увольнение, отпуск…

    но все равно отчет помогает навести порядок в учете — без него как без рук…

    Reply
  36. SergVB

    (35) я и не говорю, что отчет не нужен))) Я тоже хочу понять причину такого поведения.

    Reply
  37. vadim1011985

    В 6-НДФЛ ложится все правильно, ситуация действительно не понятна если посмотреть на первый скрин там как раз был больничный но ЗП за месяц и выплата легла корректно чего не скажешь о январе и марте.

    Reply
  38. vadim1011985

    (36) seizon, Вот и мы пытаемся разобраться . только логики пока не видно

    Reply
  39. user_2010

    (38) vadim1011985, я хочу проверить такой вариант: отменить все документы и последовательно провести, чтобы ничего не влиялоююю

    вы такой вариант пробовали?

    Reply
  40. vadim1011985

    (32) seizon, А вы правы, если выплату перенести на след. месяц , минуса уходят, но в этом случае увольнение не попадает в 6-НДФЛ за первый квартал и а за второй квартал 6-НДФЛ заполняется неверно дата удержания дохода попадает на 01.04.16

    Reply
  41. SergVB

    (38) vadim1011985, по-моему, логика вполне понятна. Зарплата при увольнении является зарплатой, а значит дата для нее — последний день месяца, это и делает программа в регистре накоплений, ну а то, что так быть не должно она видимо не знает и знать не хочет. Поэтому и минуса уходят если провести документ позже, чем последний день месяца (я это для примера делал. Конечно так делать нельзя)

    Reply
  42. vadim1011985

    (39) да пробовал конечно, у меня всего пару документов работаю на чистой базе все провожу последовательно, но проблема в том что это очень идиализированная ситуация , вчера был у клиента у него куча начислений , отпуска , больнычный, суточные , командировки база около 300 сотрудников и это считается небольшой фирмой — последовательно и правильно все провести уже считаю задачей на грани фантастики

    Reply
  43. vadim1011985

    (41) seizon, возможно Вы правы , но меня смущает дата в 6-НДФЛ

    дата получения дохода по вашему примеру в 6-НДФЛ встает правильно , дата удержания тоже правильно подхватывается (после переноса документа на 01.04.16 встает эта дата ) но вопрос в самой дате , точнее в периоде когда мы должны удержать этот самый нДФЛ , ведь в ТК рФ четко оговорено что датой получения дохода является последний рабочий день сотрудника.

    Reply
  44. SergVB

    (43) vadim1011985, я уже запутался… По какому именно примеру? Если по моему первоначальному:

    08.02 — дата увольнения

    09.02 — выплачиваем/удерживаем

    10.02 — срок

    То в 6-НДФЛ всё хорошо

    Если же по теоретическому, когда дату сдвигаем после последнего числа месяца, то 6-НДФЛ в данном случае вообще лучше не рассматривать — так нельзя, так неправильно!

    Вообще кроме данного отчета эти минуса вроде нигде не вылазят больше.

    Reply
  45. vadim1011985

    (44) seizon, Смотрите сотрудник увольняется 17.03.16

    Начисление ЗП 17.03.16.

    Выплата Зп 17.03.16

    В Данном случае 6- НДФЛ заполнится верно , но в регистре НДФЛ расчеты с бюджетом (точнее что показывает отчет) на конец периода будут минусы см. (29)

    Если Мы выплату перенесем на след.мес например на 01.04.2016 то тогда в регистре НДФЛ расчеты с бюджетом не будет минусов ( точнее в отчёте по этому регистру) , но в этом случает 6_НДФЛ заполнится некорректно. В идеале хотелось бы получить совмещенный вариант и что бы 6-НДФЛ правильно заполнилось и что бы в отчете минусов не было.

    Reply
  46. SergVB

    (45) vadim1011985, чтобы в отчете не было минусов нужно, чтобы в регистре накоплений дата исчисления/удержания налога строки начисление была меньше даты исчисления/удержания налога строки удержание.

    Reply
  47. user_2010

    (45) vadim1011985, минуса в отчете только из-за того как программа пишет в регистр.

    Если в отчете выводить документы не в хронологической последовательности, в по дате получения дохода — тогда, наверное, минуса исчезнут?

    Reply
  48. vadim1011985

    (46) seizon,

    Если я первым создаю документ начисление ЗП то у меня в регистре должна пойти строка с видом начисление ?

    Второй дукумент выплата зп тем же днём , но по времени позже начисления на час , у меня вторая строка удержание ? Позже чем начисление ?

    Я выплату даже переносил на день позже , чем начисление . Я конечно ещё посмотрю , но такое ощущение , что пока месяца выплаты и начисления совпадают в отчёте будут минусы ( это только к уволенным относится)

    Reply
  49. user_2010

    (48) vadim1011985, так должно быть

    Reply
  50. vadim1011985

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

    Reply
  51. Agema

    Спасибр всме. Тема интересная, подпишусь.

    Reply
  52. user_2010

    Мои выводы такие: данный отчет никак нельзя преобразовать, чтобы пропали эти мнимые отрицательные остатки. Потому что так организована запись в регистр накопления. Проблема в том, что все документы «Начисление зарплаты» всегда регистрируются последним днем месяца, за который идет расчет зарплаты (независимо от даты документа). Это поле регистра Период. Может быть разработчики сделают заполнение поля Период датой документа… но по какой-то причине они этого не сделали раньше… видимо на этой логике что-то построено…

    Своим расчетчикам я так объяснила:

    1. Проверяем, чтобы итого по каждой дате получения дохода не было отрицательного конечного остатка

    2. Если есть итого отрицательный конечный остаток, то ищем документ с движением Расход, который дает отрицательный остаток и перепроводим его.

    3. По каждому сотруднику проверить каждую дату получения дохода — бухгалтер четко должен понимать почему у данного работника именно такие даты получения дохода.

    4. При проведении документов «Начисление зарплаты» и «Зарплата к выплате» проверять движения по регистру накопления «НДФЛ расчеты с бюджетом». опять же — бухгалтер должен четко понимать какие движения по регистру должен делать каждый документ!

    Еще важно: Итоговый Начальный остаток на 01.01.2016 должен быть равен перечисленному в январе НДФЛ за декабрь. Разбивку по людям можно посмотреть в документе «Перечисление НДФЛ в бюджет РФ», оформленный для распределения НДФЛ, пеерчисленного в январе за декабрь. Но!!! Если в программе «беспорядок», тогда в документе могут присутствовать сотрудники, уже уволенные, по которым нет сальдо по взаиморасчетам и по ним уже никогда не будет выплат зарплаты. Суммы таких людей нужно раскидать на работающих сотрудников (так чтобы остаток НДФЛ по сотруднику на 01.01.2016 не превысил сумму НДФЛ за декабрь). Если оставить сальдо по уволенным, тогда это сальдо будет висеть и программа его никогда не отразит как удержанный, потому что не будет выплат этому сотруднику.

    Вот вроде бы пока все нюансы, выявленные мной! Может кому-то пригодится!

    Делитесь вашим опытом! И вместе мы победим 1С и 6-НДФЛ 😉

    Reply
  53. Agema

    А для «1С:Зарплата и кадры бюджетного учреждения 8» подходит? Кто-нибудь проверял?

    Reply
  54. vadim1011985

    (52) что-то я про перечисленный НДФЛ не уловил мысль

    Reply
  55. SergVB

    (53) Agema, подходит

    Reply
  56. user_2010

    (54) vadim1011985, конкретизируйте вопрос

    Reply
  57. user_2010

    (53) Agema, для «1С:Зарплата и кадры бюджетного учреждения 8» я бы в отчет еще добавила группировки по КОСГУ и по Статье финансирования.

    У меня нет этой конфигурации — если кто-нибудь даст хотя бы конфу с тестовыми данными — то сделаю….

    Reply
  58. vadim1011985

    (56) почему итоговый начальный остаток по НДФЛ на 01.01.16 должен быть равен перечисленному НДФЛ в январе за декабрь ? Ведь ЗП за декабрь можно выплатить в декабре , тогда начальный остаток по регистру будет 0 , а по перечисленному будет остаток.

    Reply
  59. user_2010

    перечисленный НДФЛ — я имела в виду — платежку на перечисление НДФЛ.

    В идеале остаток по 68.01 на 01/01/2016 — это НДФЛ за декабрь, который должны перечислить в январе.

    Если вы зарплату выплатили в декабре, то и НДФЛ, скорее всего перечислили в декабре, тогда у вас нет остатков по НДФЛ, и в январе вы не будете перечислять НДФЛ за декабрь, — в этом случае у вас в данном отчете будет нулевой начальный остаток.

    Но у нас у всех организаций есть остатки на начало года. Как правильно их разнести — написано в посте выше.

    Reply
  60. vadim1011985

    (59) тут, я думаю, в разных организациях по разному , кому-то за декабрь платят в январе, кому-то разбивают оплату (такое тоже встречал) , или оплатить в декабре, а перечислить НДФЛ в январе. Так то я идею понял — то, что начислили в декабре , оплатили у удержали в январе , если все сделать ровно , то у нас и получается начисленный = удержанному=перечисленному

    Reply
  61. user_2010

    (60) vadim1011985, первое с чего начинают работу с 6-НДФЛ мои расчетчики — сводят остатки на начало года — по этому отчету.. (да и другого отчета — я пока и не придумала — который бы хоть как-то помог для 6-НДФЛ…)

    далее бухгалтера проверяют заполнение даты выплаты дохода в документах Отпуска и Больничные, ну еще и многострадальные Увольнения — вернее документы Начисление зарплаты — уволенным, которые оформляются в межпериод.

    затем перепроводят документы Зарплата к выплате.

    и постоянно смотрят это отчет — контролируя результат….

    а потом уже, когда в этом отчете не будет проблем — формируем 6-НДФЛ и снова проверяем!

    Reply
  62. vadim1011985

    Регистр налогового учёта по НДФЛ тоже подходит , там есть вся информация по датам , и отчёт 6-НДФЛ соответсвует данному регистру ( точнее в регистре данные по каждому работнику , а не сводно )

    Reply
  63. user_2010

    (62) vadim1011985, в отчете «Регистр налогового учёта по НДФЛ» — слишком много информации… сложно проверять…

    ну и конечно, этот отчет «Регистр налогового учёта по НДФЛ» — он ведь тоже основные свои данные берет из регистра накопления НДФЛРасчетыСБюджетом — на его основе и формируется этот отчет «Контроль удержанного НДФЛ»!

    Reply
  64. vadim1011985

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

    Reply
  65. user_2010

    (64) vadim1011985, согласна с вами!

    Reply
  66. vadim1011985

    даже достаточно проверить блок Удержано ))

    Reply
  67. user_2010

    (66) vadim1011985, вот тут не согласна, если проверять только блок Удержано — тогда не увидите, минуса: когда удержано, но не начислено, либо суммы разные…

    важно проверять именно начальный остаток, приход, расход, не и конечный остаток!

    Reply
  68. vadim1011985

    (67) (67) Да согласен , не показывает , но покажет если удержанный раньше начисленного. Все таки 2 отчета нужно. Сам сейчас пишу доп. отчет по расшифровке 130 строки 6-НДФЛ возможно и он пригодится )))

    Reply
  69. user_2010

    (68) vadim1011985, будет интересно посмотреть… только ведь до сих пор нет конкретных комментариев — что за сумма должна быть отображена в 130 строке?

    Reply
  70. user_2010

    да,интересный отчет! оригинально сделано!

    Reply
  71. vadim1011985

    (71) обычные отчёты о наскучили ))) решил поэкспериментировать ))

    Если интересно , сумму дохода программа группирует по датам , получения , удержания , и по перечисления налога т.е. сотрудники из одного документа зарплата к выплате могут попадать в разные блоки 6-НДФЛ , примечательно ещё и то что дату удержания и дату получения дохода программа высчитывает в запросе , а не берет из готовые из регистров. Точнее даже так в запросе 5 дат ДатаПолученияДохода, ДатаУдержанияНалога ,СрокПеречисленияНалога, ДатаУдержанияНалога( вычисляется в запросе) , ДатаПеречисленияНалога( вычисляется в запросе) , т.е. поля задублированны и по этим полям идёт группировка в запросе на получения суммы доходов , и сумм удержанного налога.

    Reply
  72. user_2010

    (72) vadim1011985, интересно…

    у меня в текущей версии поле Срок перечисления в регистре накопления вообще не заполняется — может еще не реализовано..

    но не смотря на это для 6-НДФЛ программа рассчитывает эти даты…

    а можете посмотреть — есть ли различия в датах удержания, которые записаны в регистр и которые программа вычисляет в запросе для 6-НДФЛ?

    Reply
  73. vadim1011985

    (73) вот откуда берётся первый срок перечисления , я посмотрю , а вот про второй могу сказать так , если вы платите больничные листы или отпуск в регистр встаёт перечисление ( название точно не помню , позже гляну. Так вот если это перечисление заполнено то срок перечисления ставится концом месяца , если нет , то следующий день за датой удержания

    Reply
  74. user_2010

    ага, ясно, спасибо!

    Reply
  75. vadim1011985
    Reply
  76. user_2010

    понятно, спасибо!

    Reply
  77. user_2010

    вот еще один отчет — для контроля соблюдения крайних сроков перечисления НДФЛ … долго думала как ее сделать — проблема в том, что периоды перечисления «с и по» пересекаются….

    посмотрите — может быть появятся идеи?

    http://infostart.ru/public/505245/

    Reply
  78. user_2010

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

    Вся проблема в том, что для формирования 6-НДФЛ желательно бы создать свои регистры накопления… а нам приходится подгонять то, что есть…. имхо!

    Reply
  79. annasm@inbox.ru

    Пропустила информацию, что скачивать нужно второй отчет (по всем физлицам) — скачала первый. Что-то от него вообще никакой пользы — ни о чем не говорит мне (((. Нельзя ли получить второй безвозмездно? )))

    Reply
  80. user_2010

    (81) annasm@inbox.ru, Отчет отправила. Но! данные в нем ничем не отличаются от того отчета, что вы скачали, единственный момент, что в отчете, который я вам отправила — физлица будут все, даже те, по которым не было движения по регистру «НДФЛРасчетыСБюджетом», но были остатки на начало периода.

    Чтобы понять — как вам может помочь этот отчет — почитайте описание к нему и комментарии, в них мы совместно пытались разобраться в данных для 6-НДФЛ, как проверить их правильность и навести в них порядок…

    Reply

Leave a Comment

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