drop procedure PBH_XE_BPHI_BIEN;
/
create or replace procedure PBH_XE_BPHI_BIEN(
b_oraIn clob,b_nhom out varchar2,b_nv_bh out varchar2,b_bh_tbo out varchar2,
b_md_sd out varchar2,b_ma_sp out varchar2,b_cdich out varchar2,b_goi out varchar2,
b_loai_xe out varchar2,b_nhom_xe out varchar2,b_dong out varchar2,
b_dco out varchar2,b_ttai out number,b_so_cn out number,b_tuoi out number,
b_gia out number,b_ngay_bd out number,b_ngay_kt out number,b_ngay_hl out number,b_loi out varchar2)
AS
b_lenh varchar2(2000); b_c varchar2(500);
begin
-- Dan - Dat gia tri
b_loi:='loi:Loi xu ly bien vao:loi';
b_lenh:=FKH_JS_LENH('nhom,nv_bh,bh_tbo,md_sd,ma_sp,cdich,goi,
loai_xe,nhom_xe,dong,dco,ttai,so_cn,tuoi,gia,ngay_bd,ngay_kt,ngay_hl');
EXECUTE IMMEDIATE b_lenh into b_nhom,b_nv_bh,b_bh_tbo,b_md_sd,b_ma_sp,b_cdich,b_goi,
b_loai_xe,b_nhom_xe,b_dong,b_dco,b_ttai,b_so_cn,b_tuoi,b_gia,b_ngay_bd,b_ngay_kt,b_ngay_hl using b_oraIn;
b_nhom:=PKH_MA_TENl(b_nhom); b_nv_bh:=PKH_MA_TENl(b_nv_bh); b_bh_tbo:=nvl(trim(b_bh_tbo),'C');
b_md_sd:=PKH_MA_TENl(b_md_sd); b_ma_sp:=PKH_MA_TENl(b_ma_sp);
b_cdich:=PKH_MA_TENl(b_cdich); b_goi:=PKH_MA_TENl(b_goi);
b_loai_xe:=PKH_MA_TENl(b_loai_xe); b_nhom_xe:=PKH_MA_TENl(b_nhom_xe);
b_dong:=PKH_MA_TENl(b_dong); b_dco:=PKH_MA_TENl(b_dco);
b_ttai:=nvl(b_ttai,0); b_so_cn:=nvl(b_so_cn,0); b_gia:=nvl(b_gia,0);
b_tuoi:=nvl(b_tuoi,0); b_ngay_bd:=nvl(b_ngay_bd,0); b_ngay_kt:=nvl(b_ngay_kt,30000101);
if b_ngay_bd in(0,30000101) then b_ngay_bd:=PKH_NG_CSO(sysdate); end if;
if b_ngay_kt=0 then b_ngay_kt:=30000101; end if;
if b_ngay_hl is null or b_ngay_hl in(0,30000101) then b_ngay_hl:=PKH_NG_CSO(sysdate); end if;
b_loi:='';
exception when others then if b_loi is null then raise PROGRAM_ERROR; else null; end if;
end;