SPRAD00134_근로소득자료관리.xfdl 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPRAD00134" position="absolute 0 0 460 166" titletext="근로소득자료관리" oninit="SPRAD00134_oninit" onload="SPRAD00134_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="cpt_title" text="근로소득자료관리" class="tit_1" position="absolute 0 0 190 23"/>
  8. <Shape id="line3" class="line_2" position="absolute 0 51 455 57"/>
  9. <Shape id="line9" class="line_3" position="absolute 0 126 455 132"/>
  10. <Static id="caption47" text="사원번호" class="cell_1" position="absolute 0 29 100 52"/>
  11. <Shape id="line2" class="line_10" position="absolute 0 24 455 30"/>
  12. <Static id="caption7" text="비고" class="cell_1" position="absolute 0 104 100 127"/>
  13. <Static id="caption10" text="지급액" class="cell_1" position="absolute 0 79 100 102"/>
  14. <Static id="caption13" text="지급일자" class="cell_1" visible="false" position="absolute 0 54 100 77"/>
  15. <MaskEdit id="ipt_paytotamt" taborder="1" mask="9,99999999" class="input_s_essential" position="absolute 103 81 253 100" autoselect="true" autoskip="true" onkeydown="ipt_paytotamt_onkeydown"/>
  16. <Edit id="ipt_cmt" taborder="2" class="input_default" position="absolute 103 106 450 125" autoselect="true" autoskip="true" onkeydown="ipt_cmt_onkeydown"/>
  17. <Shape id="line10" class="line_2" position="absolute 0 76 455 82"/>
  18. <Edit id="ipt_paydd" taborder="3" class="input_default" enable="false" visible="false" position="absolute 103 56 274 75"/>
  19. <Grid id="grd_orchlist" taborder="4" binddataset="ds_main_list_orchlist" useinputpanel="false" visible="false" position="absolute 400 75 430 105">
  20. <Formats>
  21. <Format id="default">
  22. <Columns>
  23. <Column size="0"/>
  24. <Column size="0"/>
  25. <Column size="0"/>
  26. <Column size="0"/>
  27. <Column size="97"/>
  28. <Column size="0"/>
  29. <Column size="91"/>
  30. <Column size="0"/>
  31. <Column size="0"/>
  32. <Column size="0"/>
  33. <Column size="0"/>
  34. <Column size="106"/>
  35. <Column size="0"/>
  36. <Column size="0"/>
  37. <Column size="0"/>
  38. <Column size="449"/>
  39. <Column size="0"/>
  40. <Column size="0"/>
  41. <Column size="0"/>
  42. <Column size="0"/>
  43. <Column size="0"/>
  44. <Column size="0"/>
  45. <Column size="0"/>
  46. <Column size="0"/>
  47. </Columns>
  48. <Rows>
  49. <Row size="24" band="head"/>
  50. <Row size="24"/>
  51. </Rows>
  52. <Band id="head">
  53. <Cell text="기관코드"/>
  54. <Cell col="1" text="일련번호"/>
  55. <Cell col="2" text="세부일련번호"/>
  56. <Cell col="3" text="징수구분"/>
  57. <Cell col="4" text="사원번호"/>
  58. <Cell col="5" text="주민등록번호"/>
  59. <Cell col="6" text="성명"/>
  60. <Cell col="7" text="사업자등록번호"/>
  61. <Cell col="8" text="상호"/>
  62. <Cell col="9" text="일용근로일수"/>
  63. <Cell col="10" text="일용근로일급"/>
  64. <Cell col="11" text="지급액"/>
  65. <Cell col="12" text="세율"/>
  66. <Cell col="13" text="소득세"/>
  67. <Cell col="14" text="주민세"/>
  68. <Cell col="15" text="비고"/>
  69. <Cell col="16" text="우편번호"/>
  70. <Cell col="17" text="우편번호1"/>
  71. <Cell col="18" text="우편번호2"/>
  72. <Cell col="19" text="우편번호일련번호"/>
  73. <Cell col="20" text="주소"/>
  74. <Cell col="21" text="상세주소"/>
  75. <Cell col="22" text="업종구분"/>
  76. <Cell col="23" text="소득구분"/>
  77. </Band>
  78. <Band id="body">
  79. <Cell text="bind:instcd"/>
  80. <Cell col="1" text="bind:seqno"/>
  81. <Cell col="2" text="bind:detlseqno"/>
  82. <Cell col="3" text="bind:chrgflag"/>
  83. <Cell col="4" text="bind:emplno"/>
  84. <Cell col="5" text="bind:rrgstno" mask="999999-9999999"/>
  85. <Cell col="6" text="bind:name"/>
  86. <Cell col="7" text="bind:entrregno" mask="999-99-99999"/>
  87. <Cell col="8" text="bind:custnm"/>
  88. <Cell col="9" text="bind:dayno"/>
  89. <Cell col="10" text="bind:dypay"/>
  90. <Cell col="11" text="bind:paytotamt" mask="(-)#,###"/>
  91. <Cell col="12" text="bind:taxrate"/>
  92. <Cell col="13" text="bind:incmtax" mask="(-)#,###"/>
  93. <Cell col="14" text="bind:resdntax" mask="(-)#,###"/>
  94. <Cell col="15" text="bind:cmt"/>
  95. <Cell col="16" text="bind:zipcd"/>
  96. <Cell col="17" text="bind:zipcd1"/>
  97. <Cell col="18" text="bind:zipcd2"/>
  98. <Cell col="19" text="bind:zipcdseqno"/>
  99. <Cell col="20" text="bind:supaddr"/>
  100. <Cell col="21" text="bind:infaddr"/>
  101. <Cell col="22" enable="false" text="bind:induflag" edittype="combo" displaytype="combo"/>
  102. <Cell col="23" text="bind:incmflag" edittype="combo" displaytype="combo"/>
  103. </Band>
  104. </Format>
  105. </Formats>
  106. </Grid>
  107. <Edit id="input1" taborder="5" class="input_s_essential" visible="false" position="absolute 263 80 283 99"/>
  108. <Edit id="input2" taborder="6" class="input_s_essential" visible="false" position="absolute 282 80 302 99"/>
  109. <Edit id="input3" taborder="7" class="input_s_essential" visible="false" position="absolute 301 80 321 99"/>
  110. <Edit id="input4" taborder="8" class="input_s_essential" visible="false" position="absolute 320 80 340 99"/>
  111. <Edit id="input5" taborder="9" class="input_s_essential" visible="false" position="absolute 339 80 359 99"/>
  112. <Edit id="input6" taborder="10" class="input_s_essential" visible="false" position="absolute 358 80 378 99"/>
  113. <MaskEdit id="ipt_taxrate" taborder="11" mask="(-)#,###%" class="input_default" visible="false" position="absolute 377 80 396 99"/>
  114. <Button id="btn_grddel" taborder="12" text="행삭제" class="btn2" enable="false" visible="false" position="absolute 340 55 393 74" onclick="btn_grddel_onclick"/>
  115. <Button id="btn_grdadd" taborder="13" text="행추가" class="btn2" visible="false" position="absolute 285 55 338 74" onclick="btn_grdadd_onclick"/>
  116. <MaskEdit id="output1" taborder="14" readonly="true" mask="(-)#,###" visible="false" position="absolute 435 80 444 99"/>
  117. <Edit id="ipt_name" taborder="15" class="input_essential" position="absolute 225 31 450 50" onkeydown="ipt_name_onkeydown"/>
  118. <Button id="btn_userhelp" taborder="16" class="icon_search" position="absolute 205 32 221 48" onclick="btn_userhelp_onclick"/>
  119. <Edit id="ipt_emplno" taborder="17" class="input_essential" position="absolute 103 31 200 50" autoselect="true" autoskip="true" onkeydown="ipt_emplno_onkeydown"/>
  120. <Shape id="line4" class="line_2" position="absolute 0 100 455 106"/>
  121. <Shape id="line1" class="line_6" position="absolute 0 131 455 137"/>
  122. <Button id="btn_save" taborder="18" text="저장" class="btn4" position="absolute 282 135 338 157" onclick="btn_save_onclick"/>
  123. <Button id="btn_delete" taborder="19" text="삭제" class="btn4" position="absolute 340 135 396 157" onclick="btn_delete_onclick"/>
  124. <Button id="btn_close" taborder="20" text="닫기" class="btn4" position="absolute 398 135 454 157" onclick="btn_close_onclick"/>
  125. </Layout>
  126. </Layouts>
  127. <Objects>
  128. <Dataset id="ds_main_orch_one" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_orch_one_oncolumnchanged">
  129. <ColumnInfo>
  130. <Column id="instcd" type="STRING" size="256"/>
  131. <Column id="seqno" type="STRING" size="256"/>
  132. <Column id="detlseqno" type="STRING" size="256"/>
  133. <Column id="chrgflag" type="STRING" size="256"/>
  134. <Column id="emplno" type="STRING" size="256"/>
  135. <Column id="name" type="STRING" size="256"/>
  136. <Column id="entrregno" type="STRING" size="256"/>
  137. <Column id="rrgstno" type="STRING" size="256"/>
  138. <Column id="custnm" type="STRING" size="256"/>
  139. <Column id="zipcd" type="STRING" size="256"/>
  140. <Column id="zipcd1" type="STRING" size="256"/>
  141. <Column id="zipcd2" type="STRING" size="256"/>
  142. <Column id="zipcdseqno" type="STRING" size="256"/>
  143. <Column id="supaddr" type="STRING" size="256"/>
  144. <Column id="infaddr" type="STRING" size="256"/>
  145. <Column id="induflag" type="STRING" size="256"/>
  146. <Column id="incmflag" type="STRING" size="256"/>
  147. <Column id="dayno" type="STRING" size="256"/>
  148. <Column id="dypay" type="STRING" size="256"/>
  149. <Column id="paytotamt" type="STRING" size="256"/>
  150. <Column id="taxrate" type="STRING" size="256"/>
  151. <Column id="incmtax" type="STRING" size="256"/>
  152. <Column id="resdntax" type="STRING" size="256"/>
  153. <Column id="cmt" type="STRING" size="256"/>
  154. <Column id="status" type="STRING" size="256"/>
  155. </ColumnInfo>
  156. <Rows>
  157. <Row>
  158. <Col id="instcd"/>
  159. <Col id="seqno"/>
  160. <Col id="detlseqno"/>
  161. <Col id="chrgflag"/>
  162. <Col id="emplno"/>
  163. <Col id="name"/>
  164. <Col id="entrregno"/>
  165. <Col id="rrgstno"/>
  166. <Col id="custnm"/>
  167. <Col id="zipcd"/>
  168. <Col id="zipcd1"/>
  169. <Col id="zipcd2"/>
  170. <Col id="zipcdseqno"/>
  171. <Col id="supaddr"/>
  172. <Col id="infaddr"/>
  173. <Col id="induflag"/>
  174. <Col id="incmflag"/>
  175. <Col id="dayno"/>
  176. <Col id="dypay"/>
  177. <Col id="paytotamt"/>
  178. <Col id="taxrate"/>
  179. <Col id="incmtax"/>
  180. <Col id="resdntax"/>
  181. <Col id="cmt"/>
  182. </Row>
  183. </Rows>
  184. </Dataset>
  185. <Dataset id="ds_main_list_orch" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  186. <ColumnInfo>
  187. <Column id="instcd" type="STRING" size="256"/>
  188. <Column id="seqno" type="STRING" size="256"/>
  189. <Column id="chrgflag" type="STRING" size="256"/>
  190. <Column id="unsldd" type="STRING" size="256"/>
  191. <Column id="unslno" type="STRING" size="256"/>
  192. <Column id="undeciseqno" type="STRING" size="256"/>
  193. <Column id="paydd" type="STRING" size="256"/>
  194. <Column id="status" type="STRING" size="256"/>
  195. </ColumnInfo>
  196. <Rows>
  197. <Row>
  198. <Col id="instcd"/>
  199. <Col id="seqno"/>
  200. <Col id="chrgflag"/>
  201. <Col id="unsldd"/>
  202. <Col id="unslno"/>
  203. <Col id="undeciseqno"/>
  204. <Col id="paydd"/>
  205. <Col id="status"/>
  206. </Row>
  207. </Rows>
  208. </Dataset>
  209. <Dataset id="ds_main_list_orchlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  210. <ColumnInfo>
  211. <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
  212. <Column id="seqno" type="STRING" size="256" sumtext="일련번호"/>
  213. <Column id="detlseqno" type="STRING" size="256" sumtext="세부일련번호"/>
  214. <Column id="chrgflag" type="STRING" size="256" sumtext="징수구분"/>
  215. <Column id="emplno" type="STRING" size="256" sumtext="사원번호"/>
  216. <Column id="name" type="CCDATA" size="256" sumtext="성명"/>
  217. <Column id="entrregno" type="STRING" size="256" sumtext="사업자등록번호"/>
  218. <Column id="rrgstno" type="STRING" size="256" sumtext="주민등록번호"/>
  219. <Column id="custnm" type="CCDATA" size="256" sumtext="상호"/>
  220. <Column id="zipcd" type="STRING" size="256" sumtext="우편번호"/>
  221. <Column id="zipcd1" type="STRING" size="256" sumtext="우편번호1"/>
  222. <Column id="zipcd2" type="STRING" size="256" sumtext="우편번호2"/>
  223. <Column id="zipcdseqno" type="STRING" size="256" sumtext="우편번호일련번호"/>
  224. <Column id="supaddr" type="CCDATA" size="256" sumtext="상위주소"/>
  225. <Column id="infaddr" type="CCDATA" size="256" sumtext="하위주소"/>
  226. <Column id="induflag" type="STRING" size="256" sumtext="업종구분"/>
  227. <Column id="incmflag" type="STRING" size="256" sumtext="소득구분"/>
  228. <Column id="dayno" type="BIGDECIMAL" size="256" sumtext="일용근로일수"/>
  229. <Column id="dypay" type="STRING" size="256" sumtext="일용근로일급"/>
  230. <Column id="paytotamt" type="STRING" size="256" sumtext="지급총액"/>
  231. <Column id="taxrate" type="STRING" size="256" sumtext="세율"/>
  232. <Column id="incmtax" type="STRING" size="256" sumtext="소득세"/>
  233. <Column id="resdntax" type="STRING" size="256" sumtext="주민세"/>
  234. <Column id="ionatiflag" type="STRING" size="256" sumtext="내/외국인 구분"/>
  235. <Column id="residentflag" type="STRING" size="256" sumtext="거주자 구분"/>
  236. <Column id="cmt" type="CCDATA" size="256" sumtext="비고"/>
  237. </ColumnInfo>
  238. </Dataset>
  239. <Dataset id="ds_target_slipinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  240. <Dataset id="ds_target" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  241. <Dataset id="ds_send_retrparams" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  242. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  243. <ColumnInfo>
  244. <Column id="incmpsn" type="STRING" size="256"/>
  245. <Column id="totamt" type="STRING" size="256"/>
  246. <Column id="maxdetlseqno" type="STRING" size="256"/>
  247. </ColumnInfo>
  248. <Rows>
  249. <Row>
  250. <Col id="incmpsn"/>
  251. <Col id="totamt"/>
  252. <Col id="maxdetlseqno">0000</Col>
  253. </Row>
  254. </Rows>
  255. </Dataset>
  256. <Dataset id="ds_hidden_orch_one" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  257. <ColumnInfo>
  258. <Column id="instcd" type="STRING" size="256"/>
  259. <Column id="seqno" type="STRING" size="256"/>
  260. <Column id="detlseqno" type="STRING" size="256"/>
  261. <Column id="chrgflag" type="STRING" size="256"/>
  262. <Column id="emplno" type="STRING" size="256"/>
  263. <Column id="name" type="STRING" size="256"/>
  264. <Column id="entrregno" type="STRING" size="256"/>
  265. <Column id="rrgstno" type="STRING" size="256"/>
  266. <Column id="custnm" type="STRING" size="256"/>
  267. <Column id="zipcd" type="STRING" size="256"/>
  268. <Column id="zipcd1" type="STRING" size="256"/>
  269. <Column id="zipcd2" type="STRING" size="256"/>
  270. <Column id="zipcdseqno" type="STRING" size="256"/>
  271. <Column id="supaddr" type="STRING" size="256"/>
  272. <Column id="infaddr" type="STRING" size="256"/>
  273. <Column id="induflag" type="STRING" size="256"/>
  274. <Column id="incmflag" type="STRING" size="256"/>
  275. <Column id="dayno" type="STRING" size="256"/>
  276. <Column id="dypay" type="STRING" size="256"/>
  277. <Column id="paytotamt" type="STRING" size="256"/>
  278. <Column id="taxrate" type="STRING" size="256"/>
  279. <Column id="incmtax" type="STRING" size="256"/>
  280. <Column id="resdntax" type="STRING" size="256"/>
  281. <Column id="cmt" type="STRING" size="256"/>
  282. </ColumnInfo>
  283. <Rows>
  284. <Row>
  285. <Col id="instcd"/>
  286. <Col id="seqno"/>
  287. <Col id="detlseqno"/>
  288. <Col id="chrgflag"/>
  289. <Col id="emplno"/>
  290. <Col id="name"/>
  291. <Col id="entrregno"/>
  292. <Col id="rrgstno"/>
  293. <Col id="custnm"/>
  294. <Col id="zipcd"/>
  295. <Col id="zipcd1"/>
  296. <Col id="zipcd2"/>
  297. <Col id="zipcdseqno"/>
  298. <Col id="supaddr"/>
  299. <Col id="infaddr"/>
  300. <Col id="induflag"/>
  301. <Col id="incmflag"/>
  302. <Col id="dayno"/>
  303. <Col id="dypay"/>
  304. <Col id="paytotamt"/>
  305. <Col id="taxrate"/>
  306. <Col id="incmtax"/>
  307. <Col id="resdntax"/>
  308. <Col id="cmt"/>
  309. </Row>
  310. </Rows>
  311. </Dataset>
  312. <Dataset id="ds_temp_seqno" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  313. <ColumnInfo>
  314. <Column id="seqno" type="STRING" size="256"/>
  315. </ColumnInfo>
  316. </Dataset>
  317. <Dataset id="ds_hidden_orchreturn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  318. <ColumnInfo>
  319. <Column id="amt" type="STRING" size="256"/>
  320. <Column id="etcnotefact" type="STRING" size="256"/>
  321. <Column id="incmtax" type="STRING" size="256"/>
  322. <Column id="resdntax" type="STRING" size="256"/>
  323. </ColumnInfo>
  324. <Rows>
  325. <Row>
  326. <Col id="amt"/>
  327. <Col id="etcnotefact"/>
  328. <Col id="incmtax"/>
  329. <Col id="resdntax"/>
  330. </Row>
  331. </Rows>
  332. </Dataset>
  333. </Objects>
  334. <Bind>
  335. <BindItem id="item0" compid="ipt_emplno" propid="value" datasetid="ds_main_orch_one" columnid="emplno"/>
  336. <BindItem id="item1" compid="ipt_name" propid="value" datasetid="ds_main_orch_one" columnid="name"/>
  337. <BindItem id="item2" compid="ipt_paydd" propid="value" datasetid="ds_main_list_orch" columnid="paydd"/>
  338. <BindItem id="item3" compid="ipt_paytotamt" propid="value" datasetid="ds_main_orch_one" columnid="paytotamt"/>
  339. <BindItem id="item4" compid="input1" propid="value" datasetid="ds_main_list_orch" columnid="instcd"/>
  340. <BindItem id="item5" compid="input2" propid="value" datasetid="ds_main_list_orch" columnid="seqno"/>
  341. <BindItem id="item6" compid="input3" propid="value" datasetid="ds_main_list_orch" columnid="chrgflag"/>
  342. <BindItem id="item7" compid="input4" propid="value" datasetid="ds_main_list_orch" columnid="unsldd"/>
  343. <BindItem id="item8" compid="input5" propid="value" datasetid="ds_main_list_orch" columnid="unslno"/>
  344. <BindItem id="item9" compid="input6" propid="value" datasetid="ds_main_list_orch" columnid="undeciseqno"/>
  345. <BindItem id="item10" compid="ipt_taxrate" propid="value" datasetid="ds_main_orch_one" columnid="taxrate"/>
  346. <BindItem id="item11" compid="ipt_cmt" propid="value" datasetid="ds_main_orch_one" columnid="cmt"/>
  347. </Bind>
  348. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  349. * System Name :
  350. * Job Name :
  351. * Creator :
  352. * Make Date : 2017-06-19
  353. * Description :
  354. *---------------------------------------------------------------------------------------
  355. * Modify Date Modifier Modify Description
  356. *---------------------------------------------------------------------------------------
  357. * 2017-06-19 Live Converter TF->XP
  358. *
  359. *---------------------------------------------------------------------------------------
  360. ****************************************************************************************/
  361. include "com_commonxp::comm_main.xjs";
  362. include "mis_miscommonxp::MIS.xjs";
  363. include "mis_humtrafactmngtxp::RPB001.xjs";
  364. function SPRAD00134_oninit(obj:Form, e:InitEventInfo)
  365. {
  366. frmf_initForm(obj);
  367. }
  368. function SPRAD00134_onload(obj:Form, e:LoadEventInfo)
  369. {
  370. try
  371. {
  372. ds_target_slipinfo.copyData(arg_target_slipinfo)
  373. ds_target.copyData(arg_target)
  374. }
  375. catch(e)
  376. {
  377. }
  378. fInitialize();
  379. }
  380. function fInitialize()
  381. {
  382. ds_main_list_orchlist.clearData();
  383. var instcd = sysf_getUserInfo("dutplceinstcd");
  384. if (ds_target_slipinfo.getColumn(0, "profflag") == "8")
  385. {
  386. this.titletext = "비과세 근로소득자료관리";
  387. cpt_title.text = "비과세 근로소득자료관리";
  388. }
  389. if(!utlf_isNull(ds_target_slipinfo.getColumn(0, "seqno")))
  390. {
  391. ds_send_retrparams.setColumn(0, "instcd", ds_target_slipinfo.getColumn(0, "instcd"));
  392. ds_send_retrparams.setColumn(0, "seqno", ds_target_slipinfo.getColumn(0, "seqno"));
  393. ds_send_retrparams.setColumn(0, "chrgflag", ds_target_slipinfo.getColumn(0, "profflag"));
  394. fSearch();
  395. if(ds_main_list_orchlist.rowcount > 0)
  396. {
  397. ds_main_list_orchlist.rowposition = ds_main_list_orchlist.rowcount-1;
  398. fGridRowClick();
  399. }
  400. }
  401. else
  402. {
  403. ds_main_list_orch.setColumn(0, "instcd", ds_target_slipinfo.getColumn(0, "instcd"));
  404. ds_main_list_orch.setColumn(0, "unsldd", ds_target_slipinfo.getColumn(0, "unsldd"));
  405. ds_main_list_orch.setColumn(0, "unslno", ds_target_slipinfo.getColumn(0, "unslno"));
  406. ds_main_list_orch.setColumn(0, "undeciseqno", ds_target_slipinfo.getColumn(0, "unslseqno"));
  407. ds_main_list_orch.setColumn(0, "chrgflag", ds_target_slipinfo.getColumn(0, "profflag"));
  408. ds_main_orch_one.setColumn(0, "instcd", ds_target_slipinfo.getColumn(0, "instcd"));
  409. ds_main_orch_one.setColumn(0, "chrgflag", ds_target_slipinfo.getColumn(0, "profflag"));
  410. ds_main_orch_one.setColumn(0, "detlseqno", "0001");
  411. ds_hidden.setColumn(0, "maxdetlseqno", "0000");
  412. ds_main_orch_one.setColumn(0, "status", "i");
  413. ds_main_orch_one.setColumn(0, "emplno", ds_target_slipinfo.getColumn(0, "emplno"));
  414. dsf_makeValue(ds_main_orch_one, "paytotamt", "string", ds_target_slipinfo.getColumn(0, "amt"), 0);
  415. dsf_makeValue(ds_main_orch_one, "cmt", "string", ds_target_slipinfo.getColumn(0, "cmt"), 0);
  416. }
  417. if (ds_target_slipinfo.getColumn(0, "readonly") == "Y")
  418. {
  419. btn_grdadd.enable = false;
  420. btn_save.enable = false;
  421. btn_delete.enable = false;
  422. }
  423. ipt_name.setFocus();
  424. }
  425. function fSearch()
  426. {
  427. var oParam = {};
  428. oParam.id = "TRRAD00105";
  429. oParam.service = "slipapp.Slip";
  430. oParam.method = "reqGetOrch";
  431. oParam.inds = "req=ds_send_retrparams";
  432. oParam.outds = "ds_main_list_orch=orch ds_main_list_orchlist=orchlist";
  433. oParam.async = false;
  434. //oParam.callback = "cf_TRRAD00105";
  435. tranf_submit(oParam);
  436. dsf_setFixVal(ds_main_list_orch, "status:-");
  437. if(ds_main_list_orchlist.rowcount == 0)
  438. {
  439. dsf_makeValue(ds_main_list_orch, "instcd", "string", ds_target_slipinfo.getColumn(0, "instcd"), 0);
  440. dsf_makeValue(ds_main_list_orch, "unsldd", "string", ds_target_slipinfo.getColumn(0, "unsldd"), 0);
  441. dsf_makeValue(ds_main_list_orch, "unslno", "string", ds_target_slipinfo.getColumn(0, "unslno"), 0);
  442. dsf_makeValue(ds_main_list_orch, "undeciseqno", "string", ds_target_slipinfo.getColumn(0, "undeciseqno"), 0);
  443. dsf_makeValue(ds_main_list_orch, "chrgflag", "string", ds_target_slipinfo.getColumn(0, "profflag"), 0);
  444. dsf_makeValue(ds_main_list_orch, "status", "string", "i", 0);
  445. dsf_makeValue(ds_main_orch_one, "instcd", "string", ds_target_slipinfo.getColumn(0, "instcd"), 0);
  446. dsf_makeValue(ds_main_orch_one, "chrgflag", "string", ds_target_slipinfo.getColumn(0, "profflag"), 0);
  447. dsf_makeValue(ds_main_orch_one, "detlseqno", "string", "0001", 0);
  448. dsf_makeValue(ds_hidden, "maxdetlseqno", "string", "0000", 0);
  449. }
  450. else
  451. {
  452. var rowCnt = ds_main_list_orchlist.rowcount-1;
  453. ds_hidden.setColumn(0, "maxdetlseqno", ds_main_list_orchlist.getColumn(rowCnt, "detlseqno"));
  454. ds_main_list_orch.setColumn(0, "status", "u");
  455. fIncreSeqno(ds_main_orch_one);
  456. ds_main_orch_one.setColumn(0, "instcd", ds_main_list_orch.getColumn(0, "instcd"));
  457. ds_main_orch_one.setColumn(0, "seqno", ds_main_list_orch.getColumn(0, "seqno"));
  458. ds_main_orch_one.setColumn(0, "chrgflag", ds_main_list_orch.getColumn(0, "chrgflag"));
  459. }
  460. }
  461. function fGridRowClick()
  462. {
  463. var cur_row = ds_main_list_orchlist.rowposition;
  464. ds_main_orch_one.clearData();
  465. ds_main_orch_one.addRow();
  466. ds_main_orch_one.copyRow(0, ds_main_list_orchlist, cur_row);
  467. btn_grddel.enable = true;
  468. ipt_paytotamt.setFocus();
  469. }
  470. function fIncreSeqno(pRef)
  471. {
  472. var detlseqno = ds_hidden.getColumn(0, "maxdetlseqno");
  473. var seqno = parseInt(detlseqno, 10);
  474. seqno++;
  475. pRef.setColumn(0, "detlseqno", seqno.toString().getLeftPad(4,"0"));
  476. }
  477. function ipt_emplno_onkeydown(obj:Edit, e:KeyEventInfo)
  478. {
  479. if(e.keycode == 13)
  480. {
  481. obj.updateToDataset();
  482. ipt_paytotamt.setFocus();
  483. }
  484. }
  485. function ds_main_orch_one_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  486. {
  487. if(e.columnid == "emplno")
  488. {
  489. ipt_emplno.value = e.newvalue;
  490. ipt_emplno.setFocus();
  491. misfValidationCheck("49", "", "emplno,name", "", "", "code","");
  492. }
  493. if(e.columnid == "name")
  494. {
  495. ipt_name.value = e.newvalue;
  496. ipt_name.setFocus();
  497. misfValidationCheck("49", "", "emplno,name","","","name","");
  498. }
  499. if(e.columnid == "paytotamt")
  500. {
  501. recalculate();
  502. }
  503. }
  504. function btn_userhelp_onclick(obj:Button, e:ClickEventInfo)
  505. {
  506. misfOpenPopUpList("49", ds_main_orch_one, "", "emplno,name");
  507. }
  508. function ipt_name_onkeydown(obj:Edit, e:KeyEventInfo)
  509. {
  510. if(e.keycode == 13)
  511. {
  512. obj.updateToDataset();
  513. ipt_paytotamt.setFocus();
  514. }
  515. }
  516. function btn_grdadd_onclick(obj:Button, e:ClickEventInfo)
  517. {
  518. fGridRowAddClick();
  519. }
  520. function btn_grddel_onclick(obj:Button, e:ClickEventInfo)
  521. {
  522. fGridRowDelClick();
  523. }
  524. function fGridRowAddClick()
  525. {
  526. var detlseq = ds_main_orch_one.getColumn(0, "detlseqno");
  527. var detlseqno = ds_main_list_orchlist.lookup("detlseqno", detlseq, "detlseqno");
  528. var cur_row = ds_main_list_orchlist.rowposition
  529. if(fNotNullCheck() == false)
  530. {
  531. return;
  532. }
  533. if (utlf_isNull(detlseqno))
  534. {
  535. ds_main_list_orchlist.addRow();
  536. }
  537. else
  538. {
  539. ds_main_list_orchlist.updatecontrol = false;
  540. ds_main_list_orchlist.setRowType(cur_row, "u");
  541. ds_main_list_orchlist.updatecontrol = true;
  542. }
  543. ds_main_list_orchlist.copyRow(ds_main_list_orchlist.rowposition, ds_main_orch_one, 0);
  544. var maxdetlseqno = ds_hidden.getColumn(0, "maxdetlseqno");
  545. if (parseInt(maxdetlseqno,10) < parseInt(detlseq,10))
  546. {
  547. ds_hidden.setColumn(0, "maxdetlseqno", detlseq);
  548. }
  549. fRowClearClick();
  550. }
  551. function fNotNullCheck()
  552. {
  553. if(String(ds_main_orch_one.getColumn(0, "emplno")).length== 0)
  554. {
  555. sysf_messageBox("사원번호는" ,"I003");
  556. ipt_emplno.setFocus();
  557. return false;
  558. }
  559. if(String(ds_main_orch_one.getColumn(0, "name")).length== 0)
  560. {
  561. sysf_messageBox("성명은" ,"I003");
  562. ipt_name.setFocus();
  563. return false;
  564. }
  565. if(String(ds_main_orch_one.getColumn(0, "paytotamt")).length== 0)
  566. {
  567. sysf_messageBox("지급액은" ,"I003");
  568. ipt_paytotamt.setFocus();
  569. return false;
  570. }
  571. }
  572. function fGridRowDelClick()
  573. {
  574. ds_main_list_orchlist.rowposition = ds_main_list_orchlist.rowcount-1;
  575. var rowstat;
  576. var i, j=0;
  577. ds_main_list_orchlist.setRowType(ds_main_list_orchlist.rowposition, "d");
  578. for (var i = 0; i < ds_main_list_orchlist.rowcount; i++)
  579. {
  580. rowstat = parseInt(ds_main_list_orchlist.getRowType(i),10);
  581. if (rowstat >= 8)
  582. {
  583. j++;
  584. }
  585. }
  586. if (j == ds_main_list_orchlist.rowcount - 1)
  587. {
  588. ds_main_list_orch.setColumn(0, "status", "d");
  589. }
  590. else
  591. {
  592. ds_main_list_orch.setColumn(0, "status", "u");
  593. }
  594. fRowClearClick();
  595. }
  596. function fRowClearClick()
  597. {
  598. var cmt = ds_main_orch_one.getColumn(0, "cmt");
  599. ds_main_orch_one.clearData();
  600. ds_main_orch_one.copyData(ds_hidden_orch_one);
  601. fIncreSeqno(ds_main_orch_one);
  602. ds_main_orch_one.setColumn(0, "instcd", ds_main_list_orch.getColumn(0, "instcd"));
  603. ds_main_orch_one.setColumn(0, "seqno", ds_main_list_orch.getColumn(0, "seqno"));
  604. ds_main_orch_one.setColumn(0, "chrgflag", ds_main_list_orch.getColumn(0, "chrgflag"));
  605. ds_main_orch_one.setColumn(0, "cmt", cmt);
  606. btn_grddel.enable = false;
  607. ipt_name.setFocus();
  608. }
  609. function ipt_paytotamt_onkeydown(obj:MaskEdit, e:KeyEventInfo)
  610. {
  611. if(e.keycode == 13)
  612. {
  613. obj.updateToDataset();
  614. ipt_cmt.setFocus();
  615. }
  616. }
  617. function ipt_cmt_onkeydown(obj:Edit, e:KeyEventInfo)
  618. {
  619. if(e.keycode == 13)
  620. {
  621. obj.updateToDataset();
  622. btn_grdadd.setFocus();
  623. }
  624. }
  625. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  626. {
  627. fGridRowAddClick();
  628. fSave();
  629. }
  630. function fSave()
  631. {
  632. var updtdata = grdf_getGridUpdateData(grd_orchlist).rowcount;
  633. if (updtdata == 0)
  634. {
  635. sysf_messageBox("변경된 데이터가","I004");
  636. return;
  637. }
  638. var oParam = {};
  639. oParam.id = "TXRAD00105";
  640. oParam.service = "slipapp.Slip";
  641. oParam.method = "reqExeSaveOrch";
  642. oParam.inds = "req=ds_main_list_orch req1=ds_main_orch_one:u";
  643. oParam.outds = "ds_temp_seqno=seqno";
  644. oParam.async = false;
  645. oParam.callback = "cf_TXRAD00105";
  646. tranf_submit(oParam);
  647. ipt_name.setFocus();
  648. btn_close.click();
  649. }
  650. function cf_TXRAD00105(sSvcId, nErrorCode, sErrorMsg)
  651. {
  652. if(nErrorCode < 0)
  653. {
  654. return;
  655. }
  656. else
  657. {
  658. if(!utlf_isNull(ds_temp_seqno.getColumn(0, "seqno")))
  659. {
  660. ds_send_retrparams.setColumn(0, "instcd", ds_main_list_orch.getColumn(0, "instcd"));
  661. ds_send_retrparams.setColumn(0, "seqno", ds_temp_seqno.getColumn(0, "seqno"));
  662. ds_send_retrparams.setColumn(0, "chrgflag", ds_main_list_orch.getColumn(0, "chrgflag"));
  663. fSearch();
  664. }
  665. else
  666. {
  667. //ds_main_list_orchlist.clearData();
  668. ds_main_list_orch.setColumn(0, "instcd", ds_target_slipinfo.getColumn(0, "instcd"));
  669. ds_main_list_orch.setColumn(0, "seqno", "");
  670. ds_main_list_orch.setColumn(0, "unsldd", ds_target_slipinfo.getColumn(0, "unsldd"));
  671. ds_main_list_orch.setColumn(0, "unslno", ds_target_slipinfo.getColumn(0, "unslno"));
  672. ds_main_list_orch.setColumn(0, "undeciseqno", ds_target_slipinfo.getColumn(0, "unslseqno"));
  673. ds_main_list_orch.setColumn(0, "chrgflag", ds_target_slipinfo.getColumn(0, "profflag"));
  674. ds_main_list_orch.setColumn(0, "status", "i");
  675. ds_hidden.setColumn(0, "maxdetlseqno", "0000");
  676. fRowClearClick();
  677. }
  678. var rowcnt = ds_main_list_orchlist.rowcount;
  679. if (rowcnt > 0)
  680. {
  681. if (rowcnt > 1)
  682. {
  683. var cmt = utlf_transEmptyToNull(ds_main_list_orchlist.getColumn(0, "cmt")) + " (" + utlf_transEmptyToNull(ds_main_list_orchlist.getColumn(0, "name")) + " 외 " + (rowcnt) + "명)";
  684. ds_hidden_orchreturn.setColumn(0, "etcnotefact", cmt);
  685. }
  686. else
  687. {
  688. ds_hidden_orchreturn.setColumn(0, "etcnotefact", ds_main_orch_one.getColumn(0, "cmt"));
  689. }
  690. }
  691. else
  692. {
  693. ds_hidden_orchreturn.setColumn(0, "etcnotefact", "");
  694. }
  695. var receiveref = eval("opener."+ ds_target.getColumn(0, "receiveref"));
  696. if (frmf_checkOpener())
  697. {
  698. receiveref.setColumn(0, "seqno", ds_temp_seqno.getColumn(0, "seqno"));
  699. receiveref.setColumn(0, "amt", ds_hidden_orchreturn.getColumn(0, "amt"));
  700. receiveref.setColumn(0, "etcnotefact", ds_hidden_orchreturn.getColumn(0, "etcnotefact"));
  701. receiveref.setColumn(0, "incmtax", ds_hidden_orchreturn.getColumn(0, "incmtax"));
  702. receiveref.setColumn(0, "resdntax", ds_hidden_orchreturn.getColumn(0, "resdntax"));
  703. sysf_messageBox("저장이 " ,"I002");
  704. }
  705. else
  706. {
  707. sysf_messageBox("상위화면이 변경되어 데이터를 전달할 수 ", "I004");
  708. }
  709. }
  710. }
  711. function btn_delete_onclick(obj:Button, e:ClickEventInfo)
  712. {
  713. fDelete();
  714. }
  715. function fDelete()
  716. {
  717. if (sysf_messageBox("내역을","Q001") == "6")
  718. {
  719. var rowCnt = ds_main_list_orchlist.rowcount;
  720. ds_main_list_orchlist.updatecontrol = false
  721. for (var i = 0; i < rowCnt; i++)
  722. {
  723. ds_main_list_orchlist.setRowType(i, "d");
  724. }
  725. ds_main_list_orchlist.updatecontrol = true;
  726. ds_main_list_orch.setColumn(0, "status", "d");
  727. fSave();
  728. }
  729. }
  730. function btn_close_onclick(obj:Button, e:ClickEventInfo)
  731. {
  732. this.close();
  733. }
  734. function recalculate()
  735. {
  736. ds_hidden_orchreturn.setColumn(0, "amt", ds_main_orch_one.getColumn(0, "paytotamt"));
  737. }]]></Script>
  738. </Form>
  739. </FDL>