SMRAH03600_특별정산비등록.xfdl 35 KB

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