Ошибки выгрузки из Зарплата 2.0 в 4.0 - Каминсофт

Ошибки выгрузки из Зарплата 2.0 в 4.0

31 янв 2016 23:40 #1
от 02133
Пробовали выгрузить из 2.0.84 в 4.0.40.3 от 30.12.2015г.
Нашел целую кучу ошибок в обработке "КАМИН ЗП40 Выгрузка из ЗП20 v042.ert"
Причем сразу отказалась работать.
вылетела ошибка:
369- Если ТЗКадрыСотрудника.ДокументКадры.ДатаДок<Дата1 Тогда
ЗП 20 - ЗП 40 V042\КАМИН ЗП40 ВЫГРУЗКА ИЗ ЗП20 V042.ERT(369)}: Операции сравнения на больше-меньше допустимы только над значениями совпадающих базовых типов (число, строка, дата)
*
Заменили в этой процедуре
Процедура СформироватьТаблицуДокПрием()
на:
369- Если Дата(ТЗКадрыСотрудника.ДокументКадры.ДатаДок)<Дата1 Тогда
372- ТЗДокументыП.ДатаДок = Дата(ТЗКадрыСотрудника.ДокументКадры.ДатаДок);
379- ТЗДокументыВ.ДатаДок = Дата(ТЗКадрыСотрудника.ДокументКадры.ДатаДок);
*
Вроде пошло, но когда загрузили в 4.0 , вообще не оказалось кадровых документов по половине старых сотрудников, работающих по текущий момент на предприятии и имеющих сальдо. Сальдо загрузилось, а кадровых документов нет. И так по половине старых сотрудников.
Начали ковырять эту обработку в 2.0, выяснилось, что в функции ошибка
Функция СформироватьДокПрием(п_ТаблицаКадры, п_ТаблицаКадрыС)
*
все сотрудники что попали в таблицу ТЗДокументыП, не учлись в списке сотрудников по которым переносятся кадровые документы.
Поэтому в этой функции, посчитали как ошибку строку
188- п_ТаблицаКадры.Выгрузить(п_ТаблицаС);
и заменили ее на другую таблицу
188- п_ТаблицаКадрыС.Выгрузить(п_ТаблицаС);
далее кадровые документы по этим сотрудники начали выгружаться, но тут возник новый затык:
как доехали в этой функции до
Функция СформироватьДокПрием(п_ТаблицаКадры, п_ТаблицаКадрыС)
до условия
271- ИначеЕсли п_ТаблицаС.ДокументСсылка.Вид()="Индексация" Тогда
так ошибки полезли одна за другой
ТабПрием.DataPriem = Формат(п_ТаблицаС.ДокументПрием.ДатаПриема,"Д ГГГГММДД");
Значение не представляет агрегатный объект (ДатаПриема
пришлось менять строку
279- ТабПрием.DataDoc = Формат(п_ТаблицаС.ДокументПрием.ДатаДок
на
279- ТабПрием.DataDoc = Формат(п_ТаблицаС.ДокументСсылка.ДатаДок,"Д ГГГГММДД");
так как
ДокументПрием
не определен, и все данные из него не находятся, а ДокументСсылка -это документ индексации, и нем нет п_ТаблицаС.ДокументПрием.ДатаПриема
поэтому замена ДокументПрием на ДокументСсылка, не работает. А что реально должно быть скажут сами разработчики.
И так далее идут ошибки в этой функции, где есть ДокументПрием.
*
Пробовали выгрузить всех, в том числе и уволенных, но также не выгрузились кадровые документы по многим старым сотрудникам до сих пор работающих на предприятии.
Так как список всех сотрудников брался только из таблицы ТЗДокументыВ, а по сотрудникам попавшим в таблицу ТЗДокументыП, кадровые документы вообще не передались.
Распределение по таблицам происходит в
Процедура СформироватьТаблицуДокПрием()
369- Если ТЗКадрыСотрудника.ДокументКадры.ДатаДок<Дата1 Тогда
ТЗДокументыП.НоваяСтрока();
Иначе
ТЗДокументыВ.НоваяСтрока();
где
Дата1 = ДобавитьМесяц(НачДата,-24);
*
Тема закрыта.
Спасибо сказали: Николай Малышевский

Опрос
Всего 3 простых вопроса

Продолжая использовать наш сайт, вы даете согласие на обработку файлов cookie и пользовательских данных в целях функционирования сайта, проведения ретаргетинга и статистических исследований, обзоров. Если вы не хотите, чтобы ваши данные обрабатывались, покиньте сайт.

Принять