R473PRICE WO SUPPL
Материал из Фабиус wiki
Версия от 15:53, 14 июня 2017; Hisava (обсуждение | вклад)
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