|
Как обрабатывать с отсрочкой некоторые объекты в плане обмена? | ☑ | ||
---|---|---|---|---|
0
lenkavovka
23.10.18
✎
06:52
|
Здравствуйте!
В одной базе (ЗКГУ) в плане обмена регистрируются события кадровых перемещений (приём, перевод), чтобы передать в другую базу текущее место работы, вид занятости, количество ставок сотрудника. Правила обмена подготавливаем в Конвертации данных 2.0. База - приёмник (ДГУ) не умеет хранить историю кадровых состояний, она знает только, что сегодня Иванов по основному месту работы работает слесарем на 0,5 ставки. Но если Иванова переводят с 1 января следующего года на 3/4 ставки электрика, то в ЗКГУ он будет помечен для обмена сегодня, а не первого января. У нас есть выбор: либо сегодня передать его текущее состояние, тогда 1 января в приёмнике он и останется слесарем. Либо передать последнее состояние на текущий момент, тогда в приёмнике он электриком станет уже сегодня, что тоже неправильно. Одно из очевидных решений - сделать в ЗКГУ обработку, которая будет запускать в фоновом задании и в дату наступления события приёма или перевода будет помечать сотрудника в плане обмена. Может быть, есть стандартные механизмы отсроченной обработки? Всех сотрудников ежедневно выгружать - не вариант, их более 3000. |
|||
1
lenkavovka
23.10.18
✎
06:54
|
Поправка, события кадровых перемещений конечно же не регистрируются в плане обмена, а регистрируют объекты, с которыми произошли изменения. В данном случае - сотрудники и их данные.
|
|||
2
aleks_default
23.10.18
✎
10:06
|
А направление обмена в одну сторону или в обе?
|
|||
3
Cyberhawk
23.10.18
✎
10:22
|
Запретить регистрацию этих объектов, если изменение состояния наступает в будущем.
Сделать регл. задание / обработку, которое будет к выгрузке помечать все объекты с наступившей актуальностью. |
|||
4
lenkavovka
23.10.18
✎
15:20
|
(2) По факту в одну.
(3) Похоже, это единственный рабочий вариант. |
|||
5
Cyberhawk
23.10.18
✎
15:25
|
Ну можно еще в коде обрабтчиков выгрузки (в правилах конвертации) анализировать и не выгружать объект, если время для него не наступило. Ну и перерегистрировать не забывать.
|
|||
6
aleks_default
23.10.18
✎
16:27
|
(5)При загрузке ответного обменника все зарегистрированные и не выгруженные объекты очистятся.
|
|||
7
Cyberhawk
23.10.18
✎
16:27
|
(6) Ты конечно же ошибаешься
|
|||
8
aleks_default
23.10.18
✎
16:31
|
Почему? Очистка же по номеру выгруженного делается
|
|||
9
aleks_default
23.10.18
✎
16:32
|
Или ты предлагаешь перерегистрировать после выгрузки?
|
|||
10
Cyberhawk
23.10.18
✎
16:34
|
Ты пишешь "все зарегистрированные и не выгруженные объекты очистятся". Это не так: очистятся только те, номер выгруженного которых менее или равен номеру, что прилетел в источник в сообщении-подтверждении загрузки из приемника.
|
|||
11
VS-1976
23.10.18
✎
16:35
|
(8) Да только ты туда всё прочитаешь и что нужно и чего не нужно.
Можно конечно проверять по дате документа, к примеру и если дата старше текущего момента, тупо удалять из плана обмена, а документ в массив. Дальше после чистки плана, выгружаешь. Ну и после выгрузки опять засовываешь в план. Но лучше конечно регламент сделать и регистр сведений к примеру... |
|||
12
Cyberhawk
23.10.18
✎
16:35
|
(9) Да, вроде довольно явно это написано в моем последнем предложении из (5)?
|
|||
13
aleks_default
23.10.18
✎
16:50
|
(12)Просто не сразу дошло.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |