declare lvbbid00 BB_FR3BB0.BBID00%TYPE; lvcount0 number(5); lvxtdm00 XT_XTMK00.XTDM00%TYPE; lvbbname BB_FR3BB0.BBNAME%TYPE; lvmblx00 BB_FR3BB0.MBLX00%TYPE; lvsqllx0 BB_FR3BB0.SQLLX0%TYPE; lvcjczy0 BB_FR3BB0.CJCZY0%TYPE; lvbbbh00 BB_FR3BB0.BBBH00%TYPE; lvzt0000 BB_FR3BB0.ZT0000%TYPE; lvbblxmc BB_MBLX00.MBMC00%TYPE; lvyclpro BB_FR3BB0.YCLPRO%TYPE; Begin select 259 into lvbbid00 from dual ; select '0' into lvxtdm00 from dual ; select '临床科室_科室执行收入统计' into lvbbname from dual; select 0 into lvsqllx0 from dual ; select '郑云莺' into lvcjczy0 from dual ; select '7001' into lvbbbh00 from dual ; select '0' into lvzt0000 from dual ; select '门诊报表' into lvbblxmc from dual ; select 'SP_SF_MZKSSR_TJ0000' into lvyclpro from dual ; select count(*) into lvcount0 from BB_FR3BB0 WHERE BBNAME=lvbbname; if lvcount0>0 then select BBID00 INTO lvbbid00 from BB_FR3BB0 WHERE BBNAME=lvbbname; else select SQ_BB_FR3BB0_BBID00.nextval into lvbbid00 from dual; end if; select count(*) into lvcount0 from BB_MBLX00 where MBMC00=lvbblxmc ; if lvcount0>0 then select MBLX00 INTO lvmblx00 from BB_MBLX00 WHERE MBMC00=lvbblxmc ; else select SQ_BB_MBLX00_MBLX00.nextval into lvmblx00 from dual; Insert into BB_MBLX00 (MBLX00, MBBH00, MBMC00) values(lvmblx00,'000000',lvbblxmc); end if; delete TEMP_BBID00; insert into TEMP_BBID00(BBID00) values(lvbbid00); delete BB_FR3BB0 where BBID00=lvbbid00; insert into BB_FR3BB0(BBID00,BBNAME,MBLX00,CJCZY0,CRDATE,SQLLX0,BBBH00,ZT0000,YCLPRO) values(lvbbid00,lvbbname,lvmblx00,lvcjczy0,to_char(sysdate,'YYYYMMDD'),lvsqllx0,lvbbbh00,lvzt0000,lvyclpro); delete XT_XTMK00 where XTDM00=lvxtdm00 and trim(MKDM00)=trim(lvxtdm00)||'@'||to_char(lvbbid00); insert into XT_XTMK00(MKDM00,MKNBMC,MKWBMC,XTDM00) Values(trim(lvxtdm00)||'@'||to_char(lvbbid00),'REPORT',lvbbname,lvxtdm00); -------BB_CSMX00-------- delete BB_CSMX00 where BBID00=lvbbid00; insert into BB_CSMX00 (BBID00, XH0000, CSMC00, CSZLX0, CSBJLX, CSZSQL,NAME00,CSWBMC,SFXTCS,WBXH00) values(lvbbid00,SQ_BB_CSMX00_XH0000.nextval,'开始日期',1,3,'','SELECT B.ZWXM00,C.XMMC00,A.JE0000 FROM BM_KSSRT','开始日期','0',1); insert into BB_CSMX00 (BBID00, XH0000, CSMC00, CSZLX0, CSBJLX, CSZSQL,NAME00,CSWBMC,SFXTCS,WBXH00) values(lvbbid00,SQ_BB_CSMX00_XH0000.nextval,'结束日期',1,3,'','SELECT B.ZWXM00,C.XMMC00,A.JE0000 FROM BM_KSSRT','结束日期','0',2); insert into BB_CSMX00 (BBID00, XH0000, CSMC00, CSZLX0, CSBJLX, CSZSQL,NAME00,CSWBMC,SFXTCS,WBXH00) values(lvbbid00,SQ_BB_CSMX00_XH0000.nextval,'执行科室',1,1,'userDepid','SELECT B.ZWXM00,C.XMMC00,A.JE0000 FROM BM_KSSRT','执行科室','1',3); insert into BB_CSMX00 (BBID00, XH0000, CSMC00, CSZLX0, CSBJLX, CSZSQL,NAME00,CSWBMC,SFXTCS,WBXH00) values(lvbbid00,SQ_BB_CSMX00_XH0000.nextval,'AD_ID0000',1,1,'','SELECT B.ZWXM00,C.XMMC00,A.JE0000 FROM BM_KSSRT','AD_ID0000','2',4); insert into BB_CSMX00 (BBID00, XH0000, CSMC00, CSZLX0, CSBJLX, CSZSQL,NAME00,CSWBMC,SFXTCS,WBXH00) values(lvbbid00,SQ_BB_CSMX00_XH0000.nextval,'医生',1,5,'select zwxm00,ygbh00,pysm00,wbsm00 from VW_ZH_YGBM00 ','SELECT B.ZWXM00,C.XMMC00,A.JE0000 FROM BM_KSSRT','医生','0',5); -------BB_YCLPCS--------- delete BB_YCLPCS where BBID00=lvbbid00; insert into BB_YCLPCS(BBID00,XH0000,CSMC00,CSLX00,OUTBZ0,CSZ000) Values(lvbbid00,0,'AS_KSRQ00','CHAR','IN',':开始日期'); insert into BB_YCLPCS(BBID00,XH0000,CSMC00,CSLX00,OUTBZ0,CSZ000) Values(lvbbid00,1,'AS_JSRQ00','CHAR','IN',':结束日期'); insert into BB_YCLPCS(BBID00,XH0000,CSMC00,CSLX00,OUTBZ0,CSZ000) Values(lvbbid00,2,'AS_TJLX00','CHAR','IN','3'); insert into BB_YCLPCS(BBID00,XH0000,CSMC00,CSLX00,OUTBZ0,CSZ000) Values(lvbbid00,3,'AS_KDKS00','CHAR','IN','0'); insert into BB_YCLPCS(BBID00,XH0000,CSMC00,CSLX00,OUTBZ0,CSZ000) Values(lvbbid00,4,'AS_ZXKS00','CHAR','IN',':执行科室'); insert into BB_YCLPCS(BBID00,XH0000,CSMC00,CSLX00,OUTBZ0,CSZ000) Values(lvbbid00,5,'AD_ID0000','CHAR','IN/OUT',''); -------BB_SQL000-------- delete BB_SQL000 where BBID00=lvbbid00; insert into BB_SQL000(BBID00,XH0000,SQL000) values (lvbbid00,SQ_BB_SQL000_XH0000.nextval,'SELECT B.ZWXM00,C.XMMC00,A.JE0000 ,A.SJ0003 FROM BM_KSSRTJ A,BM_YGBM00 B,BM_FPXM00 C WHERE A.SJ0001=B.YGBH00 AND A.SJ0002=C.FPXMID AND ID0000=:AD_ID0000 AND (0=:医生 OR SJ0001=:医生) ORDER BY A.SJ0001,B.ZWXM00,A.SJ0002 '); end ; ----end---- update BB_FR3BB0 SET BBDATA=:bbdata where BBID00=(select BBID00 from TEMP_BBID00)