内江市第一人民医院信息科工作记录

来自HououWiki
Hououkira留言 | 贡献2024年1月11日 (四) 07:38的版本
跳转到导航 跳转到搜索

这个页面用来记录平时遇到的问题和解决方法,在后面再次遇到的时候可以作为参考。

软件

门诊

门诊和住院用两张卡,费用转到住院

先将门诊的登记号改为住院的登记号,也就是修改PA_Adm中的PAADM_PAPMI_DR字段。然后将需要修改的门诊发票在门诊收费-收费查询-门诊收据查询中用发票号查找,找到对应的导航号并用下面的查询将其修改为住院的登记号

// 门诊登记号

SELECT * FROM PA_PatMas WHERE PAPMI_No = "{门诊登记号}"

// 门诊登记号id

{门诊登记号id}

// 门诊就诊

SELECT * FROM PA_Adm WHERE PAADM_PAPMI_DR = {门诊登记号id}

// 通过住院号查出住院就诊号

SELECT * FROM DHCWMR_SS.ReceiptLog WHERE MrNo = "{住院号}"

// 住院就诊号id

SELECT * FROM PA_Adm WHERE PAADM_RowID = '8043532'

// 住院登记号id

70751

SELECT * FROM PA_PatMas WHERE PAPMI_RowId1 = 70751

SELECT * FROM PA_Adm WHERE PAADM_PAPMI_DR = 70751

// 更改发票

SELECT * FROM DHC_INVPRT WHERE PRT_Rowid = "发票号"

门诊转住院退费用

在一些情况下,门诊将错误的费用转入了住院,或是有其他异常情况导致门诊已经退费,但需要将住院的费用清除时,可以进行以下步骤:

第一步:

进terminal,使用dhc-app命名空间

// 此global的第一层是常量,第二层是就诊号,第三层是医嘱项ID

k ^DHCOPIPADMCON("OPADMORDER", {就诊号}, '{医嘱项ID}') //

zw ^DHCOPIPADMCON("OPADMORDER",8148017)

第二步:

SELECT OEORI_ItemStat_DR,oeori_billed,* FROM OE_OrdItem WHERE OEORI_RowId IN ("8117942||3")

^DHCOPIPADMCON("OPADMORDER",5205141,"5208331||2")

OEORI_ItemStat_DR是医嘱状态,改为4

oeori_billed是账单状态

第三步:

住院收费安全组中重新生成账单

添加门诊医生权限

  1. 首先为其添加对应门诊的登录科室
  2. 添加指定科室,指定到与登录科室相同的科室,并勾选权限
  3. 切换到demo group,进入挂号分诊-医生默认设置,输入科室和医生,设置其出诊级别,点击更新
  4. 进入医生号别对照,输入科室和医生,号别添加本人号别,如有特殊需求还可添加其他号别,点击增加
  5. 进入排班员权限,添加排班人员(一般为老区曹建,新区王信春),选择相应科室增加该医生
  6. 进入医生站安全组维护,在第九页找到门诊收费(电子票据),点击科室医生设置,选择相应科室增加该医生

住院

修改住院时间

实际上就是修改就诊表的就诊时间,使用这个查询通过住院号查出就诊号:

SELECT * FROM DHCWMR_SS.ReceiptLog WHERE MrNo = "{住院号}"

然后使用这个查询在就诊表中查出对应项目

SELECT * FROM PA_Adm WHERE PAADM_RowID = '{就诊号}'

然后将PAADM_AdmDate调整为指定时间

注意这里还要调整一下医保登记表的时间,以避免结算时出现一些问题

SELECT * FROM INSU_AdmInfo WHERE INADM_AdmDr = '{就诊号}'

如果医生反应有一些病历中的字段时间未发生变化,可以尝试修改这个表中的时间:

SELECT * FROM PA_AdmTransaction WHERE TRANS_ParRef = '{就诊号}'

修改医嘱时间

用下面的查询找到对应医嘱项

SELECT * FROM OE_OrdItem WHERE OEORI_OEORD_ParRef="{医嘱ID}"

OEORI_SttDat,OEORI_SttTim为开始时间,OEORI_Date为当前日期,OEORI_XDate和OEORI_XTime为停止时间

医嘱ID可以在长期或临时医嘱页面向右拉到最后找到

