?

安康電子病歷編輯器系統的設計與實現

2018-01-03 02:14張靈光
電子測試 2017年22期
關鍵詞:編輯器單元格控件

張靈光

(新疆農業職業技術學院,新疆昌吉,831100)

安康電子病歷編輯器系統的設計與實現

張靈光

(新疆農業職業技術學院,新疆昌吉,831100)

電子病歷系統實現病歷信息的采集、傳遞、表現、存儲和加工利用,其中病歷書寫編輯器是其關鍵技術之一。病歷書寫系統面向臨床醫生,實現了醫生日常按照《病歷書寫規范》來完成病歷的書寫,將病人在院期間的所有醫療信息通過計算機管理,并給醫生的臨床工作提供許多有益幫助。

電子病歷;編輯器;病歷書寫;醫院管理

0 引言

醫院信息系統的發展趨勢將是以病人為中心的醫院信息管理,醫院內所有的信息都將以無紙化為目標,并以數字化形式存儲,醫院內的所有終端及醫學檢查設備均與計算機相連通,各種醫囑和檢查結果均由網絡相互傳送,從而達到充分利用和共享豐富的信息資源。

安康電子病歷系統的開發,是醫療衛生行業政策的導向,也是公司客戶的迫切需求。公司在開發安康電子病歷管理系統的過程中,將病歷書寫系統作為一個獨立的功能模塊,其中病歷書寫編輯器是其關鍵技術之一。因此,項目組在電子病歷系統開發過程中,將電子病歷編輯器產品化,使其單獨成為公司的一個軟件產品。

1 需求分析

1.1 需求概述

電子病歷編輯器可以制作出盡可能適用和方便的病歷文件模板,使醫生可以流暢的使用書寫病歷。顧名思義,編輯器需要具備類WORD的編輯功能,可以設置結構化及痕跡保留。設置結構化的需要,我們引入了“元素”,這個是知識點語法,它只在編輯狀態下顯示,在閱讀和狀態下不顯示,用于語義內容的分界。固定元素:對于病歷中不允許隨意刪除的內容,稱之為固定元素,固定元素由“保留標題”和所有“靜態屬性元素”組成。選擇元素:對于病歷編輯過程中具有已知條目可供選擇的元素,稱之為選擇元素,選擇元素包括:單選、多選、有無選、行選。

1.2 業務分析

根據病歷書寫中關于電子病歷編輯器的功能需求,電子病歷編輯器系統的編輯功能分析如下。

(1)文檔操作:包括新建、打開、保存、另存為、剪切、復制、粘帖、選擇性粘帖、撤銷、重做、單選、全選、刪除、清除格式、格式刷、查找和替換、OLE拖拽等。

(2)頁面設置:支持多種常用紙張大小設置,也可自定義設置紙張大小??稍O置頁面的頁邊距、X/Y方向偏移量、頁眉/頁腳位置??稍O置打印份數、縱向打印或橫向打印??芍付ù蛴C、指定紙張來源??稍O置整體縮放適應紙張大小、可自動選擇最佳紙張大小。支持設置頁面背景圖片。支持設置頁面邊框和底紋。支持設置圖片水印和文字水印,文字水印可設置文字的顏色、字體、斜式或水平版式。支持頁面設置的快捷操作,包含:使用IE默認設置、使用MS Word默認設置、保存設置到文件和從文件加載設置。

(3)打?。褐С炙娂此玫拇蛴『痛蛴☆A覽,包含續打、套打、整潔打印、留痕打印、區域選擇打印。支持多個文檔在一個界面中預覽和打印。

(4)視圖:支持多種視圖模式,包含頁面視圖模式、普通視圖模式、普通居中視圖模式、自動換行視圖模式、閱讀視圖模式。支持放大和縮小顯示比例操作,支持自動適應頁面的視圖設置。支持標尺功能。

(5)文字編輯:可自由輸入文字,可設置文字的字體名稱、大小、粗體、斜體、下劃線、刪除線樣式??稍O置文字的顏色和背景色??稍O置文字的字符集。支持文字套圈。支持設置文字的邊框和底紋。支持設置文檔默認字體。支持上下標文字。支持插入特殊字符。

(6)段落:可設置段落的行間距、段前間距、段后間距??稍O置段落的首行縮進和整體縮進量??稍O置段落的對齊方式??稍O置多種段落列表頭顯示樣式??稍O置標題層次,實現文檔結構圖功能。

(7)頁眉頁腳:支持設置頁眉頁腳,其內容和正文一樣編輯和排版。能插入頁碼元素,支持設置頁碼的格式化字符串??稍O置頁面隱藏頁眉頁腳。

