SMRFC00100_설치장소코드관리.xfdl 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRFC00100" position="absolute 0 0 1196 784" titletext="설치장소코드관리" onload="SMRFC00100_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 51 1195 783" id="grp_biz" scrollbars="autoboth">
  8. <Layouts>
  9. <Layout>
  10. <Div position="absolute 0 0 1195 40" align="align:center top;" id="grp_sea" anchor="default" class="div_SA2">
  11. <Layouts>
  12. <Layout>
  13. <Static text="기관코드 :" position="absolute 15 11 101 28" id="cap_instcd" class="search_name" anchor="default"/>
  14. <Shape position="absolute 1107 7 1113 32" linetype="vertical" id="line13" class="line_4" anchor="default"/>
  15. <Static text="부서코드 :" position="absolute 511 11 601 28" id="cap_deptcd" class="search_name" anchor="default"/>
  16. <Button position="absolute 1125 8 1181 30" id="btn_search" class="btn1" taborder="6" text="조회" anchor="default" onclick="grp_biz_grp_sea_btn_search_onclick"/>
  17. <Combo position="absolute 108 10 346 29" align="align:center middle;" id="cmb_instcd" class="combo_essential" taborder="1" anchor="default" onitemchanged="grp_biz_grp_sea_cmb_instcd_onitemchanged"/>
  18. <Edit position="absolute 605 10 710 29" align="align:center middle;" id="ipt_deptcd" class="input_search" taborder="2" anchor="default" onkeyup="grp_biz_grp_sea_ipt_deptcd_onkeyup"/>
  19. <Edit position="absolute 735 10 907 29" align="align:center middle;" id="ipt_deptnm" taborder="4" anchor="default" class="output" readonly="true"/>
  20. <Button position="absolute 716 11 732 27" id="btn_deptcd" class="icon_search" taborder="3" text="" anchor="default" onclick="grp_biz_grp_sea_btn_deptcd_onclick"/>
  21. <CheckBox position="absolute 930 10 1045 30" id="checkbox2" taborder="5" anchor="default" text="미사용부서 제외" truevalue="Y" onclick="grp_biz_grp_sea_checkbox2_onclick"/>
  22. </Layout>
  23. </Layouts>
  24. </Div>
  25. <Shape position="absolute 0 69 1195 75" id="line2" class="line_10" anchor="default"/>
  26. <Static text="설치장소코드 List" position="absolute 0 53 133 70" id="caption8" class="tit_2" anchor="default"/>
  27. <Button position="absolute 1087 47 1140 69" id="btn_grdadd" class="btn2" taborder="9" text="행추가" anchor="default" onclick="grp_biz_btn_grdadd_onclick"/>
  28. <Button position="absolute 1142 47 1195 69" id="btn_grddel" class="btn2" taborder="10" text="행삭제" anchor="default" onclick="grp_biz_btn_grddel_onclick"/>
  29. <Grid position="absolute 0 74 1195 732" id="grd_rfcmetpllist" taborder="7" binddataset="ds_main_grid_rfcmetpllist" anchor="default" onmousemove="grp_biz_grd_rfcmetpllist_onmousemove" autoenter="key" cellsizingtype="col" onexpandup="grp_biz_grd_rfcmetpllist_onexpandup">
  30. <Formats>
  31. <Format id="default">
  32. <Columns>
  33. <Column size="25" band="left"/>
  34. <Column size="200"/>
  35. <Column size="200"/>
  36. <Column size="200"/>
  37. <Column size="200"/>
  38. <Column size="0"/>
  39. <Column size="0"/>
  40. </Columns>
  41. <Rows>
  42. <Row size="24" band="head"/>
  43. <Row size="24"/>
  44. </Rows>
  45. <Band id="head">
  46. <Cell/>
  47. <Cell col="1" colspan="2" text="설치장소" taborder="undefined"/>
  48. <Cell col="3" colspan="2" text="부서" taborder="undefined"/>
  49. <Cell col="5" text="기관코드"/>
  50. <Cell col="6" text="기관명"/>
  51. </Band>
  52. <Band id="body">
  53. <Cell celltype="head"/>
  54. <Cell col="1" displaytype="text" edittype="expr:getRowType(currow) == 2 ? 'text' : 'none'" style="align:center;" text="bind:installplcecd" editautoselect="true"/>
  55. <Cell col="2" displaytype="text" edittype="text" text="bind:installplcenm" editautoselect="true"/>
  56. <Cell col="3" displaytype="text" edittype="text" style="align:center;" text="bind:deptcd" editautoselect="true" expandshow="show"/>
  57. <Cell col="4" displaytype="text" text="bind:deptnm"/>
  58. <Cell col="5" text="bind:instcd"/>
  59. <Cell col="6" text="bind:instnm"/>
  60. </Band>
  61. </Format>
  62. </Formats>
  63. </Grid>
  64. <Button position="absolute 1005 47 1085 69" id="button1" class="btn7" taborder="8" text="엑셀저장" anchor="default" onclick="grp_biz_button1_onclick"/>
  65. </Layout>
  66. </Layouts>
  67. </Div>
  68. <Div position="absolute 0 25 1195 53" id="group2">
  69. <Layouts>
  70. <Layout>
  71. <Shape position="absolute 0 22 1195 28" id="line16" class="line_2" anchor="default"/>
  72. <Button position="absolute 1127 1 1195 23" id="btn_clear" class="btn4" taborder="13" text="초기화" anchor="default" onclick="group2_btn_clear_onclick"/>
  73. <Button position="absolute 1069 1 1125 23" id="btn_save" class="btn4" taborder="12" text="저장" anchor="default" onclick="group2_btn_save_onclick"/>
  74. <Button position="absolute 0 1 56 23" id="btn_prt" class="btn6" taborder="11" visible="false" text="출력" anchor="default" onclick="group2_btn_prt_onclick"/>
  75. </Layout>
  76. </Layouts>
  77. </Div>
  78. <Static id="caption6" text="설치장소 코드관리" class="tit_1" position="absolute 0 0 160 25"/>
  79. </Layout>
  80. </Layouts>
  81. <Objects>
  82. <Dataset id="ds_main_grid_rfcmetpllist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep" oncolumnchanged="ds_main_grid_rfcmetpllist_oncolumnchanged"/>
  83. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep" oncolumnchanged="ds_send_oncolumnchanged">
  84. <ColumnInfo>
  85. <Column id="instcd" type="STRING" size="256"/>
  86. <Column id="deptcd" type="STRING" size="256"/>
  87. <Column id="deptnm" type="STRING" size="256"/>
  88. <Column id="ignoreenddept" type="STRING" size="256"/>
  89. </ColumnInfo>
  90. <Rows>
  91. <Row>
  92. <Col id="instcd"/>
  93. <Col id="deptcd"/>
  94. <Col id="deptnm"/>
  95. <Col id="ignoreenddept">Y</Col>
  96. </Row>
  97. </Rows>
  98. </Dataset>
  99. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  100. <ColumnInfo>
  101. <Column id="temp" type="STRING" size="256"/>
  102. </ColumnInfo>
  103. </Dataset>
  104. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  105. <ColumnInfo>
  106. <Column id="hidden" type="STRING" size="256"/>
  107. </ColumnInfo>
  108. <Rows>
  109. <Row>
  110. <Col id="hidden"/>
  111. </Row>
  112. </Rows>
  113. </Dataset>
  114. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  115. <ColumnInfo>
  116. <Column id="init" type="STRING" size="256"/>
  117. </ColumnInfo>
  118. <Rows>
  119. <Row>
  120. <Col id="init"/>
  121. </Row>
  122. </Rows>
  123. </Dataset>
  124. </Objects>
  125. <Bind>
  126. <BindItem id="item0" compid="grp_biz.grp_sea.cmb_instcd" propid="value" datasetid="ds_send" columnid="instcd"/>
  127. <BindItem id="item1" compid="grp_biz.grp_sea.ipt_deptcd" propid="value" datasetid="ds_send" columnid="deptcd"/>
  128. <BindItem id="item2" compid="grp_biz.grp_sea.ipt_deptnm" propid="value" datasetid="ds_send" columnid="deptnm"/>
  129. <BindItem id="item3" compid="grp_biz.grp_sea.checkbox2" propid="value" datasetid="ds_send" columnid="ignoreenddept"/>
  130. </Bind>
  131. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  132. * System Name :
  133. * Job Name :
  134. * Creator :
  135. * Make Date : 2017-06-19
  136. * Description :
  137. *---------------------------------------------------------------------------------------
  138. * Modify Date Modifier Modify Description
  139. *---------------------------------------------------------------------------------------
  140. * 2017-06-19 Live Converter TF->XP
  141. *
  142. *---------------------------------------------------------------------------------------
  143. ****************************************************************************************/
  144. //=======================================================================================
  145. // Lib Include
  146. //---------------------------------------------------------------------------------------
  147. include "com_commonxp::comm_main.xjs";
  148. include "mis_miscommonxp::MIS.xjs";
  149. include "mis_miscommonxp::RSZ001.xjs";
  150. //=======================================================================================
  151. // Global Form Variable
  152. //---------------------------------------------------------------------------------------
  153. var arErrorCode = new HashArray();
  154. //=======================================================================================
  155. // Function
  156. //---------------------------------------------------------------------------------------
  157. /****************************************************************************************
  158. * Argument : N/A
  159. * Description : 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  160. ****************************************************************************************/
  161. function fInitialize() {
  162. misfGridInit(grp_biz.grd_rfcmetpllist);
  163. misfComboComCdList("C0048", grp_biz.grp_sea.cmb_instcd); //기관코드
  164. misfMsterDetailSet(grp_biz.grd_rfcmetpllist, null, "TRRFC00101","Y"); //마스터 설정
  165. ds_send.setColumn( 0, "instcd", sysf_getUserInfo("dutplceinstcd")); // 기관 설정
  166. //화면 권한 설정
  167. group2.btn_save.enable = frmf_checkAuth("X");
  168. group2.btn_prt.enable = frmf_checkAuth("P");
  169. grp_biz.grp_sea.btn_search.click();
  170. }
  171. /****************************************************************************************
  172. * Argument : N/A
  173. * Description : 조회
  174. ****************************************************************************************/
  175. function fsearch() {
  176. var dsUpdate = grdf_getGridUpdateData(grp_biz.grd_rfcmetpllist, "all");
  177. if( !utlf_isNull(dsUpdate) && dsUpdate.rowcount > 0 ) {
  178. var ret = sysf_messageBox("그리드에 작업 중인 내용이 있습니다. 조회 작업을","Q003");
  179. if (ret != 6) { // not OK
  180. return;
  181. }
  182. }
  183. frmf_isRequiredControls("grp_biz.grp_sea.cmb_instcd");
  184. misfMsterDetailRetrieve();
  185. }
  186. //=======================================================================================
  187. // Event
  188. //---------------------------------------------------------------------------------------
  189. /****************************************************************************************
  190. * Components : Form
  191. * Description : 화면 처음 초기화시 폼초기화
  192. ****************************************************************************************/
  193. function SMRFC00100_onload(obj:Form, e:LoadEventInfo) {
  194. frmf_initForm(obj);
  195. //grdf_initGrid(grd_XXX);
  196. //grdf_setGridSort(grd_XXX);
  197. grdf_setRowTypeIcon(grp_biz.grd_rfcmetpllist, 0);
  198. fInitialize();
  199. }
  200. /****************************************************************************************
  201. * Components : Button
  202. * Description : 조회
  203. ****************************************************************************************/
  204. function grp_biz_grp_sea_btn_search_onclick(obj:Button, e:ClickEventInfo) {
  205. fsearch();
  206. }
  207. /****************************************************************************************
  208. * Components : Combo
  209. * Description : 기관코드 변경 후 조회
  210. ****************************************************************************************/
  211. function grp_biz_grp_sea_cmb_instcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo) {
  212. grp_biz.grp_sea.btn_search.click();
  213. }
  214. function grp_biz_grp_sea_ipt_deptcd_onkillfocus(obj:Edit, e:KillFocusEventInfo) {
  215. misfSearchDept(grp_biz.grp_sea.ipt_deptnm);
  216. }
  217. /****************************************************************************************
  218. * Components : Button
  219. * Description : 부서조회 팝업
  220. ****************************************************************************************/
  221. function grp_biz_grp_sea_btn_deptcd_onclick(obj:Button, e:ClickEventInfo) {
  222. misfOpenPopUpList("02", grp_biz.grp_sea.ipt_deptcd, "", "deptcd,deptnm", grp_biz.grp_sea.cmb_instcd.value,"instcd");
  223. }
  224. /****************************************************************************************
  225. * Components : Button
  226. * Description : 행추가
  227. ****************************************************************************************/
  228. function grp_biz_btn_grdadd_onclick(obj:Button, e:ClickEventInfo) {
  229. grp_biz.grd_rfcmetpllist.setCellPos(3);
  230. misfGridIUD(grp_biz.grd_rfcmetpllist, "A");
  231. // ds_main_grid_rfcmetpllist.setColumn(ds_main_grid_rfcmetpllist.rowposition, "instcd", grp_biz.grp_sea.cmb_instcd.value);
  232. }
  233. /****************************************************************************************
  234. * Components : Button
  235. * Description : 행삭제
  236. ****************************************************************************************/
  237. function grp_biz_btn_grddel_onclick(obj:Button, e:ClickEventInfo) {
  238. misfGridIUD(grp_biz.grd_rfcmetpllist, "D");
  239. }
  240. /****************************************************************************************
  241. * Components : Button
  242. * Description : 엑셀저장
  243. ****************************************************************************************/
  244. function grp_biz_button1_onclick(obj:Button, e:ClickEventInfo) {
  245. misfSaveExcel(grp_biz.grd_rfcmetpllist, "excel", "sheet1");
  246. }
  247. /****************************************************************************************
  248. * Components : Button
  249. * Description : 초기화
  250. ****************************************************************************************/
  251. function group2_btn_clear_onclick(obj:Button, e:ClickEventInfo) {
  252. fInitialize();
  253. }
  254. /****************************************************************************************
  255. * Components : Button
  256. * Description : 저장
  257. ****************************************************************************************/
  258. function group2_btn_save_onclick(obj:Button, e:ClickEventInfo) {
  259. var dsUpdate = grdf_getGridUpdateData(grp_biz.grd_rfcmetpllist, "all");
  260. if( utlf_isNull(dsUpdate) || dsUpdate.rowcount < 1 ) {
  261. sysf_messageBox("변경된 데이터가","I004");
  262. return;
  263. }
  264. if(!frmf_chkMdtGrid(grp_biz.grd_rfcmetpllist, [1,5], ["설치장소","기관코드"])) return;
  265. rtn = sysf_messageBox("", "Q002");
  266. if(rtn != "6" ) return false;
  267. misfSave("TXRFC00101");
  268. grp_biz.grp_sea.btn_search.click();
  269. }
  270. /****************************************************************************************
  271. * Components : Button
  272. * Description : 출력
  273. ****************************************************************************************/
  274. function group2_btn_prt_onclick(obj:Button, e:ClickEventInfo) {
  275. var objDOM = rptf_createDOM();
  276. var objParam = new Object();
  277. rptf_setNodeListToDOM(objDOM, "/root/main/grid/rfcmetpllist" , ds_main_grid_rfcmetpllist);
  278. objParam.xml_data_XML1 = objDOM.documentElement.source;
  279. var option = "open=1;save=1;directprint=0;printdialog=1;print=1;zoom=0";
  280. rptf_exeReportPreview30(["RPRFC00101"],[objParam], option);
  281. }
  282. function grp_biz_grp_sea_checkbox2_onclick(obj:CheckBox, e:ClickEventInfo)
  283. {
  284. if(obj.value == false) ds_send.setColumn(0,"ignoreenddept", "");
  285. }
  286. function grp_biz_grd_rfcmetpllist_onmousemove(obj:Grid, e:GridMouseEventInfo)
  287. {
  288. if(e.row < 0) return;
  289. if(e.col == obj.getBindCellIndex("body","deptcd")) obj.autoenter = "select";
  290. else obj.autoenter = "key";
  291. }
  292. /****************************************************************************************
  293. * Components : Edit
  294. * Description : 부서코드 입력으로 부서조회
  295. ****************************************************************************************/
  296. function grp_biz_grp_sea_ipt_deptcd_onkeyup(obj:Edit, e:KeyEventInfo)
  297. {
  298. if(e.keycode == 13) {
  299. obj.updateToDataset();
  300. }
  301. }
  302. /****************************************************************************************
  303. * Components : Grid
  304. * Description : 리스트 버튼 클릭
  305. ****************************************************************************************/
  306. function grp_biz_grd_rfcmetpllist_onexpandup(obj:Grid, e:GridMouseEventInfo)
  307. {
  308. if(e.col == obj.getBindCellIndex("body","deptcd")) {
  309. misfOpenPopUpList("02", obj, "", "deptcd,deptnm", grp_biz.grp_sea.cmb_instcd.value,"instcd");
  310. }
  311. }
  312. /****************************************************************************************
  313. * Components : Dataset
  314. * Description : 리스트 내용변경시
  315. ****************************************************************************************/
  316. function ds_main_grid_rfcmetpllist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  317. {
  318. if(e.columnid == "deptcd") {
  319. grp_biz.grd_rfcmetpllist.setFocus();
  320. misfValidationCheck("02", "grp_biz.grd_rfcmetpllist", "deptcd,deptnm", grp_biz.grp_sea.cmb_instcd.value,"instcd");
  321. }
  322. }
  323. function ds_send_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  324. {
  325. switch( e.columnid ){
  326. case "deptcd" :
  327. var objFocus = this.getFocus();
  328. grp_biz.grp_sea.ipt_deptcd.setFocus();
  329. misfSearchDept(grp_biz.grp_sea.ipt_deptnm);
  330. objFocus.setFocus();
  331. break;
  332. default :
  333. break;
  334. }
  335. }
  336. ]]></Script>
  337. </Form>
  338. </FDL>