SPADC60300.xjs 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[
  3. var DrugType_Value = "1|10|11|12|13|14|15|16|17|18|19";
  4. var TmpDrugType_Value = "";
  5. /**
  6. * 초기화
  7. */
  8. function fInit() {
  9. // 제형 초기화 ( 정제류와 캡슐류를 분리 )
  10. ds_hidden_drugidinfo.setColumn(0,"drugtype","");
  11. ds_hidden_drugidinfo.setColumn(0,"drugtype", DrugType_Value+"|2|3");
  12. ds_temp.setColumn(0,"tmpdrugtype","2|3");
  13. ds_temp.setColumn(0,"etcdrugtype","");
  14. // 기타 컨트롤 초기화
  15. ds_hidden_drugidinfo.setColumn(0,"char",""); //문자
  16. ds_hidden_drugidinfo.setColumn(0,"drugcd",""); //원내코드
  17. ds_hidden_drugidinfo.setColumn(0,"comcnts",""); //성분명
  18. ds_hidden_drugidinfo.setColumn(0,"hngnm",""); //한글상품명
  19. ds_hidden_drugidinfo.setColumn(0,"engnm",""); //영문상품명
  20. ds_hidden_drugidinfo.setColumn(0,"shapecd",""); //모양
  21. ds_hidden_drugidinfo.setColumn(0,"prodcmpynm",""); //회사
  22. ds_hidden_drugidinfo.setColumn(0,"divline1",""); //분할선 앞
  23. ds_hidden_drugidinfo.setColumn(0,"divline2",""); //분할선 뒤
  24. ds_hidden_drugidinfo.setColumn(0,"color",""); // 색상
  25. ds_hidden_drugidinfo.setColumn(0,"shape",""); // 문양
  26. ds_hidden_drugidinfo.setColumn(0,"atccodeyn",""); // 같은ATC성분코드 포함
  27. }
  28. /**
  29. * 제형 체크박스 선택
  30. */
  31. function fDrugTypeChk(chk) {
  32. if(chk == "A"){
  33. ds_hidden_drugidinfo.setColumn(0,"drugtype", DrugType_Value);
  34. } else if(chk == "D"){
  35. ds_hidden_drugidinfo.setColumn(0,"drugtype", "");
  36. }
  37. }
  38. /**
  39. * 약품식별 정보 조회
  40. */
  41. function fSrchDrugId() {
  42. //=================조회조건 초기화 시작 ==================================================================
  43. ds_send_drugidinfo.copyData(ds_hidden_drugidinfo);
  44. var drugtype = ds_send_drugidinfo.getColumn(0,"drugtype");
  45. var tmpdrugtype = ds_temp.getColumn(0,"tmpdrugtype");
  46. if(!utlf_isNull(drugtype)) ds_send_drugidinfo.setColumn(0,"drugtype", drugtype +"|"+ tmpdrugtype);
  47. else ds_send_drugidinfo.setColumn(0,"drugtype", tmpdrugtype);
  48. var drugtype = ds_send_drugidinfo.getColumn(0,"drugtype").split("|");
  49. ds_send_drugidinfo.setColumn(0,"drugtype",drugtype);
  50. //=================조회조건 초기화 종료 ==================================================================
  51. var oParam = {};
  52. oParam.id = "TRADB60301";
  53. oParam.service = "pharmacyconsultapp.DrugId";
  54. oParam.method = "reqGetDrugId";
  55. oParam.inds = "req=ds_send_drugidinfo";
  56. oParam.outds = "ds_main_drugidlist=drugidlist";
  57. oParam.async = false;
  58. oParam.callback = "cf_TRADB60301";
  59. tranf_submit(oParam);
  60. var nodeCnt = ds_main_drugidlist.rowcount;
  61. // for( var i = 0 ; i < nodeCnt ; i++ ) {
  62. // setImageRefInstance("/root/main/drugidlist["+i+"]/phot");
  63. // }
  64. if(grd_drugid.getFormatColProperty(2,"size") < 270) grd_drugid.setFormatColProperty(2,"size",270);
  65. // for( var i = 1; i < ds_main_drugidlist.rowcount; i++ ) {
  66. // if(grd_drugid.getFormatRowProperty(i,"size") < 100) grd_drugid.setFormatRowProperty(i,"size",100);
  67. // }
  68. if(nodeCnt >= 2000){
  69. sysf_messageBox("조회결과 최대값 : 2000 \n\n정확한 검색결과를 위해 조회조건을 추가하여 조회","I008");
  70. }
  71. fInit();
  72. }
  73. function cf_TRADB60301(sSvcId, nErrorCode, sErrorMsg) {
  74. if(nErrorCode < 0) return;
  75. dsf_setTypeFormat(ds_main_drugidlist, "phot:BLOB^longax:INT^shrtax:INT");
  76. }
  77. function fMakeCopyColumn(objDs,sColSrc,sColTgt) {
  78. if(utlf_isNull(objDs.getColumnInfo(sColTgt))) objDs.addColumn(sColTgt,"string");
  79. for(var i = 0 ; i < objDs.rowcount ; i++) {
  80. objDs.setColumn(i,sColTgt,objDs.getColumn(i,sColSrc));
  81. }
  82. }
  83. /**
  84. * 등록버튼 클릭시 openner 그리드에 데이터 insert
  85. */
  86. function fInsOpenerDrugID() {
  87. if ( frmf_checkOpener() ) {
  88. /* 적용된 약품식별 데이터는 색상변경 */
  89. ds_main_drugidlist.addColumn("copyYN","string");
  90. for(var i = 0; i < ds_main_drugidlist.rowcount; i++){
  91. if(ds_main_drugidlist.getColumn(i,"sel") == "true"){
  92. ds_main_drugidlist.setColumn(i,"copyYN","Y");
  93. //grd_drugid.rowStyle(i, "data", "background-color") = "#ffff99";
  94. /* 본원 사용 여부 판단을 위함
  95. 1.약품코드 존재시에는 본원사용여부 : O
  96. 2.약품코드 없고 성분코드 존재시 체크 => 동일한 성분코드 중 약품코드 존재시 본원사용 : "O (타회사)" , 없으면 "X"
  97. 3.약품코드와 성분코드 모두 존재하지 않을시 본원사용여부 : X
  98. */
  99. /*
  100. var atccode = ds_main_drugidlist.getColumn(i,"atccode");
  101. var drugcd = ds_main_drugidlist.getColumn(i,"drugcd");
  102. if(drugcd != ""){
  103. model.setValue("/root/main/drugidlist["+i+"]/useyn","O");
  104. }else if(drugcd == "" && atccode != ""){
  105. model.copyNode("/root/send/srchuseyn","/root/main/drugidlist["+i+"]");
  106. submit("TRADB60302");
  107. var cnt_node = getNodesetCount("/root/hidden/useyninfo");
  108. for(var j = 1; j <= cnt_node; j++){
  109. //alert(model.getValue("/root/hidden/useyninfo["+j+"]/useyn"));
  110. if(model.getValue("/root/hidden/useyninfo["+j+"]/useyn") == "Y"){
  111. model.setValue("/root/main/drugidlist["+i+"]/useyn","O\n(타회사)");
  112. break;
  113. }else{
  114. model.setValue("/root/main/drugidlist["+i+"]/useyn","X");
  115. }
  116. }
  117. }else{
  118. model.setValue("/root/main/drugidlist["+i+"]/useyn","X");
  119. }
  120. */
  121. }
  122. }
  123. astfInsertGridData(grd_drugid, opener.group3.grd_drugid, "2", "sel", "", "photoid,photoid,idcd,idcd");
  124. opener.fImgSetting(false);
  125. } else {
  126. sysf_messageBox("상위화면이 변경되어 데이터를 전달할 수 ","I004");
  127. }
  128. }
  129. function getNodesetCnt(srchModel,path)
  130. {
  131. // if(srchModel == null){
  132. // srchModel = model;
  133. // }
  134. // var insXml = srchModel.instances(0);
  135. // var nodeList = insXml.selectNodes(path);
  136. // return nodeList.length;
  137. }]]></Script>