R473PRICE WO SUPPL — различия между версиями
Материал из Фабиус wiki
Hisava (обсуждение | вклад) м |
Hisava (обсуждение | вклад) м (→Текст программы) |
||
Строка 16: | Строка 16: | ||
Parameters r08_kod, need_date, prc_fld:='OTP_PRICE' | Parameters r08_kod, need_date, prc_fld:='OTP_PRICE' | ||
Local prc_arr:={'OTP_PRICE','PRICE1','PRICE2','PRICE3'}, num:=0, tmp_arr, ss | Local prc_arr:={'OTP_PRICE','PRICE1','PRICE2','PRICE3'}, num:=0, tmp_arr, ss | ||
− | if !Empty(prc_fld); num:=AScan(prc_arr,prc_fld); /*num:=max(num,1);*/ endif | + | if ![[Empty]](prc_fld); num:=AScan(prc_arr,prc_fld); /*num:=max(num,1);*/ endif |
if num!=0; prc_arr:={prc_arr[num]}; endif | if num!=0; prc_arr:={prc_arr[num]}; endif | ||
ss:=ArrAsString(prc_arr) | ss:=ArrAsString(prc_arr) |
Версия 08:28, 15 сентября 2016
R473PRICE_WO_SUPPL - это программа из справочника R266
Возвращает цену по заданной номенклатуре на заданную дату из справочника R473
R473PRICE_WO_SUPPL(<r08_kod>, <need_date>, <prc_fld='OTP_PRICE'>)
Пример
R473PRICE_WO_SUPPL( DANAL2, DATDOC, 'PRICE4' )
Текст программы
//Возвращает цену по заданной номенклатуре на заданную дату - поставщик/договор/прайс не существенны.
Parameters r08_kod, need_date, prc_fld:='OTP_PRICE' Local prc_arr:={'OTP_PRICE','PRICE1','PRICE2','PRICE3'}, num:=0, tmp_arr, ss if !Empty(prc_fld); num:=AScan(prc_arr,prc_fld); /*num:=max(num,1);*/ endif if num!=0; prc_arr:={prc_arr[num]}; endif ss:=ArrAsString(prc_arr) result:=ArrCreate(len(prc_arr),0) tmp_arr:=selectSQLToArr('select R473.VAR_DATE, R473.KOD, '+ss+' from R473, (select MAX(VAR_DATE) VAR_DATE, KOD from '+; '(select VAR_DATE, KOD, '+ss+" from R473 where VAR_DATE<='"+SQLDate(need_date)+"') SS group by KOD) DD "+; 'where R473.KOD='+r08_kod+' and R473.VAR_DATE=DD.VAR_DATE and R473.KOD=DD.KOD', prc_arr, ReflisPath) if len(tmp_arr)!=0 if len(prc_arr)=1; result:=tmp_arr[1,1]; else; result:=tmp_arr[1]; endif elseif len(prc_arr)=1; result:=0 endif