Пропадающие накопители

Автор Сообщение
vome
Народный форумщик

Зарегистрирован: 17.09.2004
Сообщения: 210
Откуда: Санкт-Петербург -> Москва

Добавлено: 17.11.2004 15:26 Заголовок сообщения: Пропадающие накопители
В последнее время в модуле зарплата наблюдаются странные явления, а именно: при обновлении зарплаты не обновляются накопители НЕКОТОРЫХ сотрудников Rolling Eyes, не всех, что было бы понятно, а именно избранных.
У кого нибудь есть соображения:
1. по какому принципу избираются данные сотрудники;
2. как можно автоматизировать проверку корректности обновления зарплаты, т.е. что все накопители обновленны правильно. Wink
Jugulator
Главный форумщик

Зарегистрирован: 08.10.2004
Сообщения: 428

Добавлено: 17.11.2004 15:31 Заголовок сообщения:
Скажем осторожно, что это надо видеть.
Может быть чехарда с датами в ТЗ, которые должны обновить накопители (диапазон дат в ТЗ, а не дата расчета).
Есть также варварский способ обновить их насильно, используя данные статистики, или состряпать отчет, выявляющий разницу, а потом по этим данным скорректировать.
vome
Народный форумщик

Зарегистрирован: 17.09.2004
Сообщения: 210
Откуда: Санкт-Петербург -> Москва

Добавлено: 17.11.2004 15:54 Заголовок сообщения:

Jugulator писал(а):
Может быть чехарда с датами в ТЗ, которые должны обновить накопители (диапазон дат в ТЗ, а не дата расчета).


У одного сотрудника 90 накопителей, куда записывается информация из десятков типов зарплат, и во всех «чехарда» с датами?

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


В том-то и дело, что бы сверить накопители, нужно повторно рассчитать зарплату, а как это можно сделать в отчете?
Или после обновления зарплаты удалять накопители и рассчитывать их заново?
А в чем отличие? Как я подозреваю и в том и в другом случае запускается одна и та же программа, по обновлению накопителей, или я не прав?

Игорь Голиков
Главный форумщик

Зарегистрирован: 21.09.2004
Сообщения: 284
Откуда: Свято-Петроград

Добавлено: 17.11.2004 16:08 Заголовок сообщения:
Просьба уточнить на всякий случай: простые накопители или периодические.
vome
Народный форумщик

Зарегистрирован: 17.09.2004
Сообщения: 210
Откуда: Санкт-Петербург -> Москва

Добавлено: 17.11.2004 16:17 Заголовок сообщения: Периодические
Shocked Периодические. А что еще и простые слетают?
Игорь Голиков
Главный форумщик

Зарегистрирован: 21.09.2004
Сообщения: 284
Откуда: Свято-Петроград

Добавлено: 17.11.2004 17:07 Заголовок сообщения:
Периодических накопителей только 50, а не 90. И простые накопители у вас слетали в марте этого года.

Немного истории:

Первый раз я эту проблему встретил в 1996 году в приснопамятной Scala 3.15. Тогда не было Benjamin, я довел это до Сергея Шведова (тогда руководитель Payroll Centre, то есть разработчика модуля Алексея Белова, консультантов и Payroll Bureau в лице Ирины Петренко, — и все сидели в одной комнате). Леша долго чистил (со щедрым применением ненормативной лексики, к чему Ира вынужденно была терпима) первых разработчиков и говорил, что ошибку устойчиво не воспроизвести.

В 2002 году в Светогорске (3500 сотрудников) проблема встала крайне остро. Удалось записать на CD базу данных с воспризводимой (!!!) ошибкой. Других деталей без согласия этого клиента пока не привожу. R&D утверждал, что в последних версиях 5.1 ошибка исправлена.
НО… (читай выше).

У Vome я настраивал модуль Payroll и только после большого давления (в том числе Фроловой) сделал отпуска будущих периодов через периодические накопители, так как так и не получил подтверждения, что проблема решена.

Теперь по-существу:

Пропадают накопители примерно у 0.2% (+1%-0.2%) сотруднико-месяцев, для 1000 сотрудников это до 10 человек в месяц, в среднем примерно 2 человека (если не так — скажите). Как правило это сотрудники, у которых расчитывались больничный лист или отпуск. Особо грешили на команду U10 и U11, но у вас я ее поубирал (проверьте).

За неимением лучшего Шарапов советует восстановить накопители. Это действительно помогает, но только если это удается сделать.

Операция состоит в выполнении двух действий из
Зарплата\Прочие функции\Операции с периодическими накопителями: 1. Удаление периодических накопителей. 2. Обновление периодических накопителей. Именно строго в таком порядке, для всех ТЗ и всех накопителей и строго для одного и того же периода (обычно последний месяц или год). Каждая из этих операций выполняется по моей оценке в квадратичной зависимости от числа человеко-месяцев статистики и рано или поздно (со второго года и второй тысячи человек) становится проблематичной по времени и по памяти. для 2500 человек и 3-х лет не хватило ночи и 2 гигабайт диска (она не освобождает память, а только увеличивает, предположительно для сортировки). И еще на закуску: каждая из этих двух операций выполняется в два этапа, равных по времени, и на первом этапе нет никакой трассировки — просто кажется, что программа зависла. Кстати время выполнения мало зависит от выборки: хоть один месяц, хоть все, хоть один сотрудник, хоть все, — максимум выигрыша во времени: в 2 раза.

Как найти, у кого они пропали.

Отчет из модуля это не покажет, так как ошибка в РА34, а отчеты его не используют. Открывая РА34 другими средствами нужно иметь ввиду, что искать надо не ноль, а отсутствие записей с этой датой у какого-либо неуволенного сотрудника. Это благодаря тому факту, что при отсутствии ошибки хоть какой-то накопитель, да присутствует (заработок для среднего, рабочее время и т.п.).

Как исправить.

1. В тестовой компании открыть модуль Payroll и перенести туда настройку (особенно файл РА03 должен быть последней версии).
2. Передать ошибочные лицевые счета из основной компании в эту тестовую (в компании-экспортере: Зарплата\Прочие функции\Копирование/перемещение сотрудников\перемещение сотрудников).
3. Провести в тестовой компании восстановление периодических накопителей.
4. Вернуть лицевые счета в основную компанию.

И да поможет вам Бог.

REBUS
Заслуженный форумщик

Зарегистрирован: 07.12.2005
Сообщения: 87
Откуда: Астана

Добавлено: 14.09.2007 13:21 Заголовок сообщения:

Игорь Голиков писал(а):
Периодических накопителей только 50, а не 90.


Вопрос на засыпку:
Если в Scala (версия 5.1) не хватает накопителей 50-ти.
то больше никак не получится? Не настраивается?
_________________
Rebus

Игорь Голиков
Главный форумщик

Зарегистрирован: 21.09.2004
Сообщения: 284
Откуда: Свято-Петроград

Добавлено: 15.09.2007 19:29 Заголовок сообщения:

REBUS писал(а):
Вопрос на засыпку: Если в Scala (версия 5.1) не хватает накопителей 50-ти. то больше никак не получится? Не настраивается?

Периодических накопителей только 50. Для преодоления этого ограничения используются только нестандартные методы, такие как "упаковка в 20 символов двух и более значений (например времени и денежной суммы), а также такой крайний метод, как бережливость…