(8)表格:支持單元格的橫向合并和縱向合并。支持表格單元格內部的圖文混排,支持單元格內自動縮小字體,支持表格套嵌表格,支持設置單元格內邊距、支持設置單元格內容對齊方式。支持鼠標拖拽表格線來設置表格列的寬度和表格行的高度。支持設置每頁都顯示的標題行,支持設置同行是否可以跨頁。支持表格單元格邊框線的設置和背景顏色的設置。支持單元格斜線。支持單元格網格線??稍O置單元格邊框線、背景是否可以打印輸出。支持突出顯示單元格邊框線。支持表格行的多種復制模式。支持增加行/列、刪除行/列操作,包括在當前行的上邊/下邊插入表格行、在當前列的左邊/右邊插入表格列。

(9)圖片和圖形:可插入圖片,圖文混排,能手動拖拽設置圖片的寬度和高度,能保持圖片的寬度高度比例。圖片的圖像數據可保持在文檔中,也可鏈接引用其他地方的圖像數據。能設置文字圍繞模式。支持替換文字、平滑縮放。支持圖形的編輯操作,包括選擇、插入矩形、插入線段、插入折線、插入橢圓、插入多邊形、刪除、左對齊、右對齊、居中對齊、字體設置、文字背景、文本顏色、線條顏色、設置邊框、設置背景。

(10)快捷輔助錄入:根據輸入內容,把提示或關聯內容快速填充到下拉框,實現快捷輔助錄入。支持首字輔助和自定義篩選輔助錄入。支持回車輔助錄入。

(11)表達式:支持類似EXCEL的表達式,表達式包含多種內置函數,可以實現邏輯運算和數學運算。表達式支持變量。

(12)審閱:支持批注操作。

(13)工具:支持常用快捷工具,包含:字數統計、截屏、內容校驗、文檔參數、文檔選項。

(14)條形碼:支持多種一維條形碼和常用二維條形碼。

(15)VBA宏:支持在文檔中嵌入VBA宏代碼,實現VBA腳本功能。才有VB.NET語法,調用MS.NET框架中的標準類庫,在發生文檔事件時運行宏代碼。

(16)DOM:提供可開發和擴展的文檔內容DOM開發模型,支持自定義文檔元素類型。

1.3 需求小結

本系統主要用于醫院醫生書寫電子病歷,可以任意程度結構化醫療記錄;用戶可以實時在病歷編輯器界面中編輯排版各類醫療記錄。主要實現新建病歷文件、打開病歷文件、保存、打印預覽、打印、整潔病歷、自動排版、刪除未使用元素、清除注釋和關鍵詞語法、撤銷鍵入和恢復鍵入、復制、粘貼、剪切、查找、替換查找、特殊字符輸入框、插入圖片、插入橫線、插入表格、退出。類WORD編輯功能要求如下:設置字體、字號、加粗、斜體、下劃線、左對齊、居中、右對齊、行距、指數和腳數等功能。

2 系統設計

系統運行在Windows平臺上,不依賴其他任何第三方組件,不直接關聯數據庫,對電子病歷軟件的系統結構和數據庫沒有要求。系統開發采用組件化設計,保證系統可維護性和可擴展性,支持W3C XML標準,適應文檔的長期存儲要求。符合衛生部《電子病歷系統功能規范(試行)》中對病歷編輯器的41個必需功能和推薦功能的要求。編輯器系統可將病歷中的全部或部分內容保存為XML文件,也能導出RTF、PDF、HTML、MHT、ODT(非加密)等各種開放文檔格式。

本系統使用面向數據流的方法對書寫病歷的處理流程進行設計,分為兩部分:其一、服務器程序,其二、客戶端程序。以下將分別對系統的這兩大部分進行流程設計:

2.1 服務器程序流程

將服務器程序服務包文件拷貝到服務器某個目錄下,推薦為發布目錄的DCLib子目錄下。在WEB頁面中插入以下HTML代碼:

classid=”clsid:00012345-6789-abcd-ef01-2345678900ff”

codebase=”http://localhost:5086/DCWriterWeb.cab#1.2015.1217.10”>

value=”http://localhost:5086/DCWriterWeb.cab#1.2015.1217.10”>

其中,ID為web控件的編號,JavaScript代碼通過ID可以獲取web控件,RegisterCode設置注冊碼,codebase為安裝控件使用的CAB文件URL。

2.2 客戶機程序流程