长期或临时医嘱页面卡住,加载不出来

用下面的查询找到对应医嘱项,第一个字段为备注,删除备注里的特殊字符

SELECT OEORI_DepProcNotes,* FROM OE_OrdItem WHERE OEORI_OEORD_ParRef IN (SELECT OEORD_RowId1 FROM OE_order WHERE OEORD_Adm_DR={就诊号})

撤销了已执行医嘱后,还在已处理列表中,仍然不能作废

SELECT OEORI_SeeUser_DR,OEORI_SeeType,OEORI_SeeRemark,OEORI_SeeDate,OEORI_SeeTime ,*FROM OE_OrdItemExt WHERE OEORI_RowId={医嘱项ID}

将前三项置空即可

住院账单异常,有多余的数据

先进入住院收费页面,用病人信息查找出病人的账单,找到有问题的账单,在条目右边找到账单号,然后运行下面的查询

SELECT * FROM DHC_PatientBill WHERE PB_RowId = { 账单号 }

将PB_Adm_Dr改为1即可

HIS

更改登录科室或安全组

登录信息科维护或更高的权限,点击首页,进入基础数据维护-系统管理-用户,在人事ID输入工号或是通过其他信息查询,双击或点击修改打开修改页面,在基本信息可修改登录科室,点击其他登录科室可以新增登录科室,也可在基本信息或其他登录科室设置对应科室的安全组

增删检查检验树

登录demo group安全组,进入基础数据维护-产品组配置-医生站配置-医生站-检查检验树目录维护

  • 要删除的话,因为不能直接删除,可以把对应项目拖进测试文件夹里
  • 要加入的话,先让医生制作对应的医嘱套(也可直接添加医嘱项目和标本)然后选中对应文件夹中,点击增加

医保

报错:请做HIS科室对照

运行下面的查询,把类似的科室的dicbill1和其他项找出来

先SELECT * FROM INSU_DicData WHERE INDID_DicCode LIKE "%{相同类型科室名称}%"

然后再运行下面的查询,并填入新增行的字段,其中INDID_DicCode和INDID_DicDesc匹配报错对话框中提示的两个值,其他字段则填入上面找到的类似科室的值

insert into INSU_DicData(INDID_DicType) values("")

报错:共济交易没有回退时,不允许回退主交易

这是因为共济账户结算失败造成的。去log中找到共济失败的条目,进行冲正即可,交易编号即为对应的门诊/住院结算

医生审核医嘱时提示,医嘱未在......病种目录中

需要将其添加进对应的小目录,虽然现在这个小目录已经不再使用,但是如果在医嘱处没有勾选二类门特,则收费处需要手动选择特病,所以也可以添加一下。

  1. 先在基础数据维护中查出对应的医嘱项目,找到其医嘱代码,例如Y000427
  2. 使用这个查询:SELECT TARI_InsuCode, * FROM DHC_TarItem WHERE TARI_Code = "{医嘱代码}" ,找到其对应的医保代码,例如XA10ADJ136B002020278403
  3. 使用这个查询:SELECT * FROM INSU_DicData WHERE INDID_DicType = "NJATSB",可以查出所有二类门特目录,根据INDID_DicCode找到对应的小目录编号,例如慢性肾功能衰竭的编号为4
  4. 使用这个语句:INSERT INTO INSU_DicData(INDID_DicType) VALUES ("NJATSB+{小目录编号}"),插入新的一行
  5. 使用这个查询:SELECT TOP 10 * FROM INSU_DicData ORDER BY INDID_Rowid DESC,查出最近的记录,手动将刚刚增加的一行的最新记录修改,INDID_DicCode为刚刚查询的医保代码,INDID_DicDesc为其医保名称,可以通过SELECT * FROM INSU_DicData WHERE INDID_DicCode = '{医保代码}',查询在其他目录中出现的相同名称

门诊异常无法完成只能撤销,但是撤销时提示该笔结算之后有其他结算数据,退费之后的发票时又提示有未处理的异常发票请先处理后在退费

造成了一个循环,需要手动先打破一下,根据异常发票导航号在发票表中查询:

SELECT * FROM DHC_INVPRT WHERE PRT_Rowid = '{导航号}'

