0
Отвечен

Как автоматически разнести значение в поле КЧ при создании ЛС

Анатолий Русин 5 лет назад в Кадровая функциональность обновлен Гашков Николай (Эксперт) 5 лет назад 8

Добрый день.

При создании нового ЛС (или приёме из КП) поле "Способ учёта в ССЧ" автоматически заполняется значением "1".

Подскажите, пожалуйста, как это применить к полю КЧ, добавленному пользователем?

Необходимо разносить "1" для всех ЛС, пришедших из КП, а не созданных вручную.

Script
На рассмотрении

Добрый день.

Готового варианта нет..., только окольными путями.

А как это будет использоваться?

Не проще такие ЛС создавать в отдельном подразделении?

Такие ЛС и сейчас создаются в отдельном подразделении.

Проблема с выгрузкой сумм в банк - для Челябинвестбанка не требуется номер карты, выгрузка идёт по паспортным данным. Поэтому придумали в КЧ отдельное поле "отправлять в челябинвестбанк", в которое и ставится "1".

По данному полю формируются реестры на выгрузку сумм в банк.


По подразделению в этом случае фильтровать сложно - вдруг у человека несколько исполняемых должностей, и одна из них в "лишнем подразделении".

А в integration.s никак не залезть, чтобы при создании ЛС, пришедшего из КП, сразу ставилось "1" в нужное поле?

В поле chilb что находится?

Я не понял в чем именно проблема с выгрузкой сумм?

В Челябинвестбанке должны получить только те, кто заведен вручную?

В поле chib пользователь ставит "1", если необходимо включать сотрудника в реестр для ЧелябИнвестБанка.

В реестр не должны включаться "лишние люди" - те, у кого нет "1" в поле КЧ.

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

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

Поэтому и нужно для всех ЛС пришедших из КП проставлять автоматически "1" в КЧ.

Можно попробовать такой код:

AfterReadLS(Tn)  //после того как прочитали ЛС
{
    if(kch_from_int("chilb")!=1) //еще не писали
    {
        var ar = IntegrGetAllForLS(Tn); // все объекты интеграции для текущего ЛС, возвращает массив строк  "AOType|MasterId|AmbaId"
        if (!IsArray(ar))
      return; //обьектов  - ничего не делаем
        
        //пишем в к.ч. 1
        kch_in("chilb","1");
    }
}

Но значение будет писаться при каждом чтении ЛС...

>>Но значение будет писаться при каждом чтении ЛС...

Получается, даже тем ЛС, у которых пользователь сотрёт "1" и поставит в соседнее поле "sber" - номер карты Сбербанка, "1" всё равно будет при каждом чтении ЛС восстанавливаться?

Тогда все сотрудники без исключения станут приниматься в реестр на перечисление сумм в ЧелябИнвестБанк. Получается, нужно ещё ставить проверку, что не заполнены поля для трёх других банков, и только тогда записывать "1" в поле "chib"?

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