| 1234567891011121314151617181920212223 |
- -- BS_HISSyncConfig 增加费用明细同步开关 FeeFlag
- -- 执行前请先备份 BS_HISSyncConfig(备份见 openspec/changes/his-inpatient-fee-sync/db/backup_bs_hissyncconfig.md)
- -- 前置:User.BSHISSyncConfig 类已增加 FeeFlag 属性并编译
- -- 1. 增加列(若已存在会报错,可忽略该错误继续执行)
- &sql(ALTER TABLE BS_HISSyncConfig ADD COLUMN FeeFlag VARCHAR(10))
- WRITE "ADD COLUMN SQLCODE="_SQLCODE,!
- -- 2. 存量配置行回填默认值 Y
- &sql(UPDATE BS_HISSyncConfig SET FeeFlag='Y' WHERE FeeFlag IS NULL OR FeeFlag='')
- WRITE "BACKFILL SQLCODE="_SQLCODE_" ROWS="_%ROWCOUNT,!
- -- 查询验证
- WRITE "=== BS_HISSyncConfig 费用明细同步开关 ===",!
- SET stmt=##class(%SQL.Statement).%New()
- SET prepSC=stmt.%Prepare("SELECT ID,HospCode,SynFlag,WarningFlag,FeeFlag FROM BS_HISSyncConfig ORDER BY ID")
- IF $$$ISERR(prepSC) { WRITE "SQL准备失败:"_$System.Status.GetErrorText(prepSC,"cn"),! }
- ELSE {
- SET rslt=stmt.%Execute()
- WHILE rslt.%Next() {
- WRITE "ID="_rslt.%Get("ID")_" HospCode="_rslt.%Get("HospCode")_" SynFlag="_rslt.%Get("SynFlag")_" WarningFlag="_rslt.%Get("WarningFlag")_" FeeFlag="_rslt.%Get("FeeFlag"),!
- }
- }
|