SMPMC02101_병문안객기록.xfdl 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMPMC02101_병문안객기록" classname="SMPMC02101_병문안객기록" inheritanceid="" position="absolute 0 0 1050 690" titletext="병문안객기록" oninit="SMPMC02101_oninit" onload="SMPMC02101_onload" onkeydown="SMPMC02101_병문안객기록_onkeydown">
  5. <Layouts>
  6. <Layout>
  7. <Static id="stt_titleText2" text="병문안객기록" onclick="caption00_onclick" position="absolute 0 0 173 25" class="tit_1"/>
  8. <Div id="div_search" anchor="left top right" taborder="1" style="align:center top;" class="div_SA" position="absolute 0 31 1043 69">
  9. <Layouts>
  10. <Layout width="1190" height="38">
  11. <Button id="btn_search" taborder="14" text="조회" onclick="div_search_btn_search_onclick" class="btn1" position="absolute 974 8 1030 28" anchor="top right"/>
  12. <Static id="caption2" text="조회조건" class="search_name" position="absolute 8 9 82 29" anchor="default"/>
  13. <Static id="caption01" text="초기화시 F9버튼을 눌러 주세요!" visible="true" position="absolute 762 9 957 29" anchor="default" style="color:#0000ffff;font:Dotum,9,bold;"/>
  14. <Static id="caption00" text="등록번호" class="search_name" position="absolute 248 9 315 29" anchor="default"/>
  15. <Radio id="rdo_srchcond" taborder="20" columncount="2" rowcount="0" position="absolute 85 9 232 29" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default" value="P" index="0" onitemchanged="div_search_rdo_srchcond_onitemchanged">
  16. <Dataset id="innerdataset">
  17. <ColumnInfo>
  18. <Column id="codecolumn" size="256"/>
  19. <Column id="datacolumn" size="256"/>
  20. </ColumnInfo>
  21. <Rows>
  22. <Row>
  23. <Col id="codecolumn">P</Col>
  24. <Col id="datacolumn">등록번호</Col>
  25. </Row>
  26. <Row>
  27. <Col id="codecolumn">D</Col>
  28. <Col id="datacolumn">방문기간</Col>
  29. </Row>
  30. </Rows>
  31. </Dataset>
  32. </Radio>
  33. <Static id="caption03" text="방문기간" class="search_name" position="absolute 451 9 525 29" anchor="default"/>
  34. <Calendar id="ipt_fromdd" taborder="21" position="absolute 529 9 629 29" anchor="default" enable="false" type="normal"/>
  35. <Calendar id="ipt_todd" taborder="22" position="absolute 643 9 743 29" anchor="default" enable="false"/>
  36. <Static id="Static00" text="~" position="absolute 630 9 643 29" style="align:center middle;" anchor="default"/>
  37. <Edit id="ipt_pid" taborder="23" position="absolute 326 9 426 29" onkeydown="div_search_ipt_pid_onkeydown"/>
  38. </Layout>
  39. </Layouts>
  40. </Div>
  41. <Static id="caption3" text="병문안객 리스트" class="tit_2" position="absolute 0 79 154 95"/>
  42. <Grid id="gd_visitorlist" taborder="3" binddataset="ds_visitorlist" useinputpanel="false" position="absolute 0 99 1043 657" tabstop="true" tooltiptype="default" autosizingtype="none" anchor="all" cellsizingtype="col" scrollpixel="all" cellsizebandtype="allband" autoenter="select">
  43. <Formats>
  44. <Format id="default">
  45. <Columns>
  46. <Column size="23" band="left"/>
  47. <Column size="40" band="left"/>
  48. <Column size="100"/>
  49. <Column size="0"/>
  50. <Column size="60"/>
  51. <Column size="70"/>
  52. <Column size="80"/>
  53. <Column size="0"/>
  54. <Column size="90"/>
  55. <Column size="100"/>
  56. <Column size="260"/>
  57. <Column size="0"/>
  58. <Column size="70"/>
  59. <Column size="150"/>
  60. </Columns>
  61. <Rows>
  62. <Row size="20" band="head"/>
  63. <Row size="30" band="head"/>
  64. <Row size="24"/>
  65. </Rows>
  66. <Band id="head">
  67. <Cell rowspan="2" text="S" taborder="undefined"/>
  68. <Cell col="1" rowspan="2" text="연번" taborder="undefined"/>
  69. <Cell col="2" rowspan="2" text="방문&#13;&#10;일자" taborder="undefined"/>
  70. <Cell col="3"/>
  71. <Cell col="4" rowspan="2" text="방문&#13;&#10;시각" taborder="undefined"/>
  72. <Cell col="5" colspan="2" text="환자정보" taborder="undefined"/>
  73. <Cell col="7"/>
  74. <Cell col="8" colspan="2" text="병문안객 정보" taborder="undefined"/>
  75. <Cell col="10" rowspan="2" text="비고 1)&#13;&#10;(감염병주의 단계 시 전화번호 기입)" taborder="undefined"/>
  76. <Cell col="11"/>
  77. <Cell col="12" rowspan="2" text="등록자" taborder="undefined"/>
  78. <Cell col="13" rowspan="2" text="등록일시" taborder="undefined"/>
  79. <Cell row="1" col="3"/>
  80. <Cell row="1" col="5" text="호실"/>
  81. <Cell row="1" col="6" text="이름"/>
  82. <Cell row="1" col="7"/>
  83. <Cell row="1" col="8" text="환자와의&#13;&#10;관계"/>
  84. <Cell row="1" col="9" text="이름"/>
  85. <Cell row="1" col="11"/>
  86. </Band>
  87. <Band id="body">
  88. <Cell celltype="head" expr="expr:ds_visitorlist.getRowType(currow)"/>
  89. <Cell col="1" celltype="head" expr="expr:currow + 1"/>
  90. <Cell col="2" displaytype="date" edittype="expr:ds_visitorlist.getRowType(currow) == 2 ? &quot;date&quot; : &quot;none&quot;" style="align:center;background:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : privacyyn=='Y'?'#FF99CC':'#ffffff');selectbackground:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : '');" text="bind:visitdd" mask="yyyy-MM-dd" tooltiptype="none"/>
  91. <Cell col="3" style="color:EXPR(EXPR(privacyyn=='Y'?'#FF99CC':'#000000'));color2:EXPR(EXPR(privacyyn=='Y'?'#FF99CC':'#000000'));" text="bind:instcd"/>
  92. <Cell col="4" displaytype="date" edittype="expr:ds_visitorlist.getRowType(currow) == 2 ? &quot;text&quot; : &quot;none&quot;" style="align:center;background:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : privacyyn=='Y'?'#FF99CC':'#ffffff');selectbackground:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : '');" text="bind:visittm" mask="HH:mm"/>
  93. <Cell col="5" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:roomcd"/>
  94. <Cell col="6" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:hngnm"/>
  95. <Cell col="7" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:privacyyn"/>
  96. <Cell col="8" displaytype="text" edittype="expr:ds_visitorlist.getRowType(currow) == 2 ? &quot;text&quot; : &quot;none&quot;" style="background:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : privacyyn=='Y'?'#FF99CC':'#ffffff');selectbackground:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : '');" text="bind:relative"/>
  97. <Cell col="9" displaytype="text" edittype="expr:ds_visitorlist.getRowType(currow) == 2 ? &quot;text&quot; : &quot;none&quot;" style="background:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : privacyyn=='Y'?'#FF99CC':'#ffffff');selectbackground:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : '');" text="bind:visitorhngnm" tooltiptype="bottom"/>
  98. <Cell col="10" displaytype="text" edittype="expr:ds_visitorlist.getRowType(currow) == 2 ? &quot;text&quot; : &quot;none&quot;" style="background:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : privacyyn=='Y'?'#FF99CC':'#ffffff');selectbackground:EXPR(ds_visitorlist.getRowType(currow) == 2 ? '#cefbc9ff' : '');" text="bind:remfact"/>
  99. <Cell col="11" text="bind:pid"/>
  100. <Cell col="12" text="bind:fstrgstridnm"/>
  101. <Cell col="13" displaytype="date" text="bind:fstrgstdt" mask="yyyy-MM-dd hh:mm:ss"/>
  102. </Band>
  103. </Format>
  104. </Formats>
  105. </Grid>
  106. <Button id="btn_init" taborder="4" text="초기화" onclick="grp_btn_btn_init_onclick" class="btn4" position="absolute 967 663 1035 685" anchor="right bottom" hotkey="F9"/>
  107. <Button id="btn_print" taborder="6" text="엑셀" class="btn7" position="absolute 983 75 1039 97" onclick="btn_print_onclick"/>
  108. <Button id="Button00" taborder="7" text="행추가" position="absolute 629 76 689 96" class="btn5" onclick="Button00_onclick"/>
  109. <Button id="Button01" taborder="8" text="선택행삭제" position="absolute 775 76 874 96" class="btn4" onclick="Button01_onclick"/>
  110. <Button id="Button02" taborder="9" text="신규저장" position="absolute 692 76 773 96" class="btn4" onclick="Button02_onclick"/>
  111. <Button id="Button03" taborder="10" text="보고서출력" position="absolute 881 76 981 96" onclick="Button03_onclick" class="btn6"/>
  112. </Layout>
  113. </Layouts>
  114. <Bind>
  115. <BindItem id="item2" compid="div_search.ipt_fromdd" propid="value" datasetid="ds_send" columnid="fromdd"/>
  116. <BindItem id="item3" compid="div_search.ipt_todd" propid="value" datasetid="ds_send" columnid="todd"/>
  117. <BindItem id="item1" compid="div_search.ipt_pid" propid="value" datasetid="ds_send" columnid="pid"/>
  118. </Bind>
  119. <Objects>
  120. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  121. <ColumnInfo>
  122. <Column id="srchcond" type="STRING" size="256" sumtext="구분"/>
  123. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  124. <Column id="fromdd" type="STRING" size="256" sumtext="시작일자"/>
  125. <Column id="todd" type="STRING" size="256" sumtext="종료일자"/>
  126. <Column id="visitdd" type="STRING" size="256" sumtext="방문일자"/>
  127. <Column id="visittm" type="STRING" size="256" sumtext="방문시간"/>
  128. <Column id="seqno" type="STRING" size="256" sumtext="연번"/>
  129. <Column id="visitorhngnm" type="STRING" size="256" sumtext="방문자성명"/>
  130. <Column id="relative" type="STRING" size="256" sumtext="관계"/>
  131. <Column id="roomcd" type="STRING" size="256" sumtext="병실"/>
  132. <Column id="remfact" type="STRING" size="256" sumtext="비고"/>
  133. <Column id="indd" type="STRING" size="256" sumtext="입원일자"/>
  134. <Column id="cretno" type="STRING" size="256" sumtext="생성번호"/>
  135. </ColumnInfo>
  136. <Rows>
  137. <Row/>
  138. </Rows>
  139. </Dataset>
  140. <Dataset id="ds_visitorlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  141. <ColumnInfo>
  142. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  143. <Column id="hngnm" type="STRING" size="256" sumtext="환자성명"/>
  144. <Column id="visitdd" type="STRING" size="256" sumtext="방문일자"/>
  145. <Column id="visittm" type="STRING" size="256" sumtext="방문시간"/>
  146. <Column id="visitorhngnm" type="STRING" size="256" sumtext="병문안객성명"/>
  147. <Column id="relative" type="STRING" size="256" sumtext="관계"/>
  148. <Column id="roomcd" type="STRING" size="256" sumtext="병실"/>
  149. <Column id="remfact" type="STRING" size="256" sumtext="비고"/>
  150. <Column id="seqno" type="STRING" size="256" sumtext="순번"/>
  151. <Column id="fstrgstridnm" type="STRING" size="256" sumtext="최초등록자"/>
  152. <Column id="fstrgstdt" type="STRING" size="256" sumtext="최초등록일시"/>
  153. <Column id="lastupdtridnm" type="STRING" size="256" sumtext="최종수정자"/>
  154. <Column id="lastupdtdt" type="STRING" size="256" sumtext="최종수정일시"/>
  155. <Column id="indd" type="STRING" size="256" sumtext="입원일자"/>
  156. <Column id="cretno" type="STRING" size="256" sumtext="생성번호"/>
  157. </ColumnInfo>
  158. </Dataset>
  159. <Dataset id="Dataset00" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  160. </Objects>
  161. <Script type="xscript4.0"><![CDATA[include "com_commonxp::comm_main.xjs";
  162. var arErrorCode = new HashArray();
  163. function SMPMC02101_oninit(obj:Form, e:InitEventInfo)
  164. {
  165. frmf_initForm(obj);
  166. }
  167. function SMPMC02101_onload(obj:Form, e:LoadEventInfo)
  168. {
  169. grdf_setRowTypeIcon(gd_visitorlist, 0);
  170. // 기본값 설정
  171. fInit();
  172. if ( frmf_checkOpener() ) {
  173. // 화면 연동시에만 자동 행추가 처리
  174. if (!utlf_isNull(opener.frmf_getParameter('SMPMC02101_PID'))
  175. && opener.frmf_getParameter('SMPMC02101_TYPE') == "I") {
  176. Button00.click();
  177. }
  178. }
  179. }
  180. /**
  181. 조회 버튼 클릭 이벤트
  182. */
  183. function div_search_btn_search_onclick(obj:Button, e:ClickEventInfo)
  184. {
  185. fSearch();
  186. }
  187. function fSearch()
  188. {
  189. //등록번호 입력안한 경우 알림
  190. if(div_search.rdo_srchcond.value == "P" && utlf_isNull(div_search.ipt_pid.value))
  191. {
  192. sysf_messageBox("등록번호를 입력하십시오.", "C000");
  193. return;
  194. }
  195. if(div_search.rdo_srchcond.value == "D" && (utlf_isNull(div_search.ipt_fromdd.value)
  196. || utlf_isNull(div_search.ipt_todd.value)))
  197. {
  198. sysf_messageBox("방문기간을 입력하십시오.", "C000");
  199. return;
  200. }
  201. ds_send.setColumn(0, "srchcond", div_search.rdo_srchcond.value);
  202. var oParam = {};
  203. oParam.id = "TRPMC02101";
  204. oParam.service = "patinfomngtapp.VisitUsePatRef";
  205. oParam.method = "reqGetVisitorList";
  206. oParam.inds = "req=ds_send";
  207. oParam.outds = "ds_visitorlist=visitorlist";
  208. oParam.async = "false";
  209. oParam.callback = "cf_TRPMC02101";
  210. tranf_submit(oParam);
  211. ds_visitorlist.rowposition = -1;
  212. if( arErrorCode.pop("TRPMC02101") > -1 )
  213. {
  214. //조회 결과가 없는 경우 알림
  215. var vaRowCount = ds_visitorlist.getRowCount();
  216. if(vaRowCount <1)
  217. {
  218. if (param != "I") {
  219. sysf_messageBox("조회된 결과가", "I004");
  220. }
  221. }
  222. }
  223. }
  224. /**
  225. 조회 콜백
  226. */
  227. function cf_TRPMC02101(sSvcId, nErrorCode, sErrorMsg)
  228. {
  229. arErrorCode.push(sSvcId, nErrorCode);
  230. }
  231. /**
  232. 초기화버튼 클릭
  233. */
  234. function grp_btn_btn_init_onclick(obj:Button, e:ClickEventInfo)
  235. {
  236. fInit();
  237. }
  238. function btn_print_onclick(obj:Button, e:ClickEventInfo)
  239. {
  240. //조회 결과가 없는 경우 알림
  241. var vaRowCount = ds_visitorlist.getRowCount();
  242. if(vaRowCount <1)
  243. {
  244. sysf_messageBox("조회된 결과가", "I004");
  245. }
  246. else
  247. {
  248. grdf_exportExcel(gd_visitorlist, "병문안객기록지", "SheetName", true, null, false);
  249. }
  250. }
  251. function SMPMC02101_병문안객기록_onkeydown(obj:Form, e:KeyEventInfo)
  252. {
  253. //초기화로 에디트 박스 및 그리드 내용 삭제
  254. if(e.keycode == '120')// f9누를 경우 초기화
  255. {
  256. fInit();
  257. }
  258. }
  259. function fInit() {
  260. //초기화로 에디트 박스 및 그리드 내용 삭제
  261. ds_visitorlist.clearData();
  262. ds_send.setColumn(0, 'fromdd', utlf_getCurrentDate().toDate().getAddDate(-30,"D").getDateFormat());
  263. ds_send.setColumn(0, 'todd', utlf_getCurrentDate());
  264. // 등록번호
  265. if (frmf_checkOpener()
  266. && !utlf_isNull(opener.frmf_getParameter('SMPMC02101_PID'))) {
  267. ds_send.setColumn(0, "pid", opener.frmf_getParameter('SMPMC02101_PID'));
  268. div_search.rdo_srchcond.value = 'P';
  269. ds_send.setColumn(0, "srchcond", "P");
  270. div_search.ipt_pid.enable = true;
  271. div_search.ipt_fromdd.enable = false;
  272. div_search.ipt_todd.enable = false;
  273. // 자동조회
  274. fSearch("P");
  275. // 방문기간 설정
  276. } else {
  277. div_search.rdo_srchcond.value = 'D';
  278. ds_send.setColumn(0, "srchcond", "D");
  279. div_search.ipt_pid.enable = false;
  280. div_search.ipt_fromdd.enable = true;
  281. div_search.ipt_todd.enable = true;
  282. // 자동조회
  283. fSearch("D");
  284. }
  285. }
  286. function Button00_onclick(obj:Button, e:ClickEventInfo)
  287. {
  288. if (frmf_checkOpener()) {
  289. if (ds_visitorlist.getRowType(ds_visitorlist.rowcount-1) == 2) {
  290. sysf_messageBox("행추가는 1행씩만 가능합니다.", "C000");
  291. return;
  292. }
  293. var pid = opener.frmf_getParameter('SMPMC02101_PID');
  294. if(utlf_isNull(pid)){
  295. sysf_messageBox("재원환자 정보가 전달되지 않았습니다.\r\n방문객용 재원환자 조회화면에서 환자를 선택하십시오.", "C000");
  296. return;
  297. }
  298. ds_visitorlist.addRow();
  299. ds_visitorlist.setColumn(ds_visitorlist.rowcount-1, "visitdd", utlf_getCurrentDate());
  300. ds_visitorlist.setColumn(ds_visitorlist.rowcount-1, "visittm", utlf_getCurrentTime().substr(0, 4));
  301. ds_visitorlist.setColumn(ds_visitorlist.rowcount-1, "pid", pid);
  302. ds_visitorlist.setColumn(ds_visitorlist.rowcount-1, "roomcd", opener.frmf_getParameter('SMPMC02101_ROOMCD'));
  303. ds_visitorlist.setColumn(ds_visitorlist.rowcount-1, "hngnm", opener.frmf_getParameter('SMPMC02101_HNGNM'));
  304. ds_visitorlist.setColumn(ds_visitorlist.rowcount-1, "indd", opener.frmf_getParameter('SMPMC02101_INDD'));
  305. ds_visitorlist.setColumn(ds_visitorlist.rowcount-1, "cretno", opener.frmf_getParameter('SMPMC02101_CRETNO'));
  306. } else {
  307. sysf_messageBox("재원환자 정보가 전달되지 않았습니다.\r\n방문객용 재원환자 조회화면을 통해 처리하십시오.", "C000");
  308. return;
  309. }
  310. }
  311. /**
  312. 삭제
  313. */
  314. function Button01_onclick(obj:Button, e:ClickEventInfo)
  315. {
  316. var row = gd_visitorlist.currentrow;
  317. if (utlf_isNull(ds_visitorlist.getColumn(row, "seqno"))) {
  318. sysf_messageBox("병문안객 정보가 없습니다.\r\n재조회 후 삭제하십시오.", "C000");
  319. return;
  320. }
  321. ds_send.setColumn(0, "visitdd", ds_visitorlist.getColumn(row, "visitdd"));
  322. ds_send.setColumn(0, "seqno", ds_visitorlist.getColumn(row, "seqno"));
  323. var oParam = {};
  324. oParam.id = "TXPMC02104";
  325. oParam.service = "patinfomngtapp.VisitUsePatRef";
  326. oParam.method = "reqDelVisitorInfo";
  327. oParam.inds = "req=ds_send";
  328. oParam.outds = "ds_visitorlist=visitorlist";
  329. oParam.async = "false";
  330. oParam.callback = "cf_TXPMC02104";
  331. tranf_submit(oParam);
  332. }
  333. function cf_TXPMC02104(sSvcId, nErrorCode, sErrorMsg)
  334. {
  335. sysf_messageBox("삭제되었습니다.", "I000");
  336. div_search.btn_search.click();
  337. }
  338. /**
  339. 신규저장
  340. */
  341. function Button02_onclick(obj:Button, e:ClickEventInfo)
  342. {
  343. if (ds_visitorlist.rowcount < 1) {
  344. sysf_messageBox("저장할 데이터가 없습니다.", "C000");
  345. return;
  346. }
  347. var row = gd_visitorlist.currentrow;
  348. if (ds_visitorlist.getRowType(row) != 2) {
  349. sysf_messageBox("행추가 상태일때만 저장 가능합니다.", "C000");
  350. return;
  351. }
  352. if (utlf_isNull(ds_visitorlist.getColumn(row, "relative"))) {
  353. sysf_messageBox("병문안객 환자와의 관계를 입력하십시오.", "C000");
  354. return;
  355. }
  356. if (utlf_isNull(ds_visitorlist.getColumn(row, "visitorhngnm"))) {
  357. sysf_messageBox("병문안객 이름을 입력하십시오.", "C000");
  358. return;
  359. }
  360. ds_send.setColumn(0, "pid", ds_visitorlist.getColumn(row, "pid"));
  361. ds_send.setColumn(0, "visitdd", ds_visitorlist.getColumn(row, "visitdd"));
  362. ds_send.setColumn(0, "visittm", ds_visitorlist.getColumn(row, "visittm"));
  363. ds_send.setColumn(0, "visitorhngnm", ds_visitorlist.getColumn(row, "visitorhngnm"));
  364. ds_send.setColumn(0, "relative", ds_visitorlist.getColumn(row, "relative"));
  365. ds_send.setColumn(0, "roomcd", ds_visitorlist.getColumn(row, "roomcd"));
  366. ds_send.setColumn(0, "remfact", ds_visitorlist.getColumn(row, "remfact"));
  367. ds_send.setColumn(0, "indd", ds_visitorlist.getColumn(row, "indd"));
  368. ds_send.setColumn(0, "cretno", ds_visitorlist.getColumn(row, "cretno"));
  369. var oParam = {};
  370. oParam.id = "TXPMC02102";
  371. oParam.service = "patinfomngtapp.VisitUsePatRef";
  372. oParam.method = "reqInsVisitorInfo";
  373. oParam.inds = "req=ds_send";
  374. oParam.outds = "ds_visitorlist=visitorlist";
  375. oParam.async = "false";
  376. oParam.callback = "cf_TXPMC02102";
  377. tranf_submit(oParam);
  378. }
  379. /**
  380. 신규저장 콜백
  381. */
  382. function cf_TXPMC02102(sSvcId, nErrorCode, sErrorMsg)
  383. {
  384. sysf_messageBox("신규저장되었습니다.", "I000");
  385. div_search.btn_search.click();
  386. }
  387. /**
  388. 보고서 출력
  389. */
  390. function Button03_onclick(obj:Button, e:ClickEventInfo)
  391. {
  392. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0";
  393. var objDOM = rptf_createDOM(); // DOM 객체 설정
  394. rptf_setNodeListToDOM(objDOM, "root/main/visitorlist", ds_visitorlist);
  395. rptf_exeReportPreview30(["RPPMC02101"], [{ xml_data_XML1: objDOM.documentElement.source }], option);
  396. }
  397. /**
  398. 환자번호 엔터키
  399. */
  400. function div_search_ipt_pid_onkeydown(obj:Edit, e:KeyEventInfo)
  401. {
  402. //엔터키 누른 경우 조회 기능
  403. if(e.keycode == 13)
  404. {
  405. obj.updateToDataset();
  406. fSearch();
  407. obj.setSelect();
  408. }
  409. }
  410. /**
  411. 조회조건 변경 시
  412. */
  413. function div_search_rdo_srchcond_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
  414. {
  415. if (e.postvalue == "P") {
  416. div_search.ipt_pid.enable = true;
  417. div_search.ipt_fromdd.enable = false;
  418. div_search.ipt_todd.enable = false;
  419. } else {
  420. div_search.ipt_pid.enable = false;
  421. div_search.ipt_fromdd.enable = true;
  422. div_search.ipt_todd.enable = true;
  423. }
  424. }
  425. ]]></Script>
  426. </Form>
  427. </FDL>