PRT_Flag会的值应该为TP,将其先改为N,然后进行其他发票的退费,退费完成后改回TP,然后进行门诊异常处理

物资

固定资产添加指定科室

先登录固定资产(物资管理)这个权限,然后进入代码维护-科室位置-设备科室类型,查询出需要设置的科室,将属性字段改为科室

在物资权限中查询科室,下拉框中没有相应的科室

OA

登录OA

可用管理员账户admin,密码admin2019登录OA,或者登录自己的OA,默认密码均为njdyrmyy8888

复原密码或解锁OA

进入系统管理-用户管理-组织和用户管理,点击查询使用工号或其他字段进行查询,找到所属部门,并从列表中进入相应的部门找到对应用户

勾选用户点击修改,点击复原密码或解锁

常用查询

查询医嘱项对应医保代码

SELECT TARI_InsuCode, * FROM DHC_TarItem WHERE TARI_Code = "{医嘱项代码}"

通过住院号查就诊号

SELECT * FROM DHCWMR_SS.ReceiptLog WHERE MrNo = "{住院号}"

查询收入数据

// 分门诊和住院查询指定时间段的不包含耗材的收入数据,并分组统计

SELECT WorkLoad_TarItem_DR->TARI_Code 收费项编码,

       WorkLoad_TarItem_DR->TARI_Desc 收费项名称,

       WorkLoad_TarItem_DR->TARI_ChargeBasis 收费依据,

        CASE WorkLoad_Type WHEN "I" THEN "住院"

              ELSE "门诊" END

              收费类型,

       SUM(WorkLoad_Quantity) 数量,

        WorkLoad_UnitPrice 单价,

        SUM(WorkLoad_TotalPrice) 费用,

        COUNT(*) 次数,

       *

FROM DHC_WorkLoad WHERE WorkLoad_FlagDate>="{start_date}"

AND WorkLoad_FlagDate<="{end_date}"

AND WorkLoad_TarItem_DR->TARI_ChargeBasis IS NOT NULL

AND WorkLoad_TarItem_DR->TARI_Code IN (SELECT TARI_Code FROM DHC_TarItem WHERE TARI_SubCate NOT IN ("16","17","18","19") AND TARI_ActiveFlag ="Y" )

GROUP BY WorkLoad_TarItem_DR->TARI_ChargeBasis,WorkLoad_Type,WorkLoad_UnitPrice;

耗材科室入库数

// 查询各耗材的分科室(不包含库房)的入库数量

SELECT INC_Itm.INCI_Desc 物品名称, INC_Itm.INCI_Code 库存项编码, DHC_OrderLinkTar.OLT_Tariff_DR->TARI_Code 收费项目编码,

DHC_OrderLinkTar.OLT_Tariff_DR->TARI_Desc 收费项目名称, DHC_ItmAddionInfo.INFO_Spec 物品规格, DHC_INTRANS.INTR_INCLB_DR->INCLB_INCIL_ParRef->INCIL_CTLOC_DR->CTLOC_Desc, DHC_INTRANS.INTR_CTUOM_DR->CTUOM_Desc 出库最小单位,

DHC_OrderLinkTar.OLT_Tariff_DR->TARI_UOM->CTUOM_Desc 收费最小单位,

sum(INTR_Qty) 最小单位数量合计, sum(INTR_Amount) 金额合计, DHC_OrderLinkTar.OLT_Tariff_DR->TARI_Rowid

FROM INC_Itm, DHC_OrderLinkTar, DHC_ItmAddionInfo, DHC_INTRANS

WHERE INC_Itm.INCI_OriginalARCIM_DR IS NOT NULL AND INC_Itm.INCI_OriginalARCIM_DR = DHC_OrderLinkTar.OLT_ARCIM_DR

AND INC_Itm.INCI_INCSC_DR -> INCSC_StkType = "M"

AND DHC_ItmAddionInfo.INFO_INCI_DR = INC_Itm.INCI_RowId

AND DHC_INTRANS.INTR_INCI_DR = INC_Itm.INCI_RowId

AND DHC_INTRANS.INTR_Type IN ("G", "T", "K", "D", "A")

AND DHC_INTRANS.INTR_INCLB_DR->INCLB_INCIB_DR->INCIB_No <> 20190310

