|
Как избежать циклической ссылки?
|
|||
---|---|---|---|
#18+
Здравствуйте! Нужно в зависимости от стажа применить коэф, но для условия в выражении нужна сумма этого же поля. Есть поле "Отпускные" там вводится определенная сумма, в запросе есть вычисляемое поле которое высчитывает сколько получилось оплаченных дней. И надо вставить вычисляемое поле с выражением ОплаченоДн: [Отпускные]/IIf([Sum-ОплДн]>150;IIf(DateDiff("d";[ДатаПриема];Now())+1>3650;[Оклад]/30*2;IIf(DateDiff("d";[ДатаПриема];Now())+1>1825;[Оклад]/30*1,5;[Оклад]/30));Оклад]/30 Если сумма оплаченных дней превышает 150 (5 отпусков по 30 дн) и 10 лет стажа (3650 дней), то при выплате отпускных применяется коэф 2; Если 5 лет стажа (1825 дн) - коэф 1,5. Вот здесь и не могу применить суммирующее значение для условия, так как это получается циклическая ссылка. Думал может как-то копировать из вычисляемого поля результат в поле таблицы, но по этой теме в форуме пишут, что это не есть хорошо.. Подскажите, пж, варианты решения. Прикладываю упрощенный пример. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2019, 03:35 |
|
Как избежать циклической ссылки?
|
|||
---|---|---|---|
#18+
kniga, поясните что такое,в Вашем понимании,оплачиваемые дни-ведь продолжительность отпуска=оплачиваемым дням.Другое дело она может исчисляться в календарных или рабочих днях и эти данные нужны(должны храниться в базе). Уточните этот момент. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2019, 11:51 |
|
Как избежать циклической ссылки?
|
|||
---|---|---|---|
#18+
sdku, На фирме не придерживаемся строгого регламента начисления отпускных. Не учитываем отпускной стаж, как принято у отдела кадров по ТК, можем выдать отпускные наперед, в счет будущего отпуска, можем недодать временно, из-за отсутствия ликвидности, например. Дни отпуска 30 календарных дней. Кол-во дней отпуска высчитываются разницей дат+1 день в поле таблицы. Процедура такая: По заявлению в форму вносятся даты, автоматом выходит сколько дней отпуска. Так же в вычисляемом поле появляется сумма к оплате, но так как оплата зависит от стажа, то надо сделать начисляемую сумму зависимой от него. Здесь я и применяю коэф-ты. Прилагаю схему БД ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2019, 13:15 |
|
Как избежать циклической ссылки?
|
|||
---|---|---|---|
#18+
и если точнее, то в зависимости не от самого стажа, а от кол-ва оплаченных отпускных дней эквивалентным 5 или 10 лет стажа. Это потому что у нас бывает, что по сроку стаж для начисления с коэф наступил, а отгуляно отпуска и соответственно получено отпускных меньше. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2019, 13:20 |
|
Как избежать циклической ссылки?
|
|||
---|---|---|---|
#18+
Если еще актуально: Вместо Sum-ОплДн подствьте выражение формирующее это поле: Код: vbnet 1. 2.
(Для создания выражения,возможно,придется использовать Dsum. Как я понимаю, нужен отбор по конкретному сотруднику) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.07.2019, 12:14 |
|
Как избежать циклической ссылки?
|
|||
---|---|---|---|
#18+
kniga...что по сроку стаж для начисления с коэф наступил, а отгуляно отпуска и соответственно получено отпускных меньше. А если сотрудник герой труда и за 10 лет работы ни разу не брал отпуск и отпускные не получал(мало-ли по каким причинам)?-не справедливо,однако. Строить базу (да и основывать систему выплат) на основании размера предыдущих выплат есть,в данном случае, по-моему,не ICE ... |
|||
:
Нравится:
Не нравится:
|
|||
13.07.2019, 12:28 |
|
|
start [/forum/topic.php?fid=45&msg=39836753&tid=1610591]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 146ms |
0 / 0 |