Назначение сотрудника на заданную дату

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Irina_
Местный житель
Сообщения: 554
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Назначение сотрудника на заданную дату

Сообщение Irina_ »

Здравствуйте. Нужно определить назначение сотрудника на определенную дату. У сотрудника на эту дату может быть основное назначение и 1 или более внутренних совмещений, на каждое из которых открыт свой л/сч в з/п. Нужно, зная LSCHET.NREC, найти на заданную дату APPOINTMENTS.NREC . Возможно есть какая-то готовая функция. Буду очень благодарна за рекомендации.
P.S. Это нужно для определения количества занимаемых ставок, которое можно взять из назначения. Функция GetNumStav_OnDate из AppFuncs.vih увы не подходит, т.к. работает с PERSONS.NREC, т.е. только с основным назначением, на которое заведена карточка, а мне надо и внутренние совмещения.
RAJAH
Местный житель
Сообщения: 932
Зарегистрирован: 18 фев 2008, 12:49

Re: Назначение сотрудника на заданную дату

Сообщение RAJAH »

Функция обычно возвращает одно значение, а вам, судя по всему, нужно получить множество APPOINTMENTS.NREC. Всегда можно написать свой запрос, который будет даже эффективнее функции.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Назначение сотрудника на заданную дату

Сообщение edward_K »

lschet.nrec == Appointments.cAddNrec2
перчить и солить по вкусу.
Irina_
Местный житель
Сообщения: 554
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Назначение сотрудника на заданную дату

Сообщение Irina_ »

RAJAN, мне и надо было получить на заданную дату одно APPOINTMENTS.NREC для каждого л/сч сотрудника, открытого на заданную дату. Я надеялась, что есть функции не только для основного назначения, но и для совмещения. Просто не хотелось возиться с запросом. Но пришлось. Все получилось, только есть проблема с несколькими сотрудниками, которые на указанную дату находились в отпуске по уходу за ребенком до 3 лет. В APPOINTMENTS у них оказались все записи с заполненной датой ухода. И количество ставок по ним я получила = 0. Не знаю, правильно ли это. Или же в таком случае надо брать размер ставки из последней записи в назначениях по л/сч.

Спасибо всем.
smmmmm
Посетитель
Сообщения: 35
Зарегистрирован: 24 июн 2014, 15:48

Re: Назначение сотрудника на заданную дату

Сообщение smmmmm »

Добрый день, уважаемые.
Помогите, пожалуйста, у меня 2 вопроса:
1) как найти записи в appointments, соответствующие внутренним совместительствам?
2) модуль Зарплата -> документы -> лицевые счета -> смежные данные -> расчёт зар. платы -> размер годового дохода -> с пред. места работы -> основной налог ---- вот этот основной налог лежит в prvidopl.podnal, но там лежит их много, а нам надо только "с пред. места работы"
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Назначение сотрудника на заданную дату

Сообщение edward_K »