AND DHC_INTRANS.INTR_INCLB_DR->INCLB_INCIL_ParRef->INCIL_CTLOC_DR->CTLOC_Desc NOT LIKE "%库房%"

AND DHC_INTRANS.INTR_Date BETWEEN "2020-01-01" AND "2022-12-31"

GROUP BY DHC_OrderLinkTar.OLT_Tariff_DR->TARI_Code, DHC_INTRANS.INTR_INCLB_DR->INCLB_INCIL_ParRef->INCIL_CTLOC_DR

查询医疗救助病人

// 查询费用中有医保救助病人的多个医保相关字段

SELECT INSU_AdmInfo.INADM_UserDr, INSU_AdmInfo.INADM_XString5, INSU_AdmInfo.INADM_XString6, INSU_AdmInfo.INADM_InsuId, INSU_AdmInfo.INADM_Center, INSU_AdmInfo.INADM_XString8,

INSU_AdmInfo.INADM_AdmDate, INSU_AdmInfo.INADM_AdmTime, INSU_AdmInfo.INADM_OutDate, INSU_AdmInfo.INADM_OutTime, INSU_AdmInfo.INADM_XString4, INSU_Divide.INPAY_iDate, INSU_Divide.INPAY_bcbxf0, INSU_Divide.INPAY_grzfe0, INSU_Divide.INPAY_InsuPay1, INSU_Divide.INPAY_zhzfe0, INSU_Divide.INPAY_InsuPay2, INSU_Divide.INPAY_InsuPay3, INSU_Divide.INPAY_InsuPay4, INSU_Divide.INPAY_InsuPay5, INSU_Divide.INPAY_InsuPay6, INSU_Divide.INPAY_InsuPay7 FROM INSU_AdmInfo, INSU_Divide WHERE INSU_Divide.INPAY_AdmInfoDr = INSU_AdmInfo.INADM_Rowid AND INSU_Divide.INPAY_sfrq00

BETWEEN "2022-08-01" AND "2022-08-31" AND INPAY_InsuPay4 > 0 AND INPAY_Flag = "I";

查询科室单品结存数

SELECT a.INTR_INCLB_DR->INCLB_INCIL_ParRef->INCIL_CTLOC_DR->CTLOC_Desc 科室,

a.INTR_INCI_DR->INCI_Code 物资代码,

a.INTR_INCLB_DR->INCLB_INCIL_ParRef->INCIL_INCI_ParRef->INCI_Desc 物资名称,

a.INTR_CTUOM_DR->CTUOM_Code 单位,

a.INTR_AveragePrice 价格,

a.INTR_StkQty 结存数,

b.入库数量,

b.转移金额

FROM DHC_INTRANS a,(SELECT max(INTR_RowId) maxid,sum(INTR_Qty)入库数量,sum(INTR_Amount) 转移金额 FROM DHC_INTRANS WHERE INTR_INCLB_DR->INCLB_INCIL_ParRef->INCIL_CTLOC_DR not IN ("712","731""732","733""734","735""736","737") // 不包含库房

and INTR_Date BETWEEN {start_date} AND {end_date} GROUP BY INTR_INCI_DR->INCI_Code, INTR_INCLB_DR->INCLB_INCIL_ParRef->INCIL_CTLOC_DR->CTLOC_Desc)b WHERE a.INTR_RowId=b.maxid

查询病人就诊记录

登录信息科维护或更高的权限,在综合统计查询中点击就诊信息查询,可按身份证号或其他字段查询

查询结算方式

SELECT c.SSUSR_Initials,

b.INPAY_sfrxm0 结算人,

CASE $piece(b.INPAY_Zstr19,"|",2) WHEN "03" THEN "实体卡" ELSE "医保电子凭证" END  结算方式,

count(*),b.INPAY_sfrq00

FROM INSU_AdmInfo a,INSU_Divide b ,SS_User c WHERE a.INADM_Rowid=b.INPAY_AdmInfoDr AND c.SSUSR_RowId=b.INPAY_sUserDr

AND $piece(INADM_XString13,"|",1)!="" AND b.INPAY_Flag="I"

AND b.INPAY_iDate BETWEEN "2023-11-28" AND "2023-12-10" GROUP BY $piece(INADM_XString13,"|",1),b.INPAY_sUserDr,INADM_AdmDate

硬件