--删除旧记录 --delete from Report_Objects where Code='EMR.EMB.000001' --删除脚本内容 IF not EXISTS(SELECT * FROM Report_Objects WHERE code='EMR.EMB.000001') begin --插入 Declare @Report_Id_738 int Exec Core_NewId 'Report_Objects', 'id', @Report_Id_738 out Declare @Report_Id_738_CateID int Set @Report_Id_738_CateID = (select id from Report_Categories where code='EMR.WIN') insert into Report_Objects(ID,Code,Name,Description,Password,CategoryID,xType,Classification,ProductID,ProgramID,ElementID,CreateDate,UpdateDate,ISSUANCEDATE,Config,SetupPath,IsMenu,Enabled,GroupName,Authorized,RefreshInterval) Values(@Report_Id_738, 'EMR.EMB.000001', '病历浏览窗口代码', '医生站,护士长', Null, @Report_Id_738_CateID, 1, 5, 600, 0, Null, '2012-09-19 10:24:39', '2012-11-01 15:39:51', Null, '{ 注释: VAQ1: 病历记录表 VAA1: 病人信息表 CAF1: 病历时限表 Word.GetVar(表名,字段名, 默认值) } //病历 删除 function ShanChu(): Boolean; begin Result := True; end; //病历 修改 function XiuGai: Boolean; begin if HOUserInfo.AAH01 = 0 then Raise ''修改病历时,聘任级别不能设置为[不限]。''; if HOUserInfo.AAH01 = 8 then Raise ''修改病历时,待聘人员不能操作。''; if not (HOUserInfo.AAH01 in [0..5,9]) then Raise ''无效的《聘任职务》代码:''+HOUserInfo.Other(''AAH01'')+'',如有疑问请与管理员联系。''; case Word.GetVar(''VAQ1'', ''VAQ20'', 0) of 2: raise ''病历文件[''+Word.GetVar(''VAQ1'', ''CAD04'', '''')+'']已经归档.''; 3: raise ''连续病历文件[''+Word.GetVar(''VAQ1'', ''CAD04'', '''')+'']仅用于打印浏览.''; 4: raise ''病历文件[''+Word.GetVar(''VAQ1'', ''CAD04'', '''')+'']已经作废.''; end; Result := True; //返回真,允许修改 end; //病历 审阅 function ShenYue(ival:string): Boolean; begin if HOUserInfo.AAH01 = 0 then Raise ''审阅病历时,聘任级别不能设置为[不限]。''; if HOUserInfo.AAH01 = 8 then Raise ''审阅病历时,待聘人员不能操作。''; if Word.GetVar(''VAQ1'', ''BCE01'', 0) = HOUserInfo.EmpId then begin raise ''病历不能由本人审阅。''; end; if ival =''1'' then begin if (word.getVar(''VAA1'',''VAM27'',0)<>HOUserInfo.EmpName ) and (word.getVar(''VAA1'',''VAM31'',0)<>HouserINfo.EmpName) then raise ''该病历只能由病人的主治医师或主任医师审阅。''; end else begin if Word.GetVar(''VAQ1'', ''VAQ17'', 0) <= HOUserInfo.AAH01 then begin raise ''该病历只能由上级医师审阅。''; end; end; if Word.GetVar(''VAQ1'', ''VAQ20'', 0) = 0 then begin raise ''该病历[''+Word.GetVar(''VAQ1'', ''CAD04'', '''')+'']还未完成,需要[''+Word.GetVar(''VAQ1'', ''BCE03A'', '''')+'']签名后才可以审阅。''; end; Result := True; //返回真,允许审阅 end; //病历归档 function GuiDang(): Boolean; begin Result := True; end; //评分 function PingFen(): Boolean; begin Result := True; end; ', Null, 0, 1, Null, 0, Null) end else --更新 begin update Report_Objects set Config='{ 注释: VAQ1: 病历记录表 VAA1: 病人信息表 CAF1: 病历时限表 Word.GetVar(表名,字段名, 默认值) } //病历 删除 function ShanChu(): Boolean; begin Result := True; end; //病历 修改 function XiuGai: Boolean; begin if HOUserInfo.AAH01 = 0 then Raise ''修改病历时,聘任级别不能设置为[不限]。''; if HOUserInfo.AAH01 = 8 then Raise ''修改病历时,待聘人员不能操作。''; if not (HOUserInfo.AAH01 in [0..5,9]) then Raise ''无效的《聘任职务》代码:''+HOUserInfo.Other(''AAH01'')+'',如有疑问请与管理员联系。''; case Word.GetVar(''VAQ1'', ''VAQ20'', 0) of 2: raise ''病历文件[''+Word.GetVar(''VAQ1'', ''CAD04'', '''')+'']已经归档.''; 3: raise ''连续病历文件[''+Word.GetVar(''VAQ1'', ''CAD04'', '''')+'']仅用于打印浏览.''; 4: raise ''病历文件[''+Word.GetVar(''VAQ1'', ''CAD04'', '''')+'']已经作废.''; end; Result := True; //返回真,允许修改 end; //病历 审阅 function ShenYue(ival:string): Boolean; begin if HOUserInfo.AAH01 = 0 then Raise ''审阅病历时,聘任级别不能设置为[不限]。''; if HOUserInfo.AAH01 = 8 then Raise ''审阅病历时,待聘人员不能操作。''; if Word.GetVar(''VAQ1'', ''BCE01'', 0) = HOUserInfo.EmpId then begin raise ''病历不能由本人审阅。''; end; if ival =''1'' then begin if (word.getVar(''VAA1'',''VAM27'',0)<>HOUserInfo.EmpName ) and (word.getVar(''VAA1'',''VAM31'',0)<>HouserINfo.EmpName) then raise ''该病历只能由病人的主治医师或主任医师审阅。''; end else begin if Word.GetVar(''VAQ1'', ''VAQ17'', 0) <= HOUserInfo.AAH01 then begin raise ''该病历只能由上级医师审阅。''; end; end; if Word.GetVar(''VAQ1'', ''VAQ20'', 0) = 0 then begin raise ''该病历[''+Word.GetVar(''VAQ1'', ''CAD04'', '''')+'']还未完成,需要[''+Word.GetVar(''VAQ1'', ''BCE03A'', '''')+'']签名后才可以审阅。''; end; Result := True; //返回真,允许审阅 end; //病历归档 function GuiDang(): Boolean; begin Result := True; end; //评分 function PingFen(): Boolean; begin Result := True; end; ' where Code='EMR.EMB.000001' end GO --删除旧记录 --delete from Report_Objects where Code='EMR.EMB.000002' --删除脚本内容 IF not EXISTS(SELECT * FROM Report_Objects WHERE code='EMR.EMB.000002') begin --插入 Declare @Report_Id_757 int Exec Core_NewId 'Report_Objects', 'id', @Report_Id_757 out Declare @Report_Id_757_CateID int Set @Report_Id_757_CateID = (select id from Report_Categories where code='EMR.WIN') insert into Report_Objects(ID,Code,Name,Description,Password,CategoryID,xType,Classification,ProductID,ProgramID,ElementID,CreateDate,UpdateDate,ISSUANCEDATE,Config,SetupPath,IsMenu,Enabled,GroupName,Authorized,RefreshInterval) Values(@Report_Id_757, 'EMR.EMB.000002', '病历审阅窗口代码', 'ViewVCV1 显示审阅日志', Null, @Report_Id_757_CateID, 1, 5, 600, 0, Null, '2012-11-01 15:14:11', '2012-11-01 16:55:12', Null, 'function IsViewVCV1: Boolean; begin //是否显示审阅日志列表 Result := true; end; function IsViewVBT1: Boolean; begin //是否显示修改日志 Result := true; end; function ViewVCV1Filter: String; begin //设置过滤条件 Result := ''VCV07=4''; end;', Null, 0, Null, Null, 0, Null) end else --更新 begin update Report_Objects set Config='function IsViewVCV1: Boolean; begin //是否显示审阅日志列表 Result := true; end; function IsViewVBT1: Boolean; begin //是否显示修改日志 Result := true; end; function ViewVCV1Filter: String; begin //设置过滤条件 Result := ''VCV07=4''; end;' where Code='EMR.EMB.000002' end GO --删除旧记录 --delete from Report_Objects where Code='EMR.EMB.000003' --删除脚本内容 IF not EXISTS(SELECT * FROM Report_Objects WHERE code='EMR.EMB.000003') begin --插入 Declare @Report_Id_775 int Exec Core_NewId 'Report_Objects', 'id', @Report_Id_775 out Declare @Report_Id_775_CateID int Set @Report_Id_775_CateID = (select id from Report_Categories where code='EMR.WIN') insert into Report_Objects(ID,Code,Name,Description,Password,CategoryID,xType,Classification,ProductID,ProgramID,ElementID,CreateDate,UpdateDate,ISSUANCEDATE,Config,SetupPath,IsMenu,Enabled,GroupName,Authorized,RefreshInterval) Values(@Report_Id_775, 'EMR.EMB.000003', '护理记录窗口代码', Null, Null, @Report_Id_775_CateID, 1, 5, 600, 0, Null, '2012-12-04 22:43:50', '2012-12-04 22:44:16', Null, '//护理记录 新增 AGD=归档 ADataSet 当前护理记录表 function XinZeng(AGD: Boolean; ADataSet: TDataSet): Boolean; begin if AGD then begin Raise ''护理记录已经归档,请取消归档后新增。''; end; Result := true; end; //护理记录 修改 function XiuGai(AGD: Boolean; ADataSet: TDataSet): Boolean; begin if AGD then begin Raise ''护理记录已经归档,请取消归档后修改。''; end; if ActiveConfig.DataSet.Eof then begin Raise ''护理记录为空,请选择要修改的护理记录。''; end; Result := true; end; //护理记录 删除 function ShanChu(AGD: Boolean; ADataSet: TDataSet): Boolean; begin if AGD then begin Raise ''护理记录已经归档,请取消归档后修改。''; end; if ActiveConfig.DataSet.Eof then begin Raise ''护理记录为空,请选择要修改的护理记录。''; end; if ADataSet.FieldByName(''VCF18'').AsInteger = 3 then begin Raise ''当前选择的护理记录已经归档,不能删除。''; end; Result := true; end; ', Null, 0, 1, Null, 0, Null) end else --更新 begin update Report_Objects set Config='//护理记录 新增 AGD=归档 ADataSet 当前护理记录表 function XinZeng(AGD: Boolean; ADataSet: TDataSet): Boolean; begin if AGD then begin Raise ''护理记录已经归档,请取消归档后新增。''; end; Result := true; end; //护理记录 修改 function XiuGai(AGD: Boolean; ADataSet: TDataSet): Boolean; begin if AGD then begin Raise ''护理记录已经归档,请取消归档后修改。''; end; if ActiveConfig.DataSet.Eof then begin Raise ''护理记录为空,请选择要修改的护理记录。''; end; Result := true; end; //护理记录 删除 function ShanChu(AGD: Boolean; ADataSet: TDataSet): Boolean; begin if AGD then begin Raise ''护理记录已经归档,请取消归档后修改。''; end; if ActiveConfig.DataSet.Eof then begin Raise ''护理记录为空,请选择要修改的护理记录。''; end; if ADataSet.FieldByName(''VCF18'').AsInteger = 3 then begin Raise ''当前选择的护理记录已经归档,不能删除。''; end; Result := true; end; ' where Code='EMR.EMB.000003' end GO