<?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='\
С чего начался сыр-бор можно посмотреть здесь:http://forums.kuban.ru/forum/viewtopic_new.php?t=3658400
подскажите пож-та почему у меня за год сумма начисл = сумма удержан, если проплата в январе за декабрь???…может я что-то неправильно делаю…:(….спасибо…
(2) Проверь с помощьюhttp://infostart.ru/public/80495/
«подскажите пож-та почему у меня за год сумма начисл = сумма удержан, если проплата в январе за декабрь???»
не за год, а за второе полугодие, наверное? т.к сумма уплаты за июнь=сумме уплаты за декабрь
(2)Все правильно, так и должно быть. Если была переплата по итогам года, то в ИС уплата встанет не больше чем начислено. Т.к. нельзя направить на л/с сотрудника больше денег, чем ему начислено. Нераспеделенную переплату 2010 года распределите на начисления 1 кв 2011 когда будете делать отчет в апреле.
так у нас наоборот за декабрь получается недоплата…:(
(6)Это пофиг, главное чтоб недоплата была по итогам года. А ее в твоем случае нет, поэтому еще раз см. (5)
Моя обработка еще полезна тем, что ей пофиг неправильное распределение (с т.зр. ЗИК) оплат «за..» в документах «Расчеты по страховым взносам». Главное, правильно указать ими сумму в отчеином периоде (квартале, годе) — хоть даже одним доком за период (а не шестью за полугодие) — моя обработка правильно определить куда и кому нужно распределить полученные деньги.
Я дико извиняюсь НО у меня теперь другая проблемка. Уволенному начислена не полная страховая оплата(прикрепил файл с картинками из документов). Что может быть???
(9) Для меня этот случай интересен. Привидете дословно, что моя обработка писала в табло сообщений при распределении сумм оплаты.
(9) И приведите мне полностью строку из таблицы по сотру, а не тот огрызок на скрине.
А можно кратенький алгоритм по работе с обработкой!!! Плиззз! Всё кручу верчу, а не могу получить то что нужно. Формирует таблицу или за 1-е полугодие, либо за второе (((.
(12) В описании обработки кратенький алгоритм. Еще короче придумать не смогу 😉
Взял несколько людей, они идут подряд, все уволенные.(10)
Вот моя ситуация. Пачки за первое полугодие формировали в Бух 7.7. За второе в ЗиК. Пытаюсь воспользоваться пачками за первое полугодие, сформированными в Бух 7.7 и получаю ошибку, формирование до конца не проходит, информационная таблица не появляется, суммы уплаты в пачках не заполняются.
Ошибки выглядят так, сначала пишет про страховой номер
Наверное, неправильно заполены документы ‘Расчеты по страховым взносам’. Будет использована расчитанная доплата.
Доплата на страховую часть — расчитана 245,024.88, введена 213,422.50
Доплата на накопительную часть — расчитана 68,952.64, введена 60,730.81
Значение не представляет агрегатный объект (СтраховойНомерПФР)
но приступает к перебору сотрудников и далее останавливается на ошибке
{Глобальный модуль(8973)}: Значение не представляет агрегатный объект (Код)
добавил в ГМ отображение списка сотрудников
Показать
и увидел, что в список попадает «Пустое значение», см. рисунок
Я подозреваю что это какой-то сотрудник, который был в БД Бух 7.7 и которого совсем нет в БД ЗиК, но как найти этого сотрудника не пойму, можешь подсказать — где найти в коде перебор списка сотрудников из пачек?
(14) Мне нечем открывать файлы формата xlsx. Сохраните в старом формате Экселя.
(15) Понял. Сейчас попробую найти решение проблемы.
Спасибо! Правильно ли я понимаю что даже если за 1 полугодие отсутствуют начисления и уплата взносов в БД ЗиК, или они пристутствуют частично — это мой случай, за первое полугодие разнесён только май и июнь, то это не является помехой для обработки, т.к. она возьмёт сведения о начислении и уплате за всё первое полугодие из пачек?
Правильно. Для этого нужно еще указать в качестве «Даты зафиксированной задолженности…» значение «01.01.2010» или «пусто», чтобы обработка не пыталась найти сальдо в программе или отсеткать при чтении файлы XML по периоду поданных сведений.
Обновил файл обработки и поправил описание с учетом обсуждения на форуме.
(15) Looking, скачай новый файл обработки, она обозначит твою проблему с пустым сотрудником и подскажет решение проблемы.
пересохранил
Обновил еще раз разработку — оказывается, я в прошлый раз забыл положить в архив новый документ для ЗИК.
Также добавил еще одну обработку — которая, проводит анализ сальдо по итогам 1-го и 2-го полугодия из файлов ИС, которые сформированы в любой программе (не только ЗИК и даже не в 1С). Обработку можно запускать в любой базе 1С, она не привязана к метаданным.
Обновил еще раз разработку — оказывается, я в прошлый раз забыл положить в архив новый документ для ЗИК.
Также добавил еще одну обработку — которая, проводит анализ сальдо по итогам 1-го и 2-го полугодия из файлов ИС, которые сформированы в любой программе (не только ЗИК и даже не в 1С). Обработку можно запускать в любой базе 1С, она не привязана к метаданным.
Спасибо за доработку функционала!
Есть ещё животрепещущий вопрос 😀 Можно ли в этой обработке реализовать поддержку формирования в Бух 7.7? Или-же это достаточно трудо и времяёмко?
может в обработке берется состояниеФизЛица не на конец года а за период, поэтому не видит что они уволены и начисляется по принцип всем поровну…:(
(20) Посмотрел.
Сальдо с прошлого периода обработка полностью закрыла в 0:
Оплата за прошлый период
Страх. опл.
908,61
1960,79
2513,96
783,81
Сотрудники эти вряд ли уволены, т.к. отчет показал, что у них есть начисления в Текущем периоде. Обработка начисления текущего периода по коэффициенту оплатила равномерно (видимо, до конца года предпряите сохранило задолженность перед ПФ):
Страх. нач. Страх. опл..
56,06 47,69
184,58 157,01
2021,34 1719,43
634,29 539,55634,29
В принципе, обработка корректно отработала как указано у меня в алгоритме: сначала закрыла полностью задолженность по начислениям прошлого периода, потом частично закрыла оплатой начисления текущего периода.
Что не так?
(23) Нет, не берется. Обработка смотрит есть ли начисления сотрудника в текущем периоде.
(22) Вот второй обработкой из комплекта как раз можно и проверить «сходимость» файлов, сформированных в Бухгалтерии. Она универсальна. Но исправлять она не умеет.
я думал о том, чтобы сделать обработку как для ЗИК так и для Бухгалтерии. Буду делать, но, скорее всего, законченный функционал появится только к апрелю 2011.
(24)//Сотрудники эти вряд ли уволены, т.к. отчет показал, что у них есть начисления в Текущем периоде.
есть документ приказ об увольнении!!..как так не уволены????
//В принципе, обработка корректно отработала как указано у меня в алгоритме: сначала закрыла полностью задолженность по начислениям прошлого периода, потом частично закрыла оплатой начисления текущего периода.
у вас как сделано: 1. закрывает задолженность по начислениям прошлого периода. 2. Закрывается задолженность по начислениям этого периода по уволенным 3. Закрывает задолженность по начислениям по остальным или 2 и 3 пункт объединены в одно закрытие задолженности?
2. Закрывается задолженность по начислениям этого периода по уволенным
Нет этого у меня в алгоритме — уволенные текущего периода не закрываются в 0. Перечитайте еще раз описание обработки.
(27)все понятно…:0
ЗДЕСЬ
а с ними как быть???.было бы здорово если уволенные за 2 полугодие начислялась так же как в 1ой…:)
обсуждение на эту тему было
(28)Не вижу проблемы, сальдо по уволенным в текущем отчетном периоде (2 полугодие 2010) закроется оплатой в следующем отчетном периоде (1 кв 2011).
Почему не устраивает? Моя обработка их автоматически добавит и распределит остаток оплаты, ничего и делать не надо будет вручную.
(29)//Почему не устраивает?
Наверное потому что их надо закрыть в 2010 году!
Ошибочка небольшая — второе условие лишнее:
Если (Док.Сотрудник.Выбран()=1) и (Док.Сумма<>0) тогда : {ПОДГОТОВКАСВЕДЕНИЙДЛЯПФР2011.ERT(6459)}: Поле агрегатного объекта не обнаружено (Сумма)
А так — да, спасибо, помогло 🙂
Поясните пож-та какой смысл в том что вы доплатой по страх и накопит закрываете задолженность всех оставшихся сотрудников(на тех,у кого нет начислений во 2 плг-это понятно),почему бы уплаченной суммой за 2 плг не закрыть
тех,у кого нет начислений во 2 плг, а из оставшейся уплаты найти коэффициент и распределить по всем оставшимся сотрудникам?
(30)Почему надо? Ни в одном нормативном акте такого требования нет.
(31)Спасибо. Учту.
(32)Я считаю, что сначала нужно закрыть долги по старым периодом, а потом закрывать долги по текущему периоду.
Какой выигрыш даст ваш подход?
Судя по описанию, серьезная была проделана работа, собираюсь использовать обработку!
Только по поводу распределения сумм приведу аргументы в поддержку (32). Думаю, это здравое пожелание объясняется желанием не отступать существенно от алгоритма, предложенного 1С, чтобы в последующем не кусать локти… Наша ситуация: при сдаче отчетности 1 полугодия 2010, учитывая требования по наличию начисления у сдаваемых сотрудников в проверяющих программах на тот момент, пошли этим путем (закрыли в 1 очередь задолженность по уволенным и врем. неработающим). На момент сдачи отчетности 2 полугодия 2010г, как обычно, в последний момент, не обнаружили, как предполагали, в последних релизах 1С накопленную задолженность по сотруднику. В результате 1С благополучно распределила суммы уплат по сотрудникам, по которым начисления были закрыты уплатами в ноль в предыдущем отчетном периоде… Чтобы не распределять уплаты в Exel и забивать их по сотрудника вручную, один наш бухгалтер вынужден был использовать специлизированную программу ПФР для выгрузки и распределения уплат по сотрам. Второй бух (у которой несколько предприятий довольно большой численностью и некогда заниматься промежуточными выгрузками) дождался моей «временной» обработки с учетом оплат пред. периода. Наученные горьким опытом, мы решили не менять алгоритм распределения, чтобы в последующем худо-бедно, пусть с погрешностью, но не распределять уплаты ручками…
Предлагаю автору вынести в обработку «галку», для того чтобы бухгалтер сам принимал решение об алгоритме распределения уплат..
Правда, к моему стыду, все не дойдут руки посмотреть 309 релиз в части нового налового регистра… Но чувствую, что это не решит проблему с задолженностью на начало отчетного периода.. Я права?
(32), (34) См. в описание обработки недоработку #9 «9) [Добавлено 12.04.11] По выбору пользователя при распределении уплаты по сотрудникам первоочередно закрывать оплатой уволенных в текущем периоде, затем работающих (имеющих начисления)»
Т.е. у меня этот алгоритм в планах.
(34) Скажу больше. Раз воспользовавшись моей обработкой, доверять дальше ЗИК распределять уплату нельзя. Пойдет всё криво, т.к. у нас с ЗИКой разные алгоритмы. ЗИКовский алгоритм требует для корректного распределения в будущем, чтобы пользовались только им. Но даже в этом случае он кривой — копейки по людям могут не пойти с сальдо в ПФР. Поэтому пользователям надо сделать выбор: либо всегда пользоваться моей обработкой для распределения уплаты, либо всегда только ЗИКовской. Переходить после использования моего алгоритма на ЗИКовский уже нельзя. Но обратное делать можно в любой момент: переходить с ЗИКовского алгоритма на мой.
(35) Нет никакого «регистра» в ЗИК 309. Они так назвали новый отчет, который пришел на змену карточки 1-НДФЛ. Никакого распределения перечисленных сумм НДФЛ и никаких реквизитов п/п там нет.
Если бы он (налоговый регистр) там и был бы, он проблему не решил бы, т.к. задолженность по НДФЛ и по страховым взносам — вещи разные.
(35) Подтверждаю третий абзац из (36). Даже дополню: платежи в ПФР работодатель обязан персонифицировать, а НДФЛ налоговый агент опять-таки обязан платить суммарно, не разбивая по налогоплательщикам (он должен компенсировать отклонения по одним налогоплательщикам за счет других, например, возврат налогоплательщику излишне удержанного налога производится из сумм, удержанных у других — такая вот новация в НК).
а без документа Задолженности никак нельзя ?
а то у нас куча ограничений на использование clipboard , прежде всего по доступу…
и не очень понятно как быть без него….непроще ли создавать новый документ в конфигурации или базе ?
и ещё, нет никакого описания работы обработки, или я его не нашёл….ни внутри самой обработки , ни в файле readme.
хотелось бы знать последовательность действий, а не тыкаться наугад, про документ задолженность вообще нигде не указано….
(36)Да, в своих ожиданиях насчет налогового регистра я и правда ошибалась… Просто хотелось очень, думала разработчики 1С примут во внимание доводы user-ов … И проблему копеек поняла, что до копейки уволенным никогда не сойдется стандартной обработкой… Но кто-то из бухов возможно не будет с этим париться… (Главное, самим свалить вовремя, чтобы недоплата потом на тебе не осталась висеть при закрытии предприятия)
Victuan уже тем молодец, что 2 отчетность свою обработку поддерживает… Но хватит ли у тебя сил тянуть ее до новых кардинальных изменений ПФР или 1С? Теперь я уже сомневаюсь, что 1С-ки что-то предпримут в этом отношении. Хотя, конечно, разобрался во внутренностях не поверхностно, поэтому может и потянет некоторое время…
А в описании недоработки #9 автор немножко не дописал мысль, вот я и не поняла… Или я чего-то пропустила? Т.е. в этом пункте ты хотел сказать, что сделаешь выбор между 1)первоочередным закрытием уволенных, затем раб-х (как сейчас) и 2)пропорц-м распределением оплат от начисленного аналог. 1С, а оставшиеся после распределения копейки, скажем на последнего (в планах). И все-таки мне кажется, во 2) случае можно в будущем перейти на стандартный 1С-ий, если закрыть глаза на то, что после этого копейки по уволенным не пойдут.. И накопятся на тех, кто давно работает на предприятии
Подскажите пожалуйста из-за чего может возникать ошибка
Ошибка в алгоритме: ДоплатаНакоп не закрылась в ноль:1003.84
(38)Можно. Постоянно держа под рукой все файлы ИС за предыдущие периоды, начиная с 2010.
А clipboard-ом надо всего лишь один раз воспользоваться, чтоб как раз и добавить новый документ в конфигурацию.
(39)Описание обработки и последовательность действий подробно изложена здесь, на сайте — в описании обработки. Оформить описание еще подробнее у меня сейчас нет времени.
(40)Тянуть дальше буду, т.к. у меня на поддержке около 10 организаций и я не представляю как можно пользоваться ЗИКовским распределением, не поимев рано или поздно проблем в будущем.
По поводу планов по распределению уплат: пока не знаю как точно сделаю и предоставлю ли выбор пользователю. Но в конечном итоге, также планирую устранить недоработку#4 (коэффициент распределения брать помесячно, а не в целом за период) — это сравняет мой алгоритм с тем, что запланировано в ЗИКе за исключением того, что копейки закрываться будут. Хочу отметить, что ЗИКовский вариант распределения оплат не подразумевает, что уволенные сотрудники (или не имеющие начислений) в текущем периоде должны полностью закрыться оплатой. Зиковский вариант закрывает полностью сальдо по сотруднику только при соблюдении следующих двух условий:
1) в последнем месяце отчетного периода (квартала) на сотрудника не начислены взносы (уволен в предыдущем месяце)
2) организация не нарушает сроков по ежемесячной уплате взносов.
Т.е. начисленные взносы сотрудника в последнем месяце текущего квартала ЗИК закрывает оплатой в первом месяце следующего квартала.
(41)Такого быть не должно. У вас последняя версия моей обработки (скачанное не позднее 14 апреля 2011)?
В любом случае сообщите мне подробности, чтобы я мог устранить эту ошибку.
В любом случае сообщите мне подробности, чтобы я мог устранить эту ошибку.
С этим разобрался. Ошибка возникала при загрузке файлов *.XML за предыдущий период, сформированных ранее в программе «Документы ПУ 5». Как оказалось эта ПУ 5 заменила все буквы ё в ФИО сотрудников на е.
Обработка среагировала на это подобными сообщениями:
№№№-№№№-№№№ №№ФИО в пачках не соответствует номеру (пред.период) XXXXXXXXX XXXXXXXXX Фёдорович
в фаиле XXXXXXXXX XXXXXXXXX ФЕДОРОВИЧ
Эту ошибку я исправил (думал что исправил) следующим образом :
//Если ((Найти(ВРег(ТСотр1.Сотрудник.Наименование),СокрЛП(ТСотр.Фамилия))=0) ИЛИ (Найти(ВРег(ТСотр1.Сотрудник.Наименование),СокрЛП(ТСотр.Имя))=0)ИЛИ (Найти(ВРег(ТСотр1.Сотрудник),СокрЛП(ТСотр.Отчество))=0)) Тогда //здесь закомментировал
стрПоиска = глЗаменитьОдниСимволыДругими(«Ё»,ВРег(ТСотр1.Сотрудник.Наименование),»Е»);
Если ((Найти(стрПоиска,СокрЛП(ТСотр.Фамилия))=0) ИЛИ (Найти(стрПоиска,СокрЛП(ТСотр.Имя))=0) ИЛИ (Найти(стрПоиска,СокрЛП(ТСотр.Отчество))=0)) Тогда
Оказалось, так делать не следует, и когда я в копиии базы поменял у сотрудников все буквы ё на е, ошибка перестала вылазить.
(43)
когда я в копиии базы поменял у сотрудников все буквы ё на е, ошибка перестала вылазить.
Блин, поторопился с выводами. Оказалось копия базы старая, и в ней не внесены выплаты по страховым взносам.
когда попытался проделать то-же самое в рабочей базе, ошибка (Ошибка в алгоритме: ДоплатаНакоп не закрылась в ноль:1003.84) снова вернулась.
Анализ таблицы, появляющейся при загрузке из XML, с помощью Excell показал, что обработка неверно посчитала одно число (Оплата за прошлый период/Накоп. опл.) у одного сотрудника, и ошибка как раз равна 1003.84. Суммы взятые из файлов ИС сверил с файлами — все верно.
В приложении таблица (сотрудник в таблице идет с номером 101) и фрагмент окна сообщений. Подскажите плиз, куда рыть дальше.
П.С. Как раз этот сотрудник является внутренним совместителем, не может ли ошибка быть связанна с этим фактом.
П.П.С. версия обработки последняя, скачана 18.04.2011
(44) Прикольно. Судя по Таблице.xls в прошлых периодах Оплачено по сотрудникам больше чем Начислено. А это запрещено делать инструкцией по подготовке перс.учета.
Сработала как раз недоработка #5 («не знаю как себя поведет обработка в случае ошибочной отрицательной задолженности (переплаты) по сотрудникам в предыдущие периоды»)
Случай для меня интересный, буду разбираться…
(42) а без clipboard`a никак нельзя обойтись ? Т.к. у меня на него прав нет, по политике безопасности предприятия.
И без документа Задолженность по страховым взносам ?
Как сделать все манипуляции без него.
То есть достаточно указать папку где хранятся pf файлы ? Тогда какую дату зафиксированной задолженности для 1 квартала указывать ?
Если мы за март уплатили 15 апреля например, за февраль 15 марта. то дата задолженности будет 15 апреля, за 1-ый квартал ?
вдогонку вопрос: какую службу надо запустить чтобы папка обмена заработала ?
(46) Можно обойтись и без clipboard`a.
http://ifolder.ru/22995739 — это мой сборник исправленных глюков ЗИК 309. Среди прочего там лежит документ ЗадолженностьПоСтраховымВзносам.
ZIK309fix++
Но можно обойтись вообще без этого документа — нужно указать папку где храняться файлы ИС (*.xml) за все предыдущие пероды, начиная с 01.01.10. Дату зафиксированной задолженности поставить пустой (или 01.01.10). Всё это подробно описано здесь на сайте.
(47) Например, на Windows XP (или младше) надо запустить приложение Clipbrd.exe
(44)Я вроде догадался в чем проблема. Вы указали путь с файлами только за 2-е полугодие 2010. Но поскольку у вас в 1С не зафиксирована по сотрудникам задолженность на начало этого полугодия, то обработка считает, что задолженности за 1-е полугодие нет. Вам нужно в папку с ИС поместить все файлы: и за 1-ое и за 2-ое полугодие, чтобы обработка смогла восстановить полностью задолженность.
Блин, почему никто не читает описание к моей обработке. 🙁
(49) К сожалению, не так все просто, описание я читал, да впрочем и без него можно интуитивно догадаться, что нужны все файлы ИС с 2010г. Поэтому в папке были все нужные файлы.
Ещё приложение — таблица, какой она стала после нажатия кнопки «Заполнить страховые взносы» на первой вкладке.
В ней сотрудник, у которого обнаруживается ошибка фигурирует с номером 89
Ну тогда верен мой первоначальный диагноз: вы оплату по некоторым сотрудникам за 2010 поставили больше чем начислено.
Как это у вас получилось?
(43) Несоответствие ФИО сотрудника в базе и в файле не приводит к необработке его данных — это всего лишь предупреждение.
(50) Обновил версию обработку — теперь она умеет учитывать ошибочную переплату в прошлых периодах.
Просьба протестировать новую версию и выслать мне весь текст из окна сообщений, появляющийся в ходе работы обработки и Таблицу.xls, полученную после нажатия кнопки «Заполнить суммы взносов».
Прошу это сделать даже в том случае, если Вы отказались от дальнейшего использования моей обработки или решили проблему иначе. Мне это нужно для тестирования обработки в случаях отриц. задолженности, а у меня подобного тестируемого материала нет. Надеюсь на понимание.
(51)
Ну тогда верен мой первоначальный диагноз: вы оплату по некоторым сотрудникам за 2010 поставили больше чем начислено.
Как это у вас получилось?
В первом полугодии 2010г. перечилений было мало, так и отчитались, во втором полугодии перечислений было гораздо больше, и коэффицент распределения получился больше 1 (как раз к моменту сдачи отчетности из программы «документы ПУ 5» убрали ограничение на этот коэффициент <=1 ). В целом (по предприятию) все верно, но только сейчас, разбираясь с нынешней проблемой, понял, что у сотрудников, устроившихся на работу во 2 полугодии получилась переплата.
(52)
Обновил версию обработку — теперь она умеет учитывать ошибочную переплату в прошлых периодах.
Просьба протестировать новую версию …
Скачал новый файл, начал проверять, и не увидел каких-либо изменений. Сверил файл с предыдущей версией и оказалось, что они абсолютно одинаковые. Возможно Вы забыли обновить его в архиве для скачивания.
Так как сегодня с форума скачть больше ничего не смогу, прошу выслать обновленный файл на
Sev_<МойНикВЭтомФоруме>СобакаМайл.ru
(53) Действительно, я выложил не тот файл 😥
Часа через два я доберусь до него, отправлю его Вам на мыло и обновлю здесь на сайте.
(54)Не поняла,обновлён уже файл или нет… И документ «Задолженность..» качала в архиве еще от 31.01.11, а сейчас его на infostart нету… Там ничего не менялось?
ВНИМАНИЕ! Вчера (18.04.11) по ошибке я не обновил обработку на сайте. Всем кто качал обработку — скачайте ее снова!
А СЗВ-6-2 не должна разве разбиваться на пачки по 200 записей ? Или я что то путаю ?
А формы не менялись в ПФР с отчета за 2010 год ? Если да, то поддерживаются ли они в данной обработке ?
Если формировать в 306 ЗиКе, то разница будет с 308-310 по этой обработке ?
И ещё вопрос, самый главный пожалуй: как поступает обработка с уволенными в 1 квартале, выплачивает им полностью или также с учетом коэффициента ?
Такой же вопрос, для тех сотрудников, у которых уже в первом квартале сумма начислений превысила 463000 ?
И ещё вопрос: какая разница, есть ли файлы XML или есть введеные документы Расчеты по страховым взносам ?
Галочка:»Распределение уплат с учетом прошлого распределения».
(52)
Просьба протестировать новую версию …
(57) СЗВ-6-2 должна разбиваться на пачки по 200 записей — моя обработка так и разбивает.
Формы не менялись в ПФР с отчета за 2010 год. Появился проект добавочных форм, которые пока не актуальны. Сдаем по старым.
Если формировать в 306 ЗиКе, то разница будет с 308-310 по этой обработке для спецрежимников. 306 поместит сотрудинков в папки УСЕН, 309-310 в НР. Правильно с 2011 года — в НР.
(58) Вижу на скриншоте не весь лог — мне нужен весь. Моя новая версия обработки все-таки неправильно распределяет уплату за текущий период (увеличивает). Буду переделывать.
И ещё вопрос, самый главный пожалуй: как поступает обработка с уволенными в 1 квартале, выплачивает им полностью или также с учетом коэффициента ?
Такой же вопрос, для тех сотрудников, у которых уже в первом квартале сумма начислений превысила 463000 ?
С учетом коэффициента, пока это еще недоработка #9 /По выбору пользователя при распределении уплаты по сотрудникам первоочередно закрывать оплатой уволенных в текущем периоде, затем работающих (имеющих начисления)/
И ещё вопрос: какая разница, есть ли файлы XML или есть введеные документы Расчеты по страховым взносам ?
Требуются или файлы XML или заполненный документ ЗадолженностьПоСтраховымВзносам на начало периода. Возможно сочетание: ЗадолженностьПоСтраховымВзносам за какой-нибудь предыдущий период и файлы XML за период от этого документа до текущего периода.
Документы Расчеты по страховым взносам нужны в текущем периоде в любом случае для определения сумму оплаты, которую нужно распределить в текущем периоде.
Добавился один сотр, с остатками по уплате с прошлого года, которого я пропустила. это хорошо.
А вот почему страховая часть (уплата) получилась верно, а накопительная — непонятная сумма в несколько раз больше нужной… уже удалила все д-ты Расчеты по страховым взносам, сформировала один д-т — в марте с суммой уплаты в целом за квартал, результат тот же… 😥
(61)Это ошибка новой версии (1.4). Сейчас исправляю. Скоро выложу исправленный вариант.
(62) а недоработку №9 планируется делать ? в каком она приоритете ? ещё вот вопрос, как именно берутся документы оплаты:
например, получается введенный в январе документ за декабрь 2010 учитывается? а введенный в апреле 2011 за март 2010 ?
(63) Все недоработки (кроме #1 и #2) планирую исправить. Приоритет у #9 теперь первый.
Документы оплаты берутся зарегистрированные (по дате документа) в текущем отчетном периоде (за который подготавливается отчет).
При подготовке отчета за 1 кв 11 введенный в январе документ за декабрь 2010 учитывается.
Введенный в апреле 2011 за март 2010 учтется при подготовке отчета за 2 кв 11.
Выложил обновление до версии 1.5, в нем исправлены критические ошибки, приводящие к неверному распределению оплаты.
(59)
Вижу на скриншоте не весь лог — мне нужен весь
Лог весь, тем сообщениям что приведены на скриншоте предшествуют только сообщения «Читается файл <ПутьИмяФайла>»
Скачал версию 1.5, сейчас буду смотреть её.
(65) Очень хорошо, прошу выложить лог сообщений и Таблицу.xls. Даже если все сработало верно.
Ставлю галочку «Распределение уплат», выбираю каталог с файлами ИС, нажимаю кнопку «Сделать анализ». Возвращаюсь на вкладку с пачками — суммы уплаты по накопительным становятся чуть ли не втрое больше???
(67) — то же самое — при неоплате по накопительной за март распределены невероятные суммы
(67), (68) Такое распределение дает версия 1.3 или 1.5?
Если вместо кнопки «Сделать анализ» нажать «Заполнить суммы взносов» — цифры становятся верными?
Версия 1.5 Да, после «заполнить суммы» все становится на свои места)
(66) Версия 1.5. Вроде все неплохо, но мне не понятно, почему обработка уменьшает величину оплаты за прошлый период на сумму переплаты, ведь если отбросить отрицательные числа (переплату), сумма должна увеличиться. А уплата текушего периода соответственно должна уменьшиться на ту-же величину, так-как переплату мы вычтем из сумм, распределенных за текущий период. В итоге сумма выплат за текущий период (оплата долга за прошлые периоды+распределенная сумма за текущий) останется правильной. В файле Таблица.xls я рассмотрел этот вариант, рядом с таблицей сформированной обработкой, и он кажется мне более правильным.
П.С. Огромное спасибо за обработку и за ваше желание помочь с ней разобраться.
а уйти от документа «Задолженность» путём вставки из клипбоарда можно,если не удастся собрать все XML файлы за прошлые периоды?
например указывать задолженность на форме самой обработки.
У меня такая проблема:
Релиз 309, Категория ЗЛ «СХ ТОВАРОПРОИЗВОДИТЕЛИ», при заполнении формируются: 1 пачка СЗВ6-1 с ЗЛ «СХ», 1 пачка СЗВ6-2 с ЗЛ «СХ», 1 пачка СЗВ6-2 с ЗЛ «ОЗОИ» и 1 пачка СЗВ6-2 «Общественные организации инвалидов», при выгрузке файлов по людям из пачек с ЗЛ «ОЗОИ» и «ООИ» падают ошибки типа «нет данных о стаже по категории ЗЛ ОСОБАЯ/ЗОНА/ОРГАНИЗЦИИ/ИНВАЛИДОВ!» — в чем может быть причина?
(70)Я проверил: обе версии 1.3 и 1.5 правильно показывают суммы уплачено как по кнопке «Сделать анализ», так и по кнопке «Заполнить суммы взносов».
Единственный косяк — может слетать значение «Тип сведений» на основной закладке (меняет значение с «Исходная» на <пусто>) после нажатия кнопки «Заполнить суммы взносов». Пытаюсь понять почему, вроде слет происходит при обращении к ф-и г. модуля. Если вручную восстановить правильное значение, то печатаются пачки и выгружаются верно.
(71)Насчет переплаты согласен. Это у меня методическая ошибка, перепутал в какую сторону нужно изменять. Исправлю в следующем релизе.
(72)Уйти от документа «Задолженность» путём вставки из клипбоарда можно. Я в (48) оставил мд с этим документом. Можно его теперь добавить в свою конфигуарцию через режим «Объединение конфигураций». Указывать задолженность на форме самой обработки в разрезе всех сотрудников предприятия не представляю возможным, ведь их может быть и несколько тысяч.
(73)В релизе 309(310) ЗИК есть ошибка, она неправильно может определить тип пачки, в которую нужно поместить сотрудников с закрываемой задолженностью прошлого периода. Если воспользоваться моей обработкой с установленной галочкой «Распределение уплат с учетом прошлого распределения», то проблема должна уйти.
(71) Версия 1.6: сумма переплаты прошлого периода теперь увеличивает, а не уменьшает, сумму доплаты за прошлый период.
Прошу протестировать и результаты выложить.
Обратил внимание, почему то после переключения с закладки Настройки, на закладку Пачки документов, исчезают все пачки,
в поле Период появляется надпись : корректирующий, который выставляется в 1 квартал 2011 года,при этом тип сведений очищается,
при выставлении в типе сведений:Исходный, всё восстанавливается.
(76)Об этом я писал в (74) — выделено жирным.
В версии 1.6 я попытался исправить этот недочет.
(75)Версия 1.6. Результаты в приложениях.
Уплаты на страховую и накопительную часть текущего периода теперь маловаты. Должны быть 696197-642284.54 = 53912.46 — страховая
77184-27447.51 = 49736.49 — накопительная.
По пути пытался разобраться с версией 1.5, и когда в ней исправил строки 6647 — 6649 следующим образом:
ДоплатаСтрах = ДоплатаСтрах + ДСтрах; ДоплатаНакоп = ДоплатаНакоп + ДНакоп;
УплатаСтрах = УплатаСтрах — ДСтрах;
УплатаНакоп = УплатаНакоп — ДНакоп;
то-есть + поменял на — и наоборот, все (вроде-бы все) получилось как надо.
(78)По сути я в версии 1.6 сделал тоже самое. Но допустил опечатку для страховой части. Поэтому моя версия накопительную посчитала верно, а страховую нет.
Исправил ошибку, перезалил обработку.
(79) Версия 1.6+
Теперь всё замечательно 😀 , ошибок больше не увидел. На всякий случай, как обычно, прикрепляю лог и таблицу.
Ещё раз спасибо за помощь.
Неправильно формирует. Просто закрывает работника на сумму долга и всё.
по крайне мере у меня так получилось. версия 1.6 по крайней мере правильно формировала начисленное и уплаченное по действующим сотрудникам.
а эта просто показываает сколько недозакрыли по уволенным и не уволенным , и закрывает сотрудников ровно на эту сумму.
upd: второй раз переформировал, вроде всё стало на свои места.Странно. Хотя последовательность была той же:
1) Кнопка Заполнить;
2) Галка Распределение уплат с учетом прошлого распределения;
3) Кнопка Заполнить суммы взносов.
Последовательность верная ?
Пожелание: А можно ли сделать так чтобы у тех у кого уже 463000 в первом квартале, закрывались сразу же, как и уволенные ?
Ошибка с очисткой типа сведений Исходные и видимостью Корректирующей пачки не устранилась.
(81)
«Неправильно формирует. Просто закрывает работника на сумму долга и всё.»
Проверил, у меня всё нормально. Крепите сюда лог сообщений и выходную таблицу в Эксель.
«1) Кнопка Заполнить;
2) Галка Распределение уплат с учетом прошлого распределения;»
Эти пункты лучше поменять местами, тогда выходная таблица будет нагляднее (в ней не будет сравнения с ЗИКовским вариантом распределения)
«Пожелание: А можно ли сделать так чтобы у тех у кого уже 463000 в первом квартале, закрывались сразу же, как и уволенные ?»
А зачем? Про уволенных понятно, чтобы они не тянулись в следующие периоды. А превысивших предел зачем? Они ведь всё равно должны тянуться в следующие периоды для подтверждения стажа. Какая разница потянутся они с нулем в оплате или без нуля, но со стажем?
(81) «Ошибка с очисткой типа сведений Исходные и видимостью Корректирующей пачки не устранилась»
Странно, у меня она перестала проявляться. Можете отследить в какой момент при появлении сообщений в табло сообщений оно очищается (или через отладчик)?
Не понял как программа закрывает долги по предприятию?
У нас долг за прошлый период, за второе полугодие 2010 г.
В 1 квартале этого года еще долг не закрыт.
Я понимаю так:
Сумму которая прошла в этом году, тупо раскидать пропорцией на всех сотрудников, у которых начислено сумма во втором полугодии.
ну или:
Закрыть уволенных в этом квартале и в прошлых периодах, а далее сумму оставшийся раскидать на всех (коэффициент на всех оставшихся одинаковый)
пожелание:
В настройках напиши виды расчетов
1. Закрыть уволенных или не закрыть
2. Закрыть прошлые начисления, или нет и.т.д.
(84) В твоей ситуации действует этот фрагмент из описания обработки на сайте:
«Примечание к пп. 1 и 2. В том случае, если организации сохранила долги за прошлые периоды (заплатила в текущем периоде меньше чем даже задолженность на начало период), текущей оплаты может не хватит даже на закрытие долгов по сотрудникам из прошлых периодов. В этом случае, логично было бы доплату также распределить по коэффициенту равномерно всем сотрудником из прошлого. Но я сделал не так, доплата полностью гасит долги первых попавшихся сотрудников (в алфавитном порядке), оставляя неоплаченными долги последующих сотрудников. Они будут оплачены в следующем отчетном периоде при поступлении очередной оплаты. Я сделал так, чтобы уменьшить количество сотрудников, тянущихся из-за неоплат в следующие периоды. Т.е. вместо всех частично оплаченных перейдут только несколько полностью неоплаченных.»
При этом обработка сначала попытается закрыть долг по уволенным в прошлом периоде сотрудникам, затем по оставшимся. Но в алфавитном порядке.
Люди, когда же вы научитесь читать инструкции?!!!
Обновил описание обработки на сайте — добавил пошаговую инструкцию по использованию обработки для чайников. Эту инструкцию вложил в файл ReadMe.txt разработки.
(82) (83) в понедельник отслежу и сообщу, если будет криво вышлю лог, и по поводу ошибки с типом сведений ттоже.
а про превысивших предел: просто у них то по любому не будет начислений больше в году…не проще сразу таких взять и закрыть ?
чтобы потом их можно было спокойно контролировать, т.к. они по той же логике , что и при недоплате за прошлый период, будут уже в уплаченных.
да и потом, суммы по ним большие, они могут долго не закрываться в будущих периодах и тянуться несколько кварталов.
Люди, когда же вы научитесь читать инструкции?!!!
Тогда в данном случае, возможна такая ситуация, что некоторые люди (последнем буквы алфавита) никогда не получат оплаты на пенсию!!! 🙂
Так что сунь кнопку, чтоб делило на всех.
Да и вообще, если долг не закрыт, делить оплату надо на всех поровну, а то по вашему алгоритму, некоторые люди получат, а некоторые нет.
Автору. Использовала кусок твоей разрабоки для анализа уплаченных взносов. Поняла причину по которой слетает тип и состав пачки после анализа(см. замечания (81)). В процедуре «ЗагрузитьИзХМЛ» измени название переменной ТипСведений на другой (я сделала ТипСведенийП) и при переключении между вкладками все встанет на места…
Для себя решила для начала использовать стандартный алгоритм распределения (тот что 1С выпустило 22.04, там проблема с упрощенцами по прошлому году решена) + твой анализ (без распределения, только как отчет) на основе файлов ИС (в формате XML), выгруженными за предыдущие периоды. Пока на 1 предприятии протестировала, сальдо по уволенным сотрудникам не смертельно, всего пара человек (мы как раз не нарушаем сроков платежей (42)) по 1 коп, в этом периоде их как раз еще можно поправить… Потестирую сегодня еще, тогда может решусь выложить обработку… Вообще делала для того, чтобы понять, есть в нашем случае необходимость использовать нестандартное распределение..
(112)Спасибо за ценное замечание, учту в следующем релизе. А что за обработку решаешь выложить?
(113)Я о ней написала, выкладываюhttp://infostart.ru/public/84755/ , правда торопилась с описанием, предыдущее не сохранилось в черновике… Теперь исправлю только после выходных…
Подскажите, а что означает данное сообщение — ТипСведений = Форма.Параметр.ПолучитьЗначение(15);
{Обработка.РедактированиеСведенийПФР.Форма.Модуль(56)}: Индекс не входит в границы списка значений. Я пытаюсь вручную поправить оплаты по некоторым сотрудникам.
Файлы пока нет возможности отправить, текст выходит, но на расчетные данные не влияет.. думаю пропустить эту ошибку)
(138)В ближайшее время я планирую выпустить обновление своей раработки. Заодно посмотрю из-за чего выходит это сообщение.
(139)В ЗИК нет учета календарной выработки. Поэтому ЗИК его не формирует. Когда-то я делал доработку выгрузки, чтобы этот блок формировался. Но поскольку это редкоиспользуемая ситуация, поддерижвать данный функционал не буду.
(138)Обновил версию обработки до 1.8. Теперь этой ошибки возникать не должно.
Она возникала из-за того, что моя обработка была основана на релизе ЗИК версии 309, а в более поздних релизах ЗИК изменилось количество параметров встроенной обработки РедактированиеСведенийДляПФР.
(1) Добрый день, скажте пожалуйста, а как быть если в предыдущем периоде была переплата по СВ. Я в док-те накопленнаяя задолженность указала сумму переплаты, но при распределении взносов сумма переплаты в конечное сальдо не попадает. Как быть???
(201)Должна попадать, вышлите сообщения, которые выводит программы и состояние документов Задолженность и РасчетыПоСтраховымВзносам.
(202) Она ни каких сообщений не выводит, если не распределать переплату по сотрудникам, а просто ставить в поле переплата сумму переплаты, кот. введена предыд. периодом док-том Расчеты по страховым взносам.
(203)Слишком мало информации. Дайте больше.
Те сообщения, которые появляются при нажатии кнопки «Заполнить суммы взносов» при установленном флажке «Распределение уплат с учетом прошлого распределения».
А также суммы в вышеуказанных документах.
(204) Стала копаться и сама нашла в чем проблема. У меня задваивалась переплата из за того, что был док-т Расчеты по страховым взносам от июня, где была указана оплата за июль и в док-те накопленная задолженность я указала сумму переплаты. Спасибо, теперь все получилось.