0
Отвечен

Денежная компенсация за молоко

Ольга Лукинцова 2 года назад в Расчеты начислений и удержаний / Алгоритмы обновлен Гашков Николай (Эксперт) 2 года назад 3

Добрый вечер. Нужен расчет денежной компенсации за молоко, ранее эта тема уже поднималась. Мы воспользовались вашими предложениями, однако программа умножает цену молока  не на отработанные дни по табелю, а на норму дней в месяце



(У нас есть вид 285 Питание, у него алгоритм 185. Надо немного модифицировать этот алгоритм. Сделать свой алгоритм 985 (см. ниже). Переписать его в файл Script\ User\ USALG.S. В таблице входимости у вида 285 поставить алгоритм 985. В ЛС заводите вид 285, ставите в БЗ сумму 29. Программа считает число отработанных дней и умножает их на 29.

//оплата за молоко: Сумма компенсации=БЗ*РВ по табелю

UsAlg985(&info,&r)

{

var n3=dney_v_tab("НПС",calm,info.z1,info.z2);

r[2]=norm(1)-n3;

char t[20];

if((info.c=korrv(r,t,0,info.h,flagrow,jf)) != 1)

return code_ReturnCode;

info.n1=r[2]*info.bz;

if(FL_V_ALG && uprc != NO_SCREEN)

{

infolist.add_record("Норма",norm(1));

infolist.add_record("Прогулы, Справки, Нераб.",n3);

infolist.add_record("Рабочие дни",r[2]);

infolist.add_record("На питание",info.bz);

infolist.add_record("Результат",info.n1);

}

return code_Break;

}

Image 6272

ХОРОШО, МНЕ ПОНРАВИЛОСЬ
Оценка удовлетворенности от Ольга Лукинцова 2 года назад
+1

Чтобы цена молока умножалась на отработанные дни по табелю алгоритм д.б. таким

UsAlg985(&info,&r)
{
r[2]=dney_v_tab(rsimv,calm,info.z1,info.z2);
info.n1=r[2]*info.bz;
if(FL_V_ALG && uprc != NO_SCREEN)
{
infolist.add_record("Отработано дней",r[2]);
infolist.add_record("Стоимость молока",info.bz);
infolist.add_record("Результат",info.n1);
}
return code_Break;
}

Но можно ещё проще - для вида "денежная компенсация за молоко" использовать алгоритм 1 с параметрами:

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