Так и не научились создавать тему - это всем доступно :(
1. Lprizn=3
2. Есть журнал + в фейсе Ctrl+F4 - getifccurrentfieldname - приводите здесь все что вернет. Здесь за отбор отвечает prvidopl.choice
Посмотреть можно еще в money.ccm - он у вас есть в нескольких архивах в папке frm, ест. лучше искать самый свежий

Код: Выделить всё

//--------------------------------------------------------------------------------
//                                                            ВЫПЛАТЫ МЕЖПЕРИОДА
//--------------------------------------------------------------------------------
// [p]ayment [c]odes

// выплаты текущего периода и проч.
pcCharge              = 0;  // выплаты текущего периода
pcDeduction           = 1;  // удержания
pcAgreement           = 2;  // договоры подряда
pcPremium             = 4;  // премия с учетом КТУ
pcSalary              = 5;  // зарплата с учетом КТУ
pcWayBill             = 6;  // путевые листы
pcSumPaidOutReturn    = 7;  // возврат подотчетных сумм
pcCurrentVacation     = 8;  // матпомощь к текущему отпуску
pcWelfare             = 9;  // матпомощь в межпериод
pcImported            = 10; // импортированные суммы
pcArchiveVacation     = 11; // матпомощь к архивному отпуску
pcInverceSalary       = 17; // зарплата от обратного
pcCostSharing         = 18; // распределение затрат
pcOverDraft           = 19; // превышение норм командировочных расходов

// Диапазон значений для региональных доработок (промежуточные значения не занимать!)
pcPartnersRangeLow    = 51; // нижнее допустимое значение для партнеров
pcPartnersRangeHigh   = 59; // верхнее допустимое значение для партнеров

RasPlatCol            = 61;

pcFuturePeriodDelimiter = 80; // разделитель для определения выплат текущего и будущего периодов

// выплаты будущего периода и проч.
pcSys_Dog_Future      = 88; // договора подряда будущего периода
pcSys_Uder_Future     = 89; // удержания будущего периода
pcOveralls            = 90; // спецодежда
pcIncomeTax           = 97; // подоходный налог с прошлого места работы
pcPastYearIncome      = 98; // доход, перенесенный с прошлого года
pcFuturePeriodCharge  = 99; // выплаты будущего периода
pcFutureVacation      = 112;  // матпомощь к будущему отпуску

pcCostsAssignmentCodes  = 200; // коды отнесения затрат
pcAccountingAlternation = 201; // настройки замены ШПЗ
pcCostsSharingTemplates = 202; // шаблоны настроек распределения затрат

pcArchCharge            = 300;  // выплаты архивного периода
pcArchDeduction         = 301;  // удержания архивного периода
pcArchAgreement         = 302;  // договоры подряда архивного периода
pcArchPremium           = 304;  // премия с учетом КТУ архивного периода

// Диапазон "архивных" значений для региональных доработок (промежуточные значения не занимать!)
pcArchPartnersRangeLow  = 351; // нижнее допустимое значение для партнеров
pcArchPartnersRangeHigh = 359; // верхнее допустимое значение для партнеров

P.S. К программированию это как то мало имеет отношение. Не будете стараться - буду удалять ваши сообщения без объяснения причин.
smmmmm
Посетитель
Сообщения: 35
Зарегистрирован: 24 июн 2014, 15:48

Re: Назначение сотрудника на заданную дату

Сообщение smmmmm »

edward_K писал(а):Так и не научились создавать тему - это всем доступно :(
1. Lprizn=3
2. Есть журнал + в фейсе Ctrl+F4 - getifccurrentfieldname - приводите здесь все что вернет. Здесь за отбор отвечает prvidopl.choice
Посмотреть можно еще в money.ccm - он у вас есть в нескольких архивах в папке frm, ест. лучше искать самый свежий

Код: Выделить всё

//--------------------------------------------------------------------------------
//                                                            ВЫПЛАТЫ МЕЖПЕРИОДА
//--------------------------------------------------------------------------------
// [p]ayment [c]odes

// выплаты текущего периода и проч.
pcCharge              = 0;  // выплаты текущего периода
pcDeduction           = 1;  // удержания
pcAgreement           = 2;  // договоры подряда
pcPremium             = 4;  // премия с учетом КТУ
pcSalary              = 5;  // зарплата с учетом КТУ
pcWayBill             = 6;  // путевые листы
pcSumPaidOutReturn    = 7;  // возврат подотчетных сумм
pcCurrentVacation     = 8;  // матпомощь к текущему отпуску
pcWelfare             = 9;  // матпомощь в межпериод
pcImported            = 10; // импортированные суммы
pcArchiveVacation     = 11; // матпомощь к архивному отпуску
pcInverceSalary       = 17; // зарплата от обратного
pcCostSharing         = 18; // распределение затрат
pcOverDraft           = 19; // превышение норм командировочных расходов

// Диапазон значений для региональных доработок (промежуточные значения не занимать!)
pcPartnersRangeLow    = 51; // нижнее допустимое значение для партнеров
pcPartnersRangeHigh   = 59; // верхнее допустимое значение для партнеров

RasPlatCol            = 61;

pcFuturePeriodDelimiter = 80; // разделитель для определения выплат текущего и будущего периодов

// выплаты будущего периода и проч.
pcSys_Dog_Future      = 88; // договора подряда будущего периода
pcSys_Uder_Future     = 89; // удержания будущего периода
pcOveralls            = 90; // спецодежда
pcIncomeTax           = 97; // подоходный налог с прошлого места работы
pcPastYearIncome      = 98; // доход, перенесенный с прошлого года
pcFuturePeriodCharge  = 99; // выплаты будущего периода
pcFutureVacation      = 112;  // матпомощь к будущему отпуску

pcCostsAssignmentCodes  = 200; // коды отнесения затрат
pcAccountingAlternation = 201; // настройки замены ШПЗ
pcCostsSharingTemplates = 202; // шаблоны настроек распределения затрат

pcArchCharge            = 300;  // выплаты архивного периода
pcArchDeduction         = 301;  // удержания архивного периода
pcArchAgreement         = 302;  // договоры подряда архивного периода
pcArchPremium           = 304;  // премия с учетом КТУ архивного периода

// Диапазон "архивных" значений для региональных доработок (промежуточные значения не занимать!)
pcArchPartnersRangeLow  = 351; // нижнее допустимое значение для партнеров
pcArchPartnersRangeHigh = 359; // верхнее допустимое значение для партнеров

P.S. К программированию это как то мало имеет отношение. Не будете стараться - буду удалять ваши сообщения без объяснения причин.
Спасибо за ответ! Тему вроде соответствующую выбрал, меня тоже связь лиц. счетов и назначений интересует.
По поводу lprizn: уже нашёл - http://www.tyumbit.ru/gal_forum/viewtop ... nts#p13325
За prvidopl.choice - отдельное спасибо.
Постскриптум не совсем понятен.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Назначение сотрудника на заданную дату

Сообщение edward_K »

Если не уверены, что вопрос полностью укладывается в тему, то создаете новую. Не надо кидаться сообщениями куда попало. Здесь у вас первая часть вопроса еще как то на 1 процент подходит(в том смысле что по назначениям), а вторая вообще не в тему. Если вопросы очень разные(как здесь), лучше создайте 2 темы. Народ часто смотрит только на заголовки, и только модераторы просматривают все.
smmmmm
Посетитель
Сообщения: 35
Зарегистрирован: 24 июн 2014, 15:48

Re: Назначение сотрудника на заданную дату

Сообщение smmmmm »

edward_K писал(а):Если не уверены, что вопрос полностью укладывается в тему, то создаете новую. Не надо кидаться сообщениями куда попало. Здесь у вас первая часть вопроса еще как то на 1 процент подходит(в том смысле что по назначениям), а вторая вообще не в тему. Если вопросы очень разные(как здесь), лучше создайте 2 темы. Народ часто смотрит только на заголовки, и только модераторы просматривают все.
Учту на будущее...
Ответить