« 転帰日を消せるようにする | トップページ | 用法フィールド »

2008年5月30日 (金)

ユーザ登録コメント検索

Prescript1 処方スタンプボックスで ORCAマスターを検索する際,薬剤の名前だけでなく,ユーザー登録のコメントも検索できるようにする変更。外用剤に外用部位のコメントが入れられるようにするため。SQL コマンド生成する際,^6 を ^6(薬剤) でも ^0(ユーザ登録) でも ^8(コメント)でも検索するように改変。これで,薬剤名と同じように,ORCA に登録した部位等を検索してリストに加えることができる。
Prescript2 用法フィールドでも,ユーザ登録項目を選択することができる。

 

dao/SqlMasterDao.java

  • 薬剤検索の sql 生成に ^0 と ^8 を加える
    private String getMedicineSql(String text, String sortBy, String order, boolean forward) {
    ・
    ・
    buf.append("(srycd ~ '^6' or srycd ~ '^0' or srycd ~ '^8') and ");
     
  • ついでに診療行為検索でも ^0 と ^8 を検索できるようにする
    Private String getTreatemenrSql(String text,  String orderClassCode, String sortBy, String order, boolean forward) {
     ・
     ・
     //// 8xxxxxxxx のコメントを検索できるようにする
     //buf.append("(srycd ~ '^1' or srycd ~ '^00') and ");
     buf.append("(srycd ~ '^1' or srycd ~ '^00' or srycd ~ '^8') and ");
      if ( (! min.equals("")) && max.equals("") ) {
       ////sbd.append(" and srysyukbn = ");
       sbd.append(" and ((srysyukbn = ");
       sbd.append(addSingleQuote(min));
             
      } else if ((! min.equals("")) && (! max.equals("")) ) {
       ////sbd.append(" and srysyukbn >= ");
       sbd.append(" and ((srysyukbn >= ");
       sbd.append(addSingleQuote(min));
       sbd.append(" and srysyukbn <= ");
       sbd.append(addSingleQuote(max));
      }
    ////↓コメントに srysykbn はついていない
      sbd.append(") or srysyukbn = '') ");
    ////↑
     }
     ・
     ・
    
    生成される sql の例
    select srycd,name,kananame,tensikibetu,ten,nyugaitekkbn,routekkbn,srysyukbn,hospsrykbn,yukostymd,yukoedymd from tbl_tensu where hospnum=1 and (srycd ~ '^1' or srycd ~ '^00' or srycd ~ '^8') and name ~ '^初回' and ((srysyukbn >= '600' and srysyukbn <= '699') or srysyukbn = '')  order by name
    

« 転帰日を消せるようにする | トップページ | 用法フィールド »

OpenDolphin」カテゴリの記事