由于采用IE嵌控件的形式,對客戶端有限制,該功能在客戶端中僅支持IE7.0或者更高版本,不支持其他瀏覽器,對于高版本IE瀏覽器請以兼容視圖模式顯示網頁。JavaScript代碼可能需要響應編輯器事件來完成一些操作,比如當用戶修改了文檔內容,則需要更新HTML頁面的狀態。

編輯控件具有以下簽名的方法“public string GetLast EventNames( )”。該方法用于獲得收集到的事件名稱列表,各個事件名稱之間用逗號分開。

當編輯器控件嵌入在HTML頁面中運行時,JavaScript可能無法響應控件事件,此時可以調用定時器定期調用這個函數來獲得已經觸發的事件名稱,然后進行事件處理。例如以下JavaScript代碼就模擬實現了控件事件。

window.setInterval(“UpdateState()” ,500);

function UpdateState()

{ var ctl = document.getElementById(“myWriter”);

var events = ctl.GetLastEventNames();

if (events.indexOf(“SelectionChanged”) >= 0) {

window.status = ctl.PositionInfoText; } }

圖1 接口設計

2.3 接口設計

為了更好地在實現與電子病歷管理系統及HIS系統的完整對接,以便在電子病歷系統中可以直接使用現有系統中的相關數據,同時,又能互動地把相關數據反饋給現有HIS系統中,制定本接口方案。

3 系統關鍵技術的實現與測試

本系統實現臨床科研一體化的結構化電子病歷,即滿足臨床,又服務于科研;類WORD動能的結構化書寫器,既可以做到結構化,又可以隨意靈活地編輯描述性語言。

3.1 編輯器菜單欄

圖2 編輯器菜單欄a

編輯模板我們主要使用插入下拉菜單中包含了模板制作過程中所需的各種元素、符號等;通過插入元素,我們可以實現各種不同的語法。如:單選、多選、有無選擇等。

圖3 編輯器菜單欄b

3.2 模板設計途徑

(1)新建:在編輯器中直接書寫病歷模板,設置不同的語法和特殊符號用來增加模板的方便性和適用性。

(2)打開:打開現有的模板,修改后另存,從而實現快速設計模板。

(3)插入:把一個純文本文件的內容或者圖像插入的編輯器中,當作模板。

(4)粘貼:純粹的使用復制、粘貼,從外部文件中復制病歷文件數據,然后粘貼到編輯器中。

3.3 系統的測試

經測試,本系統能滿足在需求分析時期所確立的各項功能需求,已經與管理系統正常接口,用戶可正常登錄,登記信息準確,管理員可順利地進行各項操作,整個功能模塊均能順利完成。

4 結束語

本文闡述了安康電子病歷編輯器系統的設計開發。本系統使電子病歷管理工作更快捷、更規范、更方便;使管理流程得到進一步的優化,加快醫院內部信息的傳送,改善信息共享狀況,提高了系統開發及擴展性的工作效率。

[1]張靈光,王學.安康電子病歷管理系統的設計與實現[J].電子技術與軟件工程.2014.11.

[2]徐振峰.以掃描儀為硬件核心,以專業軟件為操作平臺[J].中國計算機報.2004.05.

[3]劉宗華.醫院電子病案管理系統應用與思考[J].民營科技.2014.04.

Design and implementation of Ankang electronic medical record editor system

Zhang Lingguang
(Xinjiang Agricultural Vocational Technical College,Changji Xinjiang,831100)

Electronic medical record system realizes the collection, transmission, performance, storage,processing and utilization of medical record information, in which the medical record writing editor is one of the key technologies. For clinicians in medical record writing system, realizes the doctor daily according to “record writing standard” to complete medical records, the patients in the hospital all medical information through computer management, and give the doctor’s clinical work provides many useful help.

electronic medical record; editor; medical record writing; hospital management

新疆維吾爾自治區科技廳電子創新基金資助課題(項目編號:2014531075)。

張靈光(1971年4月),男,漢族,北京工業大學軟件工程碩士,軟件工程師,研究方向:主要從事軟件設計和信息管理系統研究。

猜你喜歡
編輯器單元格控件
流水賬分類統計巧實現
玩轉方格
玩轉方格
你距離微信創作達人還有多遠?
車輛段收發車運行圖編輯器的設計與實現
關于.net控件數組的探討
淺談Excel中常見統計個數函數的用法
基于VLIW目標機的ELF二進制編輯器設計與實現
ASP.NET服務器端驗證控件的使用
基于嵌入式MINIGUI控件子類化技術的深入研究與應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合