SPMNW13900_통증관리처방기준자료팝업.xfdl 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMNW13900" position="absolute 0 0 834 477" titletext="통증관리 처방기준자료" oninit="SPMNW13900_oninit" onload="SPMNW13900_onload" onbeforeclose="SPMNW13900_onbeforeclose">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 0 827 477" id="group5" scrollbars="autoboth">
  8. <Layouts>
  9. <Layout>
  10. <Button position="absolute 785 0 827 19" id="button1" class="btn2" text="확인" onclick="group5_button1_onclick" anchor="default"/>
  11. <Static text="통증관리 처방기준자료" position="absolute 0 4 157 20" id="cap_title" class="tit_2" anchor="default"/>
  12. <Shape position="absolute 0 20 826 26" linetype="horizontal" id="line1" class="line_10" anchor="default"/>
  13. <Grid position="absolute 0 25 827 474" id="grd_painprcplist" binddataset="ds_main_painprcpinfo_painprcplist" anchor="default" autoenter="none" autofittype="col">
  14. <Formats>
  15. <Format id="default">
  16. <Columns>
  17. <Column size="0"/>
  18. <Column size="20"/>
  19. <Column size="140"/>
  20. <Column size="140"/>
  21. <Column size="40"/>
  22. <Column size="40"/>
  23. <Column size="40"/>
  24. <Column size="30"/>
  25. <Column size="30"/>
  26. <Column size="40"/>
  27. <Column size="49"/>
  28. <Column size="38"/>
  29. <Column size="250"/>
  30. <Column size="0"/>
  31. <Column size="0"/>
  32. <Column size="0"/>
  33. <Column size="0"/>
  34. <Column size="0"/>
  35. <Column size="0"/>
  36. <Column size="0"/>
  37. <Column size="0"/>
  38. </Columns>
  39. <Rows>
  40. <Row size="26" band="head"/>
  41. <Row size="24"/>
  42. </Rows>
  43. <Band id="head">
  44. <Cell text="상태"/>
  45. <Cell col="1"/>
  46. <Cell col="2" text="처방일시"/>
  47. <Cell col="3" text="수행일시"/>
  48. <Cell col="4" text="1일&#10;용량"/>
  49. <Cell col="5" colspan="2" text="1회용량" taborder="undefined"/>
  50. <Cell col="7" text="1일&#10;수량"/>
  51. <Cell col="8" colspan="2" text="1회수량" taborder="undefined"/>
  52. <Cell col="10" text="1일횟수"/>
  53. <Cell col="11" text="기간"/>
  54. <Cell col="12" text="처방명"/>
  55. <Cell col="13" text="처방코드"/>
  56. <Cell col="14" text="prcpdd"/>
  57. <Cell col="15" text="prcpno"/>
  58. <Cell col="16" text="prcphistno"/>
  59. <Cell col="17" text="pid"/>
  60. <Cell col="18" text="indd"/>
  61. <Cell col="19" text="cretno"/>
  62. <Cell col="20" text="pncdseq"/>
  63. </Band>
  64. <Band id="body">
  65. <Cell displaytype="combo" edittype="combo" text="bind:status"/>
  66. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:chk"/>
  67. <Cell col="2" style="align:left;" text="bind:prcpdt" tooltiptext="bind:prcpdt"/>
  68. <Cell col="3" style="align:left;" text="bind:execdt" tooltiptext="bind:execdt"/>
  69. <Cell col="4" style="align:right;" text="bind:prcpvol"/>
  70. <Cell col="5" style="align:right;linetype:onlyhorz;" text="bind:drprcpetc7"/>
  71. <Cell col="6" style="align:left;" text="bind:prcpvolunitflag"/>
  72. <Cell col="7" style="align:right;" text="bind:prcpqty"/>
  73. <Cell col="8" style="align:right;linetype:onlyhorz;" text="bind:drprcpetc8"/>
  74. <Cell col="9" style="align:left;" text="bind:prcpqtyunitflag"/>
  75. <Cell col="10" style="align:left;" text="bind:prcptims"/>
  76. <Cell col="11" style="align:left;" text="bind:prcpdayno"/>
  77. <Cell col="12" style="align:left;" text="bind:prcpnm"/>
  78. <Cell col="13" text="bind:prcpcd"/>
  79. <Cell col="14" text="bind:prcpdd"/>
  80. <Cell col="15" text="bind:prcpno"/>
  81. <Cell col="16" text="bind:prcphistno"/>
  82. <Cell col="17" text="bind:pid"/>
  83. <Cell col="18" text="bind:indd"/>
  84. <Cell col="19" text="bind:cretno"/>
  85. <Cell col="20" text="bind:pncdseq"/>
  86. </Band>
  87. </Format>
  88. </Formats>
  89. </Grid>
  90. </Layout>
  91. </Layouts>
  92. </Div>
  93. </Layout>
  94. </Layouts>
  95. <Objects>
  96. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  97. <ColumnInfo>
  98. <Column id="fromdd" type="STRING" size="256" sumtext="시작일자"/>
  99. <Column id="todd" type="STRING" size="256" sumtext="종료일자"/>
  100. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  101. <Column id="indd" type="STRING" size="256" sumtext="입원일"/>
  102. <Column id="cretno" type="STRING" size="256" sumtext="원무생성번호"/>
  103. <Column id="obsrecseq" type="STRING" size="256" sumtext="통증관리기록순번"/>
  104. <Column id="grupcd" type="STRING" size="256" sumtext="그룹코드"/>
  105. </ColumnInfo>
  106. <Rows>
  107. <Row/>
  108. </Rows>
  109. </Dataset>
  110. <Dataset id="ds_main_painprcpinfo_painprcplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_painprcpinfo_painprcplist_oncolumnchanged">
  111. <ColumnInfo>
  112. <Column id="status" type="STRING" size="256" sumtext="상태"/>
  113. <Column id="chk" type="STRING" size="256" sumtext="선택"/>
  114. <Column id="prcpdt" type="STRING" size="256" sumtext="처방일시"/>
  115. <Column id="execdt" type="STRING" size="256" sumtext="수행일시"/>
  116. <Column id="prcpvol" type="STRING" size="256" sumtext="처방용량"/>
  117. <Column id="prcpvolunitflag" type="STRING" size="256" sumtext="처방용량단위"/>
  118. <Column id="prcpqty" type="STRING" size="256" sumtext="처방수량"/>
  119. <Column id="prcpqtyunitflag" type="STRING" size="256" sumtext="처방수량단위"/>
  120. <Column id="prcptims" type="STRING" size="256" sumtext="처방횟수"/>
  121. <Column id="prcpdayno" type="STRING" size="256" sumtext="처방일수"/>
  122. <Column id="drprcpetc7" type="STRING" size="256" sumtext="처방용량"/>
  123. <Column id="drprcpetc8" type="STRING" size="256" sumtext="처방수량"/>
  124. <Column id="prcpnm" type="STRING" size="256" sumtext="처방내역"/>
  125. <Column id="prcpcd" type="STRING" size="256" sumtext="처방코드"/>
  126. <Column id="prcpdd" type="STRING" size="256" sumtext="처방일"/>
  127. <Column id="prcpno" type="INT" size="256" sumtext="처방번호"/>
  128. <Column id="prcphistno" type="INT" size="256" sumtext="처방이력번호"/>
  129. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  130. <Column id="indd" type="STRING" size="256" sumtext="입원일"/>
  131. <Column id="cretno" type="INT" size="256" sumtext="원무생성번호"/>
  132. <Column id="pncdseq" type="INT" size="256" sumtext="통증관리기준자료순번"/>
  133. </ColumnInfo>
  134. </Dataset>
  135. <Dataset id="ds_upflag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  136. <ColumnInfo>
  137. <Column id="upflag" type="STRING" size="256"/>
  138. </ColumnInfo>
  139. <Rows>
  140. <Row/>
  141. </Rows>
  142. </Dataset>
  143. </Objects>
  144. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  145. * System Name : 경대 의료정보시스템
  146. * Job Name : emr_wardcarexp -> SPMNW13900
  147. * Creator : yjh
  148. * Make Date : 2016-02-19
  149. * Description :
  150. *---------------------------------------------------------------------------------------
  151. * Modify Date Modifier Modify Description
  152. *---------------------------------------------------------------------------------------
  153. * 2016-02-19 yjh TF->XP
  154. *
  155. *---------------------------------------------------------------------------------------
  156. ****************************************************************************************/
  157. //=======================================================================================
  158. // Lib Include
  159. //---------------------------------------------------------------------------------------
  160. include "com_commonxp::comm_main.xjs";
  161. include "emr_prcpmngtxp::MMOCommon.xjs";
  162. //=======================================================================================
  163. // Global Form Variable
  164. //---------------------------------------------------------------------------------------
  165. var wincloseButton = false;
  166. //=======================================================================================
  167. // Function
  168. //---------------------------------------------------------------------------------------
  169. /****************************************************************************************
  170. * Argument : N/A
  171. * Description :
  172. ****************************************************************************************/
  173. function fInitialize(){
  174. ds_upflag.setColumn(0, "upflag", opener.frmf_getParameter("Upflag"));
  175. var recdd = opener.frmf_getParameter("SPMNW13900_PARAM_RECDD");
  176. var pid = opener.frmf_getParameter("SPMNW13900_PARAM_PID");
  177. var indd = opener.frmf_getParameter("SPMNW13900_PARAM_INDD");
  178. var cretno = opener.frmf_getParameter("SPMNW13900_PARAM_CRETNO");
  179. var painprcpinfo = utlf_transNullToEmpty(opener.frmf_getParameter("SPMNW13900_PARAM_PAINPRCPINFO"));
  180. // 통증기록순번, 그룹코드 추가
  181. var obsrecseq = opener.frmf_getParameter("SPMNW13900_PARAM_OBSRECSEQ");
  182. var grupcd = opener.frmf_getParameter("SPMNW13900_PARAM_GRUPCD");
  183. ds_main_painprcpinfo_painprcplist.clearData();
  184. ds_send.setColumn(0, "fromdd", recdd.toDate().getAddDate(-3,"D").getDateFormat());
  185. ds_send.setColumn(0, "todd", recdd);
  186. ds_send.setColumn(0, "pid", pid);
  187. ds_send.setColumn(0, "indd", indd);
  188. ds_send.setColumn(0, "cretno", cretno);
  189. ds_send.setColumn(0, "obsrecseq", obsrecseq);
  190. ds_send.setColumn(0, "grupcd", grupcd);
  191. var oParam = {};
  192. oParam.id = "TRMNW13801";
  193. oParam.service = "wardcareapp.WardPainCareMngt";
  194. oParam.method = "reqGetPainPrcpList";
  195. oParam.inds = "refCond=ds_send";
  196. oParam.outds = "ds_main_painprcpinfo_painprcplist=painprcplist";
  197. oParam.async = false;
  198. //oParam.callback = "cf_TRMNW13801";
  199. tranf_submit(oParam);
  200. ds_main_painprcpinfo_painprcplist.enableevent = false;
  201. ds_main_painprcpinfo_painprcplist.updatecontrol = false;
  202. for( var i=0 ; i<ds_main_painprcpinfo_painprcplist.rowcount ; i++ ){
  203. if( ds_main_painprcpinfo_painprcplist.getColumn(i, "chk") == "true" ){
  204. ds_main_painprcpinfo_painprcplist.setColumn(i, "chk", "1");
  205. }else{
  206. ds_main_painprcpinfo_painprcplist.setColumn(i, "chk", "0");
  207. }
  208. }
  209. ds_main_painprcpinfo_painprcplist.updatecontrol = true;
  210. ds_main_painprcpinfo_painprcplist.enableevent = true;
  211. var colHidnValue = lf_grdBaseColHidn("D");
  212. lf_grdBaseColHidn(colHidnValue, "group5.grd_painprcplist", 37, "prcpvol", "prcpqty", "drprcpetc7", "drprcpetc8");
  213. }
  214. //=======================================================================================
  215. // Event
  216. //---------------------------------------------------------------------------------------
  217. /****************************************************************************************
  218. * Components : Form
  219. * Components ID : SPMNW13900
  220. * Event : oninit
  221. * Argument : 01.obj : Object Event has occurred
  222. * : 02.e : Event Object
  223. * Description : 화면 처음 초기화시
  224. ****************************************************************************************/
  225. function SPMNW13900_oninit(obj:Form, e:InitEventInfo)
  226. {
  227. frmf_initForm(obj); //폼 초기화
  228. }
  229. /****************************************************************************************
  230. * Components : Form
  231. * Components ID : SPMNW13900
  232. * Event : onload
  233. * Argument : 01.obj : Object Event has occurred
  234. * : 02.e : Event Object
  235. * Description : 화면 로딩 완료시
  236. ****************************************************************************************/
  237. function SPMNW13900_onload(obj:Form, e:LoadEventInfo)
  238. {
  239. fInitialize();
  240. }
  241. /****************************************************************************************
  242. * Components : Form
  243. * Components ID : SPMNW13900
  244. * Event : onbeforeclose
  245. * Argument : 01.obj : Object Event has occurred
  246. * : 02.e : Event Object
  247. * Description : 화면 닫기전
  248. ****************************************************************************************/
  249. function SPMNW13900_onbeforeclose(obj:Form, e:CloseEventInfo)
  250. {
  251. if( !wincloseButton){
  252. opener.frmf_setParameter("returnnull","close");
  253. } else {
  254. opener.frmf_setParameter("returnnull","confirmbutton");
  255. }
  256. }
  257. /****************************************************************************************
  258. * Components : Dataset
  259. * Components ID : ds_main_painprcpinfo_painprcplist
  260. * Event : oncolumnchanged
  261. * Argument : 01.obj : Object Event has occurred
  262. * : 02.e : Event Object
  263. * Description : 데이터셋 값 변경시
  264. ****************************************************************************************/
  265. function ds_main_painprcpinfo_painprcplist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  266. {
  267. var status = ds_main_painprcpinfo_painprcplist.getColumn(e.row, "status");
  268. var chk = ds_main_painprcpinfo_painprcplist.getColumn(e.row, "chk");
  269. var pncdseq = ds_main_painprcpinfo_painprcplist.getColumn(e.row, "pncdseq");
  270. if(chk != "1") {
  271. if( !utlf_isNull(pncdseq) ){
  272. ds_main_painprcpinfo_painprcplist.setColumn(e.row, "status", "D");
  273. }else{
  274. ds_main_painprcpinfo_painprcplist.setColumn(e.row, "status", "-");
  275. }
  276. } else if(chk == "1") {
  277. if( !utlf_isNull(pncdseq) ){
  278. ds_main_painprcpinfo_painprcplist.setColumn(e.row, "status", "-");
  279. }else{
  280. ds_main_painprcpinfo_painprcplist.setColumn(e.row, "status", "I");
  281. }
  282. }
  283. }
  284. /****************************************************************************************
  285. * Components : Button
  286. * Components ID : button1
  287. * Event : onclick
  288. * Argument : 01.obj : Object Event has occurred
  289. * : 02.e : Event Object
  290. * Description : 확인버튼 클릭시
  291. ****************************************************************************************/
  292. function group5_button1_onclick(obj:Button, e:ClickEventInfo)
  293. {
  294. wincloseButton = true;
  295. opener.frmf_setParameter("SMMNW04800_PARAM", "Y");
  296. var PainPrcpInfoHeader = "status◆pid◆indd◆cretno◆pncdseq◆prcpdd◆prcpno◆prcphistno■";
  297. var PainPrcpInfoData = "";
  298. var ParamPainPrcpNm = "";
  299. var PainPrcpNm = "";
  300. var Status = "";
  301. var Chk = "";
  302. for( var i=0 ; i<ds_main_painprcpinfo_painprcplist.rowcount ; i++ ){
  303. Status = ds_main_painprcpinfo_painprcplist.getColumn(i, "status");
  304. Chk = ds_main_painprcpinfo_painprcplist.getColumn(i, "chk");
  305. //통증관리 처방기준자료 저장데이터
  306. if (Status == "I" || Status == "D") {
  307. PainPrcpInfoData += utlf_transNullToEmpty(ds_main_painprcpinfo_painprcplist.getColumn(i, "status")) +"◆"
  308. + utlf_transNullToEmpty(ds_main_painprcpinfo_painprcplist.getColumn(i, "pid")) +"◆"
  309. + utlf_transNullToEmpty(ds_main_painprcpinfo_painprcplist.getColumn(i, "indd")) +"◆"
  310. + utlf_transNullToEmpty(ds_main_painprcpinfo_painprcplist.getColumn(i, "cretno")) +"◆"
  311. + utlf_transNullToEmpty(ds_main_painprcpinfo_painprcplist.getColumn(i, "pncdseq")) +"◆"
  312. + utlf_transNullToEmpty(ds_main_painprcpinfo_painprcplist.getColumn(i, "prcpdd")) +"◆"
  313. + utlf_transNullToEmpty(ds_main_painprcpinfo_painprcplist.getColumn(i, "prcpno")) +"◆"
  314. + utlf_transNullToEmpty(ds_main_painprcpinfo_painprcplist.getColumn(i, "prcphistno")) +"■";
  315. }
  316. //통증관리기록 약물중재명 저장데이터
  317. if (Chk == "1") {
  318. PainPrcpNm = ds_main_painprcpinfo_painprcplist.getColumn(i, "prcpnm");
  319. if ( !utlf_isNull(ParamPainPrcpNm) ) {
  320. ParamPainPrcpNm = ParamPainPrcpNm + "," + PainPrcpNm;
  321. } else {
  322. ParamPainPrcpNm = PainPrcpNm;
  323. }
  324. }
  325. }
  326. if( utlf_isNull(ParamPainPrcpNm) ){
  327. ParamPainPrcpNm = "-";
  328. }
  329. opener.frmf_setParameter("SPMNW13900_PARAMPainPrcpInfo", PainPrcpInfoHeader + PainPrcpInfoData);
  330. opener.frmf_setParameter("SPMNW13900_PARAMPainPrcpNm", ParamPainPrcpNm);
  331. opener.frmf_setParameter("SPMNW13900_PARAUPFLAG", ds_upflag.getColumn(0, "upflag"));
  332. close();
  333. }
  334. ]]></Script>
  335. </Form>
  336. </FDL>