SPLPJ01900_병리과처방팝업.xfdl 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPLPJ01900" position="absolute 0 0 10 10" titletext="병리과 처방팝업" onload="SPLPJ01900_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 502 945 529" id="grp_btn">
  8. <Layouts>
  9. <Layout>
  10. <Button position="absolute 889 3 945 25" id="btn_cls" class="btn4" taborder="7" text="닫기" onclick="grp_btn_btn_cls_onclick"/>
  11. <Button position="absolute 830 3 886 25" id="btn_save" class="btn4" taborder="6" text="확인" onclick="grp_btn_btn_save_onclick"/>
  12. </Layout>
  13. </Layouts>
  14. </Div>
  15. <Div position="absolute 0 0 945 502" id="grp_biz">
  16. <Layouts>
  17. <Layout>
  18. <Static text="처방목록" position="absolute 5 45 116 59" id="caption2" class="tit_2"/>
  19. <Shape position="absolute 0 57 945 63" linetype="vertical" id="line1" class="line_1"/>
  20. <Grid position="absolute 31 65 976 502" id="grd_prcpacptlist" taborder="5" binddataset="ds_grd_prcpacptlist" oncellclick="grp_biz_grd_prcpacptlist_oncellclick" oncelldblclick="grp_biz_grd_prcpacptlist_oncelldblclick">
  21. <Formats>
  22. <Format id="default">
  23. <Columns>
  24. <Column size="0"/>
  25. <Column size="0"/>
  26. <Column size="74"/>
  27. <Column size="0"/>
  28. <Column size="150"/>
  29. <Column size="0"/>
  30. <Column size="100"/>
  31. <Column size="70"/>
  32. <Column size="70"/>
  33. <Column size="130"/>
  34. <Column size="130"/>
  35. <Column size="130"/>
  36. <Column size="70"/>
  37. <Column size="0"/>
  38. <Column size="0"/>
  39. </Columns>
  40. <Rows>
  41. <Row size="24" band="head"/>
  42. <Row size="24"/>
  43. </Rows>
  44. <Band id="head">
  45. <Cell text="기관코드"/>
  46. <Cell col="1" text="ptno"/>
  47. <Cell col="2" text="병리번호"/>
  48. <Cell col="3" text="처방코드"/>
  49. <Cell col="4" text="처방명"/>
  50. <Cell col="5" text="검체코드"/>
  51. <Cell col="6" text="검체명"/>
  52. <Cell col="7" text="처방일자"/>
  53. <Cell col="8" text="접수일자"/>
  54. <Cell col="9" text="M"/>
  55. <Cell col="10" text="T"/>
  56. <Cell col="11" text="P"/>
  57. <Cell col="12" text="판독의사"/>
  58. <Cell col="13" text="의뢰지번호"/>
  59. <Cell col="14" text="당일검체유무"/>
  60. </Band>
  61. <Band id="body">
  62. <Cell text="bind:instcd"/>
  63. <Cell col="1" text="bind:ptno"/>
  64. <Cell col="2" class="text_center" text="bind:dispptno"/>
  65. <Cell col="3" text="bind:prcpcd"/>
  66. <Cell col="4" text="bind:prcpnm"/>
  67. <Cell col="5" text="bind:spccd"/>
  68. <Cell col="6" text="bind:spcnm"/>
  69. <Cell col="7" class="text_center" text="bind:prcpdd" mask="yyyy-mm-dd"/>
  70. <Cell col="8" class="text_center" text="bind:acptdd" mask="yyyy-mm-dd"/>
  71. <Cell col="9" class="text_center" text="bind:extrpartcnts"/>
  72. <Cell col="10" class="text_center" text="bind:extrmthdcnts"/>
  73. <Cell col="11" class="text_center" text="bind:diagcnts"/>
  74. <Cell col="12" class="text_center" text="bind:readdrnm"/>
  75. <Cell col="13" text="bind:reqfrmno"/>
  76. <Cell col="14" text="bind:tdayspcyn"/>
  77. </Band>
  78. </Format>
  79. </Formats>
  80. </Grid>
  81. <Div position="absolute 0 0 945 35" align="align:center top;" id="grp_sea">
  82. <Layouts>
  83. <Layout>
  84. <Shape position="absolute 0 0 945 35" id="roundrect1" class="roundrect_search" type="roundrectangle"/>
  85. <Static text="처방일자 :" position="absolute 15 8 101 25" id="caption1" class="search_name"/>
  86. <Button position="absolute 874 7 930 29" id="btn_search" class="btn1" taborder="3" text="조회" onclick="grp_biz_grp_sea_btn_search_onclick"/>
  87. <Shape position="absolute 855 7 861 29" linetype="vertical" id="line13" class="line_4"/>
  88. <Static text="~" position="absolute 197 8 209 25" align="align:center middle;" id="caption3" class="search_no_b"/>
  89. <Calendar position="absolute 212 8 302 27" id="ipt_prcptodd" class="input_search" taborder="2"/>
  90. <Calendar position="absolute 104 8 194 27" id="ipt_prcpfromdd" class="input_search" taborder="1"/>
  91. </Layout>
  92. </Layouts>
  93. </Div>
  94. <CheckBox position="absolute 873 45 898 58" id="booltdayspcyn" onclick="grp_biz_booltdayspcyn_onclick" truevalue="1" falsevalue="0"/>
  95. <Static text="당일검체" position="absolute 895 45 945 58" id="caption4"/>
  96. </Layout>
  97. </Layouts>
  98. </Div>
  99. </Layout>
  100. </Layouts>
  101. <Objects>
  102. <Dataset id="ds_grd_prcpacptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  103. <ColumnInfo>
  104. <Column id="instcd" type="STRING"/>
  105. <Column id="ptno" type="STRING"/>
  106. <Column id="dispptno" type="STRING"/>
  107. <Column id="prcpcd" type="STRING"/>
  108. <Column id="prcpnm" type="STRING"/>
  109. <Column id="spccd" type="STRING"/>
  110. <Column id="spcnm" type="STRING"/>
  111. <Column id="prcpdd" type="STRING"/>
  112. <Column id="acptdd" type="STRING"/>
  113. <Column id="extrpartcnts" type="STRING"/>
  114. <Column id="extrmthdcnts" type="STRING"/>
  115. <Column id="diagcnts" type="STRING"/>
  116. <Column id="readdrnm" type="STRING"/>
  117. <Column id="reqfrmno" type="STRING"/>
  118. <Column id="tdayspcyn" type="STRING"/>
  119. </ColumnInfo>
  120. </Dataset>
  121. <Dataset id="ds_hidden_reqfrminfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  122. <Dataset id="ds_hidden_reqfrminfo_prcplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  123. <Dataset id="ds_choispclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  124. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  125. <Dataset id="ds_SMMMR03600_modalif" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" onvaluechanged="ds_SMMMR03600_modalif_onvaluechanged">
  126. <ColumnInfo>
  127. <Column id="openmode" type="STRING" size="256"/>
  128. <Column id="imgecd" type="STRING" size="256"/>
  129. <Column id="base64" type="BLOB"/>
  130. <Column id="shape" type="STRING" size="256"/>
  131. </ColumnInfo>
  132. <Rows>
  133. <Row>
  134. <Col id="openmode">OneImge</Col>
  135. <Col id="imgecd"/>
  136. <Col id="base64"/>
  137. <Col id="shape"/>
  138. </Row>
  139. </Rows>
  140. </Dataset>
  141. </Objects>
  142. <Bind>
  143. <BindItem id="item0" compid="grp_biz.booltdayspcyn" propid="value" datasetid="ds_temp" columnid="tdayspcyn"/>
  144. </Bind>
  145. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  146. * System Name :
  147. * Job Name :
  148. * Creator :
  149. * Make Date : 2015-05-19
  150. * Description :
  151. *---------------------------------------------------------------------------------------
  152. * Modify Date Modifier Modify Description
  153. *---------------------------------------------------------------------------------------
  154. * 2015-05-19 Live Converter TF->XP
  155. *
  156. *---------------------------------------------------------------------------------------
  157. ****************************************************************************************/
  158. include "com_commonxp::comm_main.xjs";
  159. var arErrorCode = new HashArray();
  160. var objDomParser;
  161. var objDOM;
  162. var objDOMImg;
  163. function lf_fExeInitialize() {
  164. dsf_createDs("ds_rslt_rtnvalinfo"); //저장결과
  165. objDomParser = new DomParser;
  166. objDOM = objDomParser.parseFromString("<reqfrminfo></reqfrminfo>");
  167. objDOMImg = objDomParser.parseFromString("<SMMMR03600_modalif></SMMMR03600_modalif>");
  168. var sTDay = utlf_getCurrentDate();
  169. dsf_createDsRow("ds_temp",
  170. [{col:"tdayspcyn" , type:"string", size:256, val:"0"}, // 당일검체
  171. {col:"spccd" , type:"string", size:256, val:""}, // 검체코드
  172. {col:"spcnm" , type:"string", size:256, val:""}, // 검체명
  173. {col:"reqfrmno" , type:"string", size:256, val:"0"}, // 의뢰지번호
  174. {col:"prcpfromdd" , type:"string", size:256, val:sTDay.toDate().getAddDate(-1,"D").getDateFormat("YYYYMMDD")},
  175. {col:"prcptodd" , type:"string", size:256, val:sTDay}
  176. ]);
  177. lf_fGetPrcpAcptList(grp_biz.grp_sea.ipt_prcpfromdd.value, grp_biz.grp_sea.ipt_prcptodd.value);
  178. }
  179. /* @group : 병리과처방팝업
  180. * @-----------------------------------
  181. * @type : function
  182. * @access : public
  183. * @desc : 처방접수목록을 검색 처리 Function
  184. */
  185. function lf_fGetPrcpAcptList(pFromDD, pToDD) {
  186. var bState = false;
  187. var iFindNo = 0;
  188. //var sNode = "/root/main/prcpacpt/prcpacptlist";
  189. //var sNodeT = "/root/hidden/reqfrminfo/prcp/prcplist";
  190. var sTestCd = "";
  191. //var sReqNode = "/root/main/reqfrm/reqfrmtbl/reqfrminfo/choispc/choispclist";
  192. //var reqnode = instance1.selectSingleNode("/root/main/reqfrm/reqfrmtbl/reqfrminfo");
  193. //--------------------------------------------------------------------------
  194. // 병리과 처방등록 팝업창에서 호출할 경우 반드시 등록번호가 존재하여야 한다.
  195. dsf_createDsRow("ds_send",
  196. [{col:"instcd" , type:"string", size:256, val:"0"}, // 당일검체
  197. {col:"pid" , type:"string", size:256, val:""}, // 검체코드
  198. {col:"prcpfromdd" , type:"string", size:256, val:pFromDD},
  199. {col:"prcptodd" , type:"string", size:256, val:pToDD}
  200. ]);
  201. //-------------------
  202. // 공백라인 삭제 처리
  203. ds_hidden_reqfrminfo_prcplist.filter("prcpcd!=''");
  204. //--------------------------
  205. // 처방 저장중인 자료를 검색
  206. if (ds_hidden_reqfrminfo_prcplist.rowcount > 0) {
  207. grp_biz.booltdayspcyn.value = "1";
  208. ds_temp.setColumn(0,"tdayspcyn", "1");
  209. ds_temp.setColumn(0,"spccd", "");
  210. ds_temp.setColumn(0,"spcnm", "");
  211. ds_temp.setColumn(0,"reqfrmno", "0");
  212. //-------------------------------------------
  213. iFindNo = lf_fExeFindRowTemp("PSU", "PCY", "Y");
  214. if (Number(iFindNo) > 0) {
  215. lf_fExeGridClickTemp(iFindNo, "Y");
  216. bState = true;
  217. } else {
  218. iFindNo = lf_fExeFindRowTemp("PSU", "PCY", "Y");
  219. if (Number(iFindNo) > 0) {
  220. lf_fExeGridClickTemp(iFindNo, "Y");
  221. bState = true;
  222. } else {
  223. if (ds_grd_prcpacptlist.rowcount > 0) {
  224. bState = false;
  225. } else {
  226. lf_fExeMakeReqNo(); // 이전 처방이 없을 경우 대표검체로 의뢰지 생성
  227. }
  228. }
  229. }
  230. }
  231. //-------------------
  232. // 이전 처방목록 검색
  233. if (ds_grd_prcpacptlist.rowcount > 0 && bState == false) {
  234. //-----------------------------------------------
  235. // 이전 처방중 조직처방이 존재할 경우 검체를 사용
  236. iFindNo = lf_fExeFindRow("PSU", "PCY", "Y"); // 당일 검체에서 조직처방 검색
  237. if (Number(iFindNo) > 0) {
  238. lf_fExeGridClick(iFindNo, "Y");
  239. } else {
  240. iFindNo = lf_fExeFindRow("PSU", "PCY", "Y"); // 당일 검체에서 세포처방 검색
  241. if (Number(iFindNo) > 0) {
  242. lf_fExeGridClick(iFindNo, "Y");
  243. } else {
  244. iFindNo = lf_fExeFindRow("PSU", "PCY", "Y"); // 이전 검체에서 조직처방 검색
  245. if (Number(iFindNo) > 0) {
  246. lf_fExeGridClick(iFindNo, "Y");
  247. } else {
  248. iFindNo = lf_fExeFindRow("PSU", "PCY", "Y"); // 이전 검체에서 세포처방 검색
  249. if (Number(iFindNo) > 0) {
  250. lf_fExeGridClick(iFindNo, "Y");
  251. } else {
  252. grp_biz.booltdayspcyn.value = "1";
  253. ds_temp.setColumn(0,"tdayspcyn", "1");
  254. ds_temp.setColumn(0,"spccd", "");
  255. ds_temp.setColumn(0,"spcnm", "");
  256. ds_temp.setColumn(0,"reqfrmno", "0");
  257. //--------------
  258. lf_fExeMakeReqNo();
  259. }
  260. }
  261. }
  262. }
  263. }
  264. }
  265. /* @group : 병리과처방팝업
  266. * @-----------------------------------
  267. * @type : function
  268. * @access : public
  269. * @desc : Other검체로 의뢰지 생성 처리 Function
  270. */
  271. function lf_fExeMakeReqNo() {
  272. //var sReqNode = "/root/main/reqfrm/reqfrmtbl/reqfrminfo/choispc/choispclist";
  273. //var reqnode = instance1.selectSingleNode("/root/main/reqfrm/reqfrmtbl/reqfrminfo");
  274. //var imgnode = instance1.selectSingleNode("/root/temp/SMMMR03600_modalif");
  275. var sPrcpCd = "";
  276. var iIndexOf = -1;
  277. var transXML = ds_SMMMR03600_modalif.saveXML();
  278. var XML_length = transXML.length;
  279. var startidx = transXML.indexOf("<Col id="+"\u0022"+"base64"+"\u0022"+">");
  280. var endidx = transXML.indexOf("<Col id="+"\u0022"+"shape"+"\u0022"+">");
  281. var BLOB_STRINNG = "<![CDATA["+transXML.substring(startidx+17,endidx-11)+"]]]]><![CDATA[>"
  282. if(ds_SMMMR03600_modalif.getColumn(0,"openmode") == "OneImge"){
  283. lgv_openmode = "<![CDATA["+ds_SMMMR03600_modalif.getColumn(0,"openmode")+"]]]]><![CDATA[>"
  284. lgv_imgecd = "<![CDATA["+ds_SMMMR03600_modalif.getColumn(0,"imgecd")+"]]]]><![CDATA[>"
  285. lgv_shape = "<![CDATA["+ds_SMMMR03600_modalif.getColumn(0,"shape")+"]]]]><![CDATA[>"
  286. }else{
  287. lgv_openmode = ""
  288. lgv_imgecd = ""
  289. lgv_shape = ""
  290. BLOB_STRINNG = ""
  291. }
  292. var imgnodeXmlText = "<SMMMR03600_modalif>"
  293. imgnodeXmlText = imgnodeXmlText + "<openmode>" + lgv_openmode + "</openmode>";
  294. imgnodeXmlText = imgnodeXmlText + "<imgecd>" + lgv_imgecd + "</imgecd>";
  295. imgnodeXmlText = imgnodeXmlText + "<base64>" + BLOB_STRINNG + "</base64>";
  296. imgnodeXmlText = imgnodeXmlText + "<shape>" + lgv_shape + "</shape>";
  297. imgnodeXmlText = imgnodeXmlText + "</SMMMR03600_modalif>"
  298. //-----------------------
  299. // 의뢰지 생성정보를 설정
  300. rptf_setValueToDOM(objDOM, "/reqfrminfo/reqcnts", "의뢰지 자동 생성");
  301. rptf_setValueToDOM(objDOM, "/reqfrminfo/choispc/choispclist/choi", "true");
  302. rptf_setValueToDOM(objDOM, "/reqfrminfo/choispc/choispclist/spcseqno", "001");
  303. rptf_setValueToDOM(objDOM, "/reqfrminfo/choispc/choispclist/spccd", "TZZ901");
  304. rptf_setValueToDOM(objDOM, "/reqfrminfo/choispc/choispclist/spccd2", "Other");
  305. var objParam = new Object();
  306. objParam.xml_data_XML1 = objDOM.documentElement.source;
  307. var sInDsName = dsf_createDsRow("ds_temp_search", [{
  308. col : "pid",
  309. val : ds_hidden_reqfrminfo.getColumn(0,"pid")
  310. }, {
  311. col : "reqno",
  312. val : "0"
  313. }, {
  314. col : "reqcnts",
  315. val : objParam.xml_data_XML1.replace("<![CDATA[","").replace("]]]]><![CDATA[>","")
  316. }, {
  317. col : "imgcnts",
  318. val : imgnodeXmlText
  319. }, {
  320. col : "instcd",
  321. val : sysf_getUserInfo("dutplceinstcd")
  322. }, {
  323. col : "scrno",
  324. val : "10"
  325. }, {
  326. col : "prcpdd",
  327. val : ds_hidden_reqfrminfo.getColumn(0,"tday")
  328. },
  329. {
  330. col : "scrnflagcd",
  331. val : "SPCREQ"
  332. }
  333. ]);
  334. tranf_submit({
  335. id : "TXLPJ01501",
  336. service : "plgyrelapplib.PlgyAcptLib",
  337. method : "reqExeReqFrmInfo",
  338. inds : "refData=" + sInDsName,
  339. outds : "ds_rslt_rtnvalinfo=reflist",
  340. callback : "cbf_SPLPJ01900",
  341. async : false
  342. });
  343. }
  344. function cbf_SPLPJ01900(strSvcID, nErrorCode, strErrorMag) {
  345. if(nErrorCode != 0)
  346. {
  347. sysf_messageBox("의뢰지 저장을", "E009");
  348. return false;
  349. }
  350. else {
  351. ds_temp.setColumn(0,"spccd", "T99999");
  352. ds_temp.setColumn(0,"spcnm", "Other");
  353. ds_temp.setColumn(0,"reqfrmno", ds_rslt_rtnvalinfo.getColumn(0,"lstreqno"));
  354. lf_fExeSave();
  355. }
  356. }
  357. /* @group : 병리과처방팝업
  358. * @-----------------------------------
  359. * @type : function
  360. * @access : public
  361. * @desc : 저장중인 처방목록 검색 처리 Function
  362. */
  363. function lf_fExeFindRowTemp(pFindStr, pFindStr2, pTDay) {
  364. var iFindNo = 0;
  365. //-------------------------------------------------------------
  366. // 처방 등록중인 내용이 없을 경우 Other(T99999)으로 검체를 설정
  367. if (ds_hidden_reqfrminfo_prcplist.rowcount <= 0) {
  368. // Continue
  369. } else {
  370. //-----------------------------------------------------
  371. for (var iNo=ds_hidden_reqfrminfo_prcplist.rowcount - 1; iNo >= 0; iNo--) {
  372. sTestCd = utlf_transNullToEmpty(ds_hidden_reqfrminfo_prcplist.getColumn(iNo,"prcpcd"));
  373. sTestCd = sTestCd.toUpperCase();
  374. //--------------------------------------------------------------------------
  375. if (sTestCd.substr(0, 3) == pFindStr || sTestCd.substr(0, 3) == pFindStr2) {
  376. iFindNo = iNo;
  377. break;
  378. }
  379. }
  380. }
  381. return iFindNo;
  382. }
  383. /* @group : 병리과처방팝업
  384. * @-----------------------------------
  385. * @type : function
  386. * @access : publicf
  387. * @desc : 이전 처방목록 검색 처리 Function
  388. */
  389. function lf_fExeFindRow(pFindStr, pFindStr2, pTDay) {
  390. var iFindNo = 0;
  391. //for (var iNo=1; iNo <= getNodesetCount(sNode); iNo++) {
  392. for (var iNo=ds_grd_prcpacptlist.rowcount - 1 ; iNo >= 0; iNo--) {
  393. if (ds_grd_prcpacptlist.getColumn(iNo,"tdayspcyn") == pTDay) {
  394. sTestCd = ds_grd_prcpacptlist.getColumn(iNo,"prcpcd");
  395. sTestCd = sTestCd.toUpperCase();
  396. //--------------------------------------------------------------------------
  397. if (sTestCd.substr(0, 3) == pFindStr || sTestCd.substr(0, 3) == pFindStr2) {
  398. iFindNo = iNo;
  399. break;
  400. }
  401. }
  402. }
  403. //-------------
  404. return iFindNo;
  405. }
  406. /* @group : 병리과처방팝업
  407. * @ver : 2007.06.01 (CMCDEV-0001)
  408. * @by : 유동철(ACK)
  409. * @-----------------------------------
  410. * @type : function
  411. * @access : public
  412. * @desc : 확인버튼 클릭 시 처리 Function
  413. */
  414. function lf_fExeSave() {
  415. var iRowNo = ds_grd_prcpacptlist.rowposition;
  416. //-------------------------------------------------
  417. if (ds_temp.getColumn(0,"reqfrmno") == "0") {
  418. if (ds_temp.getColumn(0,"tdayspcyn") != "1") {
  419. return false;
  420. }
  421. }
  422. opener.ds_hidden_reqfrminfo.setColumn(0,"reqno", ds_temp.getColumn(0,"reqfrmno"));
  423. opener.ds_hidden_reqfrminfo.setColumn(0,"spccd", ds_temp.getColumn(0,"spccd"));
  424. opener.ds_hidden_reqfrminfo.setColumn(0,"spcnm", ds_temp.getColumn(0,"spcnm"));
  425. opener.ds_hidden_reqfrminfo.setColumn(0,"tdayyn", ds_temp.getColumn(0,"tdayspcyn"));
  426. this.close();
  427. }
  428. /* @group : 병리과처방팝업
  429. * @-----------------------------------
  430. * @type : function
  431. * @access : public
  432. * @desc : 화면 닫기 Function
  433. */
  434. function lf_fExeClose() {
  435. this.close();
  436. }
  437. /* @group : 병리과처방팝업
  438. * @-----------------------------------
  439. * @type : function
  440. * @access : public
  441. * @desc : 당일검체 선택 시 처리 Function
  442. */
  443. function fExeTDaySpcChoice() {
  444. var bState = false;
  445. //var sSrcNode = "/root/main/prcpacpt/prcpacptlist";
  446. //----------------------------
  447. // 당일검체를 선택한 경우 처리
  448. // if (model.getValue("/root/temp/tdayspcyn") == "1") {
  449. //-------------------------------
  450. // 당일검체 선택 시 존재여부 검사
  451. for (var iRowNo=1; iRowNo <= getNodesetCount(sSrcNode); iRowNo++) {
  452. if (ds_grd_prcpacptlist.getColumn(iRowNo,"tdayspcyn") == "Y") {
  453. ds_temp.setColumn(0,"spccd", ds_grd_prcpacptlist.getColumn(iRowNo,"spccd"));
  454. ds_temp.setColumn(0,"spcnm", ds_grd_prcpacptlist.getColumn(iRowNo,"spcnm"));
  455. ds_temp.setColumn(0,"reqfrmno", ds_grd_prcpacptlist.getColumn(iRowNo,"reqfrmno"));
  456. bState = true;
  457. break;
  458. } else {
  459. ds_temp.setColumn(0,"spccd", "");
  460. ds_temp.setColumn(0,"/spcnm", "");
  461. ds_temp.setColumn(0,"reqfrmno", "0");
  462. }
  463. }
  464. //------------
  465. if (!bState) {
  466. sysf_messageBox("당일 검체가 존재하지 않습니다. 처방목록에서 처방을 선택하시거나 신규 처방을 ", "C001");
  467. return false;
  468. }
  469. //---------
  470. lf_fExeSave();
  471. // }
  472. }
  473. /* @group : 병리과처방팝업
  474. * @ver : 2007.06.01 (CMCDEV-0001)
  475. * @by : 유동철(ACK)
  476. * @-----------------------------------
  477. * @type : function
  478. * @access : public
  479. * @desc : 처방접수목록 그리드 클릭 시 처리 Function
  480. */
  481. function fExeGridClick(pRowNo, pBizFlag) {
  482. var sSrcNode = "/root/main/prcpacpt/prcpacptlist";
  483. //------------------------------------------------------------------------------------------
  484. ds_temp.setColumn(0,"spccd", ds_grd_prcpacptlist.getColumn(pRowNo,"spccd"));
  485. ds_temp.setColumn(0,"spcnm", ds_grd_prcpacptlist.getColumn(pRowNo,"spcnm"));
  486. ds_temp.setColumn(0,"reqfrmno", ds_grd_prcpacptlist.getColumn(pRowNo,"reqfrmno"));
  487. //------------------------------
  488. if (pBizFlag == "Y") fExeSave();
  489. }
  490. function lf_fExeGridClickTemp(pRowNo, pBizFlag) {
  491. //--------------------------------------------------------------------------------------------------
  492. ds_temp.setColumn(0,"spccd", ds_hidden_reqfrminfo_prcplist.getColumn(pRowNo, "drugmthdspccd"));
  493. ds_temp.setColumn(0,"spcnm", ds_hidden_reqfrminfo_prcplist.getColumn(pRowNo, "drugmthdspccdnm"));
  494. ds_temp.setColumn(0,"reqfrmno", ds_hidden_reqfrminfo_prcplist.getColumn(pRowNo, "testreqlnkno"));
  495. //------------------------------
  496. if (pBizFlag == "Y") lf_fExeSave();
  497. }
  498. function SPLPJ01900_onload(obj:Form, e:LoadEventInfo)
  499. {
  500. frmf_initForm(obj);
  501. ds_hidden_reqfrminfo.copyData(arg_ds_hidden_reqfrminfo);
  502. ds_hidden_reqfrminfo_prcplist.copyData(arg_ds_hidden_reqfrminfo_prcplist);
  503. lf_fExeInitialize();
  504. }
  505. function grp_btn_btn_cls_onclick(obj:Button, e:ClickEventInfo)
  506. {
  507. lf_fExeClose();
  508. }
  509. function grp_btn_btn_save_onclick(obj:Button, e:ClickEventInfo)
  510. {
  511. lf_fExeSave();
  512. }
  513. function grp_biz_grd_prcpacptlist_oncellclick(obj:Grid, e:GridClickEventInfo)
  514. {
  515. lf_fExeGridClick(grd_prcpacptlist.row, "N");
  516. }
  517. function grp_biz_grd_prcpacptlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  518. {
  519. lf_fExeGridClick(grd_prcpacptlist.row, "Y");
  520. }
  521. function grp_biz_grp_sea_btn_search_onclick(obj:Button, e:ClickEventInfo)
  522. {
  523. lf_fGetPrcpAcptList(grp_biz.grp_sea.ipt_prcpfromdd.value, grp_biz.grp_sea.ipt_prcptodd.value);
  524. }
  525. function grp_biz_booltdayspcyn_onclick(obj:CheckBox, e:ClickEventInfo)
  526. {
  527. lf_fExeTDaySpcChoice();
  528. }
  529. ]]></Script>
  530. </Form>
  531. </FDL>