...
Выполните следующий скрипт:
Блок кода |
---|
declare vLDR_DRAFT_ID number; vLDR_CMD_ID number; vMessage varchar2(2000):=null; vInfo VARCHAR2(4000); vStatus number; vStatusOk number := 1; begin vLDR_DRAFT_ID :=to_number('&IdFromldr_draft_trn'); IF vLDR_DRAFT_ID IS NULL THEN --zzz_EX(' Заполните значение идентификатора платежа vLDR_DRAFT_ID'); dbms_output.put_line ('Идентификатор не указан. Будут загружены все не загруженные платежи'); end if; for cur in (select ldt.id,ldt.trade_date,ldt.status from ldr_draft_trn ldt where (ldt.id = vLDR_DRAFT_ID or vLDR_DRAFT_ID is null)) loop vStatus := cur.status; vLDR_DRAFT_ID := cur.id; -- если загружаем все что не были загружены IF cur.statusvStatus !=1 vStatusOk then pkg_ldr_trn_pre.proc_ldr_trn_job(pid=>vLDR_DRAFT_ID,ptradedatedb=>cur.trade_date,ptradedatede=>cur.trade_date,puserid=>-1,pdatetype=>'tradedate',ploadrecswitherror=>'True'); END IF; IF cur.status !=1 then select max(message_) into vMessage from ldr_draft_trn where id = vLDR_DRAFT_ID and status != vStatusOk; IF vMessage is not null then zzz_ex('Ошибка при загрузке платежа с LDR_DRAFT_ID = '||vLDR_DRAFT_ID||' '||vmessage); END IF; BEGIN select max(id) into vLDR_CMD_ID from ldr_cmd_trn where ldr_draft_trn_id = vLDR_DRAFT_ID and status!=1 vStatusOk; IF vLDR_CMD_ID is not null then pkg_ldr_trn_main.proc_ldr_trn_main_job (vLDR_CMD_ID); select max(message_) into vMessage from ldr_cmd_trn where ldr_draft_trn_id = vLDR_DRAFT_ID and status!= vStatusOk; IF vMessage is not null THEN zzz_ex('Ошибка при загрузке платежа с ldr_cmd_trn.ldr_draft_trn_id = '||vLDR_DRAFT_ID||' '||vmessage); END IF; end if; commit; END; end loop; end; / |
Похожие статьи
...