2010年6月2日 星期三

a loggable laboratory bullitin information pratice

a loggable laboratory bullitin information pratice.
您的實驗室都如何進行人員公告、SOP修訂閱讀紀錄?
使用E-MAIL?使用紙本一個人一個人蓋章?
您如何知道E-MAIL已經有效通知,人員於何時讀取?三班輪替的人員蓋完章要花多少時間?
同仁跟你反映過:什麼時候公告的?我不知道!?

我想讓這流程有效率一點,設計了公告紀錄網頁,與檢驗報告查詢系統連結。

程式碼還沒想好放在哪,有興趣可以直接找我拿。

系統需求:APACHE OR IIS 網頁伺服器, MYSQL, PHP+PEAR(auth, mdb2)

**program lists(in subDIR \msg)
  1. ../login.php
  2. styles.css
  3. config.inc.php
  4. header.php
  5. index.php
  6. msg_add.php
  7. msg_edit.php
  8. msg_read_log.php
  9. msg_read_log_user.php
  10. msg_show.php
  11. sample_posteddata.php
**Database schema
table
  1. MSG_cont(
    CREATE TABLE msg_cont (
    m_id int(11) NOT NULL auto_increment,
    m_date varchar(14) default NULL,
    m_title1 varchar(128) NOT NULL default '',
    m_title2 varchar(128) default NULL,
    m_content text NOT NULL,
    to_show char(1) NOT NULL default '1',
    post_oper varchar(5) NOT NULL default '',
    read_count int(11) default '1',
    PRIMARY KEY (m_id),
    FULLTEXT KEY m_content(m_content),
    KEY post_oper(post_oper)
    ) TYPE=MyISAM COMMENT='message 內容';
  2. msg_read_log(
    CREATE TABLE msg_read_log (
    m_id int(11) NOT NULL default '0',
    oper_id varchar(5) NOT NULL default '',
    post_date varchar(14) default NULL,
    read_date varchar(14) default '9',
    remark varchar(64) NOT NULL default '',
    PRIMARY KEY (m_id,oper_id),
    KEY m_id(m_id),
    KEY oper_id(oper_id)
    ) TYPE=MyISAM COMMENT='message read log';
  3. Msg_search(
    CREATE TABLE msg_search (
    m_id int(11) NOT NULL default '0',
    m_key varchar(128) NOT NULL default '',
    PRIMARY KEY (m_id,m_key),
    FULLTEXT KEY m_key(m_key)
    ) TYPE=MyISAM;
  4. Oper(
    CREATE TABLE oper (
    oper_id varchar(6) default NULL,
    oper_name varchar(10) default NULL,
    pswd_desc varchar(15) default NULL,
    EXPER_TYPE varchar(10) default NULL,
    e_mail varchar(60) default NULL,
    auth_right varchar(10) NOT NULL default 'user',
    UNIQUE KEY oper_id(oper_id)
    ) TYPE=MyISAM;
  5. msg_cont_backup(
    CREATE TABLE msg_cont_backup (
    m_id int(11) NOT NULL auto_increment,
    m_date varchar(14) default NULL,
    m_title1 varchar(128) NOT NULL default '',
    m_title2 varchar(128) default NULL,
    m_content text NOT NULL,
    to_show char(1) NOT NULL default '0',
    post_oper varchar(5) NOT NULL default '',
    read_count int(11) default '1',
    PRIMARY KEY (m_id),
    FULLTEXT KEY m_content(m_content),
    KEY post_oper(post_oper)
    ) TYPE=MyISAM COMMENT='message 內容';
  6. msg_read_log_backup(
    CREATE TABLE msg_read_log_backup (
    m_id int(11) NOT NULL default '0',
    oper_id varchar(5) NOT NULL default '',
    post_date varchar(14) default NULL,
    read_date varchar(14) default NULL,
    remark varchar(64) NOT NULL default '',
    KEY m_id(m_id)
    ) TYPE=MyISAM COMMENT='message read log';
**Solved problems(邊做邊學,東西還真不少) :java tab, confirm box, php session, (expire time, content,) mdb2, page, ajax-like search menu, ckeditor, ckeditor-html-mysql transform, css cross menu ...

**USER FRIENDLY INTERFACE
  • CKEditor :可將word格式直接貼上,增加可讀性
  • CKFinder:檔案上傳(未完成,中文檔名有問題)
**Target:
  • message 管理,選擇人員公佈
    • message 可包括各組公告、SOP修改公告、
    • message 可搜尋
  • 人員登錄
  • 依照登錄與 讀取公告,紀錄讀取公告時間
  • 追蹤未讀取的名單
  • 顯示各公告的讀取情況
**注意事項:必須放在人員每天會操作的系統,我選擇報告查詢網頁,必須有限時登出的功能(增加UPDATE頻率),簡單,容易操作,一目瞭然,重要詞句可以HIGHLIGHT,要好用才會有人用是我的設計哲學。

2010年6月1日 星期二

更換 HEPA 注意事項

今天實驗室換 HEPA filter,聯絡人拿著相機狂拍。

過了一會兒,我路過在 BSC(Bio Safty Cabnet)旁,看到有個同事沒戴口罩還在團團轉做工,趕快請他戴上口罩(雖然不一定有用)。等我走遠了發現,奇怪,位於更遠位置的同事,以前都不戴口罩的,怎今天已經都武裝完備?那為什麼沒人告訴在"高危險區"的同事該戴口罩呢?同時,我發現"聯絡人"也已經戴上了口罩。

這群沒同事愛(幫他們想個台階,可能沒想到吧),沒安全觀念的人真該好好教教。如果沒戴口罩的人感染了什麼的,難道其他人躲得過麼?休息區在一起,每天也得見面講話的,以為實驗室有多大?

可能老闆會說:怎麼別人都知道要戴口罩,你不知道呢?
這是兩回事,就好像水庫洩洪時,有開警報警告民眾;跟直接放了水,再問民眾,你怎麼看到大水來了還不躲呢?

結論:更換 HEPA 注意事項,要先通知周邊相關人員,做好安全防護措施。更理想點,評估怎樣的防護設備才是有效的,並且提供相關設備。

2010年5月16日 星期日

實習生被老闆嚇到

某天實習生座談,同學說到:我們是不是很差?主任說我們這屆實習生是歷來最差,再這樣下去,以後不要收我們學校的學生了。
同學顯得非常沮喪的樣子。

我心想:老闆幹嘛去恐嚇實習生?臨床教師的課程都學到哪兒去了?
我跟同學說:有些人的管理手法只有幾招,你們可以用他說的話激勵自己多努力一點,但是不可以用他說的話來否定自己。

慶幸自己沒遇過這麼差勁的老師。如果他在公司這樣對待學生,那他在家裡是如何對待小孩?
有一個"Positive feedback"的題目,我已經掛在暫存目錄好久了,想要討論正向鼓勵教學的魔力。

2010年4月25日 星期日

文件掃描系統

理想:備份的文件全部掃入電腦存檔,不再使用紙本儲存。
設備:kodak i1220 scanner
軟體:kodak capture pro
TODO:備份文件可網頁搜尋(almost complete)
說明:
  1. 計畫目標:將每天產生數千張的檢驗單轉成電子化保存,解決無處可放的困境及滿足單據保存三年還有便於尋找。
  2. 設備及軟體如上述。scanner每分鐘可掃30頁(雙面60頁),軟體可將檢驗單上的條碼(檢驗單號或者檢體試管編號)做辨識及轉換成檔案名稱,可以選擇圖檔(TIFF)或PDF,方便尋找。軟體還可以選擇掃描條件如紙張厚度,單/雙面,去除空白頁,彩色/黑白,條碼辨識區塊,輸出檔案名稱架構(如組別/日期/流水號),最多可同時輸出兩種檔案格式。
  3. 實做:已經施行兩個月,started from 2010/4/1。
  4. 容量:約2000張/天,需3G硬碟空間/月。PDF 與 TIFF格式大小相差不大。
  5. 備份:因為事關資料重要性,計畫備份兩份在不同的電腦。
  6. 困境:有黏貼的單張較麻煩。要花人力去掃描。
  7. 進階:備份同時,將檔名寫入資料庫,可用網頁查詢聯結。不需幾秒就找到原始單據了,突然有一種"爽"的感覺。
  8. 注意事項:不能有訂書針,一開始我覺得最麻煩的事情,大家一起努力解決了(買了好幾個除針文具),科內能不用的幾乎都不用了。
  9. 其他應用:A.占空間的紀錄單張。不過需要另外解決 OCR (光學辨識文字系統)的問題,通常這些單張,不會有條碼,沒設定好檔案名稱,將來也是找不到資料呀!B.實習生的學習紀錄,實習生辛苦的幾個月,現在都有本"portofolio",實習完後只剩下影本。如果評鑑時展示電子檔的學習歷程,夠cool吧!

2010年3月10日 星期三

看見今年的第一隻燕子

今天早上在木柵,看見今年的第一隻燕子,低空從我的車頂掠過,並且在馬路上空轉來轉去,再加上寒流之後的陽光,讓人超開心的。
今年的第一隻燕子,3月11日。

兩年前在新店地區注意到在春天看見第一隻燕子的日期是3月10日。後來開始注意這些燕子什麼時間出現,大約停留時間是6個月,也就是說,9月之後應該就看不到了。不過在五股的一條河(橫窠??不確定)上常有大群燕子盤旋,9月之後還看得到,只是不住在附近,不知道它們最後離開的時間。

停留幾個月的時間,有些窩裡會冒出幼鳥的頭吱吱喳喳。好想在這些窩旁裝24小時監視器,紀錄它們的生活。

2010年2月3日 星期三

A型流感快篩陽性率

小醫院的數據,Sample size 小,僅供參考
大約的Positive rate:

Aug, 2009: 35%
Sep, 30%
Oct, 46%
Nov, 42%
Dec, 26%
-----
Jan, 2010:16.8%
Feb, 10%

...忘記自己何時打的疫苗了 :p
現在整體送檢體的數量已經降低很多,四月份之後,會恢復自費項目。

在天頂的獵戶座

都是醫院的東西,太無聊了,來點別的,拍攝時間2010-1-15,地點:林口