SMRAH03700_특별정산직원인건비내역.xfdl 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRAH03700" position="absolute 0 0 831 579" titletext="직원인건비내역(특별정산)" oninit="SMRAH03700_oninit" onload="SMRAH03700_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="직원인건비 내역(특별정산)" class="tit_1" position="absolute 0 0 230 23"/>
  8. <Button id="btn_close" taborder="1" text="닫기" class="btn4" position="absolute 767 24 823 46" anchor="top right" onclick="btn_close_onclick"/>
  9. <Button id="btn_save" taborder="2" text="저장" class="btn4" enable="false" position="absolute 709 24 765 46" anchor="top right" onclick="btn_save_onclick"/>
  10. <Button id="btn_print" taborder="3" text="영수증출력" class="btn6" position="absolute 615 24 707 46" anchor="top right" onclick="btn_print_onclick"/>
  11. <Shape id="line5" class="line_6" position="absolute 0 45 825 51" anchor="left top right"/>
  12. <Shape id="line1" class="line_10" position="absolute 0 119 825 125" anchor="left top right"/>
  13. <Div id="group2" taborder="4" class="div_SA" position="absolute 0 49 825 89" anchor="left top right">
  14. <Layouts>
  15. <Layout>
  16. <Static id="caption12" text="정산부서" class="search_name" position="absolute 457 11 535 28"/>
  17. <Static id="caption1" text="정산구분" class="search_name" position="absolute 55 11 135 28"/>
  18. <Edit id="ipt_buseoname" taborder="1" enable="false" position="absolute 538 10 750 29" autoselect="true" autoskip="true"/>
  19. <Edit id="input1" taborder="2" enable="false" position="absolute 135 10 440 29" autoselect="true" autoskip="true"/>
  20. </Layout>
  21. </Layouts>
  22. </Div>
  23. <Static id="caption2" text="직원인건비 영수증 내역" class="tit_2" position="absolute 0 103 165 125"/>
  24. <Button id="btn_add" taborder="5" text="행추가" class="btn2" enable="false" position="absolute 715 100 768 119" anchor="top right" onclick="btn_add_onclick"/>
  25. <Button id="btn_delete" taborder="6" text="행삭제" class="btn2" enable="false" position="absolute 771 100 824 119" anchor="top right" onclick="btn_delete_onclick"/>
  26. <Grid id="grd_dudulist" taborder="7" binddataset="ds_main_datalist_dedulist" autoenter="select" useinputpanel="false" cellsizingtype="col" autofittype="col" position="absolute 0 124 825 574" anchor="all" onexpanddown="grd_dudulist_onexpanddown" oncellclick="grd_dudulist_oncellclick">
  27. <Formats>
  28. <Format id="default">
  29. <Columns>
  30. <Column size="29"/>
  31. <Column size="34"/>
  32. <Column size="106"/>
  33. <Column size="80"/>
  34. <Column size="80"/>
  35. <Column size="86"/>
  36. <Column size="362"/>
  37. <Column size="0"/>
  38. <Column size="0"/>
  39. <Column size="0"/>
  40. <Column size="0"/>
  41. <Column size="0"/>
  42. </Columns>
  43. <Rows>
  44. <Row size="24" band="head"/>
  45. <Row size="24"/>
  46. </Rows>
  47. <Band id="head">
  48. <Cell/>
  49. <Cell col="1" text="선택"/>
  50. <Cell col="2" text="지급일"/>
  51. <Cell col="3" text="사번"/>
  52. <Cell col="4" text="성명"/>
  53. <Cell col="5" text="금액"/>
  54. <Cell col="6" text="내 용"/>
  55. <Cell col="7" text="순번"/>
  56. <Cell col="8" text="old_jidate"/>
  57. <Cell col="9" text="old_sabun"/>
  58. <Cell col="10" text="flagcd"/>
  59. <Cell col="11" text="buseocode"/>
  60. </Band>
  61. <Band id="body">
  62. <Cell celltype="head"/>
  63. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:chk" expr="expr:chk == 'Y' ? 1 : 0"/>
  64. <Cell col="2" displaytype="date" edittype="date" text="bind:jidate" editautoselect="true" calendardisplaynulltype="nulltext"/>
  65. <Cell col="3" displaytype="text" edittype="text" text="bind:emplno" editautoselect="true" expandshow="show"/>
  66. <Cell col="4" text="bind:emplnm" editautoselect="true"/>
  67. <Cell col="5" displaytype="number" edittype="normal" text="bind:amt" editautoselect="true"/>
  68. <Cell col="6" displaytype="text" edittype="text" text="bind:cmt" editautoselect="true"/>
  69. <Cell col="7" text="bind:seq"/>
  70. <Cell col="8" text="bind:old_jidate"/>
  71. <Cell col="9" text="bind:old_emplno"/>
  72. <Cell col="10" text="bind:flagcd"/>
  73. <Cell col="11" text="bind:buseocode"/>
  74. </Band>
  75. </Format>
  76. </Formats>
  77. </Grid>
  78. <Grid id="grd_prntlist" taborder="8" binddataset="ds_main_prntlist" useinputpanel="false" visible="false" position="absolute 235 234 725 309">
  79. <Formats>
  80. <Format id="default">
  81. <Columns>
  82. <Column size="106"/>
  83. <Column size="80"/>
  84. <Column size="80"/>
  85. <Column size="86"/>
  86. <Column size="89"/>
  87. </Columns>
  88. <Rows>
  89. <Row size="24" band="head"/>
  90. <Row size="24"/>
  91. </Rows>
  92. <Band id="head">
  93. <Cell text="지급일"/>
  94. <Cell col="1" text="사번"/>
  95. <Cell col="2" text="성명"/>
  96. <Cell col="3" text="금액"/>
  97. <Cell col="4" text="내 용"/>
  98. </Band>
  99. <Band id="body">
  100. <Cell text="bind:jidate"/>
  101. <Cell col="1" text="bind:emplno"/>
  102. <Cell col="2" text="bind:emplnm"/>
  103. <Cell col="3" text="bind:amt"/>
  104. <Cell col="4" text="bind:cmt"/>
  105. </Band>
  106. </Format>
  107. </Formats>
  108. </Grid>
  109. </Layout>
  110. </Layouts>
  111. <Objects>
  112. <Dataset id="ds_send_retrparam" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  113. <ColumnInfo>
  114. <Column id="flagcd" type="STRING" size="256"/>
  115. <Column id="flagnm" type="STRING" size="256"/>
  116. <Column id="buseocode" type="STRING" size="256"/>
  117. <Column id="buseoname" type="STRING" size="256"/>
  118. </ColumnInfo>
  119. <Rows>
  120. <Row>
  121. <Col id="flagcd"/>
  122. <Col id="flagnm"/>
  123. <Col id="buseocode"/>
  124. <Col id="buseoname"/>
  125. </Row>
  126. </Rows>
  127. </Dataset>
  128. <Dataset id="ds_main_datalist_dedulist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_datalist_dedulist_oncolumnchanged">
  129. <ColumnInfo>
  130. <Column id="cmt" type="STRING" size="256" sumtext="비고"/>
  131. <Column id="amt" type="STRING" size="256" sumtext="금액"/>
  132. <Column id="flagcd" type="STRING" size="256" sumtext="정산구분"/>
  133. <Column id="buseocode" type="STRING" size="256" sumtext="부서코드"/>
  134. <Column id="seq" type="STRING" size="256" sumtext="순번"/>
  135. <Column id="jidate" type="STRING" size="256" sumtext="지급일자"/>
  136. <Column id="emplno" type="STRING" size="256" sumtext="사번"/>
  137. <Column id="emplnm" type="STRING" size="256" sumtext="성명"/>
  138. <Column id="old_jidate" type="STRING" size="256" sumtext="지급일자"/>
  139. <Column id="old_emplno" type="STRING" size="256" sumtext="사번"/>
  140. <Column id="chk" type="STRING" size="256" sumtext="선택"/>
  141. </ColumnInfo>
  142. </Dataset>
  143. <Dataset id="ds_main_datalist_oksigninfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  144. <ColumnInfo>
  145. <Column id="oksign" type="STRING" size="256" sumtext="최종저장여부"/>
  146. </ColumnInfo>
  147. </Dataset>
  148. <Dataset id="ds_main_prntlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  149. <ColumnInfo>
  150. <Column id="jidate" type="STRING" size="256"/>
  151. <Column id="emplno" type="STRING" size="256"/>
  152. <Column id="emplnm" type="STRING" size="256"/>
  153. <Column id="amt" type="STRING" size="256"/>
  154. <Column id="cmt" type="STRING" size="256"/>
  155. </ColumnInfo>
  156. </Dataset>
  157. </Objects>
  158. <Bind>
  159. <BindItem id="item0" compid="group2.input1" propid="value" datasetid="ds_send_retrparam" columnid="flagnm"/>
  160. <BindItem id="item1" compid="group2.ipt_buseoname" propid="value" datasetid="ds_send_retrparam" columnid="buseoname"/>
  161. </Bind>
  162. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  163. * System Name :
  164. * Job Name :
  165. * Creator :
  166. * Make Date : 2017-06-19
  167. * Description :
  168. *---------------------------------------------------------------------------------------
  169. * Modify Date Modifier Modify Description
  170. *---------------------------------------------------------------------------------------
  171. * 2017-06-19 Live Converter TF->XP
  172. *
  173. *---------------------------------------------------------------------------------------
  174. ****************************************************************************************/
  175. include "com_commonxp::comm_main.xjs";
  176. include "mis_miscommonxp::MIS.xjs";
  177. var toggleVal = "Y";
  178. function SMRAH03700_oninit(obj:Form, e:InitEventInfo)
  179. {
  180. frmf_initForm(obj);
  181. }
  182. function SMRAH03700_onload(obj:Form, e:LoadEventInfo)
  183. {
  184. grdf_initGrid(grd_dudulist);
  185. grdf_setRowTypeIcon(grd_dudulist, 0);
  186. if(frmf_checkOpener())
  187. {
  188. ds_send_retrparam.setColumn(0, "flagcd", opener.ds_send_retrparam.getColumn(0, "flagcd"));
  189. ds_send_retrparam.setColumn(0, "flagnm", opener.ds_send_retrparam.getColumn(0, "flagnm"));
  190. ds_send_retrparam.setColumn(0, "buseocode", opener.ds_send_retrparam.getColumn(0, "buseocode"));
  191. ds_send_retrparam.setColumn(0, "buseoname", opener.ds_send_retrparam.getColumn(0, "buseoname"));
  192. }
  193. var oParam = {};
  194. oParam.id = "TRRAH03701";
  195. oParam.service = "acntknuhapp.Acntknuh";
  196. oParam.method = "reqGetDeduSpcList";
  197. oParam.inds = "req=ds_send_retrparam";
  198. oParam.outds = "ds_main_datalist_dedulist=dedulist ds_=oksigninfo";
  199. oParam.async = false;
  200. oParam.callback = "cf_TRRAH03701";
  201. tranf_submit(oParam);
  202. }
  203. function cf_TRRAH03701(sSvcId, nErrorCode, sErrorMsg)
  204. {
  205. if(nErrorCode < 0)
  206. {
  207. return;
  208. }
  209. else
  210. {
  211. if (opener.ds_send_retrparam.getColumn(0, "opener") == "SMRAH03800")
  212. {
  213. btn_save.enable = true;
  214. btn_add.enable = true;
  215. btn_delete.enable = true;
  216. }
  217. else
  218. {
  219. if(ds_main_datalist_oksigninfo.getColumn(0, "oksign") != "Y")
  220. {
  221. btn_save.enable = true;
  222. btn_add.enable = true;
  223. btn_delete.enable = true;
  224. }
  225. }
  226. }
  227. }
  228. function grd_dudulist_onexpanddown(obj:Grid, e:GridMouseEventInfo)
  229. {
  230. var recv_list = "emplno,emplnm" ; //"emplno,emplnm,dutplcedeptcd,dutplcedeptnm"
  231. rpbfOpenPopUpList("SPRPB00101", grd_dudulist, recv_list,"","N");
  232. }
  233. function ds_main_datalist_dedulist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  234. {
  235. if( e.columnid == "chk" )
  236. {
  237. obj.setColumn(e.row, "chk", (e.newvalue == "Y" || e.newvalue == 1) ? "Y" : "N");
  238. }
  239. }
  240. function grd_dudulist_oncellclick(obj:Grid, e:GridClickEventInfo)
  241. {
  242. if( ds_main_datalist_dedulist.rowcount < 1 )
  243. {
  244. return;
  245. }
  246. if( e.row == -1 && e.cell == grd_dudulist.getBindCellIndex("Head", "chk"))
  247. {
  248. for(var i = 0; i < ds_main_datalist_dedulist.rows; i++)
  249. {
  250. ds_main_datalist_dedulist.setColumn(i, "chk", toggleVal);
  251. }
  252. if( toggleVal == "Y" )
  253. {
  254. toggleVal = "N"
  255. }
  256. else
  257. {
  258. toggleVal = "Y";
  259. }
  260. obj.setCellPos(obj.getBindCellIndex("body", "emplnm"));
  261. obj.showEditor(true);
  262. }
  263. }
  264. function btn_add_onclick(obj:Button, e:ClickEventInfo)
  265. {
  266. fAddDelRow( "A");
  267. }
  268. function btn_delete_onclick(obj:Button, e:ClickEventInfo)
  269. {
  270. fAddDelRow( "D");
  271. }
  272. function fAddDelRow(sStatus)
  273. {
  274. if(sStatus == "A")
  275. {
  276. var addRow = ds_main_datalist_dedulist.addRow();
  277. ds_main_datalist_dedulist.setColumn(addRow, "flagcd", ds_send_retrparam.getColumn(0, "flagcd"));
  278. ds_main_datalist_dedulist.setColumn(addRow, "buseocode", ds_send_retrparam.getColumn(0, "buseocode"));
  279. }
  280. else if (sStatus == "D")
  281. {
  282. var status = ds_main_datalist_dedulist.getRowType(ds_main_datalist_dedulist.rowposition);
  283. if(status == 1)
  284. {
  285. ds_main_datalist_dedulist.updatecontrol = false;
  286. ds_main_datalist_dedulist.setRowType(ds_main_datalist_dedulist.rowposition, "d");
  287. ds_main_datalist_dedulist.updatecontrol = true;
  288. }
  289. else if(status == 2)
  290. {
  291. ds_main_datalist_dedulist.deleteRow(ds_main_datalist_dedulist.rowposition);
  292. }
  293. else if(status == 4)
  294. {
  295. ds_main_datalist_dedulist.updatecontrol = false;
  296. ds_main_datalist_dedulist.setRowType(ds_main_datalist_dedulist.rowposition, "d");
  297. ds_main_datalist_dedulist.updatecontrol = true;
  298. }
  299. }
  300. }
  301. function btn_print_onclick(obj:Button, e:ClickEventInfo)
  302. {
  303. misfGridInit(grd_prntlist);
  304. for(var i = 0; i < ds_main_datalist_dedulist.rowcount; i++)
  305. {
  306. if(ds_main_datalist_dedulist.getColumn(i, "chk") == "Y")
  307. {
  308. var addRow = ds_main_prntlist.addRow();
  309. ds_main_prntlist.setColumn(addRow, "jidate", ds_main_datalist_dedulist.getColumn(i, "jidate"));
  310. ds_main_prntlist.setColumn(addRow, "emplno", ds_main_datalist_dedulist.getColumn(i, "emplno"));
  311. ds_main_prntlist.setColumn(addRow, "emplnm", ds_main_datalist_dedulist.getColumn(i, "emplnm"));
  312. ds_main_prntlist.setColumn(addRow, "amt", ds_main_datalist_dedulist.getColumn(i, "amt"));
  313. ds_main_prntlist.setColumn(addRow, "cmt", ds_main_datalist_dedulist.getColumn(i, "cmt"));
  314. }
  315. }
  316. if(ds_main_prntlist.rowcount < 1)
  317. {
  318. sysf_messageBox("출력할 대상이 선택되지 않았습니다. \n영수증 내역 중 출력할 대상을 선택하십시요. ", "E999", "");
  319. return;
  320. }
  321. var objDOM = rptf_createDOM();
  322. rptf_setNodeListToDOM(objDOM, "/root/main/prntlist", ds_main_prntlist);
  323. var objParam = new Object();
  324. objParam.xml_data_XML1 = objDOM.documentElement.source;
  325. var option = "";
  326. rptf_exeReportPreview30(["SMRAH02601"],[objParam], option);
  327. }
  328. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  329. {
  330. fSaveClick();
  331. }
  332. function btn_close_onclick(obj:Button, e:ClickEventInfo)
  333. {
  334. this.close();
  335. }
  336. function fSaveClick()
  337. {
  338. var updtdata = grdf_getGridUpdateData(grd_dudulist).rowcount;
  339. if (updtdata == 0)
  340. {
  341. sysf_messageBox("변경된 데이터가","I004");
  342. return;
  343. }
  344. var oParam = {};
  345. oParam.id = "TXRAH03701";
  346. oParam.service = "acntknuhapp.Acntknuh";
  347. oParam.method = "reqExeSaveDeduSpcList";
  348. oParam.inds = "req=ds_main_datalist_dedulist:u";
  349. oParam.outds = "";
  350. oParam.async = false;
  351. oParam.callback = "cf_TXRAH03701";
  352. tranf_submit(oParam);
  353. }
  354. function cf_TXRAH03701(sSvcId, nErrorCode, sErrorMsg)
  355. {
  356. if(nErrorCode < 0)
  357. {
  358. return;
  359. }
  360. else
  361. {
  362. var oParam = {};
  363. oParam.id = "TRRAH03701";
  364. oParam.service = "acntknuhapp.Acntknuh";
  365. oParam.method = "reqGetDeduSpcList";
  366. oParam.inds = "req=ds_send_retrparam";
  367. oParam.outds = "ds_main_datalist_dedulist=dedulist ds_=oksigninfo";
  368. oParam.async = false;
  369. //oParam.callback = "cf_TRRAH03701";
  370. tranf_submit(oParam);
  371. sysf_messageBox("저장되었습니다.", "I999", "");
  372. }
  373. }]]></Script>
  374. </Form>
  375. </FDL>