SMRAH04700_QI활동비정산비등록.xfdl 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRAH04700" position="absolute 0 0 1200 774" titletext="QI활동비 정산비등록" oninit="SMRAH04700_oninit" onload="SMRAH04700_onload">
  5. <Layouts>
  6. <Layout>
  7. <Button position="absolute 1136 16 1192 38" id="btn_save" class="btn4" text="저장" anchor="top right" onclick="btn_save_onclick"/>
  8. <Static id="caption6" text="QI활동비 정산비등록" class="tit_1" position="absolute 0 0 293 25"/>
  9. <Shape id="line2" class="line_6" position="absolute 0 37 1194 43" anchor="left top right"/>
  10. <Button id="button3" taborder="1" text="출력" class="btn6" position="absolute 1078 16 1134 38" anchor="top right" onclick="button3_onclick"/>
  11. <Div id="grp_sea" taborder="2" class="div_SA2" position="absolute 0 41 1195 101" anchor="left top right">
  12. <Layouts>
  13. <Layout>
  14. <Shape id="line30" linetype="vertical" class="line_4" position="absolute 881 6 887 31" anchor="top right"/>
  15. <Button id="btn_search" taborder="5" text="조회" class="btn1" position="absolute 901 8 957 30" anchor="top right" onclick="grp_sea_btn_search_onclick"/>
  16. <Static id="caption3" text="구분 :" class="search_name" position="absolute 170 9 235 26"/>
  17. <Combo id="cmb_flagcd" taborder="6" innerdataset="@ds_init_codeinfo_codelist" codecolumn="cdid" datacolumn="cdnm" class="combo_default" position="absolute 235 9 355 28" onitemchanged="grp_sea_cmb_flagcd_onitemchanged"/>
  18. <Static id="caption5" text="정산부서 :" class="search_name" position="absolute 575 9 661 26"/>
  19. <Combo id="cmb_buseocode" taborder="7" innerdataset="@ds_init_deptinfo_deptlist" codecolumn="deptcd" datacolumn="deptnm" class="combo_default" position="absolute 665 9 855 28" onitemchanged="grp_sea_cmb_buseocode_onitemchanged"/>
  20. <Static id="caption9" text="수령금액 :" class="search_name" position="absolute 45 34 134 51"/>
  21. <MaskEdit id="ipt_useamt" taborder="8" mask="(-)#,###" enable="false" position="absolute 370 34 500 53"/>
  22. <Static id="caption12" text="정산금액 :" class="search_name" position="absolute 280 34 370 51"/>
  23. <Static id="caption14" text="차액 :" class="search_name" position="absolute 515 34 580 51"/>
  24. <MaskEdit id="ipt_remamt" taborder="9" mask="(-)#,###" enable="false" position="absolute 580 34 710 53"/>
  25. <Static id="caption15" text="최종저장 :" class="search_name" position="absolute 745 35 840 52"/>
  26. <CheckBox id="bool1" taborder="10" position="absolute 835 33 860 53" truevalue="Y" falsevalue="N"/>
  27. <MaskEdit id="opt_ableamt" taborder="11" readonly="true" mask="(-)#,###" position="absolute 135 34 265 53"/>
  28. <Static id="caption2" text="년도 :" class="search_name" position="absolute 45 10 105 27"/>
  29. <MaskEdit id="ipt_year" taborder="12" mask="####" position="absolute 110 9 151 28" autoselect="true" autoskip="true"/>
  30. <Static id="caption7" text="상세구분 :" class="search_name" position="absolute 375 10 461 27"/>
  31. <Combo id="cmb_cdid" taborder="13" innerdataset="@ds_init_dtlcodeinfo_codelist" codecolumn="cdid" datacolumn="cdnm" enable="false" position="absolute 465 9 549 28" onitemchanged="grp_sea_cmb_cdid_onitemchanged"/>
  32. </Layout>
  33. </Layouts>
  34. </Div>
  35. <Shape id="line1" class="line_10" position="absolute 0 147 1195 153" anchor="left top right"/>
  36. <Button id="button1" taborder="3" text="행추가" class="btn2" position="absolute 1085 128 1138 147" anchor="top right" onclick="button1_onclick"/>
  37. <Button id="button2" taborder="4" text="행삭제" class="btn2" position="absolute 1141 128 1194 147" anchor="top right" onclick="button2_onclick"/>
  38. <Static id="caption1" text="정산비등록" class="tit_2" position="absolute 0 131 121 152"/>
  39. <Grid id="grd_acntinoutlist" taborder="5" binddataset="ds_main_datalist_jungsan" useinputpanel="false" position="absolute 0 152 1194 767" autoenter="select" autofittype="col" cellsizingtype="col" anchor="all">
  40. <Formats>
  41. <Format id="default">
  42. <Columns>
  43. <Column size="25"/>
  44. <Column size="37"/>
  45. <Column size="108"/>
  46. <Column size="40"/>
  47. <Column size="217"/>
  48. <Column size="361"/>
  49. <Column size="150"/>
  50. <Column size="205"/>
  51. <Column size="0"/>
  52. <Column size="0"/>
  53. <Column size="0"/>
  54. <Column size="0"/>
  55. </Columns>
  56. <Rows>
  57. <Row size="24" band="head"/>
  58. <Row size="24"/>
  59. </Rows>
  60. <Band id="head">
  61. <Cell/>
  62. <Cell col="1" text="순번"/>
  63. <Cell col="2" text="발생일자"/>
  64. <Cell col="3" text="요일"/>
  65. <Cell col="4" text="계정구분"/>
  66. <Cell col="5" text="지출내역"/>
  67. <Cell col="6" text="금액"/>
  68. <Cell col="7" text="증빙유형"/>
  69. <Cell col="8" text="year"/>
  70. <Cell col="9" text="flagcd"/>
  71. <Cell col="10" text="cdid"/>
  72. <Cell col="11" text="buseocode"/>
  73. </Band>
  74. <Band id="body">
  75. <Cell celltype="head"/>
  76. <Cell col="1" text="bind:seq"/>
  77. <Cell col="2" displaytype="date" edittype="date" text="bind:baldate" calendardisplaynulltype="nulltext"/>
  78. <Cell col="3" text="bind:day"/>
  79. <Cell col="4" displaytype="combo" edittype="combo" text="bind:youngdo" combodataset="ds_cmb_youngdo" combocodecol="value" combodatacol="label"/>
  80. <Cell col="5" displaytype="text" edittype="text" text="bind:kdesc"/>
  81. <Cell col="6" displaytype="number" edittype="normal" text="bind:amt"/>
  82. <Cell col="7" displaytype="combo" edittype="combo" text="bind:jeungbing" combodataset="ds_cmb_jeungbing" combocodecol="value" combodatacol="label"/>
  83. <Cell col="8" text="bind:year"/>
  84. <Cell col="9" text="bind:flagcd"/>
  85. <Cell col="10" text="bind:cdid"/>
  86. <Cell col="11" text="bind:buseocode"/>
  87. </Band>
  88. </Format>
  89. </Formats>
  90. </Grid>
  91. <Button id="btn_excelinput" taborder="6" text="엑셀입력" class="btn7" position="absolute 1002 128 1082 147" anchor="top right" onclick="btn_excelinput_onclick"/>
  92. <Button id="btn_excelsave" taborder="7" text="엑셀샘플" class="btn7" position="absolute 920 128 1000 147" anchor="top right" onclick="btn_excelsave_onclick"/>
  93. <Grid id="datagrid1" taborder="8" binddataset="ds_sampledata" useinputpanel="false" visible="false" position="absolute 370 289 860 379">
  94. <Formats>
  95. <Format id="default">
  96. <Columns>
  97. <Column size="31"/>
  98. <Column size="37"/>
  99. <Column size="160"/>
  100. <Column size="113"/>
  101. <Column size="217"/>
  102. <Column size="361"/>
  103. <Column size="150"/>
  104. <Column size="205"/>
  105. </Columns>
  106. <Rows>
  107. <Row size="24" band="head"/>
  108. <Row size="24"/>
  109. </Rows>
  110. <Band id="head">
  111. <Cell/>
  112. <Cell col="1" text="순번"/>
  113. <Cell col="2" text="발생일자"/>
  114. <Cell col="3" text="요일"/>
  115. <Cell col="4" text="계정구분"/>
  116. <Cell col="5" text="지출내역"/>
  117. <Cell col="6" text="금액"/>
  118. <Cell col="7" text="증빙유형"/>
  119. </Band>
  120. <Band id="body">
  121. <Cell celltype="head"/>
  122. <Cell col="1" text="bind:seq"/>
  123. <Cell col="2" text="bind:baldate"/>
  124. <Cell col="3" text="bind:day"/>
  125. <Cell col="4" displaytype="combo" edittype="combo" text="bind:youngdo" combodataset="ds_cmb_youngdo" combocodecol="value" combodatacol="label"/>
  126. <Cell col="5" displaytype="text" edittype="text" text="bind:kdesc"/>
  127. <Cell col="6" displaytype="number" edittype="normal" text="bind:amt"/>
  128. <Cell col="7" displaytype="combo" edittype="combo" text="bind:jeungbing" combodataset="ds_cmb_jeungbing" combocodecol="value" combodatacol="label"/>
  129. </Band>
  130. </Format>
  131. </Formats>
  132. </Grid>
  133. <Button id="btn_dedu" taborder="9" text="직원인건비내역등록" class="btn2" position="absolute 790 128 917 147" anchor="top right" onclick="btn_dedu_onclick"/>
  134. </Layout>
  135. </Layouts>
  136. <Objects>
  137. <Dataset id="ds_send_retrparam" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_send_retrparam_oncolumnchanged">
  138. <ColumnInfo>
  139. <Column id="instcd" type="STRING" size="256"/>
  140. <Column id="year" type="STRING" size="256"/>
  141. <Column id="flagcd" type="STRING" size="256"/>
  142. <Column id="cdid" type="STRING" size="256"/>
  143. <Column id="buseocode" type="STRING" size="256"/>
  144. <Column id="sabun" type="STRING" size="256"/>
  145. <Column id="userid" type="STRING" size="256"/>
  146. <Column id="poweryn" type="STRING" size="256"/>
  147. <Column id="sanyn" type="STRING" size="256"/>
  148. <Column id="oksign" type="STRING" size="256"/>
  149. <Column id="flagnm" type="STRING" size="256"/>
  150. <Column id="buseoname" type="STRING" size="256"/>
  151. <Column id="cdnm" type="STRING" size="256"/>
  152. </ColumnInfo>
  153. <Rows>
  154. <Row>
  155. <Col id="instcd"/>
  156. <Col id="year"/>
  157. <Col id="flagcd"/>
  158. <Col id="cdid"/>
  159. <Col id="buseocode"/>
  160. <Col id="sabun"/>
  161. <Col id="userid"/>
  162. <Col id="poweryn"/>
  163. <Col id="sanyn"/>
  164. <Col id="oksign"/>
  165. <Col id="flagnm"/>
  166. <Col id="buseoname"/>
  167. <Col id="cdnm"/>
  168. </Row>
  169. </Rows>
  170. </Dataset>
  171. <Dataset id="ds_init_codeinfo_codelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  172. <ColumnInfo>
  173. <Column id="cdnm" type="STRING" size="256"/>
  174. <Column id="cdid" type="STRING" size="256"/>
  175. </ColumnInfo>
  176. </Dataset>
  177. <Dataset id="ds_init_dtlcodeinfo_codelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  178. <ColumnInfo>
  179. <Column id="cdnm" type="STRING" size="256"/>
  180. <Column id="cdid" type="STRING" size="256"/>
  181. </ColumnInfo>
  182. </Dataset>
  183. <Dataset id="ds_init_deptinfo_deptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  184. <ColumnInfo>
  185. <Column id="deptnm" type="STRING" size="256"/>
  186. <Column id="deptcd" type="STRING" size="256"/>
  187. </ColumnInfo>
  188. </Dataset>
  189. <Dataset id="ds_main_datalist_amtinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  190. <ColumnInfo>
  191. <Column id="ableamt" type="STRING" size="256"/>
  192. <Column id="useamt" type="STRING" size="256"/>
  193. <Column id="remamt" type="STRING" size="256"/>
  194. </ColumnInfo>
  195. <Rows>
  196. <Row>
  197. <Col id="ableamt"/>
  198. <Col id="useamt"/>
  199. <Col id="remamt"/>
  200. </Row>
  201. </Rows>
  202. </Dataset>
  203. <Dataset id="ds_main_datalist_managerinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  204. <ColumnInfo>
  205. <Column id="oksign" type="STRING" size="256"/>
  206. </ColumnInfo>
  207. <Rows>
  208. <Row/>
  209. </Rows>
  210. </Dataset>
  211. <Dataset id="ds_cmb_youngdo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  212. <ColumnInfo>
  213. <Column id="label" type="STRING" size="256"/>
  214. <Column id="value" type="STRING" size="256"/>
  215. </ColumnInfo>
  216. <Rows>
  217. <Row>
  218. <Col id="label">1.인건비</Col>
  219. <Col id="value">1</Col>
  220. </Row>
  221. <Row>
  222. <Col id="label">2.초빙강사료</Col>
  223. <Col id="value">2</Col>
  224. </Row>
  225. <Row>
  226. <Col id="label">3.회의및행사비</Col>
  227. <Col id="value">3</Col>
  228. </Row>
  229. <Row>
  230. <Col id="label">4.학회참가경비</Col>
  231. <Col id="value">4</Col>
  232. </Row>
  233. <Row>
  234. <Col id="label">5.도서인쇄비</Col>
  235. <Col id="value">5</Col>
  236. </Row>
  237. <Row>
  238. <Col id="label">6.소모품비</Col>
  239. <Col id="value">6</Col>
  240. </Row>
  241. <Row>
  242. <Col id="label">7.경조사비</Col>
  243. <Col id="value">7</Col>
  244. </Row>
  245. <Row>
  246. <Col id="label">8.우편통신비</Col>
  247. <Col id="value">8</Col>
  248. </Row>
  249. <Row>
  250. <Col id="label">9.자산구입비</Col>
  251. <Col id="value">9</Col>
  252. </Row>
  253. <Row>
  254. <Col id="label">X.기타</Col>
  255. <Col id="value">X</Col>
  256. </Row>
  257. </Rows>
  258. </Dataset>
  259. <Dataset id="ds_cmb_jeungbing" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  260. <ColumnInfo>
  261. <Column id="label" type="STRING" size="256"/>
  262. <Column id="value" type="STRING" size="256"/>
  263. </ColumnInfo>
  264. <Rows>
  265. <Row>
  266. <Col id="label">1.세금계산서</Col>
  267. <Col id="value">1</Col>
  268. </Row>
  269. <Row>
  270. <Col id="label">2.계산서</Col>
  271. <Col id="value">2</Col>
  272. </Row>
  273. <Row>
  274. <Col id="label">3.인건비영수증</Col>
  275. <Col id="value">3</Col>
  276. </Row>
  277. <Row>
  278. <Col id="label">4.자산등록요청서</Col>
  279. <Col id="value">4</Col>
  280. </Row>
  281. <Row>
  282. <Col id="label">5.부서법인카드</Col>
  283. <Col id="value">5</Col>
  284. </Row>
  285. <Row>
  286. <Col id="label">6.현금영수증</Col>
  287. <Col id="value">6</Col>
  288. </Row>
  289. <Row>
  290. <Col id="label">7.원천징수영수증</Col>
  291. <Col id="value">7</Col>
  292. </Row>
  293. <Row>
  294. <Col id="label">X.기타</Col>
  295. <Col id="value">X</Col>
  296. </Row>
  297. </Rows>
  298. </Dataset>
  299. <Dataset id="ds_main_datalist_jungsan" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_datalist_jungsan_oncolumnchanged"/>
  300. <Dataset id="ds_sampledata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  301. <ColumnInfo>
  302. <Column id="baldate" type="STRING" size="256"/>
  303. <Column id="baltime" type="STRING" size="256"/>
  304. <Column id="day" type="STRING" size="256"/>
  305. <Column id="kdesc" type="STRING" size="256"/>
  306. <Column id="youngdo" type="STRING" size="256"/>
  307. <Column id="jeungbing" type="STRING" size="256"/>
  308. </ColumnInfo>
  309. </Dataset>
  310. <Dataset id="ds_temp_jungsanjayn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  311. <ColumnInfo>
  312. <Column id="sanyn" type="STRING" size="256"/>
  313. </ColumnInfo>
  314. </Dataset>
  315. <Dataset id="ds_sanynlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  316. <ColumnInfo>
  317. <Column id="sanyn" type="STRING" size="256"/>
  318. </ColumnInfo>
  319. <Rows>
  320. <Row/>
  321. </Rows>
  322. </Dataset>
  323. <Dataset id="ds_temp_powerinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  324. <ColumnInfo>
  325. <Column id="poweryn" type="STRING" size="256"/>
  326. </ColumnInfo>
  327. </Dataset>
  328. <Dataset id="ds_powerlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  329. <ColumnInfo>
  330. <Column id="poweryn" type="STRING" size="256"/>
  331. </ColumnInfo>
  332. </Dataset>
  333. </Objects>
  334. <Bind>
  335. <BindItem id="item0" compid="grp_sea.ipt_year" propid="value" datasetid="ds_send_retrparam" columnid="year"/>
  336. <BindItem id="item1" compid="grp_sea.cmb_flagcd" propid="value" datasetid="ds_send_retrparam" columnid="flagcd"/>
  337. <BindItem id="item2" compid="grp_sea.cmb_cdid" propid="value" datasetid="ds_send_retrparam" columnid="cdid"/>
  338. <BindItem id="item3" compid="grp_sea.cmb_buseocode" propid="value" datasetid="ds_send_retrparam" columnid="buseocode"/>
  339. <BindItem id="item4" compid="grp_sea.opt_ableamt" propid="value" datasetid="ds_main_datalist_amtinfo" columnid="ableamt"/>
  340. <BindItem id="item5" compid="grp_sea.ipt_useamt" propid="value" datasetid="ds_main_datalist_amtinfo" columnid="useamt"/>
  341. <BindItem id="item6" compid="grp_sea.ipt_remamt" propid="value" datasetid="ds_main_datalist_amtinfo" columnid="remamt"/>
  342. <BindItem id="item7" compid="grp_sea.bool1" propid="value" datasetid="ds_main_datalist_managerinfo" columnid="oksign"/>
  343. </Bind>
  344. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  345. * System Name :
  346. * Job Name :
  347. * Creator :
  348. * Make Date : 2017-06-19
  349. * Description :
  350. *---------------------------------------------------------------------------------------
  351. * Modify Date Modifier Modify Description
  352. *---------------------------------------------------------------------------------------
  353. * 2017-06-19 Live Converter TF->XP
  354. *
  355. *---------------------------------------------------------------------------------------
  356. ****************************************************************************************/
  357. include "com_commonxp::comm_main.xjs";
  358. include "mis_miscommonxp::MIS.xjs";
  359. function SMRAH04700_oninit(obj:Form, e:InitEventInfo)
  360. {
  361. frmf_initForm(obj);
  362. }
  363. function SMRAH04700_onload(obj:Form, e:LoadEventInfo)
  364. {
  365. grdf_initGrid(grd_acntinoutlist);
  366. grdf_setRowTypeIcon(grd_acntinoutlist, 0);
  367. fResetForm();
  368. }
  369. function fResetForm()
  370. {
  371. dsf_makeValue(ds_send_retrparam, "opener", "string", "SMRAH04700", 0);
  372. ds_send_retrparam.setColumn(0, "instcd", sysf_getUserInfo("dutplceinstcd"));
  373. ds_send_retrparam.setColumn(0, "year", String(utlf_getCurrentDate()).substr(0,4));
  374. var oParam = {};
  375. oParam.id = "TRRAH04302";
  376. oParam.service = "acntknuhapp.Acntknuh";
  377. oParam.method = "reqGetQIComboList";
  378. oParam.inds = "req=ds_send_retrparam";
  379. oParam.outds = "ds_init_codeinfo_codelist=codelist";
  380. oParam.async = false;
  381. //oParam.callback = "cf_TRRAH04302";
  382. tranf_submit(oParam);
  383. }
  384. function ds_send_retrparam_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  385. {
  386. if(e.columnid == "year")
  387. {
  388. grp_sea.opt_ableamt.value = "";
  389. grp_sea.ipt_useamt.value = "";
  390. grp_sea.ipt_remamt.value = "";
  391. }
  392. }
  393. function grp_sea_cmb_flagcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  394. {
  395. misfGridInit(grd_acntinoutlist);
  396. grp_sea.opt_ableamt.value = "";
  397. grp_sea.ipt_useamt.value = "";
  398. grp_sea.ipt_remamt.value = "";
  399. var oParam = {};
  400. oParam.id = "TRRAH04602";
  401. oParam.service = "acntknuhapp.Acntknuh";
  402. oParam.method = "reqGetQIDtlComboList";
  403. oParam.inds = "req=ds_send_retrparam";
  404. oParam.outds = "ds_init_dtlcodeinfo_codelist=codelist";
  405. oParam.async = false;
  406. oParam.callback = "cf_TRRAH04602";
  407. tranf_submit(oParam);
  408. grp_sea.cmb_cdid.value = "";
  409. var Emplno = sysf_getUserInfo("userid");
  410. var Deptcd = sysf_getUserInfo("dutplcecd");
  411. ds_send_retrparam.setColumn(0, "userid", Emplno);
  412. ds_send_retrparam.setColumn(0, "sabun", Emplno);
  413. var oParam = {};
  414. oParam.id = "TRRAH04701";
  415. oParam.service = "acntknuhapp.Acntknuh";
  416. oParam.method = "reqGetQISanjaynList";
  417. oParam.inds = "req=ds_send_retrparam";
  418. oParam.outds = "ds_temp_jungsanjayn=jungsanjayn";
  419. oParam.async = false;
  420. //oParam.callback = "cf_TRRAH04701";
  421. tranf_submit(oParam);
  422. ds_sanynlist.setColumn(0, "sanyn", ds_temp_jungsanjayn.getColumn(0, "sanyn"));
  423. ds_send_retrparam.setColumn(0, "sanyn", ds_temp_jungsanjayn.getColumn(0, "sanyn"));
  424. var oParam = {};
  425. oParam.id = "TRRAH01304";
  426. oParam.service = "acntknuhapp.Acntknuh";
  427. oParam.method = "reqGetSanjaPowerList";
  428. oParam.inds = "req=ds_send_retrparam";
  429. oParam.outds = "ds_temp_powerinfo=powerinfo";
  430. oParam.async = false;
  431. //oParam.callback = "cf_TRRAH01304";
  432. tranf_submit(oParam);
  433. ds_powerlist.setColumn(0, "poweryn", ds_temp_powerinfo.getColumn(0, "poweryn"));
  434. ds_send_retrparam.setColumn(0, "poweryn", ds_temp_powerinfo.getColumn(0, "poweryn"));
  435. var oParam = {};
  436. oParam.id = "TRRAH04702";
  437. oParam.service = "acntknuhapp.Acntknuh";
  438. oParam.method = "reqGetQISanjaList";
  439. oParam.inds = "req=ds_send_retrparam";
  440. oParam.outds = "ds_init_deptinfo_deptlist=deptlist";
  441. oParam.async = false;
  442. //oParam.callback = "cf_TRRAH04702";
  443. tranf_submit(oParam);
  444. grp_sea.cmb_buseocode.value = "";
  445. var sanyn = ds_sanynlist.getColumn(0, "sanyn");
  446. if(sanyn == "Y")
  447. {
  448. ds_powerlist.setColumn(0, "poweryn", "Y");
  449. ds_send_retrparam.setColumn(0, "poweryn", "Y");
  450. }
  451. frmf_modal("SMRAH01800", "SMRAH01800", "", "", "", "", "", "", "", "", "", "", "M");
  452. }
  453. function cf_TRRAH04602(sSvcId, nErrorCode, sErrorMsg)
  454. {
  455. if(nErrorCode < 0)
  456. {
  457. return;
  458. }
  459. else
  460. {
  461. if(ds_init_dtlcodeinfo_codelist.rowcount > 0)
  462. {
  463. grp_sea.cmb_cdid.enable = true;
  464. }
  465. else
  466. {
  467. grp_sea.cmb_cdid.enable = false;
  468. }
  469. }
  470. }
  471. function grp_sea_cmb_cdid_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  472. {
  473. misfGridInit(grd_acntinoutlist);
  474. grp_sea.opt_ableamt.value = "";
  475. grp_sea.ipt_useamt.value = "";
  476. grp_sea.ipt_remamt.value = "";
  477. }
  478. function grp_sea_cmb_buseocode_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  479. {
  480. misfGridInit(grd_acntinoutlist);
  481. grp_sea.opt_ableamt.value = "";
  482. grp_sea.ipt_useamt.value = "";
  483. grp_sea.ipt_remamt.value = "";
  484. }
  485. function grp_sea_btn_search_onclick(obj:Button, e:ClickEventInfo)
  486. {
  487. if(String(grp_sea.ipt_year.value).length != 4)
  488. {
  489. sysf_messageBox("년도를 확인하십시요. ", "E999", "");
  490. grp_sea.ipt_year.setFocus();
  491. return;
  492. }
  493. if(utlf_isNull(grp_sea.cmb_flagcd.value))
  494. {
  495. sysf_messageBox("구분을 선택하십시요. ", "E999", "");
  496. grp_sea.cmb_flagcd.setFocus();
  497. return;
  498. }
  499. if(utlf_isNull(grp_sea.cmb_buseocode.value))
  500. {
  501. sysf_messageBox("정산부서를 선택하십시요. ", "E999", "");
  502. grp_sea.cmb_buseocode.setFocus();
  503. return;
  504. }
  505. fRetrieve();
  506. }
  507. function btn_dedu_onclick(obj:Button, e:ClickEventInfo)
  508. {
  509. var Ableamt = ds_main_datalist_amtinfo.getColumn(0, "ableamt");
  510. if( Ableamt == "0" || utlf_isNull(Ableamt))
  511. {
  512. sysf_messageBox("수령금액이 존재하지 않습니다. \n조회 후 등록하십시요. ", "E999", "");
  513. return;
  514. }
  515. dsf_makeValue(ds_send_retrparam, "flagnm", "string", grp_sea.cmb_flagcd.text, 0);
  516. dsf_makeValue(ds_send_retrparam, "cdnm", "string", grp_sea.cmb_cdid.text, 0);
  517. dsf_makeValue(ds_send_retrparam, "buseoname", "string", grp_sea.cmb_buseocode.text, 0);
  518. dsf_makeValue(ds_send_retrparam, "opener", "string", "SMRAH04700", 0);
  519. frmf_modal("SMRAH04900", "SMRAH04900", "", "", "", "", "", "", "", "", "", "", "M");
  520. }
  521. function btn_excelsave_onclick(obj:Button, e:ClickEventInfo)
  522. {
  523. misfGridInit(datagrid1);
  524. var addRow = ds_sampledata.addRow();
  525. ds_sampledata.setColumn(addRow, "baldate", "20150301");
  526. ds_sampledata.setColumn(addRow, "day", "입력 불필요");
  527. ds_sampledata.setColumn(addRow, "kdesc", "NO,순번은 순서대로 입력해 주세오.예)1,2,3");
  528. ds_sampledata.setColumn(addRow, "youngdo", "코드로 입력");
  529. ds_sampledata.setColumn(addRow, "jeungbing", "코드로 입력");
  530. grdf_exportExcel(datagrid1, "QI활동비정산비등록_Sample", "QI활동비정산비등록_Sample", false, "", "user", false);
  531. }
  532. function btn_excelinput_onclick(obj:Button, e:ClickEventInfo)
  533. {
  534. var Ableamt = ds_main_datalist_amtinfo.getColumn(0, "ableamt");
  535. if( Ableamt == "0" || utlf_isNull(Ableamt))
  536. {
  537. sysf_messageBox("수령금액이 존재하지 않습니다. \n조회 후 등록하십시요. ", "E999", "");
  538. grp_sea.cmb_flagcd.setFocus();
  539. return;
  540. }
  541. sysf_messageBox("엑셀입력을 하실 때 꼭 샘플양식에 맞게 입력해주세요.","I999", "");
  542. grdf_ImportExcel("ds_main_datalist_jungsan", 2, grd_acntinoutlist)
  543. ds_main_datalist_jungsan.updatecontrol = false;
  544. for(var i = 0; i < ds_main_datalist_jungsan.rowcount; i++)
  545. {
  546. ds_main_datalist_jungsan.setColumn(i, "gubun", "0");
  547. ds_main_datalist_jungsan.setRowType(i, "i");
  548. ds_main_datalist_jungsan.setColumn(i, "year", ds_send_retrparam.getColumn(0, "year"));
  549. ds_main_datalist_jungsan.setColumn(i, "flagcd", ds_send_retrparam.getColumn(0, "flagcd"));
  550. ds_main_datalist_jungsan.setColumn(i, "buseocode", ds_send_retrparam.getColumn(0, "buseocode"));
  551. ds_main_datalist_jungsan.setColumn(i, "cdid", ds_send_retrparam.getColumn(0, "cdid"));
  552. var sDate = ds_main_datalist_jungsan.getColumn(i, "baldate");
  553. if (String(sDate).length < 8)
  554. {
  555. ds_main_datalist_jungsan.setColumn(i, "day", "");
  556. }
  557. else
  558. {
  559. ds_main_datalist_jungsan.setColumn(i, "day", getDateTime(sDate.toDate(), "W"));
  560. }
  561. }
  562. }
  563. function button1_onclick(obj:Button, e:ClickEventInfo)
  564. {
  565. var Ableamt = ds_main_datalist_amtinfo.getColumn(0, "ableamt");
  566. if( Ableamt == "0" || utlf_isNull(Ableamt))
  567. {
  568. sysf_messageBox("수령금액이 존재하지 않습니다. \n조회 후 등록하십시요. ", "E999", "");
  569. grp_sea.cmb_flagcd.setFocus();
  570. return;
  571. }
  572. var addRow = ds_main_datalist_jungsan.addRow();
  573. ds_main_datalist_jungsan.setColumn(addRow, "baldate", utlf_getCurrentDate());
  574. ds_main_datalist_jungsan.setColumn(addRow, "year", ds_send_retrparam.getColumn(0, "year"));
  575. ds_main_datalist_jungsan.setColumn(addRow, "flagcd", ds_send_retrparam.getColumn(0, "flagcd"));
  576. ds_main_datalist_jungsan.setColumn(addRow, "buseocode", ds_send_retrparam.getColumn(0, "buseocode"));
  577. ds_main_datalist_jungsan.setColumn(addRow, "cdid", ds_send_retrparam.getColumn(0, "cdid"));
  578. if(ds_main_datalist_jungsan.rowposition == 0)
  579. {
  580. ds_main_datalist_jungsan.setColumn(0, "seq", "1");
  581. }
  582. else
  583. {
  584. var ll_seq_max = 0;
  585. var ll_seq = 0;
  586. for(var i = 0; i < ds_main_datalist_jungsan.rowcount; i++)
  587. {
  588. ll_seq = parseInt(ds_main_datalist_jungsan.getColumn(i, "seq"));
  589. if (ll_seq > ll_seq_max)
  590. {
  591. ll_seq_max = ll_seq ;
  592. }
  593. }
  594. ds_main_datalist_jungsan.setColumn(ds_main_datalist_jungsan.rowposition, "seq", ll_seq_max + 1);
  595. }
  596. var sDate = ds_main_datalist_jungsan.getColumn(ds_main_datalist_jungsan.rowposition, "baldate");
  597. if (String(sDate).length < 8)
  598. {
  599. ds_main_datalist_jungsan.setColumn(ds_main_datalist_jungsan.rowposition, "day", "");
  600. }
  601. else
  602. {
  603. ds_main_datalist_jungsan.setColumn(ds_main_datalist_jungsan.rowposition, "day", getDateTime(sDate.toDate(), "W"));
  604. }
  605. }
  606. function button2_onclick(obj:Button, e:ClickEventInfo)
  607. {
  608. var status = ds_main_datalist_jungsan.getRowType(ds_main_datalist_jungsan.rowposition);
  609. if(status == 1)
  610. {
  611. ds_main_datalist_jungsan.updatecontrol = false;
  612. ds_main_datalist_jungsan.setRowType(ds_main_datalist_jungsan.rowposition, "d");
  613. ds_main_datalist_jungsan.updatecontrol = true;
  614. }
  615. else if(status == 2)
  616. {
  617. ds_main_datalist_jungsan.deleteRow(ds_main_datalist_jungsan.rowposition);
  618. }
  619. else if(status == 4)
  620. {
  621. ds_main_datalist_jungsan.updatecontrol = false;
  622. ds_main_datalist_jungsan.setRowType(ds_main_datalist_jungsan.rowposition, "d");
  623. ds_main_datalist_jungsan.updatecontrol = true;
  624. }
  625. else if(status == 8)
  626. {
  627. ds_main_datalist_jungsan.updatecontrol = false;
  628. ds_main_datalist_jungsan.setRowType(ds_main_datalist_jungsan.rowposition, "d");
  629. ds_main_datalist_jungsan.updatecontrol = true;
  630. }
  631. }
  632. function button3_onclick(obj:Button, e:ClickEventInfo)
  633. {
  634. dsf_makeValue(ds_send_retrparam, "flagnm", "string", grp_sea.cmb_flagcd.text, 0);
  635. dsf_makeValue(ds_send_retrparam, "cdnm", "string", grp_sea.cmb_cdid.text, 0);
  636. dsf_makeValue(ds_send_retrparam, "deptnm", "string", grp_sea.cmb_buseocode.text, 0);
  637. var objDOM = rptf_createDOM();
  638. rptf_setNodeListToDOM(objDOM, "/root/main/datalist/jungsan", ds_main_datalist_jungsan);
  639. rptf_setNodeListToDOM(objDOM, "/root/main/datalist/amtinfo", ds_main_datalist_amtinfo);
  640. rptf_setNodeListToDOM(objDOM, "/root/main/datalist/managerinfo", ds_main_datalist_managerinfo);
  641. rptf_setNodeListToDOM(objDOM, "/root/send/retrparam", ds_send_retrparam);
  642. var objParam = new Object();
  643. objParam.xml_data_XML1 = objDOM.documentElement.source;
  644. var option = "";
  645. rptf_exeReportPreview30(["SMRAH04701"],[objParam], option);
  646. }
  647. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  648. {
  649. var cnt = ds_main_datalist_jungsan.rowcount;
  650. for( var i = 0; i < cnt ; i++)
  651. {
  652. if(String(ds_main_datalist_jungsan.getColumn(i, "baldate")).length != 8)
  653. {
  654. sysf_messageBox("[ " + i + " ]번째 행의 발생일자가 정확하지 않습니다. ", "E000");
  655. return;
  656. }
  657. if(utlf_isNull(ds_main_datalist_jungsan.getColumn(i, "youngdo")))
  658. {
  659. sysf_messageBox("[ " + i+1 + " ]번째 행의 계정구분값이 누락되었습니다. \n계정구분값은 필수 입력값입니다. ", "E000");
  660. return;
  661. }
  662. if(utlf_isNull(ds_main_datalist_jungsan.getColumn(i, "jeungbing")))
  663. {
  664. sysf_messageBox("[ " + i+1 + " ]번째 행의 증빙유형값이 누락되었습니다. \n증빙유형값은 필수 입력값입니다. ", "E000");
  665. return;
  666. }
  667. }
  668. fSaveData();
  669. }
  670. function fSaveData()
  671. {
  672. var updtdata = grdf_getGridUpdateData(grd_acntinoutlist).rowcount;
  673. var copydata = ds_main2_managerinfo.getColumn(0, "oksign");
  674. var data = ds_main_datalist_managerinfo.getColumn(0, "oksign");
  675. if (updtdata == 0 && data == copydata)
  676. {
  677. sysf_messageBox("변경된 데이터가","I004");
  678. return;
  679. }
  680. for(var i = 0; i < ds_main_datalist_jungsan.rowcount; i++)
  681. {
  682. if(ds_main_datalist_jungsan.getRowType(i) == 8)
  683. {
  684. return;
  685. }
  686. var balyear = String(ds_main_datalist_jungsan.getColumn(i, "baldate")).substr(0,4);
  687. var year = ds_send_retrparam.getColumn(0, "year");
  688. if(year != balyear)
  689. {
  690. sysf_messageBox("[ " + i+1 + " ]번째 행의 발생일자가 적합하지 않습니다.", "I000");
  691. return;
  692. }
  693. var amt = ds_main_datalist_jungsan.getColumn(i, "amt");
  694. if( utlf_isNull(amt))
  695. {
  696. sysf_messageBox("[ " + i+1 + " ]번째 행의 금액이 누락되었습니다. \n금액은 필수 입력값입니다. ", "E000");
  697. return;
  698. }
  699. }
  700. if( sysf_messageBox("정산 내역을", "Q002") != 6 )
  701. {
  702. return ;
  703. }
  704. fSave();
  705. var oParam = {};
  706. oParam.id = "TXRAH04701";
  707. oParam.service = "acntknuhapp.Acntknuh";
  708. oParam.method = "reqExeSaveQIJungSanList";
  709. oParam.inds = "req=ds_main_datalist_jungsan:u req2=ds_main_datalist_managerinfo:u";
  710. oParam.outds = "ds_=seqno";
  711. oParam.async = false;
  712. oParam.callback = "cf_TXRAH04701";
  713. tranf_submit(oParam);
  714. }
  715. function cf_TXRAH04701(sSvcId, nErrorCode, sErrorMsg)
  716. {
  717. if(nErrorCode < 0)
  718. {
  719. return;
  720. }
  721. else
  722. {
  723. fRetrieve();
  724. }
  725. }
  726. function ds_main_datalist_jungsan_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  727. {
  728. if(e.columnid == "baldate")
  729. {
  730. var sDate = obj.getColumn(e.row, "baldate");
  731. if (String(sDate).length < 8)
  732. {
  733. obj.setColumn(e.row, "day", "");
  734. }
  735. else
  736. {
  737. obj.setColumn(e.row, "day", getDateTime(sDate.toDate(), "W"));
  738. }
  739. }
  740. }
  741. ]]></Script>
  742. </Form>
  743. </FDL>