0
Отвечен

Интеграция с "Контур-Персонал" как исправлять ошибку обработки писем "Должность с внутренним кодом ## не найдена"

Анатолий Русин 6 лет назад в Интеграция с Контур-Персонал обновлен Вячеслав Шинкарев (менеджер разработки) 6 лет назад 4

Добрый день!

Подскажите, пожалуйста, что означает ошибка "Должность с внутренним кодом ## не найдена" и как её решать.

Image 2528

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

Письма
ХОРОШО, МНЕ ПОНРАВИЛОСЬ
Оценка удовлетворенности от Анатолий Русин 6 лет назад
На рассмотрении

Добрый день! Подозреваю произошло примерно следующее - интеграцию включили, что-то проинтегрировали, выключили, почистили справочник должностей от "лишних должностей", еще раз включили, отправили из КП должности (штатное расписание) - получили примерно такую ситуацию.

Что сейчас видно на скрине: Наличие заполненных AmbaId и MasterGUID означает, что объект уже был интегрирован, запись об этом есть в SQL БД Контур-Зарплаты. Ошибка означает собственно что и написано - программа попыталась найти должность с Id 134 в справочнике должностей, но ее там нет.

Советую очистить связь по этой должности, после чего еще раз обработать письмо. Либо, можно почистить связь по всем должностям и отправить все из КП.

Есть две скриптовые функции для очистки связи:

1. Очистить связь по одной сущности:

 void IntegrClearIds(int aoType, LPCSTR ambaId);

aoType для должности должен быть 3

ambaId - строка с идентификатором

В вашем случае вызов должен быть: IntegrClearIds(3,"134");

2. Очистить связи по всему типу сущностей

 void IntegrClearIdsAllForAOType(int aoType);

В вашем случае: IntegrClearIdsAllForAOType(3);

После этого придется заново интегрировать весь справочник должностей!

Выполнять функции можно в блок-коде (Shift-F4 -> Выполнить код), с включенной интеграцией, желательно чтобы все другие расчетчики вышли.

Попробуйте для начала чистить связи по одной должности и обрабатывать соответствующие письма.

Помогло.

После обработки 1 письма выдала информацию о том, что в справочнике ОКПДТР нет такой должности, и будет разнесён "0".

Зачистил связи по всем должностям, отправил массово письма из КП - обработались без ошибок.

Спасибо!

Сервис поддержки клиентов работает на платформе UserEcho