SPMMO33510_OnCall현황.xfdl 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMMO33510" position="absolute 0 0 980 770" titletext="On Call 관리 (응급실, 수술실)" onload="SPMMO33510_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static text="On Call 내역" position="absolute 0 0 111 16" id="caption6" class="tit_1"/>
  8. <Div position="absolute 0 16 980 71" id="roundrect1" class="div_SA" anchor="left top right">
  9. <Layouts>
  10. <Layout/>
  11. </Layouts>
  12. </Div>
  13. <Calendar position="absolute 95 24 180 43" id="input3" autoselect="true" dateformat="yyyy-MM-dd" value="null"/>
  14. <Calendar position="absolute 195 24 280 43" id="input6" autoselect="true" dateformat="yyyy-MM-dd"/>
  15. <Static text="~" position="absolute 182 25 193 45" id="caption1"/>
  16. <Button position="absolute 853 33 909 55" id="button1" class="btn1" text="조회" anchor="top right" onclick="button1_onclick"/>
  17. <Shape position="absolute 834 28 840 60" linetype="vertical" id="line2" anchor="top right"/>
  18. <Shape position="absolute 0 76 980 82" linetype="horizontal" id="line9" class="line_10" anchor="left top right"/>
  19. <Static text="상 태:" position="absolute 295 25 370 42" id="caption2" class="search_name"/>
  20. <Grid position="absolute 0 81 980 770" align="align:center middle;" id="grd_oncalllist" binddataset="ds_main_oncalllist_info" anchor="all" autosizingtype="row" cellsizingtype="col" extendsizetype="row" selecttype="multirow">
  21. <Formats>
  22. <Format id="default">
  23. <Columns>
  24. <Column size="0"/>
  25. <Column size="0"/>
  26. <Column size="110"/>
  27. <Column size="60"/>
  28. <Column size="60"/>
  29. <Column size="60"/>
  30. <Column size="105"/>
  31. <Column size="30"/>
  32. <Column size="105"/>
  33. <Column size="105"/>
  34. <Column size="60"/>
  35. <Column size="40"/>
  36. <Column size="200"/>
  37. <Column size="300"/>
  38. </Columns>
  39. <Rows>
  40. <Row size="24" band="head"/>
  41. <Row size="24"/>
  42. </Rows>
  43. <Band id="head">
  44. <Cell text="saveflag"/>
  45. <Cell col="1" text="calldeptcd"/>
  46. <Cell col="2" text="진료과"/>
  47. <Cell col="3" text="진료의"/>
  48. <Cell col="4" text="등록번호"/>
  49. <Cell col="5" text="환자명"/>
  50. <Cell col="6" text="신청일시"/>
  51. <Cell col="7" colspan="2" text="시작시간" taborder="undefined"/>
  52. <Cell col="9" text="종료시간"/>
  53. <Cell col="10" text="소요(분)"/>
  54. <Cell col="11" text="상태"/>
  55. <Cell col="12" text="신청내용"/>
  56. <Cell col="13" text="작업내용"/>
  57. </Band>
  58. <Band id="body">
  59. <Cell text="bind:saveflag"/>
  60. <Cell col="1" text="bind:calldeptcd"/>
  61. <Cell col="2" text="bind:calldeptnm"/>
  62. <Cell col="3" text="bind:calldrnm"/>
  63. <Cell col="4" text="bind:pid"/>
  64. <Cell col="5" text="bind:hngnm"/>
  65. <Cell col="6" displaytype="normal" text="bind:appdt" mask="####-##-## ##:##"/>
  66. <Cell col="7" text="bind:arvdy"/>
  67. <Cell col="8" displaytype="normal" text="bind:arvdt" mask="####-##-## ##:##"/>
  68. <Cell col="9" displaytype="normal" text="bind:enddt" mask="####-##-## ##:##"/>
  69. <Cell col="10" text="bind:worktime"/>
  70. <Cell col="11" displaytype="combo" edittype="combo" style="align:center middle;" text="bind:statcd" combodataset="ds_init_statcd" combocodecol="value" combodatacol="label" enable="false"/>
  71. <Cell col="12" displaytype="text" text="bind:appcnts" wordwrap="char" autosizerow="limitmin"/>
  72. <Cell col="13" displaytype="text" text="bind:workcnts" wordwrap="char" autosizerow="limitmin"/>
  73. </Band>
  74. </Format>
  75. </Formats>
  76. </Grid>
  77. <Static text="신청일자:" position="absolute 10 25 80 42" id="caption3" class="search_name"/>
  78. <Static text="진 료 과:" position="absolute 10 47 91 64" id="caption4" class="search_name"/>
  79. <Static text="의 사:" position="absolute 295 47 374 64" id="caption5" class="search_name"/>
  80. <Combo position="absolute 370 47 510 66" id="cmb_orddr" class="combo_essential" taborder="3" innerdataset="ds_init_userlist" datacolumn="usernm" codecolumn="userid"/>
  81. <Combo position="absolute 95 47 280 66" id="cmb_orddept" class="combo_essential" taborder="2" innerdataset="ds_init_orddept" datacolumn="depthngnm" codecolumn="deptcd"/>
  82. <Static text="환자번호:" position="absolute 525 47 614 64" id="caption7" class="search_name"/>
  83. <Edit position="absolute 610 46 675 65" id="input1" autoselect="true"/>
  84. <Edit position="absolute 676 46 751 65" id="input2" enable="false" autoselect="true"/>
  85. <Button position="absolute 910 33 966 55" id="button2" class="btn7" text="엑셀" anchor="top right" onclick="button2_onclick"/>
  86. <cp_checkboxList id="checkbox1" taborder="5" scrollbars="none" position="absolute 370 24 515 44" style="background:transparent; " col="1" row="1" cellspacing="2" vcellspacing="0" itemWidth="100" itemHeight="20" overflow="visible"/>
  87. </Layout>
  88. </Layouts>
  89. <Objects>
  90. <Dataset id="ds_main_oncalllist_info" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_main_oncalllist_info_oncolumnchanged">
  91. <ColumnInfo>
  92. <Column id="saveflag" type="STRING"/>
  93. <Column id="calldeptcd" type="STRING"/>
  94. <Column id="calldeptnm" type="STRING"/>
  95. <Column id="calldrnm" type="STRING"/>
  96. <Column id="pid" type="STRING"/>
  97. <Column id="hngnm" type="STRING"/>
  98. <Column id="appdt" type="STRING"/>
  99. <Column id="arvdt" type="STRING"/>
  100. <Column id="enddt" type="STRING"/>
  101. <Column id="statcd" type="STRING"/>
  102. <Column id="appcnts" type="STRING"/>
  103. <Column id="workcnts" type="STRING"/>
  104. </ColumnInfo>
  105. </Dataset>
  106. <Dataset id="ds_init_userlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  107. <ColumnInfo>
  108. <Column id="usernm" type="STRING"/>
  109. <Column id="userid" type="STRING"/>
  110. </ColumnInfo>
  111. </Dataset>
  112. <Dataset id="ds_init_orddept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  113. <ColumnInfo>
  114. <Column id="depthngnm" type="STRING"/>
  115. <Column id="deptcd" type="STRING"/>
  116. </ColumnInfo>
  117. </Dataset>
  118. <Dataset id="ds_main_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  119. <ColumnInfo>
  120. <Column id="fromdd" type="STRING" size="256"/>
  121. <Column id="todd" type="STRING" size="256"/>
  122. <Column id="codnstat" type="STRING" size="256"/>
  123. <Column id="pid" type="STRING" size="256"/>
  124. <Column id="condflag" type="STRING" size="256"/>
  125. <Column id="stat" type="STRING" size="256"/>
  126. <Column id="condkind" type="STRING" size="256"/>
  127. <Column id="condacpt" type="STRING" size="256"/>
  128. <Column id="calldeptcd" type="STRING" size="256"/>
  129. <Column id="calldrid" type="STRING" size="256"/>
  130. </ColumnInfo>
  131. <Rows>
  132. <Row>
  133. <Col id="fromdd"/>
  134. <Col id="todd"/>
  135. <Col id="codnstat">E</Col>
  136. <Col id="pid"/>
  137. <Col id="condflag"/>
  138. <Col id="stat"/>
  139. </Row>
  140. </Rows>
  141. </Dataset>
  142. <Dataset id="ds_init_ckb" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  143. <ColumnInfo>
  144. <Column id="label" type="STRING" size="256"/>
  145. <Column id="value" type="STRING" size="256"/>
  146. </ColumnInfo>
  147. <Rows>
  148. <Row>
  149. <Col id="label">신청</Col>
  150. <Col id="value">A</Col>
  151. </Row>
  152. <Row>
  153. <Col id="label">도착</Col>
  154. <Col id="value">R</Col>
  155. </Row>
  156. <Row>
  157. <Col id="label">완료</Col>
  158. <Col id="value">E</Col>
  159. </Row>
  160. </Rows>
  161. </Dataset>
  162. <Dataset id="ds_main_oncallinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_oncallinfo_oncolumnchanged">
  163. <ColumnInfo>
  164. <Column id="calldeptcd" type="STRING" size="256"/>
  165. <Column id="calldrid" type="STRING" size="256"/>
  166. </ColumnInfo>
  167. <Rows>
  168. <Row>
  169. <Col id="calldeptcd"/>
  170. <Col id="calldrid"/>
  171. </Row>
  172. </Rows>
  173. </Dataset>
  174. <Dataset id="ds_init_statcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  175. <ColumnInfo>
  176. <Column id="label" type="STRING" size="256"/>
  177. <Column id="value" type="STRING" size="256"/>
  178. </ColumnInfo>
  179. <Rows>
  180. <Row>
  181. <Col id="label">신청</Col>
  182. <Col id="value">A</Col>
  183. </Row>
  184. <Row>
  185. <Col id="label">도착</Col>
  186. <Col id="value">R</Col>
  187. </Row>
  188. <Row>
  189. <Col id="label">완료</Col>
  190. <Col id="value">E</Col>
  191. </Row>
  192. </Rows>
  193. </Dataset>
  194. </Objects>
  195. <Bind>
  196. <BindItem id="item0" compid="input3" propid="value" datasetid="ds_main_cond" columnid="fromdd"/>
  197. <BindItem id="item1" compid="input6" propid="value" datasetid="ds_main_cond" columnid="todd"/>
  198. <BindItem id="item2" compid="cmb_orddr" propid="value" datasetid="ds_main_oncallinfo" columnid="calldrid"/>
  199. <BindItem id="item3" compid="cmb_orddept" propid="value" datasetid="ds_main_oncallinfo" columnid="calldeptcd"/>
  200. <BindItem id="item4" compid="input1" propid="value" datasetid="ds_main_cond" columnid="pid"/>
  201. </Bind>
  202. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  203. * System Name :
  204. * Job Name :
  205. * Creator :
  206. * Make Date : 2015-11-13
  207. * Description :
  208. *---------------------------------------------------------------------------------------
  209. * Modify Date Modifier Modify Description
  210. *---------------------------------------------------------------------------------------
  211. * 2015-11-13 Live Converter TF->XP
  212. *
  213. *---------------------------------------------------------------------------------------
  214. ****************************************************************************************/
  215. include "com_commonxp::comm_main.xjs";
  216. include "emr_prcpmngtxp::MMO001.xjs";
  217. include "emr_prcpmngtxp::SPMMO33200.xjs";
  218. //=======================================================================================
  219. // Global Form Variable
  220. //---------------------------------------------------------------------------------------
  221. var arErrorCode = new HashArray();
  222. //=======================================================================================
  223. // Function
  224. //---------------------------------------------------------------------------------------
  225. //=======================================================================================
  226. // Event
  227. //---------------------------------------------------------------------------------------
  228. /****************************************************************************************
  229. * Components : Form
  230. * Components ID : SPMMO33510
  231. * Event : onload
  232. * Argument : 01.obj : Object Event has occurred
  233. * : 02.e : Event Object
  234. * Description : 화면 초기화
  235. ****************************************************************************************/
  236. function SPMMO33510_onload(obj:Form, e:LoadEventInfo)
  237. {
  238. frmf_initForm(obj);
  239. fInitOnCall("V");
  240. var sProp="col=5,row=3,cellspacing=4,vcellspacing=0,itemWidth=-1,itemHeight=20,overflow='visible'";
  241. checkbox1.setInitComp(sProp, ds_init_ckb, "value", "label", "fn_cmpEvent");
  242. var aData = ds_main_cond.getColumn(0, "codnstat");
  243. checkbox1.enableevent = false;
  244. checkbox1.setData([aData]);
  245. checkbox1.enableevent = true;
  246. }
  247. function fn_cmpEvent(aa)
  248. {
  249. var rtn = checkbox1.getData();
  250. if( !utlf_isNull(rtn) ){
  251. rtn = rtn.toString().replace(",", " ");
  252. ds_main_cond.setColumn(0, "codnstat", rtn);
  253. }
  254. }
  255. /****************************************************************************************
  256. * Components : Button
  257. * Components ID : button1
  258. * Event : onclick
  259. * Argument : 01.obj : Object Event has occurred
  260. * : 02.e : Event Object
  261. * Description : OnCall 현황 조회
  262. ****************************************************************************************/
  263. function button1_onclick(obj:Button, e:ClickEventInfo)
  264. {
  265. ds_main_cond.setColumn(0, "condkind", "A");
  266. ds_main_cond.setColumn(0, "condacpt", "-");
  267. ds_main_cond.setColumn(0, "calldeptcd", ds_main_oncallinfo.getColumn(0, "calldeptcd"));
  268. ds_main_cond.setColumn(0, "calldrid", ds_main_oncallinfo.getColumn(0, "calldrid"));
  269. var gbn = utlf_transNullToEmpty(ds_main_cond.getColumn(0, "codnstat"));
  270. var gbnlist = gbn.split(" ");
  271. if (gbn.length>0) {
  272. for (var i=0; i<gbnlist.length;i++) {
  273. gbn = gbn.replace(" ","','");
  274. }
  275. gbn = "('" + gbn + "')";
  276. } else {
  277. sysf_messageBox("구분을 반드시 1개 이상 선택하십시오", "E999");
  278. return;
  279. }
  280. ds_main_cond.setColumn(0, "stat", gbn);
  281. fGetAfterOnCallList();
  282. }
  283. /****************************************************************************************
  284. * Components : Dataset
  285. * Components ID : ds_main_oncalllist_info
  286. * Event : oncolumnchanged
  287. * Argument : 01.obj : Object Event has occurred
  288. * : 02.e : Event Object
  289. * Description : Dataset event
  290. ****************************************************************************************/
  291. function ds_main_oncalllist_info_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  292. {
  293. if( e.row < 0 || e.col < 0 ) return;
  294. if( e.columnid == "statcd" ){
  295. if( e.newvalue != "E" ){
  296. alert("완료 상태가 아닙니다.");
  297. ds_main_oncalllist_info.setColumn(e.row, "acptyn", "N");
  298. return;
  299. }
  300. ds_main_oncalllist_info.setColumn(e.row, "saveflag", "U");
  301. }
  302. }
  303. /****************************************************************************************
  304. * Components : Dataset
  305. * Components ID : ds_main_oncallinfo
  306. * Event : oncolumnchanged
  307. * Argument : 01.obj : Object Event has occurred
  308. * : 02.e : Event Object
  309. * Description : Dataset event
  310. ****************************************************************************************/
  311. function ds_main_oncallinfo_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  312. {
  313. if( e.columnid == "calldeptcd" ){
  314. fGetOrdDrList();
  315. }
  316. }
  317. /****************************************************************************************
  318. * Components : Button
  319. * Components ID : button2
  320. * Event : onclick
  321. * Argument : 01.obj : Object Event has occurred
  322. * : 02.e : Event Object
  323. * Description : OnCall 현황 엑셀 저장
  324. ****************************************************************************************/
  325. function button2_onclick(obj:Button, e:ClickEventInfo)
  326. {
  327. var SheetName = "OnCall현황_" + utlf_transNullToEmpty(ds_main_cond.getColumn(0, "todd"));
  328. if(utlf_isNull(SheetName)) SheetName = "Sheet1";
  329. grdf_exportExcel(grd_oncalllist, SheetName, SheetName, true);
  330. }
  331. ]]></Script>
  332. </Form>
  333. </FDL>