SMZSA30000_VDI사용자관리.xfdl 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMZSA30000" position="absolute 0 0 1195 767" titletext="VDI사용자관리" oninit="SMZSA30000_oninit" onload="SMZSA30000_onload">
  5. <Layouts>
  6. <Layout>
  7. <Tab position="absolute 0 40 398 747" id="switch1">
  8. <Tabpages>
  9. <Tabpage text="전체 직원" position="absolute 0 0 397 715" id="case1">
  10. <Layouts>
  11. <Layout>
  12. <Combo position="absolute 97 36 236 55" id="cmb_instcd" taborder="3" codecolumn="codecolumn" datacolumn="datacolumn">
  13. <Dataset id="innerdataset">
  14. <ColumnInfo>
  15. <Column id="codecolumn"/>
  16. <Column id="datacolumn"/>
  17. </ColumnInfo>
  18. <Rows>
  19. <Row>
  20. <Col id="codecolumn">031</Col>
  21. <Col id="datacolumn">경북대학교병원</Col>
  22. </Row>
  23. <Row>
  24. <Col id="codecolumn">032</Col>
  25. <Col id="datacolumn">칠곡경북대학교병원</Col>
  26. </Row>
  27. </Rows>
  28. </Dataset>
  29. </Combo>
  30. <Static text="기관" position="absolute 5 35 95 58" id="caption44" class="cell_1"/>
  31. <Static text="사용부서" position="absolute 5 60 95 83" id="caption10" class="cell_1"/>
  32. <Button position="absolute 240 62 256 78" id="btn_reqdeptcd" class="icon_search" taborder="4" text="" onclick="switch1_case1_btn_reqdeptcd_onclick"/>
  33. <Edit position="absolute 97 61 236 80" align="align:left middle;" id="ipt_reqdeptnm" class="input_essential" autoselect="true" autoskip="true" onlbuttondown="switch1_case1_ipt_reqdeptnm_onlbuttondown"/>
  34. <Edit position="absolute 97 86 201 105" id="ipt_reqmannm" class="input_essential" autoselect="true" autoskip="true" oneditclick="switch1_case1_ipt_reqmannm_oneditclick" onlbuttondown="switch1_case1_ipt_reqmannm_onlbuttondown"/>
  35. <Static text="사용자" position="absolute 5 85 95 108" id="caption17" class="cell_1"/>
  36. <Button position="absolute 205 87 221 103" id="btn_emplno" class="icon_search" taborder="5" text="" onclick="switch1_case1_btn_emplno_onclick"/>
  37. <Static text="사용시작일" position="absolute 5 110 95 133" id="cpt_startdd" class="cell_1"/>
  38. <Static text="사용종료일" position="absolute 5 135 95 158" id="cpt_enddd" class="cell_1"/>
  39. <Calendar position="absolute 97 112 227 131" align="align:center middle;" id="ipt_startdd" class="input_essential" mask="yyyy-mm-dd" autoselect="true" autoskip="true"/>
  40. <Calendar position="absolute 97 137 227 156" align="align:center middle;" id="ipt_enddd" class="input_essential" mask="yyyy-mm-dd" autoselect="true" autoskip="true"/>
  41. <Button position="absolute 333 8 389 30" id="button1" class="btn4" taborder="13" text="신청" onclick="switch1_case1_button1_onclick"/>
  42. <Static text="VDI 사용신청" position="absolute 5 14 185 37" id="caption18" class="tit_2"/>
  43. <Shape position="absolute 5 30 388 36" linetype="horizontal" id="line10" class="line_10"/>
  44. <Shape position="absolute 5 157 390 163" linetype="horizontal" id="line2" class="line_2"/>
  45. <Static text="~" position="absolute 230 115 245 135" id="caption19"/>
  46. </Layout>
  47. </Layouts>
  48. </Tabpage>
  49. <Tabpage text="휴진 의사" position="absolute 0 0 394 715" id="case2">
  50. <Layouts>
  51. <Layout>
  52. <Div id="group5" taborder="1" position="absolute 0 3 396 83" class="div_SA2">
  53. <Layouts>
  54. <Layout>
  55. <Static id="caption3" text="기관" class="search_name" position="absolute 7 8 101 25"/>
  56. <CheckBox id="chk_inst032" taborder="1" position="absolute 171 6 216 26" text="칠곡" truevalue="true" onclick="switch1_case2_group5_chk_inst032_onclick"/>
  57. <CheckBox id="chk_inst031" taborder="2" position="absolute 121 6 166 26" text="본원" truevalue="true" onclick="switch1_case2_group5_chk_inst031_onclick"/>
  58. <Static id="caption2" text="휴진의사 이름" class="search_name" position="absolute 7 32 116 49"/>
  59. <Edit id="input3" taborder="3" position="absolute 121 30 193 49" autoselect="true" autoskip="true"/>
  60. <Edit id="input1" taborder="4" position="absolute 121 54 193 73" autoselect="true" autoskip="true"/>
  61. <Static id="caption4" text="휴진의사 사번" class="search_name" position="absolute 7 56 116 73"/>
  62. <Shape id="line13" linetype="vertical" position="absolute 307 8 313 69"/>
  63. <Button id="btn_search" taborder="5" text="조회" class="btn1" position="absolute 320 28 376 50" onclick="switch1_case2_group5_btn_search_onclick"/>
  64. </Layout>
  65. </Layouts>
  66. </Div>
  67. <Shape id="line8" linetype="horizontal" class="line_10" position="absolute 0 111 393 117"/>
  68. <Static id="caption5" text="출장자 리스트" class="tit_2" position="absolute 0 95 145 116"/>
  69. <Grid id="grd_offictourlist" class="datagrid2" taborder="2" binddataset="ds_main_offictourinfo_offictourlist" useinputpanel="false" position="absolute 0 116 393 676" autoenter="select" autofittype="col" cellsizingtype="col" oncelldblclick="switch1_case2_grd_offictourlist_oncelldblclick">
  70. <Formats>
  71. <Format id="default">
  72. <Columns>
  73. <Column size="40"/>
  74. <Column size="55"/>
  75. <Column size="45"/>
  76. <Column size="45"/>
  77. <Column size="66"/>
  78. <Column size="66"/>
  79. <Column size="55"/>
  80. </Columns>
  81. <Rows>
  82. <Row size="30" band="head"/>
  83. <Row size="24"/>
  84. </Rows>
  85. <Band id="head">
  86. <Cell text="기관"/>
  87. <Cell col="1" text="의사&#10;성명"/>
  88. <Cell col="2" text="의사&#10;사번"/>
  89. <Cell col="3" text="휴진&#10;사유"/>
  90. <Cell col="4" text="시작일자"/>
  91. <Cell col="5" text="종료일자"/>
  92. <Cell col="6" text="VDI&#10;신쳥여부"/>
  93. </Band>
  94. <Band id="body">
  95. <Cell text="bind:instnm"/>
  96. <Cell col="1" text="bind:orddrnm"/>
  97. <Cell col="2" text="bind:orddrid"/>
  98. <Cell col="3" text="bind:ordendresn"/>
  99. <Cell col="4" displaytype="date" text="bind:fromdd" mask="yyyy/MM/dd" calendardisplaynulltype="nulltext"/>
  100. <Cell col="5" displaytype="date" text="bind:todd" mask="yyyy/MM/dd" calendardisplaynulltype="nulltext"/>
  101. <Cell col="6" text="bind:vdiappyn"/>
  102. </Band>
  103. </Format>
  104. </Formats>
  105. </Grid>
  106. </Layout>
  107. </Layouts>
  108. </Tabpage>
  109. </Tabpages>
  110. </Tab>
  111. <Static id="caption1" text="VDI 사용자 관리" class="tit_1" position="absolute 0 0 189 25"/>
  112. <Div id="group4" taborder="1" position="absolute 405 37 1190 117" class="div_SA2">
  113. <Layouts>
  114. <Layout>
  115. <Static id="caption7" text="사용자명" class="search_name" position="absolute 9 8 103 25"/>
  116. <Edit id="input2" taborder="1" position="absolute 116 6 188 25" autoselect="true" autoskip="true"/>
  117. <Static id="caption9" text="사용자ID" class="search_name" position="absolute 233 9 335 26"/>
  118. <Edit id="input4" taborder="2" position="absolute 315 7 387 26" autoselect="true" autoskip="true"/>
  119. <Static id="caption11" text="신청자" class="search_name" position="absolute 403 9 485 26"/>
  120. <Edit id="input7" taborder="3" position="absolute 487 7 574 26" autoselect="true" autoskip="true"/>
  121. <Radio id="rdo_gubundetl" taborder="4" columncount="-1" rowcount="-1" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 488 32 654 52">
  122. <Dataset id="innerdataset">
  123. <ColumnInfo>
  124. <Column id="codecolumn"/>
  125. <Column id="datacolumn"/>
  126. </ColumnInfo>
  127. <Rows>
  128. <Row>
  129. <Col id="codecolumn">A</Col>
  130. <Col id="datacolumn">전체</Col>
  131. </Row>
  132. <Row>
  133. <Col id="codecolumn">Y</Col>
  134. <Col id="datacolumn">승인</Col>
  135. </Row>
  136. <Row>
  137. <Col id="codecolumn">N</Col>
  138. <Col id="datacolumn">미승인</Col>
  139. </Row>
  140. </Rows>
  141. </Dataset>
  142. </Radio>
  143. <Static id="caption16" text="승인여부" class="search_name" position="absolute 403 33 497 50"/>
  144. <Static id="caption8" text="기관" class="search_name" position="absolute 403 57 497 74"/>
  145. <CheckBox id="chk_inst031_2" taborder="5" position="absolute 489 55 534 75" text="본원" truevalue="true" onclick="group4_chk_inst031_2_onclick"/>
  146. <CheckBox id="chk_inst032_2" taborder="6" position="absolute 539 55 584 75" text="칠곡" truevalue="true" onclick="group4_chk_inst032_2_onclick"/>
  147. <Calendar id="input10" taborder="7" position="absolute 236 57 336 76" autoselect="true" autoskip="true"/>
  148. <Calendar id="input11" taborder="8" position="absolute 116 57 216 76" autoselect="true" autoskip="true"/>
  149. <Static id="caption15" text="~" position="absolute 221 56 236 76"/>
  150. <Static id="caption13" text="~" position="absolute 221 31 236 51"/>
  151. <Calendar id="input9" taborder="9" position="absolute 116 32 216 51" autoselect="true" autoskip="true"/>
  152. <Calendar id="input8" taborder="10" position="absolute 236 32 336 51" autoselect="true" autoskip="true"/>
  153. <Static id="caption12" text="시작종료일자" class="search_name" position="absolute 9 32 111 49"/>
  154. <Static id="caption14" text="신청일자" class="search_name" position="absolute 9 57 89 74"/>
  155. <Button id="btn_searchVdi" taborder="11" text="조회" class="btn1" position="absolute 721 29 777 51" onclick="group4_btn_searchVdi_onclick"/>
  156. <Shape id="line4" linetype="vertical" position="absolute 703 9 709 74"/>
  157. </Layout>
  158. </Layouts>
  159. </Div>
  160. <Static id="caption6" text="VDI 신청자 리스트" class="tit_2" position="absolute 405 126 550 147"/>
  161. <Shape id="line1" linetype="horizontal" class="line_10" position="absolute 405 142 1190 148"/>
  162. <Button id="btn_confirm" taborder="2" text="승인" class="btn4" visible="false" position="absolute 1073 120 1129 142" onclick="btn_confirm_onclick"/>
  163. <Button id="btn_save" taborder="3" text="저장" class="btn4" position="absolute 1133 120 1189 142" onclick="btn_save_onclick"/>
  164. <Grid id="grd_vdireqlist" taborder="4" binddataset="ds_main_vdireqinfo_vdireqlist" useinputpanel="false" position="absolute 405 147 1190 743" autoenter="select" cellsizingtype="col" autofittype="col" oncellclick="grd_vdireqlist_oncellclick">
  165. <Formats>
  166. <Format id="default">
  167. <Columns>
  168. <Column size="22"/>
  169. <Column size="22"/>
  170. <Column size="45"/>
  171. <Column size="90"/>
  172. <Column size="80"/>
  173. <Column size="110"/>
  174. <Column size="85"/>
  175. <Column size="85"/>
  176. <Column size="90"/>
  177. <Column size="80"/>
  178. <Column size="60"/>
  179. <Column size="0"/>
  180. <Column size="0"/>
  181. <Column size="0"/>
  182. <Column size="0"/>
  183. <Column size="0"/>
  184. <Column size="0"/>
  185. <Column size="0"/>
  186. </Columns>
  187. <Rows>
  188. <Row size="24" band="head"/>
  189. <Row size="24"/>
  190. </Rows>
  191. <Band id="head">
  192. <Cell/>
  193. <Cell col="1"/>
  194. <Cell col="2" text="기관"/>
  195. <Cell col="3" text="사용자명"/>
  196. <Cell col="4" text="사용자ID"/>
  197. <Cell col="5" text="부서"/>
  198. <Cell col="6" text="시작일자"/>
  199. <Cell col="7" text="종료일자"/>
  200. <Cell col="8" text="신청자"/>
  201. <Cell col="9" text="신청일자"/>
  202. <Cell col="10" text="승인여부"/>
  203. <Cell col="11" text="p_instcd"/>
  204. <Cell col="12" text="p_orddrid"/>
  205. <Cell col="13" text="p_orddeptcd"/>
  206. <Cell col="14" text="p_holiflag"/>
  207. <Cell col="15" text="p_seqno"/>
  208. <Cell col="16" text="orddeptcd"/>
  209. <Cell col="17" text="dgdtserl"/>
  210. </Band>
  211. <Band id="body">
  212. <Cell celltype="head"/>
  213. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:chk" expr="expr:chk == 'true' ? 1 : 0"/>
  214. <Cell col="2" text="bind:instnm"/>
  215. <Cell col="3" text="bind:prfnm"/>
  216. <Cell col="4" text="bind:prfid"/>
  217. <Cell col="5" text="bind:orddeptnm"/>
  218. <Cell col="6" displaytype="date" edittype="text" style="align:center middle;" text="bind:fromdd" mask="yyyy/MM/dd" calendardisplaynulltype="nulltext"/>
  219. <Cell col="7" displaytype="date" edittype="text" style="align:center middle;" text="bind:todd" mask="yyyy/MM/dd" calendardisplaynulltype="nulltext"/>
  220. <Cell col="8" text="bind:reqpsn"/>
  221. <Cell col="9" displaytype="date" style="align:center middle;" text="bind:appdd" mask="yyyy/MM/dd" calendardisplaynulltype="nulltext"/>
  222. <Cell col="10" text="bind:aprvyn"/>
  223. <Cell col="11" text="bind:p_instcd"/>
  224. <Cell col="12" text="bind:p_orddrid"/>
  225. <Cell col="13" text="bind:p_orddeptcd"/>
  226. <Cell col="14" text="bind:p_holiflag"/>
  227. <Cell col="15" text="bind:p_seqno"/>
  228. <Cell col="16" text="bind:orddeptcd"/>
  229. <Cell col="17" text="bind:dgdtserl"/>
  230. </Band>
  231. </Format>
  232. </Formats>
  233. </Grid>
  234. <Button id="btn_addrow" taborder="5" text="행추가" class="btn2" visible="false" position="absolute 1078 744 1131 763"/>
  235. <Button id="btn_delrow" taborder="6" text="행삭제" class="btn2" visible="false" position="absolute 1137 744 1190 763"/>
  236. </Layout>
  237. </Layouts>
  238. <Objects>
  239. <Dataset id="ds_main_requserinfo_requserlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_requserinfo_requserlist_oncolumnchanged">
  240. <ColumnInfo>
  241. <Column id="instcd" type="STRING" size="256"/>
  242. <Column id="reqdeptcd" type="STRING" size="256"/>
  243. <Column id="reqdeptnm" type="STRING" size="256"/>
  244. <Column id="reqmanid" type="STRING" size="256"/>
  245. <Column id="reqmannm" type="STRING" size="256"/>
  246. <Column id="startdd" type="STRING" size="256"/>
  247. <Column id="enddd" type="STRING" size="256"/>
  248. </ColumnInfo>
  249. <Rows>
  250. <Row>
  251. <Col id="instcd"/>
  252. <Col id="reqdeptcd"/>
  253. <Col id="reqdeptnm"/>
  254. <Col id="reqmanid"/>
  255. <Col id="reqmannm"/>
  256. <Col id="startdd"/>
  257. <Col id="enddd"/>
  258. </Row>
  259. </Rows>
  260. </Dataset>
  261. <Dataset id="ds_send_searchvdi" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  262. <ColumnInfo>
  263. <Column id="inst031" type="STRING" size="256"/>
  264. <Column id="inst032" type="STRING" size="256"/>
  265. <Column id="instcd" type="STRING" size="256"/>
  266. <Column id="orddrnm" type="STRING" size="256"/>
  267. <Column id="orddrid" type="STRING" size="256"/>
  268. <Column id="reqpsn" type="STRING" size="256"/>
  269. <Column id="aprvyn" type="STRING" size="256"/>
  270. <Column id="fromdd" type="STRING" size="256"/>
  271. <Column id="todd" type="STRING" size="256"/>
  272. <Column id="fromappdd" type="STRING" size="256"/>
  273. <Column id="toappdd" type="STRING" size="256"/>
  274. </ColumnInfo>
  275. <Rows>
  276. <Row>
  277. <Col id="inst031"/>
  278. <Col id="inst032"/>
  279. <Col id="instcd"/>
  280. <Col id="orddrnm"/>
  281. <Col id="orddrid"/>
  282. <Col id="reqpsn"/>
  283. <Col id="aprvyn"/>
  284. <Col id="fromdd"/>
  285. <Col id="todd"/>
  286. <Col id="fromappdd"/>
  287. <Col id="toappdd"/>
  288. </Row>
  289. </Rows>
  290. </Dataset>
  291. <Dataset id="ds_main_vdireqinfo_vdireqlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_vdireqinfo_vdireqlist_oncolumnchanged">
  292. <ColumnInfo>
  293. <Column id="chk" type="STRING" size="256" sumtext="체크여부"/>
  294. <Column id="instnm" type="STRING" size="256" sumtext="출장의사근무기관"/>
  295. <Column id="appdd" type="STRING" size="256" sumtext="신청일자"/>
  296. <Column id="prfid" type="STRING" size="256" sumtext="의사ID"/>
  297. <Column id="prfnm" type="STRING" size="256" sumtext="의사이름"/>
  298. <Column id="dgdtserl" type="STRING" size="256" sumtext="일련번호"/>
  299. <Column id="cnclyn" type="STRING" size="256" sumtext="승인여부"/>
  300. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과코드"/>
  301. <Column id="orddeptnm" type="STRING" size="256" sumtext="진료과명"/>
  302. <Column id="fromdd" type="STRING" size="256" sumtext="사용시작일자"/>
  303. <Column id="todd" type="STRING" size="256" sumtext="사용종료일자"/>
  304. <Column id="reqpsn" type="STRING" size="256" sumtext="신청자"/>
  305. <Column id="aprvyn" type="STRING" size="256" sumtext="승인여부"/>
  306. <Column id="p_instcd" type="STRING" size="256" sumtext="기관코드(PAM.PMBMHOLI JOIN용)"/>
  307. <Column id="p_orddrid" type="STRING" size="256" sumtext="진료의사ID(PAM.PMBMHOLI JOIN용)"/>
  308. <Column id="p_orddeptcd" type="STRING" size="256" sumtext="진료과코드(PAM.PMBMHOLI JOIN용)"/>
  309. <Column id="p_holiflag" type="STRING" size="256" sumtext="휴진구분(PAM.PMBMHOLI JOIN용)"/>
  310. <Column id="p_seqno" type="STRING" size="256" sumtext="일련번호(PAM.PMBMHOLI JOIN용)"/>
  311. </ColumnInfo>
  312. </Dataset>
  313. <Dataset id="ds_send_searchoffictour" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  314. <ColumnInfo>
  315. <Column id="inst031" type="STRING" size="256"/>
  316. <Column id="inst032" type="STRING" size="256"/>
  317. <Column id="instcd" type="STRING" size="256"/>
  318. <Column id="orddrid" type="STRING" size="256"/>
  319. <Column id="orddrnm" type="STRING" size="256"/>
  320. </ColumnInfo>
  321. <Rows>
  322. <Row>
  323. <Col id="inst031"/>
  324. <Col id="inst032"/>
  325. <Col id="instcd"/>
  326. <Col id="orddrid"/>
  327. <Col id="orddrnm"/>
  328. </Row>
  329. </Rows>
  330. </Dataset>
  331. <Dataset id="ds_main_offictourinfo_offictourlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  332. <ColumnInfo>
  333. <Column id="instnm" type="STRING" size="256" sumtext="휴진의사근무기관"/>
  334. <Column id="orddrid" type="STRING" size="256" sumtext="휴진의사ID"/>
  335. <Column id="orddrnm" type="STRING" size="256" sumtext="휴진의사이름"/>
  336. <Column id="orddeptcd" type="STRING" size="256" sumtext="휴진의사부서코드"/>
  337. <Column id="orddeptnm" type="STRING" size="256" sumtext="휴진의사부서명"/>
  338. <Column id="fromdd" type="STRING" size="256" sumtext="휴진시작일자"/>
  339. <Column id="todd" type="STRING" size="256" sumtext="휴진종료일자"/>
  340. <Column id="ordendresn" type="STRING" size="256" sumtext="휴진사유"/>
  341. <Column id="vdiappyn" type="STRING" size="256" sumtext="VDI신청여부"/>
  342. <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
  343. <Column id="holiflag" type="STRING" size="256" sumtext="휴진구분"/>
  344. <Column id="seqno" type="STRING" size="256" sumtext="일련번호"/>
  345. </ColumnInfo>
  346. </Dataset>
  347. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  348. <ColumnInfo>
  349. <Column id="gubun" type="STRING" size="256"/>
  350. </ColumnInfo>
  351. </Dataset>
  352. <Dataset id="ds_hidden_onerowselect_list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  353. <Dataset id="ds_send_save_requserlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  354. </Objects>
  355. <Bind>
  356. <BindItem id="item0" compid="switch1.case1.cmb_instcd" propid="value" datasetid="ds_main_requserinfo_requserlist" columnid="instcd"/>
  357. <BindItem id="item1" compid="switch1.case1.ipt_reqdeptnm" propid="value" datasetid="ds_main_requserinfo_requserlist" columnid="reqdeptnm"/>
  358. <BindItem id="item2" compid="switch1.case1.ipt_reqmannm" propid="value" datasetid="ds_main_requserinfo_requserlist" columnid="reqmannm"/>
  359. <BindItem id="item3" compid="switch1.case1.ipt_startdd" propid="value" datasetid="ds_main_requserinfo_requserlist" columnid="startdd"/>
  360. <BindItem id="item4" compid="switch1.case1.ipt_enddd" propid="value" datasetid="ds_main_requserinfo_requserlist" columnid="enddd"/>
  361. <BindItem id="item5" compid="group4.input2" propid="value" datasetid="ds_send_searchvdi" columnid="orddrnm"/>
  362. <BindItem id="item6" compid="group4.input4" propid="value" datasetid="ds_send_searchvdi" columnid="orddrid"/>
  363. <BindItem id="item7" compid="group4.input7" propid="value" datasetid="ds_send_searchvdi" columnid="reqpsn"/>
  364. <BindItem id="item8" compid="group4.rdo_gubundetl" propid="value" datasetid="ds_send_searchvdi" columnid="aprvyn"/>
  365. <BindItem id="item9" compid="group4.input8" propid="value" datasetid="ds_send_searchvdi" columnid="todd"/>
  366. <BindItem id="item10" compid="group4.input9" propid="value" datasetid="ds_send_searchvdi" columnid="fromdd"/>
  367. <BindItem id="item11" compid="group4.input11" propid="value" datasetid="ds_send_searchvdi" columnid="fromappdd"/>
  368. <BindItem id="item12" compid="group4.input10" propid="value" datasetid="ds_send_searchvdi" columnid="toappdd"/>
  369. <BindItem id="item13" compid="group4.chk_inst031_2" propid="value" datasetid="ds_send_searchvdi" columnid="inst031"/>
  370. <BindItem id="item14" compid="group4.chk_inst032_2" propid="value" datasetid="ds_send_searchvdi" columnid="inst032"/>
  371. <BindItem id="item15" compid="switch1.case2.group5.chk_inst031" propid="value" datasetid="ds_send_searchoffictour" columnid="inst031"/>
  372. <BindItem id="item16" compid="switch1.case2.group5.chk_inst032" propid="value" datasetid="ds_send_searchoffictour" columnid="inst032"/>
  373. <BindItem id="item17" compid="switch1.case2.group5.input3" propid="value" datasetid="ds_send_searchoffictour" columnid="orddrnm"/>
  374. <BindItem id="item18" compid="switch1.case2.group5.input1" propid="value" datasetid="ds_send_searchoffictour" columnid="orddrid"/>
  375. </Bind>
  376. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  377. * System Name :
  378. * Job Name :
  379. * Creator :
  380. * Make Date : 2016-05-24
  381. * Description :
  382. *---------------------------------------------------------------------------------------
  383. * Modify Date Modifier Modify Description
  384. *---------------------------------------------------------------------------------------
  385. * 2016-05-24 Live Converter TF->XP
  386. *
  387. *---------------------------------------------------------------------------------------
  388. ****************************************************************************************/
  389. include "com_commonxp::comm_main.xjs";
  390. include "mis_miscommonxp::MIS.xjs";
  391. function SMZSA30000_oninit(obj:Form, e:InitEventInfo)
  392. {
  393. frmf_initForm(obj);
  394. }
  395. function SMZSA30000_onload(obj:Form, e:LoadEventInfo)
  396. {
  397. grdf_initGrid(switch1.case2.grd_offictourlist);
  398. grdf_initGrid(grd_vdireqlist);
  399. grdf_setRowTypeIcon(grd_vdireqlist, 0);
  400. fInitialize();
  401. }
  402. function fInitialize()
  403. {
  404. ds_main_offictourinfo_offictourlist.clearData();
  405. ds_main_vdireqinfo_vdireqlist.clearData();
  406. var dutplcecd = sysf_getUserInfo("dutplcecd");
  407. if( dutplcecd == "4130116000" )
  408. {
  409. btn_confirm.visible = true;
  410. }
  411. else
  412. {
  413. ds_send_searchvdi.setColumn(0, "orddrid", sysf_getUserId());
  414. ds_send_searchvdi.setColumn(0, "orddrnm", sysf_getUserName());
  415. }
  416. ds_send_searchoffictour.setColumn(0, "orddrid", sysf_getUserId());
  417. ds_send_searchoffictour.setColumn(0, "orddrnm", sysf_getUserName());
  418. ds_send_searchvdi.setColumn(0, "aprvyn", "A");
  419. fSearchOffictour();
  420. dsf_makeValue(ds_main_requserinfo_requserlist, "reqdd", "string", utlf_getCurrentDate(), 0);
  421. dsf_makeValue(ds_main_requserinfo_requserlist, "gubun", "string", ds_hidden.getColumn(0, "gubun"), 0);
  422. dsf_makeValue(ds_main_requserinfo_requserlist, "instcd", "string", sysf_getUserInfo("dutplceinstcd"), 0);
  423. ds_main_requserinfo_requserlist.setColumn(0, "reqmanid", sysf_getUserId());
  424. ds_main_requserinfo_requserlist.setColumn(0, "reqmannm", sysf_getUserName());
  425. ds_main_requserinfo_requserlist.setColumn(0, "reqdeptcd", sysf_getUserInfo("dutplcecd"));
  426. ds_main_requserinfo_requserlist.setColumn(0, "reqdeptnm", sysf_getUserInfo("dutplcenm"));
  427. ds_main_requserinfo_requserlist.setColumn(0, "startdd", utlf_getCurrentDate());
  428. ds_main_requserinfo_requserlist.setColumn(0, "enddd", utlf_getCurrentDate());
  429. }
  430. function ds_main_requserinfo_requserlist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  431. {
  432. if(e.columnid == "reqdeptnm")
  433. {
  434. dsf_createDsRow("ds_send_auth", [{col:"instcd", type:"STRING", size:256 , val : ds_main_requserinfo_requserlist.getColumn(0, "instcd")}
  435. , {col:"reqdeptcd", type:"STRING", size:256 , val : ds_main_requserinfo_requserlist.getColumn(0, "reqdeptcd")}]);
  436. var oParam = {};
  437. oParam.id = "TRZHA20011";
  438. oParam.service = "reqprgmapp.ReqPrgm";
  439. oParam.method = "reqGetDeptMgrList";
  440. oParam.inds = "req=ds_send_auth";
  441. oParam.outds = "ds_=deptmgrlist";
  442. oParam.async = false;
  443. //oParam.callback = "cf_TRZHA20011";
  444. tranf_submit(oParam);
  445. }
  446. }
  447. function switch1_case1_btn_reqdeptcd_onclick(obj:Button, e:ClickEventInfo)
  448. {
  449. var recv_list = "reqdeptcd,reqdeptnm";
  450. misfOpenPopUpList("02", ds_main_requserinfo_requserlist,"", recv_list, ds_main_requserinfo_requserlist.getColumn(0, "instcd"),"instcd") ;
  451. }
  452. function switch1_case1_btn_emplno_onclick(obj:Button, e:ClickEventInfo)
  453. {
  454. frmf_modal("SPZSU10103", "SPZSU10103", "", "", "", "", "", "", "", "", "", "", "M");
  455. var iParam = opener.frmf_getParameter("SPZSU10103_");
  456. if(!utlf_isNull(iParam))
  457. {
  458. ds_hidden_onerowselect_list.clearData();
  459. dsf_setCSVToDs("ds_hidden_onerowselect_list", iParam);
  460. ds_main_requserinfo_requserlist.setColumn(0, "reqmanid", ds_hidden_onerowselect_list.getColumn(0, "userid"));
  461. ds_main_requserinfo_requserlist.setColumn(0, "reqmannm", ds_hidden_onerowselect_list.getColumn(0, "usernm"));
  462. var rtn = sysf_messageBox("기관과 부서까지 ", "Q009");
  463. if(rtn == 6)
  464. {
  465. ds_main_requserinfo_requserlist.setColumn(0, "instcd", ds_hidden_onerowselect_list.getColumn(0, "dutplceinstcd"));
  466. ds_main_requserinfo_requserlist.setColumn(0, "reqdeptcd", ds_hidden_onerowselect_list.getColumn(0, "dutplcecd"));
  467. ds_main_requserinfo_requserlist.setColumn(0, "reqdeptnm", ds_hidden_onerowselect_list.getColumn(0, "reqdeptnm"));
  468. }
  469. frmf_clearParameter("SPZSU10103_");
  470. }
  471. }
  472. function fSearchOffictour()
  473. {
  474. var oParam = {};
  475. oParam.id = "TRZSA30000";
  476. oParam.service = "authinfoapp.VdiInfo";
  477. oParam.method = "reqOfficTourList";
  478. oParam.inds = "req=ds_send_searchoffictour";
  479. oParam.outds = "ds_main_offictourinfo_offictourlist=offictourlist";
  480. oParam.async = false;
  481. //oParam.callback = "cf_TRZSA30000";
  482. tranf_submit(oParam);
  483. }
  484. function switch1_case1_ipt_reqmannm_onlbuttondown(obj:Edit, e:MouseEventInfo)
  485. {
  486. obj.setFocus();
  487. switch1.case1.btn_emplno.click();
  488. }
  489. function switch1_case1_ipt_reqdeptnm_onlbuttondown(obj:Edit, e:MouseEventInfo)
  490. {
  491. obj.setFocus();
  492. switch1.case1.btn_emplno.click();
  493. }
  494. function switch1_case1_button1_onclick(obj:Button, e:ClickEventInfo)
  495. {
  496. //tranf_submit-alert();
  497. fSaveUser();
  498. }
  499. function fSaveUser()
  500. {
  501. if(utlf_isNull(ds_main_requserinfo_requserlist.getColumn(0, "instcd").toString().getTrim()))
  502. {
  503. sysf_messageBox("기관은 ", "I003");
  504. return false;
  505. }
  506. if(utlf_isNull(ds_main_requserinfo_requserlist.getColumn(0, "reqdeptnm").toString().getTrim()))
  507. {
  508. sysf_messageBox("사용부서는 ", "I003");
  509. return false;
  510. }
  511. if(utlf_isNull(ds_main_requserinfo_requserlist.getColumn(0, "reqmannm").toString().getTrim()))
  512. {
  513. sysf_messageBox("사용자는 ", "I003");
  514. return false;
  515. }
  516. if(utlf_isNull(ds_main_requserinfo_requserlist.getColumn(0, "startdd").toString().getTrim()))
  517. {
  518. sysf_messageBox("사용시작일은 ", "I003");
  519. return false;
  520. }
  521. if(utlf_isNull(ds_main_requserinfo_requserlist.getColumn(0, "enddd").toString().getTrim()))
  522. {
  523. sysf_messageBox("사용종료일은 ", "I003");
  524. return false;
  525. }
  526. if(sysf_messageBox("", "Q014") == 7)
  527. {
  528. return;
  529. }
  530. ds_send_save_requserlist.clearData();
  531. var prfid = ds_main_requserinfo_requserlist.getColumn(0, "reqmanid");
  532. var orddeptcd = ds_main_requserinfo_requserlist.getColumn(0, "reqdeptcd");
  533. var fromdd = ds_main_requserinfo_requserlist.getColumn(0, "startdd");
  534. var todd = ds_main_requserinfo_requserlist.getColumn(0, "enddd");
  535. var instcd = ds_main_requserinfo_requserlist.getColumn(0, "instcd");
  536. dsf_makeValue(ds_send_save_requserlist, "prfid", "string", prfid, 0);
  537. dsf_makeValue(ds_send_save_requserlist, "orddeptcd", "string", orddeptcd, 0);
  538. dsf_makeValue(ds_send_save_requserlist, "fromdd", "string", fromdd, 0);
  539. dsf_makeValue(ds_send_save_requserlist, "todd", "string", todd, 0);
  540. dsf_makeValue(ds_send_save_requserlist, "p_instcd", "string", instcd, 0);
  541. var oParam = {};
  542. oParam.id = "TXZSA30002";
  543. oParam.service = "authinfoapp.VdiInfo";
  544. oParam.method = "reqExeSaveVdiUser";
  545. oParam.inds = "req=ds_send_save_requserlist";
  546. oParam.outds = "";
  547. oParam.async = false;
  548. oParam.callback = "cf_TXZSA30002";
  549. tranf_submit(oParam);
  550. }
  551. function cf_TXZSA30002(sSvcId, nErrorCode, sErrorMsg)
  552. {
  553. if(nErrorCode < 0)
  554. {
  555. return;
  556. }
  557. else
  558. {
  559. fSearchVdi();
  560. }
  561. }
  562. function fSearchVdi()
  563. {
  564. ds_main_vdireqinfo_vdireqlist.clearData();
  565. var oParam = {};
  566. oParam.id = "TRZSA30001";
  567. oParam.service = "authinfoapp.VdiInfo";
  568. oParam.method = "reqVdiReqList";
  569. oParam.inds = "req=ds_send_searchvdi";
  570. oParam.outds = "ds_main_vdireqinfo_vdireqlist=vdireqlist";
  571. oParam.async = false;
  572. //oParam.callback = "cf_TRZSA30001";
  573. tranf_submit(oParam);
  574. }
  575. function switch1_case2_group5_chk_inst031_onclick(obj:CheckBox, e:ClickEventInfo)
  576. {
  577. if(obj.value == "true")
  578. {
  579. }
  580. else
  581. {
  582. ds_send_searchoffictour.setColumn(0, "inst031", "");
  583. }
  584. fCheckInstcd();
  585. }
  586. function switch1_case2_group5_chk_inst032_onclick(obj:CheckBox, e:ClickEventInfo)
  587. {
  588. if(obj.value == "true")
  589. {
  590. }
  591. else
  592. {
  593. ds_send_searchoffictour.setColumn(0, "inst032", "");
  594. }
  595. fCheckInstcd();
  596. }
  597. function fCheckInstcd()
  598. {
  599. if (switch1.case2.group5.chk_inst031.value == "true" && switch1.case2.group5.chk_inst032.value != "true")
  600. {
  601. ds_send_searchoffictour.setColumn(0, "instcd", "031");
  602. }
  603. else if (chk_inst031.value != "true" && chk_inst032.value == "true")
  604. {
  605. ds_send_searchoffictour.setColumn(0, "instcd", "032");
  606. }
  607. else
  608. {
  609. ds_send_searchoffictour.setColumn(0, "instcd", "");
  610. }
  611. }
  612. function switch1_case2_group5_btn_search_onclick(obj:Button, e:ClickEventInfo)
  613. {
  614. fSearchOffictour();
  615. }
  616. function switch1_case2_grd_offictourlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  617. {
  618. var vdiappyn = ds_main_offictourinfo_offictourlist.getColumn(e.row, "vdiappyn");
  619. if( vdiappyn == "Y")
  620. {
  621. }
  622. else
  623. {
  624. var addRow = ds_main_vdireqinfo_vdireqlist.addRow();
  625. var orddrnm = ds_main_offictourinfo_offictourlist.getColumn(e.row, "orddrnm");
  626. var orddrid = ds_main_offictourinfo_offictourlist.getColumn(e.row, "orddrid");
  627. var orddeptcd = ds_main_offictourinfo_offictourlist.getColumn(e.row, "orddeptcd");
  628. var orddeptnm = ds_main_offictourinfo_offictourlist.getColumn(e.row, "orddeptnm");
  629. var fromdd = ds_main_offictourinfo_offictourlist.getColumn(e.row, "fromdd");
  630. var todd = ds_main_offictourinfo_offictourlist.getColumn(e.row, "todd");
  631. var vdiappyn = ds_main_offictourinfo_offictourlist.getColumn(e.row, "vdiappyn");
  632. var instcd = ds_main_offictourinfo_offictourlist.getColumn(e.row, "instcd");
  633. var instnm = ds_main_offictourinfo_offictourlist.getColumn(e.row, "instnm");
  634. var holiflag = ds_main_offictourinfo_offictourlist.getColumn(e.row, "holiflag");
  635. var seqno = ds_main_offictourinfo_offictourlist.getColumn(e.row, "seqno");
  636. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "instnm", instnm);
  637. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "prfnm", orddrnm);
  638. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "prfid", orddrid);
  639. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "fromdd", fromdd);
  640. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "todd", todd);
  641. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "aprvyn", vdiappyn);
  642. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "p_instcd", instcd);
  643. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "p_orddrid", orddrid);
  644. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "p_orddeptcd", orddeptcd);
  645. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "orddeptcd", orddeptcd);
  646. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "orddeptnm", orddeptnm);
  647. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "p_holiflag", holiflag);
  648. ds_main_vdireqinfo_vdireqlist.setColumn(addRow, "p_seqno", seqno);
  649. }
  650. }
  651. function group4_chk_inst031_2_onclick(obj:CheckBox, e:ClickEventInfo)
  652. {
  653. if(obj.value == "true")
  654. {
  655. }
  656. else
  657. {
  658. ds_send_searchvdi.setColumn(0, "inst031", "");
  659. }
  660. fCheckInstcd2();
  661. }
  662. function group4_chk_inst032_2_onclick(obj:CheckBox, e:ClickEventInfo)
  663. {
  664. if(obj.value == "true")
  665. {
  666. }
  667. else
  668. {
  669. ds_send_searchvdi.setColumn(0, "inst032", "");
  670. }
  671. fCheckInstcd2();
  672. }
  673. function fCheckInstcd2()
  674. {
  675. if (group4.chk_inst031_2.value == "true" && group4.chk_inst032_2.value != "true")
  676. {
  677. ds_send_searchvdi.setColumn(0, "instcd", "031");
  678. }
  679. else if (group4.chk_inst031_2.value != "true" && group4.chk_inst032_2.value == "true")
  680. {
  681. ds_send_searchvdi.setColumn(0, "instcd", "032");
  682. }
  683. else
  684. {
  685. ds_send_searchvdi.setColumn(0, "instcd", "");
  686. }
  687. }
  688. function group4_btn_searchVdi_onclick(obj:Button, e:ClickEventInfo)
  689. {
  690. fSearchVdi();
  691. }
  692. function btn_confirm_onclick(obj:Button, e:ClickEventInfo)
  693. {
  694. if(sysf_messageBox("", "Q004") == 7)
  695. {
  696. return;
  697. }
  698. fAprvVdi();
  699. }
  700. function fAprvVdi()
  701. {
  702. if(grdf_getGridUpdateData(grd_vdireqlist) == 0)
  703. {
  704. sysf_messageBox("저장할 자료가 ","E014");
  705. return;
  706. }
  707. var oParam = {};
  708. oParam.id = "TXZSA30001";
  709. oParam.service = "authinfoapp.VdiInfo";
  710. oParam.method = "reqExeAprvVdi";
  711. oParam.inds = "req=ds_main_vdireqinfo_vdireqlist:u";
  712. oParam.outds = "";
  713. oParam.typeStr = "status";
  714. oParam.async = false;
  715. oParam.callback = "cf_TXZSA30001";
  716. tranf_submit(oParam);
  717. }
  718. function cf_TXZSA30001(sSvcId, nErrorCode, sErrorMsg)
  719. {
  720. if(nErrorCode < 0)
  721. {
  722. return;
  723. }
  724. else
  725. {
  726. fSearchVdi();
  727. }
  728. }
  729. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  730. {
  731. fSave();
  732. }
  733. function fSave()
  734. {
  735. if(grdf_getGridUpdateData(grd_vdireqlist).rowcount == 0)
  736. {
  737. sysf_messageBox("저장할 자료가 ","E014");
  738. return;
  739. }
  740. if(sysf_messageBox("", "Q002") == 7)
  741. {
  742. return;
  743. }
  744. var oParam = {};
  745. oParam.id = "TXZSA30000";
  746. oParam.service = "authinfoapp.VdiInfo";
  747. oParam.method = "reqExeSaveVdi";
  748. oParam.inds = "req=ds_main_vdireqinfo_vdireqlist:u";
  749. oParam.outds = "";
  750. oParam.async = false;
  751. oParam.callback = "cf_TXZSA30000";
  752. tranf_submit(oParam);
  753. }
  754. function cf_TXZSA30000(sSvcId, nErrorCode, sErrorMsg)
  755. {
  756. if(nErrorCode < 0)
  757. {
  758. return;
  759. }
  760. else
  761. {
  762. fSearchOffictour();
  763. fSearchVdi();
  764. }
  765. }
  766. function grd_vdireqlist_oncellclick(obj:Grid, e:GridClickEventInfo)
  767. {
  768. if ( obj.getBindCellIndex("Body", "chk") == 1 && e.row > -1)
  769. {
  770. var tmpChk = ds_main_vdireqinfo_vdireqlist.getColumn(e.row, "chk");
  771. if( ds_main_vdireqinfo_vdireqlist.getRowType(e.row) == 4 && tmpChk == "false")
  772. {
  773. ds_main_vdireqinfo_vdireqlist.updatecontrol = false;
  774. ds_main_vdireqinfo_vdireqlist.setRowType(ds_main_vdireqinfo_vdireqlist.rowposition, "");
  775. ds_main_vdireqinfo_vdireqlist.updatecontrol = true;
  776. }
  777. }
  778. }
  779. function ds_main_vdireqinfo_vdireqlist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  780. {
  781. if(e.columnid == "chk")
  782. {
  783. obj.setColumn(e.row, "chk", (e.newvalue == "true" || e.newvalue == 1) ? "true" : "false");
  784. }
  785. }
  786. ]]></Script>
  787. </Form>
  788. </FDL>