龐劍飛,蔣俊成,喬梁
1.中國(guó)人民解放軍第117醫(yī)院 醫(yī)學(xué)工程科,浙江 杭州 310013;2.中國(guó)人民解放 73232部隊(duì) 衛(wèi)生隊(duì),浙江 舟山316217;3.中國(guó)人民解放第三軍醫(yī)大學(xué) 生物醫(yī)學(xué)工程學(xué)院計(jì)算機(jī)教研室,重慶 400038
呼吸機(jī)質(zhì)控管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
龐劍飛1,2,蔣俊成2,喬梁3
1.中國(guó)人民解放軍第117醫(yī)院 醫(yī)學(xué)工程科,浙江 杭州 310013;2.中國(guó)人民解放 73232部隊(duì) 衛(wèi)生隊(duì),浙江 舟山316217;3.中國(guó)人民解放第三軍醫(yī)大學(xué) 生物醫(yī)學(xué)工程學(xué)院計(jì)算機(jī)教研室,重慶 400038
隨著醫(yī)學(xué)的發(fā)展,醫(yī)療設(shè)備在醫(yī)院發(fā)揮著越來(lái)越重要的作用,為了確保設(shè)備的正常運(yùn)行、防止誤診、錯(cuò)診甚至醫(yī)療事故的發(fā)生,開展醫(yī)療設(shè)備的質(zhì)量控制已成為醫(yī)院降低臨床風(fēng)險(xiǎn),保障醫(yī)患雙方合法權(quán)益的重要內(nèi)容[1]。呼吸機(jī)作為醫(yī)院風(fēng)險(xiǎn)系數(shù)最高的生命支持類急救設(shè)備,對(duì)其進(jìn)行定期檢測(cè)是確保其持續(xù)安全運(yùn)行的重要手段[2-3]。目前,呼吸機(jī)質(zhì)控主要數(shù)據(jù)的管理大都通過(guò)儀器檢測(cè)、手工填表、裝訂歸檔的方式進(jìn)行,存在著工作量大,管理不夠規(guī)范、效率低等問(wèn)題,同時(shí)設(shè)備管理人員與醫(yī)院領(lǐng)導(dǎo)不能實(shí)時(shí)掌握呼吸機(jī)的運(yùn)行情況,很難全面地對(duì)數(shù)據(jù)進(jìn)行分析和挖掘[4]。鑒于此,本文設(shè)計(jì)了一種呼吸機(jī)質(zhì)控?cái)?shù)據(jù)管理系統(tǒng),對(duì)質(zhì)控?cái)?shù)據(jù)進(jìn)行存儲(chǔ)、分類、匯總,以實(shí)現(xiàn)質(zhì)控管理的信息化,提高醫(yī)院設(shè)備管理水平。
1.1 需求分析
呼吸機(jī)質(zhì)控?cái)?shù)據(jù)管理系統(tǒng)旨在運(yùn)用計(jì)算機(jī)技術(shù)幫助醫(yī)學(xué)工程人員方便、高效地管理呼吸機(jī)質(zhì)控?cái)?shù)據(jù),及時(shí)、準(zhǔn)確了解分析呼吸機(jī)的性能及運(yùn)行狀態(tài),同時(shí)通過(guò)對(duì)質(zhì)控?cái)?shù)據(jù)的分析,確保呼吸機(jī)臨床使用安全,為設(shè)備采購(gòu)與預(yù)防維修提供量化依據(jù)[5]。
依據(jù)呼吸機(jī)質(zhì)量檢測(cè)技術(shù)規(guī)范,設(shè)計(jì)系統(tǒng)數(shù)據(jù)庫(kù)及功能模塊。系統(tǒng)主要面向呼吸機(jī)質(zhì)控工程師,為其提供呼吸機(jī)質(zhì)控?cái)?shù)據(jù)管理功能,具體包括呼吸機(jī)與質(zhì)控設(shè)備信息管理模塊,質(zhì)控原始記錄與報(bào)告模塊。系統(tǒng)能夠根據(jù)科室、時(shí)間等項(xiàng)目分類統(tǒng)計(jì)與匯總質(zhì)控?cái)?shù)據(jù),以便相關(guān)領(lǐng)導(dǎo)與設(shè)備管理人員及時(shí)掌握呼吸機(jī)運(yùn)行狀態(tài)。
1.2 總體架構(gòu)
由于系統(tǒng)面向的是質(zhì)控人員與設(shè)備管理的相關(guān)領(lǐng)導(dǎo),客戶端較少,為提高客戶端響應(yīng)速度,采用客戶端/服務(wù)器模式(C/S),見(jiàn)圖1。醫(yī)學(xué)工程人員利用檢測(cè)設(shè)備對(duì)呼吸機(jī)進(jìn)行質(zhì)控,并將質(zhì)控?cái)?shù)據(jù)錄入客戶端、上傳至服務(wù)器,系統(tǒng)主要包含的模塊有數(shù)據(jù)錄入、數(shù)據(jù)查詢與打印、設(shè)備信息管理等模塊。
圖1 系統(tǒng)結(jié)構(gòu)示意圖
2.1 數(shù)據(jù)庫(kù)設(shè)計(jì)
本系統(tǒng)數(shù)據(jù)管理采用Access數(shù)據(jù)庫(kù),包括3個(gè)數(shù)據(jù)表,分別是呼吸機(jī)設(shè)備信息表、檢測(cè)設(shè)備信息表、質(zhì)控信息表,其結(jié)構(gòu)關(guān)系見(jiàn)圖2。
圖2 數(shù)據(jù)表物理結(jié)構(gòu)關(guān)系
2.2 數(shù)據(jù)連接
導(dǎo)入所需的命名空間,即using System.Data.OleDb,之后按照建立連接字符串建立連接、執(zhí)行SQL語(yǔ)句、關(guān)閉連接的順序?qū)崿F(xiàn),具體代碼如下:
public static System.Data.DataTable SQLData( string sql,ref bool success,int select)
{ ystem.Data.DataTable dtt = new System.Data.DataTable(); DataRow dr;
RespiratorManager.Properties.Settings rs=new Properties. Settings();
string strConn = rs.DataConnectionString;
OleDbConnection odcConnection = new OleDbConnection(strConn); //建立連接
odcConnection.Open();//打開連接
OleDbCommand odCommand = odcConnection.CreateCommand();//建立SQL查詢
odCommand.CommandText =sql;//輸入查詢語(yǔ)句
odCommand.CommandType = CommandType.Text;
OleDbDataReader odrReader = odCommand.ExecuteReader();//建立讀取
//查詢并顯示數(shù)據(jù)
int size = odrReader.FieldCount;
for (int i = 0; i < size; i++)
{ DataColumn dc;
dc = new DataColumn(odrReader.GetName(i));
dtt.Columns.Add(dc);
}
while (odrReader.Read())
{ dr = dtt.NewRow();
for (int i = 0; i < size; i++)
dr[odrReader.GetName(i)] = odrReader[odrReader. GetName(i)].ToString();
dtt.Rows.Add(dr);
}
odrReader.Close();
success = true;
}
odcConnection.Close();//關(guān)閉連接
return dtt;
}
}
3.1 查詢模塊
查詢模塊主要分為查詢條件輸入與檢索結(jié)果顯示兩部分(圖3)。質(zhì)控記錄查詢可根據(jù)檢測(cè)編號(hào)、呼吸機(jī)所屬科室、檢測(cè)時(shí)間等條件單獨(dú)或組和進(jìn)行查詢。在記錄顯示模塊中每條記錄設(shè)置復(fù)選框,通過(guò)勾選部分或全部實(shí)現(xiàn)質(zhì)控記錄的打印;在每條記錄最后設(shè)置有查看按鈕,點(diǎn)擊可跳轉(zhuǎn)至數(shù)據(jù)輸入/修改界面,可查看該記錄的詳細(xì)信息或進(jìn)行修改。
記錄打印功能通過(guò)調(diào)用Excel模板實(shí)現(xiàn)。首先在程序中添加對(duì)應(yīng)的COM組件(Microsoft Word 11.0 Object Library),之后在主程序開始處添加using Excel=Microsoft. Office.Interop.Excel命名空間,之后在程序中調(diào)用Excel實(shí)現(xiàn)
打印功能,其主要代碼如下:
private void PrintBtn_Click(object sender, EventArgs e)
{ Excel.Application excel = new Excel.Application();
excel.Visible =false;//激活Excel//獲取路徑
string str = System.Environment.CurrentDirectory;
Excel.Workbook wBook = excel.Workbooks.Open(str+@” page.xls”,Type.Missing , Type.Missing,Type.Missing,Type. Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type. Missing,Type.Missing);//定義工作薄對(duì)象
Worksheet wSheet = wBook.Sheets[1] as Worksheet;//定義工作表對(duì)象
String sql = @”SELECT QualityControl.DtNum,Quality-Control.DtNextNum…, QualityControl.FlowV13 FROM Quality-Control,respirator,Detector where QualityControl.DtorNum = Detector.DetectorNum and QualityControl.DeviceID =respirator.DeviceNum”;
dt = SQLData(sql, ref fs, 0); //讀取待寫入數(shù)據(jù)
int[,]d={{3,7,3,8,10,3,9,3,8,3,8,3,8,3,8,4,5,6,7,8,4,5,6,7,8,10 ,11,4,5,6,7,8,4,5,6,7,8,10,11}, {3 ,3,4,4, 4,5,5,7,7,8,8,9,9,10,10,13,13,13,13,13,15,15,15,15,15,13,13,18, 18,18,
18,18,20,20,20,20,20,18,18}}; //定義單元格坐標(biāo)
DataRow dr = dt.NewRow();
if (fs&&dt.Rows.Count>0)
{ dr = dt.Rows[0];
//賦值
for(int i=0;i<39;i++)
{ wSheet.Cells[d[1, i], d[0, i]] = dr[i].ToString(); }
if (dr[39].ToString() == “1”)
{ Excel.CheckBox cbx = wSheet.CheckBoxes()[1] as Excel. CheckBox;
cbx.Value = true;
}
else
{ Excel.CheckBox cbx = wSheet.CheckBoxes()[2] as Excel. CheckBox;
cbx.Value = true;
}
}
//設(shè)置禁止彈出保存和覆蓋的詢問(wèn)提示框
excel.DisplayAlerts = false;
excel.AlertBeforeOverwriting = false;
excel.ActiveWorkbook.SaveCopyAs(str+@” 6.xls”);
excel.Quit();
}
圖3 系統(tǒng)查詢模塊
3.2 數(shù)據(jù)輸入/修改模塊
本模塊主要完成的是質(zhì)控原始記錄的輸入/修改功能(圖4),包括不同模式下的潮氣量測(cè)試、氧濃度測(cè)試、安全報(bào)警功能檢查、檢測(cè)環(huán)境信息(溫度、濕度等)、質(zhì)控基本信息(編號(hào)、時(shí)間等)等功能。
圖4 系統(tǒng)數(shù)據(jù)輸入/修改模塊
3.3 設(shè)備管理模塊
設(shè)備管理模塊主要用于管理呼吸機(jī)及檢測(cè)設(shè)備基本信息(圖5),采用DataGridView控件實(shí)現(xiàn)??赏ㄟ^(guò)呼吸機(jī)編號(hào)、所屬科室等項(xiàng)進(jìn)行查詢,在錄入科室信息時(shí),為減少錄入錯(cuò)誤,采用下拉菜單(ComboBox)進(jìn)行選擇,實(shí)現(xiàn)的主要代碼為:
private void dataGridView2_CellEnter(object sender, Data-GridViewCellEventArgs e)
{if (this.dataGridView2.CurrentCell.ColumnIndex == 6)//判斷當(dāng)前是否選擇科室列
{
this.dataGridView2.Controls.Add(comboBox1);//添加Com-boBox
//繪制ComboBox外觀
System.Drawing.Rectangle rect = dataGridView2. GetCellDisplayRectangle (this.dataGridView2.CurrentCell. ColumnIndex, this.dataGridView2.CurrentCell.RowIndex, false);
this.comboBox1.Left = rect.Left;
this.comboBox1.Top = rect.Top;
this.comboBox1.Width = rect.Width;
this.comboBox1.Height = rect.Height;
this.comboBox1.Visible = true;
}
else
{ this.comboBox1.Visible = false; }
}
圖5 系統(tǒng)設(shè)備信息管理模塊
呼吸機(jī)質(zhì)控?cái)?shù)據(jù)管理系統(tǒng)面向質(zhì)控工作人員,可完成質(zhì)控原始數(shù)據(jù)錄入、誤差計(jì)算、數(shù)據(jù)查詢、設(shè)備信息管理等任務(wù),提高了質(zhì)控人員的工作效率,為進(jìn)一步分析質(zhì)控?cái)?shù)據(jù)提供了基礎(chǔ)。采用基于C#的面向?qū)ο缶幊碳軜?gòu)使系統(tǒng)具有較強(qiáng)的擴(kuò)展性與靈活性,方便系統(tǒng)功能添加、修改。但系統(tǒng)數(shù)據(jù)錄入是質(zhì)控人員手動(dòng)輸入客戶端完成的,是在對(duì)呼吸機(jī)質(zhì)控后進(jìn)行記錄的,增加了工作量及數(shù)據(jù)出錯(cuò)風(fēng)險(xiǎn)。我們下步工作可通過(guò)通訊模塊與手持PDA實(shí)現(xiàn)原始數(shù)據(jù)的直接錄入[6-8],以提高工作效率及數(shù)據(jù)的準(zhǔn)確性;本系統(tǒng)主要實(shí)現(xiàn)質(zhì)控?cái)?shù)據(jù)的管理,對(duì)數(shù)據(jù)的挖掘分析不夠,可進(jìn)一步分析全院、某科室或某臺(tái)呼吸機(jī)的質(zhì)控情況并進(jìn)行歸納總結(jié),進(jìn)一步提供呼吸機(jī)管理與使用的科學(xué)性,在為患者提供優(yōu)質(zhì)服務(wù)的同時(shí),減少不良事件的發(fā)生;系統(tǒng)可進(jìn)一步推廣至多參數(shù)監(jiān)護(hù)儀、高頻電刀、輸液泵等其他醫(yī)療設(shè)備的質(zhì)控管理中。
[1] 周丹.急救醫(yī)學(xué)裝備工程導(dǎo)論[M].北京:人民軍醫(yī)出版社, 2006:14-45.
[2] 張秋實(shí).呼吸機(jī)麻醉機(jī)質(zhì)量控制檢測(cè)技術(shù)[M]北京:中國(guó)計(jì)量出版社,2010:102-118.
[3] 蔣友好,彭文,馬力.呼吸機(jī)的使用現(xiàn)狀分析及風(fēng)險(xiǎn)安全管理措施[J].中國(guó)醫(yī)療設(shè)備,2012,27(2):71-73.
[4] 楊風(fēng)輝,尚長(zhǎng)浩.呼吸機(jī)質(zhì)量控制檢測(cè)數(shù)據(jù)分析思路[J].醫(yī)療裝備,2010,(11):1-3.
[5] 許敏光,閆偉,趙紅,等.呼吸機(jī)的質(zhì)量控制及分析[J].中國(guó)醫(yī)學(xué)裝備,2013,10(7):24-26.
[6] 李濤,張楠,蒲衛(wèi).呼吸機(jī)質(zhì)量控制信息系統(tǒng)的建立與研究[J].中國(guó)醫(yī)療器械雜志,2013,37(3):223-225.
[7] 盧愛(ài)國(guó).醫(yī)療設(shè)備質(zhì)量控制體系的構(gòu)建[D].重慶:第三軍醫(yī)大學(xué),2012.
[8] 葉紅梅.構(gòu)建醫(yī)療設(shè)備應(yīng)用安全和質(zhì)量控制體系[J].中國(guó)醫(yī)學(xué)裝備,2012,(11):61-65.
Design and Implementation of Management System for the Quality Control of Respirator
PANG Jian-fei1,2, JIANG Juncheng2, QIAO Liang3
1.Department of Medical Engineering, The 117thHospital of PLA, Hangzhou Zhejiang 310013, China; 2. Department of Health, No. 73232 Force of PLA, Zhoushan Zhejiang 316217, China; 3. Teaching and Research Section of Computer Science, Institute of Biomedical Engineering, Third Military Medical University, Chongqing 400038, China
目的 通過(guò)建立呼吸機(jī)質(zhì)控?cái)?shù)據(jù)庫(kù),實(shí)現(xiàn)呼吸機(jī)質(zhì)控?cái)?shù)據(jù)管理的信息化,以提升醫(yī)院設(shè)備管理水平。方法 對(duì)呼吸機(jī)質(zhì)量檢測(cè)技術(shù)規(guī)范進(jìn)行需求分析,同時(shí)參考質(zhì)控人員實(shí)際工作情況設(shè)計(jì)系統(tǒng)數(shù)據(jù)庫(kù)與客戶端功能模塊;系統(tǒng)采用C#編程語(yǔ)言實(shí)現(xiàn),以Access為后臺(tái)數(shù)據(jù)庫(kù)并調(diào)用Office COM組件實(shí)現(xiàn)數(shù)據(jù)打印輸出。結(jié)果 系統(tǒng)能夠?qū)崿F(xiàn)呼吸機(jī)質(zhì)控?cái)?shù)據(jù)的錄入、查詢、修改及設(shè)備信息維護(hù),滿足了設(shè)備管理人員的質(zhì)控需求。結(jié)論 采用C#面向?qū)ο缶幊碳軜?gòu),使系統(tǒng)具有較強(qiáng)的擴(kuò)展性與靈活性,方便系統(tǒng)功能添加、修改。
呼吸機(jī);呼吸機(jī)質(zhì)量管理系統(tǒng);數(shù)據(jù)庫(kù);C#語(yǔ)言
Objective To realize informatization of data management for quality control of the respirator and enhance equipment management in the hospital through establishment of a respirator quality control database. Methods Firstly, a requirement analysis was accomplished according to the respirator quality inspection standards. Meanwhile, the system database and client module were designed based on the actual work of quality control staff. Then, the system was designed with the C# programming language. Additionally, Access was used as the background database and the Office COM software was used to print the data. Results The system realized the entry, query and modification of respirator quality control data as well as maintenance of equipment information, which satisfied the quality control requirements for equipment management staff. Conclusion Using C# object-oriented programming as the framework endowed the system with high expansibility and flexibility, which allowed for the addition and modification of the system functions.
respirators; respirator quality management system ; database; C#
TP311.52
A
10.3969/j.issn.1674-1633.2015.02.024
1674-1633(2015)02-0090-04
2014-08-09
作者郵箱:jian11fei.happy@ 163.com