-- 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"),! } }