/* Formatted on 02-二月-2026 16:59:23 (QP5 v5.206) */ -- Start of DDL Script for View SD_HOSPITAL.VW_PY_BRCFMX -- Generated 02-二月-2026 16:59:23 from SD_HOSPITAL@GXYY -- Drop the old instance of VW_PY_BRCFMX DROP VIEW sd_hospital.vw_py_brcfmx / CREATE OR REPLACE VIEW sd_hospital.vw_py_brcfmx ( cflsh0, yfbmbh, ghid00, ghh000, brid00, brxm00, xb0000, csrq00, djh000, ysgzh0, ysxm00, ssks00, ghks00, zyts00, ypdlbh, cfxz00, cfzt00, fjfdjh, czy000, fhr000, pfr000, fhr001, fyr000, cfid00, ypnm00, ypmc00, ypgg00, gjdj00, lsdj00, pfdj00, ypyfmc, sfzby0, pcmc00, csl000, jldw00, yysj00, yysjdw, yfsmmc, zb0000, zjyfmc, xmyfmc, ypzsl0, cfdw00, ypzl00, hjje00, sfzb00, cxcsl0, cxzsl0, iron00, fylbmc, ypmcqb, pslbmc, ghlbmc, pcsm00, ickmh0, brblh0, jjsl00 ) AS SELECT a.cflsh0, --处方流水号 a.yfbmbh, --药房部门编号 a.ghid00, --病人挂号流水号 a.ghh000, --挂号号 a.brid00, --病人ID号 a.brxm00, --病人姓名 a.xb0000, --性别 a.csrq00, --出生日期 a.djh000, --收费单据号 a.ysgzh0, --医师工作号 a.ysxm00, --医师姓名 a.ssks00, --所属科室(医师) a.ghks00, --开方科室(病人) a.zyts00, --中药贴数 a.ypdlbh, --药品大类编号 ''0''西药,''2''草药''1''成药 a.cfxz00, --处方性质 :毒、麻、神经药品标志 ''1''毒''2''麻''3''神经 a.cfzt00, --处方状态:0未记账,1已记账,2已发药,3作废''4''需要审核''5''退药(负方) ''6''退费(负方) a.fjfdjh, --附加费收费单据号 a.czy000, --操作员 a.fhr000, --审核人 a.pfr000, --配方人 a.fhr001, --复核人(待配->待发) a.fyr000, --发药人 b.cfid00, --处方ID号 b.ypnm00, --药品内码 b.ypmc00, --药品名称 b.ypgg00, --规格 b.gjdj00, --购进单价(入库单位) b.lsdj00, --零售单价(处方单位) b.pfdj00, --批发单价(入库单位) b.ypyfmc, --药品用法名称 b.sfzby0, --是否自备药''Y''是''N''否 b.pcmc00, --频次名称 TRIM ( DECODE ( b.csl000, NULL, '', 0, '', DECODE (SUBSTR (ABS (b.csl000), 1, 1), '.', '0', '') || TO_CHAR (b.csl000))) csl000, --次数量(剂量单位) DECODE (b.csl000, NULL, '', b.jldw00) jldw00, --剂量单位 b.yysj00, --用药时间数 b.yysjdw, --时间单位(天或小时) b.yfsmmc, --用法说明名称, 对应BM_YPYFSM表 DECODE (b.zb0000, '0', NULL, b.zb0000), --组别 b.zjyfmc, --中药整剂用法名称 b.xmyfmc, --中药细目用法名称 b.ypzsl0, --药品总数量(处方单位)(乘以贴数后) b.cfdw00, --处方单位 SUBSTR (sf_yf_getypkczlxx (b.ypzsl0 * b.zhl000, 2, c.k2j000, c.zjjl2j, c.kcdw00, c.zjjldw, c.jldw00), 1, 10) ypzl00, --药品总量 b.hjje00, --合计金额 DECODE (b.sfzby0, 'Y', '(自备)', '') sfzb00, --是否自备 DECODE (b.zcxsl0, 0, NULL, '(退' || TO_CHAR (b.zcxsl0 / a.zyts00) || b.cfdw00 || ')') cxcsl0, DECODE (b.zcxsl0, 0, NULL, '(退' || TO_CHAR (b.zcxsl0) || b.cfdw00 || ')') cxzsl0, (SELECT iron00 FROM iron_cfmx00 WHERE cflsh0 = b.cflsh0 AND cfid00 = b.cfid00 AND ROWNUM = 1) iron00, SUBSTR (sf_yf_fhmzcfypjcxx (b.cfid00, '1'), 1, 50) fylbmc, b.ypmc00 AS ypmcqb, --药品名称 (SELECT psmc00 FROM bm_ps0000 WHERE psid00 = b.pslbid AND ROWNUM = 1) AS pslbmc, --皮试类别 DECODE ( (SELECT ghlb00 FROM sf_brxxb0 WHERE ghid00 = a.ghid00 AND ROWNUM = 1), '11', '(便民门诊)','') ghlbmc, (select sm0000 from bm_pc0000 where pcmc00=b.pcmc00), (select kmh000 from ic_yhxx00 where brid00=a.brid00 and zt0000=1), z.brblh0, substr(sf_yf_ypslzh(b.YPZSL0*b.ZHL000,b.YPNM00,3),1,50) JJSL00 from YF_MZCF00 A, YF_MZCFMX B,BM_YD0000 c,bm_pc0000 e,bm_brxxb0 z where A.CFLSH0 = B.CFLSH0 and b.YPNM00=c.YPNM00 and a.brid00=z.brid00 and b.pcmc00=e.pcmc00(+) and not exists (select 1 from BM_XDCFWH where XDYPNM=B.YPNM00) union all select A.CFLSH0, --处方流水号 A.YFBMBH, --药房部门编号 A.GHID00, --病人挂号流水号 A.GHH000, --挂号号 A.BRID00, --病人ID号 A.BRXM00, --病人姓名 A.XB0000, --性别 A.CSRQ00, --出生日期 A.DJH000, --收费单据号 A.YSGZH0, --医师工作号 A.YSXM00, --医师姓名 A.SSKS00, --所属科室(医师) A.GHKS00, --开方科室(病人) A.ZYTS00*SF_PY_XDCFZYTS(a.CFLSH0) ZYTS00, --中药贴数 A.YPDLBH, --药品大类编号 ''0''西药,''2''草药''1''成药 A.CFXZ00, --处方性质 :毒、麻、神经药品标志 ''1''毒''2''麻''3''神经 A.CFZT00, --处方状态:0未记账,1已记账,2已发药,3作废''4''需要审核''5''退药(负方) ''6''退费(负方) A.FJFDJH, --附加费收费单据号 A.CZY000, --操作员 A.FHR000, --审核人 A.PFR000, --配方人 A.FHR001, --复核人(待配->待发) A.FYR000, --发药人 d.MXID00 CFID00, --处方ID号 协定处方组成明细ID c.YPNM00, --药品内码 c.YPMC00, --药品名称 c.YPGG00, --规格 round(d.GJDJ00*(d.ZHXS00/c.K2J000),4), --购进单价 协定处方组成的单位 round(d.LSDJ00*(d.ZHXS00/c.K2J000),4), --零售单价 协定处方组成的单位 null, --批发单价(入库单位) null, --药品用法名称 'N', --是否自备药''Y''是''N''否 null, --频次名称 --trim(decode(b.CSL000,null,'',0,'',decode(substr(abs(b.CSL000*d.YPSL00*d.ZHXS00),1,1),'.','0','')||to_char(round(b.CSL000*d.YPSL00*d.ZHXS00)))) CSL000, --次数量(剂量单位) trim(decode(substr(abs(d.YPSL00*d.ZHXS00),1,1),'.','0','')||to_char(round(d.YPSL00*d.ZHXS00,2))) CSL000, --次数量(剂量单位) --decode(b.CSL000,null,'',c.JLDW00) JLDW00, --剂量单位 c.JLDW00, --剂量单位 null, --用药时间数 null, --时间单位(天或小时) null, --用法说明名称, 对应BM_YPYFSM表 null, --组别 B.ZJYFMC, --中药整剂用法名称 B.XMYFMC, --中药细目用法名称 round(nvl(b.YPZSL0*d.YPSL00*d.ZYTS00,0)) YPZSL0, --药品总数量(处方单位)(乘以贴数后) d.YPDW00, --处方单位 substr(SF_YF_GETYPKCZLXX(round(nvl(b.YPZSL0*d.YPSL00*d.ZYTS00,0)*d.ZHXS00),2,c.K2J000,c.ZJJL2J,c.KCDW00,c.ZJJLDW,c.JLDW00),1,10) YPZL00, --药品总量 round(nvl(b.YPZSL0*d.YPSL00*d.ZYTS00,0)*d.ZHXS00*d.LSDJ00/c.K2J000,2) HJJE00, --合计金额 '' SFZB00,--是否自备 decode(b.ZCXSL0,0,null,'(退'||to_char(nvl(b.ZCXSL0*d.YPSL00*d.ZYTS00,0)/a.ZYTS00)||d.YPDW00||')') CXCSL0, decode(b.ZCXSL0,0,null,'(退'||to_char(nvl(b.ZCXSL0*d.YPSL00*d.ZYTS00,0))||d.YPDW00||')') CXZSL0, (select IRON00 from IRON_CFMX00 where CFLSH0=B.CFLSH0 and CFID00=B.CFID00 and rownum=1) IRON00, substr(SF_YF_FHMZCFYPJCXX(B.CFID00,'1'),1,50) FYLBMC, B.YPMC00 as YPMCQB, --药品名称 null, --皮试类别 decode((select ghlb00 from sf_brxxb0 where ghid00=a.ghid00 and rownum=1),'11','(便民门诊)','') ghlbmc, (select sm0000 from bm_pc0000 where pcmc00=b.pcmc00), (select kmh000 from ic_yhxx00 where brid00=a.brid00 and zt0000=1), z.brblh0, substr(sf_yf_ypslzh(b.YPZSL0*b.ZHL000,b.YPNM00,3),1,50) JJSL00 from YF_MZCF00 A, YF_MZCFMX B,BM_YD0000 c,BM_XDCFWH d,bm_pc0000 e,bm_brxxb0 z where A.CFLSH0 = B.CFLSH0 and b.YPNM00=d.XDYPNM and a.brid00=z.brid00 and d.MXYPNM=c.YPNM00 and exists (select 1 from BM_XDCFWH where XDYPNM=B.YPNM00) / -- End of DDL Script for View SD_HOSPITAL.VW_PY_BRCFMX