SMRWP22000_가족수당신청.xfdl 82 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRWP22000" position="absolute 0 0 1196 759" titletext="가족수당신청" onload="SMRWP22000_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="가족수당 신청" class="tit_1" position="absolute 0 0 120 25"/>
  8. <Div id="grp_srch" taborder="1" class="div_SA2" position="absolute 0 50 1192 90" anchor="left top right"/>
  9. <Static id="caption278" text="사원정보" class="tit_2" position="absolute 0 102 163 119"/>
  10. <Shape id="line207" class="line_10" position="absolute 0 219 1192 225" anchor="left top right"/>
  11. <Button id="btn_search" taborder="2" text="조회" class="btn1" position="absolute 1123 59 1179 81" onclick="btn_search_onclick" anchor="top right"/>
  12. <Shape id="line3" linetype="vertical" class="line_4" position="absolute 1101 57 1107 85" anchor="top right"/>
  13. <Button id="btn_excelsave" taborder="3" text="엑셀저장" class="btn7" position="absolute 1002 199 1082 219" onclick="btn_excelsave_onclick" anchor="top right"/>
  14. <Grid id="dtg_fmlymaster" taborder="4" binddataset="ds_main_fmlymaster" position="absolute 0 224 1193 756" useinputpanel="false" anchor="all">
  15. <Formats>
  16. <Format id="default">
  17. <Columns>
  18. <Column size="25" band="left"/>
  19. <Column size="85"/>
  20. <Column size="55"/>
  21. <Column size="65"/>
  22. <Column size="53"/>
  23. <Column size="57"/>
  24. <Column size="54"/>
  25. <Column size="57"/>
  26. <Column size="95"/>
  27. <Column size="30"/>
  28. <Column size="80"/>
  29. <Column size="85"/>
  30. <Column size="56"/>
  31. <Column size="55"/>
  32. <Column size="55"/>
  33. <Column size="0"/>
  34. <Column size="0"/>
  35. <Column size="55"/>
  36. <Column size="85"/>
  37. <Column size="85"/>
  38. <Column size="125"/>
  39. <Column size="0"/>
  40. <Column size="0"/>
  41. <Column size="0"/>
  42. <Column size="0"/>
  43. <Column size="0"/>
  44. </Columns>
  45. <Rows>
  46. <Row size="24" band="head"/>
  47. <Row size="24"/>
  48. </Rows>
  49. <Band id="head">
  50. <Cell/>
  51. <Cell col="1" text="신청일자"/>
  52. <Cell col="2" text="신청구분"/>
  53. <Cell col="3" text="승인여부"/>
  54. <Cell col="4" text="사번"/>
  55. <Cell col="5" text="성명"/>
  56. <Cell col="6" text="관계"/>
  57. <Cell col="7" text="가족성명"/>
  58. <Cell col="8" text="주민번호"/>
  59. <Cell col="9" text="나이"/>
  60. <Cell col="10" text="신고사유"/>
  61. <Cell col="11" text="사유발생일"/>
  62. <Cell col="12" text="직업"/>
  63. <Cell col="13" text="지급여부"/>
  64. <Cell col="14" text="동거여부"/>
  65. <Cell col="15" text="장남여부"/>
  66. <Cell col="16" text="18세이하형제자매여부"/>
  67. <Cell col="17" text="장애여부"/>
  68. <Cell col="18" text="최초일자"/>
  69. <Cell col="19" text="수정일자"/>
  70. <Cell col="20" text="비고"/>
  71. <Cell col="21"/>
  72. <Cell col="22"/>
  73. <Cell col="23"/>
  74. <Cell col="24"/>
  75. <Cell col="25"/>
  76. </Band>
  77. <Band id="body">
  78. <Cell celltype="head"/>
  79. <Cell col="1" displaytype="date" edittype="date" style="padding:0 0 0 0;" text="bind:aplctndate" calendardisplay="display" enable="false"/>
  80. <Cell col="2" displaytype="combo" edittype="combo" text="bind:aplctnflag" enable="false"/>
  81. <Cell col="3" displaytype="combo" edittype="combo" text="bind:approveflag" enable="false"/>
  82. <Cell col="4" text="bind:emplno"/>
  83. <Cell col="5" text="bind:emplnm"/>
  84. <Cell col="6" displaytype="combo" edittype="combo" text="bind:relation"/>
  85. <Cell col="7" displaytype="text" edittype="text" text="bind:relname"/>
  86. <Cell col="8" displaytype="text" edittype="text" text="bind:rregno" mask="999999-9999999"/>
  87. <Cell col="9" displaytype="text" edittype="text" text="bind:relage"/>
  88. <Cell col="10" displaytype="combo" edittype="combo" text="bind:reason"/>
  89. <Cell col="11" displaytype="date" edittype="date" style="padding:0 0 0 0;" text="bind:reasonindate" calendardisplay="display"/>
  90. <Cell col="12" displaytype="combo" edittype="combo" text="bind:job"/>
  91. <Cell col="13" displaytype="checkbox" edittype="checkbox" text="bind:payyn" expr="expr:(payyn==&quot;Y&quot;||payyn==1)?1:0" enable="false"/>
  92. <Cell col="14" displaytype="checkbox" edittype="checkbox" text="bind:togetheryn" expr="expr:(togetheryn==&quot;Y&quot;||togetheryn==1)?1:0"/>
  93. <Cell col="15" displaytype="checkbox" edittype="checkbox" text="bind:firsebornyn" expr="expr:(firsebornyn==&quot;Y&quot;||firsebornyn==1)?1:0" enable="false"/>
  94. <Cell col="16" displaytype="checkbox" edittype="checkbox" text="bind:under18" expr="expr:(under18==&quot;Y&quot;||under18==1)?1:0"/>
  95. <Cell col="17" displaytype="checkbox" edittype="checkbox" text="bind:disabledyn" expr="expr:(disabledyn==&quot;Y&quot;||disabledyn==1)?1:0"/>
  96. <Cell col="18" displaytype="date" edittype="date" style="padding:0 0 0 0;" text="bind:fstrgstdt" calendardisplay="display" enable="false"/>
  97. <Cell col="19" displaytype="date" edittype="date" style="padding:0 0 0 0;" text="bind:lastupdtdt" calendardisplay="display" enable="false"/>
  98. <Cell col="20" displaytype="text" edittype="text" text="bind:note"/>
  99. <Cell col="21" displaytype="text" edittype="text" text="bind:bfrregno" mask="999999-9999999"/>
  100. <Cell col="22" text="bind:approverid"/>
  101. <Cell col="23" text="bind:approvedate"/>
  102. <Cell col="24" text="bind:deaplctndate"/>
  103. <Cell col="25" text="bind:deaplctnflag"/>
  104. </Band>
  105. </Format>
  106. </Formats>
  107. </Grid>
  108. <Static id="caption1" text="사원번호 :" class="search_name" position="absolute 20 63 106 80"/>
  109. <Edit id="ipt_emplnm" taborder="5" class="input_search" enable="false" position="absolute 205 61 355 80"/>
  110. <Button id="btn_emplno" taborder="6" class="icon_search" position="absolute 185 62 201 78" onclick="btn_emplno_onclick"/>
  111. <Edit id="ipt_emplno" taborder="7" class="input_search" position="absolute 111 61 181 80" onkeydown="ipt_emplno_onkeydown"/>
  112. <Static id="caption2" text="장남여부 :" class="search_name" visible="false" position="absolute 713 63 799 80"/>
  113. <Static id="caption3" text="성별 :" class="search_name" visible="false" position="absolute 390 63 455 80"/>
  114. <Static id="caption4" text="결혼여부 :" class="search_name" visible="false" position="absolute 585 62 671 79"/>
  115. <CheckBox id="bool1" taborder="8" visible="false" position="absolute 668 58 693 83"/>
  116. <Radio id="radio1" taborder="9" columncount="2" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" visible="false" position="absolute 454 61 559 81">
  117. <Dataset id="innerdataset">
  118. <ColumnInfo>
  119. <Column id="codecolumn"/>
  120. <Column id="datacolumn"/>
  121. </ColumnInfo>
  122. <Rows>
  123. <Row>
  124. <Col id="codecolumn">1</Col>
  125. <Col id="datacolumn">남자</Col>
  126. </Row>
  127. <Row>
  128. <Col id="codecolumn">2</Col>
  129. <Col id="datacolumn">여자</Col>
  130. </Row>
  131. </Rows>
  132. </Dataset>
  133. </Radio>
  134. <CheckBox id="bool2" taborder="10" visible="false" position="absolute 796 58 821 83"/>
  135. <Button id="btnDel" taborder="11" text="행삭제" class="btn2" position="absolute 1139 199 1192 219" onclick="btnDel_onclick" anchor="top right"/>
  136. <Button id="btnAdd" taborder="12" text="행추가" class="btn2" position="absolute 1084 199 1137 219" onclick="btnAdd_onclick" anchor="top right"/>
  137. <Button id="btn20save" taborder="13" text="20세이상" class="btn5" visible="false" position="absolute 936 199 1000 219" onclick="btn20save_onclick" anchor="top right"/>
  138. <Shape id="line1" class="line_10" position="absolute 0 119 1192 124" anchor="left top right"/>
  139. <Edit id="ipt_zipcd1" taborder="14" class="input_essential" enable="false" position="absolute 513 147 552 166"/>
  140. <Calendar id="ipt_fstappntdd" taborder="15" enable="false" position="absolute 1101 123 1191 142" value="null" anchor="left top right" dateformat="yyyy-MM-dd ddd"/>
  141. <Calendar id="ipt_retiredd" taborder="16" enable="false" position="absolute 1101 147 1191 166" dateformat="yyyy-MM-dd ddd" anchor="left top right"/>
  142. <Static id="caption317" text="주민번호" class="cell_1" position="absolute 294 123 356 143" style="padding:0 0 0 4;"/>
  143. <Edit id="ipt_hemplno" taborder="17" enable="false" position="absolute 66 123 138 142"/>
  144. <Static id="caption5" text="배우자 연락처" class="cell_1" position="absolute 500 169 590 189" style="padding:0 0 0 4;"/>
  145. <Static id="caption319" text="내선번호" class="cell_1" position="absolute 160 146 225 166" style="padding:0 0 0 4;"/>
  146. <Static id="caption24" text="주 소" class="cell_1" position="absolute 467 146 511 166" style="padding:0 0 0 4;"/>
  147. <Static id="caption7" text="전화번호" class="cell_1" position="absolute 0 146 65 166" style="padding:0 0 0 4;"/>
  148. <Static id="caption8" text="임용일자" class="cell_1" position="absolute 1039 123 1099 143" style="padding:0 0 0 4;"/>
  149. <Static id="caption164" text="사원번호" class="cell_1" position="absolute 0 123 65 143" style="padding:0 0 0 4;"/>
  150. <Static id="caption144" text="퇴직일자" class="cell_1" position="absolute 1039 146 1099 166" style="padding:0 0 0 4;"/>
  151. <Edit id="ipt_hemplnm" taborder="18" enable="false" position="absolute 207 123 292 142"/>
  152. <Edit id="ipt_cntctel" taborder="19" position="absolute 66 147 158 166"/>
  153. <MaskEdit id="ipt_rregno" taborder="20" mask="999999-9999999" enable="false" position="absolute 358 123 506 142"/>
  154. <Edit id="ipt_hosinseqno" taborder="21" position="absolute 226 147 291 166"/>
  155. <Edit id="ipt_mpphonno" taborder="22" position="absolute 358 147 465 166"/>
  156. <Static id="caption9" text="직 종" class="cell_1" position="absolute 508 123 553 143" style="padding:0 0 0 4;"/>
  157. <Static id="caption10" text="휴대폰" class="cell_1" position="absolute 294 146 356 166" style="padding:0 0 0 4;"/>
  158. <Static id="caption12" text="직 위" class="cell_1" position="absolute 660 123 705 143" style="padding:0 0 0 4;"/>
  159. <Edit id="ipt_zipcd2" taborder="23" class="input_essential" enable="false" position="absolute 565 147 604 166"/>
  160. <Button id="button5" taborder="24" class="icon_search" position="absolute 607 148 623 164" onclick="button5_onclick"/>
  161. <Static id="caption11" text="-" position="absolute 554 143 566 169"/>
  162. <Edit id="ipt_residncaddr" taborder="25" enable="false" position="absolute 625 147 1037 166"/>
  163. <Edit id="ipt_dutplcedeptnm" taborder="26" enable="false" position="absolute 867 123 1037 142"/>
  164. <Static id="caption13" text="부 서" class="cell_1" position="absolute 821 123 866 143" style="padding:0 0 0 4;"/>
  165. <Edit id="ipt_spousephone" taborder="27" enable="false" position="absolute 591 170 685 189"/>
  166. <Static id="caption14" text="배우자 직업" class="cell_1" position="absolute 687 169 767 189" style="padding:0 0 0 4;"/>
  167. <Combo id="cmb_spousejob" taborder="28" enable="false" position="absolute 769 170 866 189" onitemchanged="cmb_spousejob_onitemchanged"/>
  168. <Static id="caption15" text="부양가족" class="tit_2" position="absolute 0 203 162 220"/>
  169. <Shape id="line8" class="line_3" position="absolute 0 165 1191 171" anchor="left top right"/>
  170. <Shape id="line2" class="line_3" position="absolute 0 142 1191 148" anchor="left top right"/>
  171. <Combo id="cmb_jobkind" taborder="29" enable="false" position="absolute 555 123 658 142"/>
  172. <Combo id="cmb_jobpos" taborder="30" enable="false" position="absolute 706 123 819 142"/>
  173. <Grid id="dtg_fmlyheader" taborder="31" binddataset="ds_main_fmlyheader" useinputpanel="false" visible="false" position="absolute 1 310 849 475">
  174. <Formats>
  175. <Format id="default">
  176. <Columns>
  177. <Column size="25" band="left"/>
  178. <Column size="46"/>
  179. <Column size="51"/>
  180. <Column size="54"/>
  181. <Column size="65"/>
  182. <Column size="64"/>
  183. <Column size="75"/>
  184. <Column size="74"/>
  185. <Column size="62"/>
  186. <Column size="60"/>
  187. <Column size="60"/>
  188. <Column size="67"/>
  189. <Column size="72"/>
  190. <Column size="56"/>
  191. <Column size="61"/>
  192. <Column size="72"/>
  193. <Column size="71"/>
  194. <Column size="68"/>
  195. <Column size="59"/>
  196. <Column size="78"/>
  197. <Column size="71"/>
  198. <Column size="80"/>
  199. <Column size="100"/>
  200. <Column size="100"/>
  201. </Columns>
  202. <Rows>
  203. <Row size="24" band="head"/>
  204. <Row size="24"/>
  205. </Rows>
  206. <Band id="head">
  207. <Cell/>
  208. <Cell col="1" text="사번"/>
  209. <Cell col="2" text="성명"/>
  210. <Cell col="3" text="장남여부"/>
  211. <Cell col="4" text="결혼여부"/>
  212. <Cell col="5" text="배우자직업"/>
  213. <Cell col="6" text="배우자연락처"/>
  214. <Cell col="7" text="주민번호"/>
  215. <Cell col="8" text="직종"/>
  216. <Cell col="9" text="직종명"/>
  217. <Cell col="10" text="직위"/>
  218. <Cell col="11" text="직위명"/>
  219. <Cell col="12" text="부서코드"/>
  220. <Cell col="13" text="부서명"/>
  221. <Cell col="14" text="임용일자"/>
  222. <Cell col="15" text="퇴직일자"/>
  223. <Cell col="16" text="집주소"/>
  224. <Cell col="17" text="우편번호1"/>
  225. <Cell col="18" text="우편번호2"/>
  226. <Cell col="19" text="핸드폰"/>
  227. <Cell col="20" text="집전화번호"/>
  228. <Cell col="21" text="병원내선번호"/>
  229. <Cell col="22" text="18세이하"/>
  230. <Cell col="23" text="배우자장남여부"/>
  231. </Band>
  232. <Band id="body">
  233. <Cell celltype="head"/>
  234. <Cell col="1" text="bind:emplno"/>
  235. <Cell col="2" text="bind:emplnm"/>
  236. <Cell col="3" text="bind:empfirsebornyn"/>
  237. <Cell col="4" text="bind:empmarryyn"/>
  238. <Cell col="5" text="bind:spousejob"/>
  239. <Cell col="6" text="bind:spousephone"/>
  240. <Cell col="7" text="bind:rregno"/>
  241. <Cell col="8" text="bind:jobkindcd"/>
  242. <Cell col="9" text="bind:jobkindnm"/>
  243. <Cell col="10" text="bind:jobposcd"/>
  244. <Cell col="11" text="bind:jobposnm"/>
  245. <Cell col="12" text="bind:dutplcedeptcd"/>
  246. <Cell col="13" text="bind:dutplcedeptnm"/>
  247. <Cell col="14" text="bind:fstappntdd"/>
  248. <Cell col="15" text="bind:retiredd"/>
  249. <Cell col="16" text="bind:residncaddr"/>
  250. <Cell col="17" text="bind:residnczipcd1"/>
  251. <Cell col="18" text="bind:residnczipcd2"/>
  252. <Cell col="19" text="bind:mpphonno"/>
  253. <Cell col="20" text="bind:cntctel"/>
  254. <Cell col="21" text="bind:hosinseqno"/>
  255. <Cell col="22" text="bind:under18"/>
  256. <Cell col="23" text="bind:firsebornyn"/>
  257. </Band>
  258. </Format>
  259. </Formats>
  260. </Grid>
  261. <Shape id="line4" class="line_3" position="absolute 0 188 1191 194" anchor="left top right"/>
  262. <Static id="caption16" text="장남여부" class="cell_1" position="absolute 0 169 65 189" style="padding:0 0 0 4;"/>
  263. <Static id="caption17" text="성 명" class="cell_1" position="absolute 140 123 205 143" style="padding:0 0 0 4;"/>
  264. <Static id="caption18" text="결혼여부" class="cell_1" position="absolute 160 169 225 189" style="padding:0 0 0 4;"/>
  265. <Combo id="cmb_empmarryyn" taborder="32" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 226 170 291 189" onitemchanged="cmb_empmarryyn_onitemchanged">
  266. <Dataset id="innerdataset">
  267. <ColumnInfo>
  268. <Column id="codecolumn"/>
  269. <Column id="datacolumn"/>
  270. </ColumnInfo>
  271. <Rows>
  272. <Row>
  273. <Col id="codecolumn">Y</Col>
  274. <Col id="datacolumn">기혼</Col>
  275. </Row>
  276. <Row>
  277. <Col id="codecolumn">N</Col>
  278. <Col id="datacolumn">미혼</Col>
  279. </Row>
  280. </Rows>
  281. </Dataset>
  282. </Combo>
  283. <Static id="caption19" text="※ 배우자 4만원, 그 외 가족 2만원, 셋째자녀 5만원" position="absolute 848 103 1188 118" style="color:#ff0000ff;font:Dotum,9,bold;"/>
  284. <Radio id="rbo_empfirsebornyn" taborder="33" columncount="2" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 68 169 145 189">
  285. <Dataset id="innerdataset">
  286. <ColumnInfo>
  287. <Column id="codecolumn"/>
  288. <Column id="datacolumn"/>
  289. </ColumnInfo>
  290. <Rows>
  291. <Row>
  292. <Col id="codecolumn">Y</Col>
  293. <Col id="datacolumn">Y</Col>
  294. </Row>
  295. <Row>
  296. <Col id="codecolumn">N</Col>
  297. <Col id="datacolumn">N</Col>
  298. </Row>
  299. </Rows>
  300. </Dataset>
  301. </Radio>
  302. <Radio id="rbo_ptfirsebornyn" taborder="34" columncount="2" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" enable="false" position="absolute 969 169 1046 189" onitemchanged="rbo_ptfirsebornyn_onitemchanged">
  303. <Dataset id="innerdataset">
  304. <ColumnInfo>
  305. <Column id="codecolumn"/>
  306. <Column id="datacolumn"/>
  307. </ColumnInfo>
  308. <Rows>
  309. <Row>
  310. <Col id="codecolumn">Y</Col>
  311. <Col id="datacolumn">Y</Col>
  312. </Row>
  313. <Row>
  314. <Col id="codecolumn">N</Col>
  315. <Col id="datacolumn">N</Col>
  316. </Row>
  317. </Rows>
  318. </Dataset>
  319. </Radio>
  320. <Static id="caption20" text="배우자장남여부" class="cell_1" position="absolute 871 169 965 189" style="padding:0 0 0 4;"/>
  321. <Static id="caption21" text="18세이상남자형제여부" class="cell_1" position="absolute 294 169 425 189" style="padding:0 0 0 4;"/>
  322. <Radio id="rbo_under18" taborder="35" columncount="2" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 428 169 495 189">
  323. <Dataset id="innerdataset">
  324. <ColumnInfo>
  325. <Column id="codecolumn"/>
  326. <Column id="datacolumn"/>
  327. </ColumnInfo>
  328. <Rows>
  329. <Row>
  330. <Col id="codecolumn">Y</Col>
  331. <Col id="datacolumn">Y</Col>
  332. </Row>
  333. <Row>
  334. <Col id="codecolumn">N</Col>
  335. <Col id="datacolumn">N</Col>
  336. </Row>
  337. </Rows>
  338. </Dataset>
  339. </Radio>
  340. <Edit id="input1" taborder="36" visible="false" position="absolute 715 94 815 113"/>
  341. <Static id="caption22" text="급여 마감문제로 인해 매월 1~10일까지 신청을 받고 이후는 다음달에 신청하시기 바랍니다." visible="false" position="absolute 85 200 750 220" style="color:#ff0000ff;font:Dotum,10,bold;"/>
  342. <Static id="caption23" text="&lt;셋째자녀 수당을 받으시려면 반드시 모든 자녀를 등재해주시기바랍니다.&gt;" position="absolute 205 103 704 118" style="color:#ff0000ff;font:Dotum,9,bold;"/>
  343. <Static id="caption25" text="근로복지팀으로 신청서 제출" position="absolute 842 60 1068 80" style="color:#0000ffff;font:Dotum,12,bold;"/>
  344. <Shape id="line75" class="line_6" position="absolute 0 46 1192 52" anchor="left top right"/>
  345. <Button id="btn_save" taborder="37" text="저장" class="btn4" position="absolute 1136 25 1192 47" onclick="btn_save_onclick" anchor="top right"/>
  346. <Button id="button4" taborder="38" text="가족수당신청서출력" class="btn6" position="absolute 995 25 1135 47" onclick="button4_onclick" anchor="top right"/>
  347. <Button id="button6" taborder="39" text="신청HELP" class="btn4" position="absolute 902 25 994 47" onclick="button6_onclick" anchor="top right"/>
  348. <Button id="button1" taborder="40" text="전산입력설명서" class="btn4" position="absolute 785 25 901 47" onclick="button1_onclick" anchor="top right"/>
  349. <Combo id="cmb_auth" taborder="41" visible="false" position="absolute 400 27 500 47"/>
  350. </Layout>
  351. </Layouts>
  352. <Objects>
  353. <Dataset id="ds_main_fmlyheader" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_fmlyheader_oncolumnchanged">
  354. <ColumnInfo>
  355. <Column id="emplno" type="STRING" size="256"/>
  356. <Column id="emplnm" type="STRING" size="256"/>
  357. <Column id="empfirsebornyn" type="STRING" size="256"/>
  358. <Column id="empmarryyn" type="STRING" size="256"/>
  359. <Column id="spousejob" type="STRING" size="256"/>
  360. <Column id="spousephone" type="STRING" size="256"/>
  361. <Column id="rregno" type="STRING" size="256"/>
  362. <Column id="jobkindcd" type="STRING" size="256"/>
  363. <Column id="jobkindnm" type="STRING" size="256"/>
  364. <Column id="jobposcd" type="STRING" size="256"/>
  365. <Column id="jobposnm" type="STRING" size="256"/>
  366. <Column id="dutplcedeptcd" type="STRING" size="256"/>
  367. <Column id="dutplcedeptnm" type="STRING" size="256"/>
  368. <Column id="fstappntdd" type="STRING" size="256"/>
  369. <Column id="retiredd" type="STRING" size="256"/>
  370. <Column id="residncaddr" type="STRING" size="256"/>
  371. <Column id="residnczipcd1" type="STRING" size="256"/>
  372. <Column id="residnczipcd2" type="STRING" size="256"/>
  373. <Column id="mpphonno" type="STRING" size="256"/>
  374. <Column id="cntctel" type="STRING" size="256"/>
  375. <Column id="hosinseqno" type="STRING" size="256"/>
  376. <Column id="aplctndate" type="STRING" size="256"/>
  377. <Column id="ptfirsebornyn" type="STRING" size="256"/>
  378. <Column id="under18" type="STRING" size="256"/>
  379. <Column id="gndr" type="STRING" size="256"/>
  380. </ColumnInfo>
  381. <Rows>
  382. <Row>
  383. <Col id="emplno"/>
  384. <Col id="emplnm"/>
  385. <Col id="empfirsebornyn"/>
  386. <Col id="empmarryyn"/>
  387. <Col id="spousejob"/>
  388. <Col id="spousephone"/>
  389. <Col id="rregno"/>
  390. <Col id="jobkindcd"/>
  391. <Col id="jobkindnm"/>
  392. <Col id="jobposcd"/>
  393. <Col id="jobposnm"/>
  394. <Col id="dutplcedeptcd"/>
  395. <Col id="dutplcedeptnm"/>
  396. <Col id="fstappntdd"/>
  397. <Col id="retiredd"/>
  398. <Col id="residncaddr"/>
  399. <Col id="residnczipcd1"/>
  400. <Col id="residnczipcd2"/>
  401. <Col id="mpphonno"/>
  402. <Col id="cntctel"/>
  403. <Col id="hosinseqno"/>
  404. <Col id="aplctndate"/>
  405. <Col id="ptfirsebornyn"/>
  406. <Col id="under18"/>
  407. <Col id="gndr"/>
  408. </Row>
  409. </Rows>
  410. </Dataset>
  411. <Dataset id="ds_main_fmlymaster" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_fmlymaster_oncolumnchanged"/>
  412. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_send_oncolumnchanged">
  413. <ColumnInfo>
  414. <Column id="emplno" type="STRING" size="256"/>
  415. <Column id="emplnm" type="STRING" size="256"/>
  416. <Column id="dutunitcd" type="STRING" size="256"/>
  417. <Column id="dutunitnm" type="STRING" size="256"/>
  418. <Column id="rregno" type="STRING" size="256"/>
  419. </ColumnInfo>
  420. <Rows>
  421. <Row>
  422. <Col id="emplno"/>
  423. <Col id="emplnm"/>
  424. <Col id="dutunitcd"/>
  425. <Col id="dutunitnm"/>
  426. <Col id="rregno"/>
  427. </Row>
  428. </Rows>
  429. </Dataset>
  430. <Dataset id="ds_send_save" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  431. <Dataset id="ds_send_save20" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  432. <ColumnInfo>
  433. <Column id="emplno20" type="STRING" size="256"/>
  434. <Column id="rregno20" type="STRING" size="256"/>
  435. <Column id="payyn20" type="STRING" size="256"/>
  436. <Column id="aplctnflag20" type="STRING" size="256"/>
  437. <Column id="aplctndate20" type="STRING" size="256"/>
  438. </ColumnInfo>
  439. <Rows>
  440. <Row>
  441. <Col id="emplno20"/>
  442. <Col id="rregno20"/>
  443. <Col id="payyn20"/>
  444. <Col id="aplctnflag20"/>
  445. <Col id="aplctndate20"/>
  446. </Row>
  447. </Rows>
  448. </Dataset>
  449. <Dataset id="ds_temp_data2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  450. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  451. <Dataset id="ds_hidden_savelist_fmlyheader" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  452. <Dataset id="ds_hidden_savelist_fmlymaster" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  453. <Dataset id="ds_temp2_fmlyrregno" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  454. <ColumnInfo>
  455. <Column id="emplno" type="STRING" size="256"/>
  456. <Column id="emplnm" type="STRING" size="256"/>
  457. </ColumnInfo>
  458. <Rows>
  459. <Row>
  460. <Col id="emplno"/>
  461. <Col id="emplnm"/>
  462. </Row>
  463. </Rows>
  464. </Dataset>
  465. <Dataset id="ds_titlechk" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  466. <ColumnInfo>
  467. <Column id="record" type="STRING" size="256"/>
  468. <Column id="lose" type="STRING" size="256"/>
  469. </ColumnInfo>
  470. <Rows>
  471. <Row>
  472. <Col id="record"/>
  473. <Col id="lose"/>
  474. </Row>
  475. </Rows>
  476. </Dataset>
  477. <Dataset id="ds_jobkind" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  478. <ColumnInfo>
  479. <Column id="jobkindcd" type="STRING" size="256"/>
  480. </ColumnInfo>
  481. <Rows>
  482. <Row>
  483. <Col id="jobkindcd"/>
  484. </Row>
  485. </Rows>
  486. </Dataset>
  487. <Dataset id="ds_auth" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  488. <Dataset id="ds_file_attachfile" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  489. </Objects>
  490. <Bind>
  491. <BindItem id="item0" compid="ipt_emplnm" propid="value" datasetid="ds_send" columnid="emplnm"/>
  492. <BindItem id="item1" compid="ipt_emplno" propid="value" datasetid="ds_send" columnid="emplno"/>
  493. <BindItem id="item2" compid="ipt_zipcd1" propid="value" datasetid="ds_main_fmlyheader" columnid="residnczipcd1"/>
  494. <BindItem id="item3" compid="ipt_fstappntdd" propid="value" datasetid="ds_main_fmlyheader" columnid="fstappntdd"/>
  495. <BindItem id="item4" compid="ipt_retiredd" propid="value" datasetid="ds_main_fmlyheader" columnid="retiredd"/>
  496. <BindItem id="item5" compid="ipt_hemplno" propid="value" datasetid="ds_main_fmlyheader" columnid="emplno"/>
  497. <BindItem id="item6" compid="ipt_hemplnm" propid="value" datasetid="ds_main_fmlyheader" columnid="emplnm"/>
  498. <BindItem id="item7" compid="ipt_cntctel" propid="value" datasetid="ds_main_fmlyheader" columnid="cntctel"/>
  499. <BindItem id="item8" compid="ipt_rregno" propid="value" datasetid="ds_main_fmlyheader" columnid="rregno"/>
  500. <BindItem id="item9" compid="ipt_hosinseqno" propid="value" datasetid="ds_main_fmlyheader" columnid="hosinseqno"/>
  501. <BindItem id="item10" compid="ipt_mpphonno" propid="value" datasetid="ds_main_fmlyheader" columnid="mpphonno"/>
  502. <BindItem id="item11" compid="ipt_zipcd2" propid="value" datasetid="ds_main_fmlyheader" columnid="residnczipcd2"/>
  503. <BindItem id="item12" compid="ipt_residncaddr" propid="value" datasetid="ds_main_fmlyheader" columnid="residncaddr"/>
  504. <BindItem id="item13" compid="ipt_dutplcedeptnm" propid="value" datasetid="ds_main_fmlyheader" columnid="dutplcedeptnm"/>
  505. <BindItem id="item14" compid="ipt_spousephone" propid="value" datasetid="ds_main_fmlyheader" columnid="spousephone"/>
  506. <BindItem id="item15" compid="cmb_spousejob" propid="value" datasetid="ds_main_fmlyheader" columnid="spousejob"/>
  507. <BindItem id="item16" compid="cmb_jobkind" propid="value" datasetid="ds_main_fmlyheader" columnid="jobkindcd"/>
  508. <BindItem id="item17" compid="cmb_jobpos" propid="value" datasetid="ds_main_fmlyheader" columnid="jobposcd"/>
  509. <BindItem id="item18" compid="cmb_empmarryyn" propid="value" datasetid="ds_main_fmlyheader" columnid="empmarryyn"/>
  510. <BindItem id="item19" compid="rbo_empfirsebornyn" propid="value" datasetid="ds_main_fmlyheader" columnid="empfirsebornyn"/>
  511. <BindItem id="item20" compid="rbo_ptfirsebornyn" propid="value" datasetid="ds_main_fmlyheader" columnid="ptfirsebornyn"/>
  512. <BindItem id="item21" compid="rbo_under18" propid="value" datasetid="ds_main_fmlyheader" columnid="under18"/>
  513. <BindItem id="item22" compid="input1" propid="value" datasetid="ds_main_fmlyheader" columnid="aplctndate"/>
  514. <BindItem id="item23" compid="cmb_auth" propid="value" datasetid="_root" columnid="auth"/>
  515. </Bind>
  516. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  517. * System Name :
  518. * Job Name :
  519. * Creator :
  520. * Make Date : 2017-06-19
  521. * Description :
  522. *---------------------------------------------------------------------------------------
  523. * Modify Date Modifier Modify Description
  524. *---------------------------------------------------------------------------------------
  525. * 2017-06-19 Live Converter TF->XP
  526. *
  527. *---------------------------------------------------------------------------------------
  528. ****************************************************************************************/
  529. //=======================================================================================
  530. // Lib Include
  531. //---------------------------------------------------------------------------------------
  532. include "com_commonxp::comm_main.xjs";
  533. include "mis_miscommonxp::MIS.xjs";
  534. include "mis_miscommonxp::RSZ001.xjs";
  535. include "mis_humtrafactmngtxp::RPB001.xjs";
  536. //=======================================================================================
  537. // Global Form Variable
  538. //---------------------------------------------------------------------------------------
  539. var arErrorCode = new HashArray();
  540. //접속한 일자
  541. var monthchk = utlf_getCurrentDate().substr(6,2);
  542. //=======================================================================================
  543. // Function
  544. //---------------------------------------------------------------------------------------
  545. /****************************************************************************************
  546. * Argument : N/A
  547. * Description : 초기화 실행
  548. ****************************************************************************************/
  549. function fInitialize()
  550. {
  551. //임시적인 메시지
  552. sysf_messageBox("근로복지팀으로 신청서 제출", "E999", "");
  553. misfGridInit(dtg_fmlymaster);
  554. misfMsterDetailSet("dtg_fmlymaster", null, "TRRWP22001" ,"N","free");
  555. misfComboComCdListMulti("R0077,R0061,R0062,R0076,R0076,R9992","dtg_fmlymaster.relation,cmb_jobkind,cmb_jobpos,cmb_spousejob,dtg_fmlymaster.job,cmb_auth");
  556. btnAdd.enable = false;
  557. btnDel.enable = false;
  558. btn20save.enable = false;
  559. // 부서가 총무팀일 경우, 사번 전체조회가능, 20세이상, 엑셀저장버튼 Disabled = false
  560. var logindeptcd = sysf_getUserInfo("dutplcecd");
  561. var loginid = sysf_getUserInfo("userid");
  562. var usernm = sysf_getUserInfo("usernm");
  563. cmb_auth.value = loginid;
  564. //권한설정
  565. misfGetUserAuth();
  566. if(DUTY_WELF_YN == "Y"){
  567. btn20save.visible = true;
  568. btn_excelsave.visible = true;
  569. ipt_emplno.enable = true;
  570. btn_emplno.enable = true;
  571. rbo_empfirsebornyn.enable = true;
  572. if(parseInt(monthchk) > 13 && cmb_auth.text != "1"){
  573. sysf_messageBox("관리자는 1일부터 13일까지만 할수있습니다.\n이후에는 급여담당자에게 문의하십시오.", "E999", "");
  574. caption22.text = "급여 마감문제로 인해 관리자는 매월 1~13일까지만 입력,수정,삭제가 가능 합니다.";
  575. caption22.visible = true;
  576. btnAdd.visible = false;
  577. btnDel.visible = false;
  578. btn_save.visible = false;
  579. button4.visible = false;
  580. btn20save.visible = false;
  581. btn_excelsave.visible = false;
  582. ipt_emplno.enable = false;
  583. btn_emplno.enable = false;
  584. rbo_empfirsebornyn.enable = false;
  585. btn_search.enable = false;
  586. return;
  587. }
  588. }else{
  589. ds_send.setColumn( 0, "emplno", loginid);
  590. ds_send.setColumn( 0, "emplnm", usernm);
  591. var oParam = {};
  592. oParam.id = "TRRWP22007";
  593. oParam.service = "paybnusmngtapp.PayCalcMngt";
  594. oParam.method = "reqGetJobkindcdChk";
  595. oParam.inds = "req=ds_send";
  596. oParam.outds = "ds_jobkind=jobkind";
  597. oParam.async = false;
  598. //oParam.callback = "cf_TRRWP22007";
  599. tranf_submit(oParam);
  600. var jobkindcd = ds_jobkind.getColumn(0, "jobkindcd");
  601. if(jobkindcd == "0320" || jobkindcd == "0321" || jobkindcd == "9960" || jobkindcd == "0380" || jobkindcd == "0316"){
  602. sysf_messageBox("임시직,임상강사,임상교수,겸직교수는 신청할 수 없습니다.", "E999", "");
  603. btnAdd.visible = false;
  604. btnDel.visible = false;
  605. btn_save.visible = false;
  606. button4.visible = false;
  607. btn_search.visible = false;
  608. ipt_emplno.enable = false;
  609. btn_emplno.enable = false;
  610. btn20save.visible = false;
  611. btn_excelsave.visible = false;
  612. return;
  613. }
  614. ipt_emplno.enable = false;
  615. btn_emplno.enable = false;
  616. btn20save.visible = false;
  617. btn_excelsave.visible = false;
  618. rbo_empfirsebornyn.enable = false;
  619. //일반사용자에겐 비고가 보이지 않게끔
  620. dtg_fmlymaster.setFormatColProperty(dtg_fmlymaster.getBindCellIndex("body","note"),"size",0);
  621. //접속제한 1~10일까지만 접속가능
  622. var curDate = utlf_getCurrentDate();
  623. if (curDate.substr(0, 6) == "201603" || curDate.substr(0, 6) == "201612") {
  624. // 2016년 3월 한달간 한시적으로 한달 내내 신청 가능
  625. // 2016년 12월 한달간 한시적으로 한달 내내 신청 가능 (20161226 근로복지과 요청)
  626. } else {
  627. if(parseInt(monthchk) > 10){
  628. sysf_messageBox("신청은 1일부터 10일까지만 할수있습니다.", "E999", "");
  629. caption22.visible = true;
  630. btnAdd.visible = false;
  631. btnDel.visible = false;
  632. btn_save.visible = false;
  633. button4.visible = false;
  634. return;
  635. }
  636. }
  637. }
  638. dsf_setDefaultVal(ds_temp_data2,"all");
  639. if(ds_temp_data2.rowcount > 0)
  640. {
  641. if( ds_temp_data2.getColumn(0, "emplno") != "" ){
  642. ipt_emplno.value = ds_temp_data2.getColumn(0, "emplno");
  643. }else{
  644. ds_send.setColumn( 0, "emplno", sysf_getUserInfo("userid"));
  645. ds_send.setColumn( 0, "emplnm", sysf_getUserInfo("usernm"));
  646. }
  647. }else{
  648. ds_send.setColumn( 0, "emplno", sysf_getUserInfo("userid"));
  649. ds_send.setColumn( 0, "emplnm", sysf_getUserInfo("usernm"));
  650. }
  651. btn_search.click();
  652. }
  653. /****************************************************************************************
  654. * Argument : N/A
  655. * Description : 저장실행
  656. ****************************************************************************************/
  657. function fSave(){
  658. var len = ds_main_fmlymaster.rowcount;
  659. var age = 0;
  660. var relation = "";
  661. var job = "";
  662. var payyn = "";
  663. var mrchk = "0";
  664. for( var i = 0 ; i < len ; i++){
  665. age = dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "relage");
  666. relation = dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "relation");
  667. job = dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "job");
  668. payyn = dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "payyn");
  669. disabledyn = dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "disabledyn");
  670. if( age != "" ){
  671. if( ( relation == "05" && age < 60 && payyn == "Y" && disabledyn == "N" ) || ( relation == "07" && age < 55 && payyn == "Y" && disabledyn == "N" )
  672. || ( relation == "13" && age > 19 && payyn == "Y" && disabledyn == "N" ) || ( relation == "14" && age > 19 && payyn == "Y" && disabledyn == "N" ) ){
  673. ds_main_fmlymaster.setColumn( i , "payyn", "N");
  674. sysf_messageBox("(부)만60세이상, (모)만55세이상, (자)만20세미만의 \n경우에만 가족수당이 지급가능합니다.", "E999", "");
  675. return;
  676. }
  677. }else{
  678. sysf_messageBox(i+"번째 행의 나이를 확인해주세요.", "E999", "");
  679. return;
  680. }
  681. }
  682. if(dsf_getColumnNullToEmpty(ds_main_fmlyheader, 0, "cntctel") == ""){ //전화번호
  683. sysf_messageBox("사원정보에 전화번호가 없습니다.", "E999", "");
  684. return;
  685. }else if(dsf_getColumnNullToEmpty(ds_main_fmlyheader, 0, "hosinseqno") == ""){ //내선번호
  686. sysf_messageBox("사원정보에 내선번호가 없습니다.", "E999", "");
  687. return;
  688. }else if(dsf_getColumnNullToEmpty(ds_main_fmlyheader, 0, "mpphonno") == ""){ //휴대폰
  689. sysf_messageBox("사원정보에 휴대폰번호가 없습니다.", "E999", "");
  690. return;
  691. }
  692. var gndr = dsf_getColumnNullToEmpty(ds_main_fmlyheader, 0, "gndr");
  693. if(gndr == "M"){
  694. if(rbo_empfirsebornyn.enable == true){
  695. if(dsf_getColumnNullToEmpty(ds_main_fmlyheader, 0, "empfirsebornyn") == ""){ //장남여부
  696. sysf_messageBox("사원정보에 장남여부가 없습니다.", "E999", "");
  697. return;
  698. }
  699. }
  700. }else if(gndr == "F"){
  701. if(cmb_empmarryyn.value == "Y"){
  702. if(dsf_getColumnNullToEmpty(ds_main_fmlyheader, 0, "under18") == ""){ //18세이하형제자매여부
  703. sysf_messageBox("사원정보에 18세이하형제자매여부가 없습니다.", "E999", "");
  704. return;
  705. }
  706. }
  707. }
  708. if(dsf_getColumnNullToEmpty(ds_main_fmlyheader, 0, "empmarryyn") == ""){ //결혼여부
  709. sysf_messageBox("사원정보에 결혼여부가 없습니다.", "E999", "");
  710. return;
  711. }
  712. if(cmb_empmarryyn.value == "Y"){ //기혼일경우
  713. if(dsf_getColumnNullToEmpty(ds_main_fmlyheader,0, "spousephone") == ""){ //배우자연락처
  714. sysf_messageBox("사원정보에 배우자연락처가 없습니다.", "E999", "");
  715. return;
  716. }else if(dsf_getColumnNullToEmpty(ds_main_fmlyheader,0, "spousejob") == ""){ //배우자직업
  717. sysf_messageBox("사원정보에 배우자직업가 없습니다.", "E999", "");
  718. return;
  719. }
  720. if(gndr == "F"){
  721. if(dsf_getColumnNullToEmpty(ds_main_fmlyheader,0, "ptfirsebornyn") == ""){ //배우자장남여부
  722. sysf_messageBox("사원정보에 배우자장남여부가 없습니다.", "E999", "");
  723. return;
  724. }
  725. }
  726. }
  727. var updtdata_m = grdf_getGridUpdateData(dtg_fmlymaster, "all");
  728. var updtdata_h = grdf_getGridUpdateData(dtg_fmlyheader, "all");
  729. if (updtdata_m.rowcount == 0 && updtdata_h.rowcount == 0 ){
  730. sysf_messageBox("변경된 데이터가","I004");
  731. return;
  732. }
  733. var num = 0;
  734. if( len > 0 ){
  735. for( var i = 0; i < len ; i++ ){
  736. num = 0;
  737. if( dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "aplctndate") == "" ){
  738. sysf_messageBox("신청일자는 필수입력값입니다.", "E999", "");
  739. return;
  740. }
  741. if( dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "aplctnflag") == "" ){
  742. sysf_messageBox("신청구분은 필수입력값입니다.", "E999", "");
  743. return;
  744. }
  745. if( dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "rregno") == "" ){
  746. sysf_messageBox("주민번호는 필수입력값입니다.", "E999", "");
  747. return;
  748. }
  749. if( dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "relation") == "" ){
  750. sysf_messageBox("관계는 필수선택값입니다.", "E999", "");
  751. return;
  752. }
  753. if(cmb_empmarryyn.value == "Y"){
  754. if(dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "relation" ) == "11" || dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "relation" ) == "12" ){
  755. mrchk = "1";
  756. }
  757. }
  758. }
  759. }
  760. for(var i = 0 ; i < ds_main_fmlymaster.rowcount ; i++){
  761. var relationchk = dsf_getColumnNullToEmpty(ds_main_fmlymaster, i, "relation");
  762. if(ds_main_fmlymaster.getRowType(i) == 8 && (relationchk == "11" || relationchk == "12" || relationchk == "19")) {
  763. ds_main_fmlyheader.setColumn( 0, "spousephone", "");
  764. ds_main_fmlyheader.setColumn( 0, "spousejob","");
  765. ds_main_fmlyheader.setColumn( 0, "ptfirsebornyn","N");
  766. ds_main_fmlyheader.setColumn( 0, "empmarryyn","N");
  767. ds_main_fmlyheader.updatecontrol = false;
  768. ds_main_fmlyheader.setRowType(0, 4);
  769. ds_main_fmlyheader.updatecontrol = true;
  770. }
  771. }
  772. ds_hidden_savelist_fmlyheader.copyData(ds_main_fmlyheader);
  773. if( ds_main_fmlyheader.getRowType(0) != 4 && ds_main_fmlyheader.getRowType(0) != 8 ){
  774. dsf_makeValue( ds_hidden_savelist_fmlyheader, "rowstatus", "string", "i" );
  775. }else if( ds_main_fmlyheader.getRowType(0) == 4 ){
  776. dsf_makeValue( ds_hidden_savelist_fmlyheader, "rowstatus", "string", "u" );
  777. }else if( ds_main_fmlyheader.getRowType(0) == 8 ){
  778. dsf_makeValue( ds_hidden_savelist_fmlyheader, "rowstatus", "string", "d" );
  779. }
  780. var dsUpdate = grdf_getGridUpdateData(dtg_fmlymaster, "all");
  781. grdf_setStatusColumn(dsUpdate, "status");
  782. ds_hidden_savelist_fmlymaster.copyData(dsUpdate,true);
  783. var oParam = {};
  784. oParam.id = "TXRWP22001";
  785. oParam.service = "paybnusmngtapp.PayCalcMngt";
  786. oParam.method = "reqSetFmlyAlwncAppMngt";
  787. oParam.inds = "fmlyheader=ds_hidden_savelist_fmlyheader fmlymaster=ds_hidden_savelist_fmlymaster";
  788. oParam.outds = "";
  789. oParam.async = false;
  790. oParam.callback = "cf_TXRWP22001";
  791. tranf_submit(oParam);
  792. if(arErrorCode.pop("TXRWP22001") > -1) {
  793. sysf_messageBox("저장되었습니다.", "I000");
  794. btn_search.click();
  795. }
  796. }
  797. function cf_TXRWP22001(sSvcId, nErrorCode, sErrorMsg) {
  798. arErrorCode.push(sSvcId, nErrorCode);
  799. }
  800. /****************************************************************************************
  801. * Argument : N/A
  802. * Description : 그리드 사용여부 동작을 위한 컬럼 생성
  803. ****************************************************************************************/
  804. function fMakeEnableColumn() {
  805. for(var i = 1 ; i < dtg_fmlymaster.getCellCount("body") ; i++) {
  806. ds_main_fmlymaster.addColumn(grdf_getBindCellName(dtg_fmlymaster, i)+"_editYN","string");
  807. var orgType = dtg_fmlymaster.getCellProperty("body",i,"edittype");
  808. dtg_fmlymaster.setCellProperty("body",i,"edittype","expr:"+grdf_getBindCellName(dtg_fmlymaster, i)+"_editYN=='N' ? 'none' : '"+orgType+"'");
  809. }
  810. }
  811. //=======================================================================================
  812. // Event
  813. //---------------------------------------------------------------------------------------
  814. /****************************************************************************************
  815. * Components : Form
  816. * Description : 화면 처음 초기화시 폼초기화
  817. ****************************************************************************************/
  818. function SMRWP22000_onload(obj:Form, e:LoadEventInfo)
  819. {
  820. frmf_initForm(obj); // 폼 초기화
  821. grdf_setRowTypeIcon(dtg_fmlymaster, 0); // 그리드 상태 표시
  822. grdf_setRowTypeIcon(dtg_fmlyheader, 0); // 그리드 상태 표시
  823. fInitialize();
  824. }
  825. /****************************************************************************************
  826. * Components : Button
  827. * Description : 전산입력설명서
  828. ****************************************************************************************/
  829. function button1_onclick(obj:Button, e:ClickEventInfo)
  830. {
  831. var filepath = "mis/rpv/req//20121008/20121008142112575000_MIS";
  832. dsf_createDsRow("ds_req", [
  833. {col:"filepath", type:"STRING", size:256, val:filepath}
  834. ]);
  835. var oParam = {};
  836. oParam.id = "TRRWC03003";
  837. oParam.service = "paybaseinfomngtapp.PayBaseInfoMngt";
  838. oParam.method = "reqGetManualAtt";
  839. oParam.inds = "req=ds_req";
  840. oParam.outds = "ds_file_attachfile=attachfile";
  841. oParam.async = false;
  842. oParam.callback = "cf_TRRWC03003";
  843. tranf_submit(oParam);
  844. }
  845. function cf_TRRWC03003(sSvcId, nErrorCode, sErrorMsg) {
  846. if(nErrorCode < 0) return;
  847. var filenm = "부양가족수당신청전산입력설명서.ppt";
  848. var fd = new FileDialog;
  849. var objVFile = fd.open("FileSave", FileDialog.SAVE, "%MYDOCUMENT%", filenm); // 단일 파일 선택
  850. if (objVFile != null)
  851. {
  852. var temp = dsf_readFileFromDs(objVFile.fullpath, ds_file_attachfile, 0, "filedata"); // 파일저장
  853. sleep(1000);
  854. if( !utlf_isNull(temp) )
  855. {
  856. var rtn = sysf_messageBox("파일을", "Q004");
  857. if( rtn == 6 )
  858. {
  859. var text = new String(objVFile.fullpath);
  860. var replaceText = text.replace(" ", "");
  861. if( text.length != replaceText.length )
  862. {
  863. sysf_messageBox("공백이 포함된 [파일명/폴더]는 자동열기가 실행되지 않습니다.", "E999", "");
  864. return;
  865. }
  866. else
  867. {
  868. // system.execShell(objVFile.fullpath);
  869. var path = objVFile.fullpath;
  870. var sArg = "";
  871. var objExtCommon = new ExtCommon();
  872. objExtCommon.executeProcess(path, sArg);
  873. }
  874. }
  875. }
  876. }
  877. }
  878. /****************************************************************************************
  879. * Components : Button
  880. * Description : 신청HELP
  881. ****************************************************************************************/
  882. function button6_onclick(obj:Button, e:ClickEventInfo)
  883. {
  884. frmf_modal("SPRWP00907", "SPRWP00907", null, null, null, null, null, null, null, null, null, null, "M");
  885. }
  886. /****************************************************************************************
  887. * Components : Button
  888. * Description : 가족수당신청서 출력
  889. ****************************************************************************************/
  890. function button4_onclick(obj:Button, e:ClickEventInfo)
  891. {
  892. var req = sysf_messageBox("출력을 위해서 재조회가 필요합니다.", "Q003");
  893. if( req == 6 ){
  894. btn_search.click();
  895. }else{
  896. return;
  897. }
  898. dsf_createDs("ds_prntlst_fmlyheader");
  899. dsf_createDs("ds_prntlst_fmlymaster");
  900. ds_prntlst_fmlyheader.copyData(ds_main_fmlyheader);
  901. var marrycheck = "N";
  902. var familycheck = "N";
  903. var jumincheck = "N";
  904. var disabledcheck = "N";
  905. var divorcecheck = "N";
  906. var diecheck = "N";
  907. var ptfamilycheck = "N";
  908. var personallymind = "N";
  909. var monthbf = "";
  910. var monthbt = "";
  911. var idx = 0;
  912. var count = 0 ;
  913. if( ds_main_fmlymaster.rowcount < 5 ){
  914. ds_prntlst_fmlymaster.copyColInfo(ds_main_fmlymaster);
  915. for( var i = 0 ; i < ds_main_fmlymaster.rowcount ; i++ ){
  916. monthbf = ds_main_fmlymaster.getColumn(i, "fstrgstdt").substr(0,6);
  917. monthbt = utlf_getCurrentDate().toDate().getDateFormat("YYYYMMDD").substr(0,6);
  918. if(monthbf == monthbt ){
  919. ds_prntlst_fmlymaster.addRow();
  920. ds_prntlst_fmlymaster.copyRow( idx, ds_main_fmlymaster, i);
  921. ds_prntlst_fmlymaster.setColumn( idx , "job", dtg_fmlymaster.getCellText( i , dtg_fmlymaster.getBindCellIndex("body","job")) );
  922. ds_prntlst_fmlymaster.setColumn( idx , "relationflag", ds_main_fmlymaster.getColumn( i , "relation") );
  923. ds_prntlst_fmlymaster.setColumn( idx , "relation", dtg_fmlymaster.getCellText( i , dtg_fmlymaster.getBindCellIndex("body","relation")) );
  924. ds_prntlst_fmlymaster.setColumn( idx , "aplctnflag", dtg_fmlymaster.getCellText( i , dtg_fmlymaster.getBindCellIndex("body","aplctnflag")) );
  925. ds_prntlst_fmlymaster.setColumn( idx , "reason", dtg_fmlymaster.getCellText( i , dtg_fmlymaster.getBindCellIndex("body","reason")) );
  926. idx++;
  927. }
  928. }
  929. for( var i = 0 ; i < (5-idx) ; i++ ){
  930. ds_prntlst_fmlymaster.addRow();
  931. ds_prntlst_fmlymaster.copyRow( idx, ds_main_fmlymaster, i);
  932. ds_prntlst_fmlymaster.setColumn( idx, "job", "" );
  933. ds_prntlst_fmlymaster.setColumn( idx, "relation", "" );
  934. ds_prntlst_fmlymaster.setColumn( idx, "relname", "" );
  935. ds_prntlst_fmlymaster.setColumn( idx, "relage", "" );
  936. ds_prntlst_fmlymaster.setColumn( idx, "rregno", "" );
  937. ds_prntlst_fmlymaster.setColumn( idx, "reason", "" );
  938. ds_prntlst_fmlymaster.setColumn( idx, "reasonindate", "" );
  939. ds_prntlst_fmlymaster.setColumn( idx, "aplctnflag", "");
  940. ds_prntlst_fmlymaster.setColumn( idx, "deaplctnflag", "");
  941. idx++;
  942. }
  943. }else{
  944. for( var i = 0 ; i < ds_main_fmlymaster.rowcount ; i++ ){
  945. monthbf = ds_main_fmlymaster.getColumn(i, "fstrgstdt").substr(0,6);
  946. monthbt = utlf_getCurrentDate().toDate().getDateFormat("YYYYMMDD").substr(0,6);
  947. if(monthbf == monthbt){
  948. ds_prntlst_fmlymaster.addRow();
  949. ds_prntlst_fmlymaster.copyRow( idx, ds_main_fmlymaster, i);
  950. ds_prntlst_fmlymaster.setColumn( idx , "job", dtg_fmlymaster.getCellText( i , dtg_fmlymaster.getBindCellIndex("body","job")) );
  951. ds_prntlst_fmlymaster.setColumn( idx , "relation", dtg_fmlymaster.getCellText( i , dtg_fmlymaster.getBindCellIndex("body","relation")) );
  952. ds_prntlst_fmlymaster.setColumn( idx , "relationflag", ds_main_fmlymaster.getColumn( i , "relation") );
  953. ds_prntlst_fmlymaster.setColumn( idx , "aplctnflag", dtg_fmlymaster.getCellText( i , dtg_fmlymaster.getBindCellIndex("body","aplctnflag")) );
  954. ds_prntlst_fmlymaster.setColumn( idx , "reason", dtg_fmlymaster.getCellText( i , dtg_fmlymaster.getBindCellIndex("body","reason")) );
  955. idx++;
  956. }
  957. }
  958. }
  959. for( var i = 0 ; i < ds_main_fmlymaster.rowcount ; i++ ){
  960. //신청구분
  961. var aplctnflag = ds_prntlst_fmlymaster.getColumn(i, "deaplctnflag");
  962. //신고사유
  963. var reason = ds_prntlst_fmlymaster.getColumn(i, "reason");
  964. //관계
  965. var relation = ds_prntlst_fmlymaster.getColumn(i, "relationflag");
  966. //동거여부
  967. var togetheryn = ds_prntlst_fmlymaster.getColumn(i, "togetheryn");
  968. //장애여부
  969. var disabledyn = ds_prntlst_fmlymaster.getColumn(i, "disabledyn");
  970. //장남여부
  971. var firsebornyn = ds_prntlst_fmlymaster.getColumn(i, "firsebornyn");
  972. //나이
  973. var relage = ds_prntlst_fmlymaster.getColumn(i, "relage");
  974. //등재시
  975. if(aplctnflag == "1"){
  976. //배우자 : 혼인관계증명서
  977. if(reason == "혼인" && (relation == "11" || relation == "12" || relation == "19")){
  978. marrycheck = "Y";
  979. }
  980. //동거여부 : 주민등록등본
  981. if(togetheryn == "Y"){
  982. jumincheck = "Y";
  983. }
  984. //출생자녀 : 주민등록등본 아들:13, 딸:14
  985. if(reason == "출생" && (relation == "13" || relation == "14")){
  986. jumincheck = "Y";
  987. }
  988. if((relation == "06" && relage >= 60 ) || ( relation == "08" && relage >= 55 )){ //60세 이상(여자 55세) 직계존속
  989. //미혼 남성 여성의 부모님 부:05, 모:07 동거시
  990. if(cmb_empmarryyn.value == "N" && (relation == "05" || relation == "07") && togetheryn == "Y"){
  991. jumincheck = "Y";
  992. }
  993. //미혼 남성 여성의 부모님 부:05, 모:07 비동거시
  994. if(cmb_empmarryyn.value == "N" && (relation == "05" || relation == "07") && togetheryn == "N" && rbo_empfirsebornyn.value == "Y"){
  995. ptfamilycheck = "Y";
  996. }
  997. //기혼 여성의 시부모님 시부:06, 시모:08 동거시
  998. if(cmb_empmarryyn.value == "Y" && (ipt_rregno.value.substr(6,1) == "2" || ipt_rregno.value.substr(6,1) == "4") && (relation == "06" || relation == "08") && togetheryn == "Y"){
  999. jumincheck = "Y";
  1000. }
  1001. //기혼 여성의 시부모님 시부:06, 시모:08 비동거시
  1002. if(cmb_empmarryyn.value == "Y" && (ipt_rregno.value.substr(6,1) == "2" || ipt_rregno.value.substr(6,1) == "4")&& (relation == "06" || relation == "08") && togetheryn == "N"){
  1003. if(ds_main_fmlymaster.getColumn(i, "relation") == "11" && ds_main_fmlymaster.getColumn(i, "firsebornyn") == "Y"){
  1004. ptfamilycheck = "Y";
  1005. }
  1006. }
  1007. //기혼 남성의 부모님 부:05, 모:07 동거시
  1008. if(cmb_empmarryyn.value == "Y" && (ipt_rregno.value.substr(6,1) == "1" || ipt_rregno.value.substr(6,1) == "3") && (relation == "05" || relation == "07") && togetheryn == "Y"){
  1009. jumincheck = "Y";
  1010. }
  1011. //기혼 남성의 부모님 부:05, 모:07 비동거시
  1012. if(cmb_empmarryyn.value == "Y" && (ipt_rregno.value.substr(6,1) == "1" || ipt_rregno.value.substr(6,1) == "3") && (relation == "05" || relation == "07") && togetheryn == "N"){
  1013. ptfamilycheck = "Y";
  1014. }
  1015. //기혼 남성의 시부모님 시부:06, 시모:08 동거시
  1016. if(cmb_empmarryyn.value == "Y" && (ipt_rregno.value.substr(6,1) == "1" || ipt_rregno.value.substr(6,1) == "3") && (relation == "06" || relation == "08") && togetheryn == "Y"){
  1017. jumincheck = "Y";
  1018. }
  1019. //기혼 여성의 친정부모님 부:05, 모:07 동거하며 형제자매가 없을시
  1020. if(cmb_empmarryyn.value == "Y" && (ipt_rregno.value.substr(6,1) == "2" || ipt_rregno.value.substr(6,1) == "4") && (relation == "05" || relation == "07") && togetheryn == "Y" && rbo_under18.value == "N"){
  1021. jumincheck = "Y";
  1022. ptfamilycheck = "Y";
  1023. }
  1024. //여직원의 경우 남편이 장남이면 시부,시모는 주소를 같이하지 않아도 가능 ( 가족관계증명서 필요 )
  1025. if(rbo_ptfirsebornyn.value == "Y" && togetheryn == "N"){
  1026. ptfamilycheck = "Y";
  1027. }
  1028. }
  1029. //장남여부 N 이고 동거여부 Y 이면 주민등록등본
  1030. if(firsebornyn == "N" && togetheryn == "Y"&& (relation == "11" || relation == "12" || relation == "19")){
  1031. jumincheck = "Y";
  1032. }
  1033. //장애 : 장애진단서
  1034. if(disabledyn == "Y") disabledcheck = "Y";
  1035. //20세 미만 자녀 동거
  1036. if(togetheryn == "Y" && parseInt(relage) < 20){
  1037. // familycheck = "Y"; --정희진선생님 요청으로 가족관계증명서는 뺌 2012.06.19 오전
  1038. jumincheck = "Y";
  1039. }
  1040. //20세 미만 자녀 비동거
  1041. if(togetheryn == "N" && parseInt(relage) < 20){
  1042. familycheck = "Y";
  1043. }
  1044. }else{ //상실시
  1045. //이혼
  1046. if(reason == "이혼") divorcecheck = "Y";
  1047. //사망
  1048. if(reason == "사망") diecheck = "Y";
  1049. //본인의사
  1050. if(reason == "본인의사") personallymind = "Y";
  1051. }
  1052. }
  1053. dsf_makeValue( ds_prntlst_fmlyheader, "disabledcheck", "string", disabledcheck );
  1054. dsf_makeValue( ds_prntlst_fmlyheader, "familycheck", "string", familycheck );
  1055. dsf_makeValue( ds_prntlst_fmlyheader, "marrycheck", "string", marrycheck );
  1056. dsf_makeValue( ds_prntlst_fmlyheader, "jumincheck", "string", jumincheck );
  1057. dsf_makeValue( ds_prntlst_fmlyheader, "divorcecheck", "string", divorcecheck );
  1058. dsf_makeValue( ds_prntlst_fmlyheader, "diecheck", "string", diecheck );
  1059. dsf_makeValue( ds_prntlst_fmlyheader, "ptfamilycheck", "string", ptfamilycheck );
  1060. dsf_makeValue( ds_prntlst_fmlyheader, "personallymind", "string", personallymind );
  1061. ds_titlechk.setColumn( 0, "record", "");
  1062. ds_titlechk.setColumn( 0, "lose", "");
  1063. for(i = 0 ; i < ds_main_fmlymaster.rowcount ; i++){
  1064. var aplctnflagck = ds_prntlst_fmlymaster.getColumn(i, "deaplctnflag");
  1065. if(aplctnflagck == "1"){
  1066. ds_titlechk.setColumn( 0, "record","○");
  1067. }else if(aplctnflagck == "2"){
  1068. ds_titlechk.setColumn( 0, "lose","○");
  1069. }
  1070. }
  1071. var objDOM = rptf_createDOM();
  1072. var objParam = new Object();
  1073. rptf_setNodeListToDOM(objDOM, "/root/prntlst/fmlyheader" , ds_prntlst_fmlyheader);
  1074. rptf_setNodeListToDOM(objDOM, "/root/prntlst/fmlymaster" , ds_prntlst_fmlymaster);
  1075. objParam.xml_data_XML1 = objDOM.documentElement.source;
  1076. objParam.record = ds_titlechk.getColumn(0,"record");
  1077. objParam.lose = ds_titlechk.getColumn(0,"lose");
  1078. var option = "open=1;save=1;directprint=0;printdialog=1;print=1;zoom=0";
  1079. rptf_exeReportPreview30(["RPRWP22001"],[objParam], option);
  1080. }
  1081. /****************************************************************************************
  1082. * Components : Button
  1083. * Description : 저장
  1084. ****************************************************************************************/
  1085. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  1086. {
  1087. fSave();
  1088. }
  1089. /****************************************************************************************
  1090. * Components : Edit
  1091. * Description : 사원번호 입력 검색
  1092. ****************************************************************************************/
  1093. function ipt_emplno_onkeydown(obj:Edit, e:KeyEventInfo)
  1094. {
  1095. if(e.keycode == 13)
  1096. {
  1097. if(ds_send.getColumn(0,"emplno") == obj.text) return;
  1098. obj.updateToDataset();
  1099. }
  1100. }
  1101. /****************************************************************************************
  1102. * Components : Dataset
  1103. * Description : 사원번호 입력 검색
  1104. ****************************************************************************************/
  1105. function ds_send_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  1106. {
  1107. if(e.columnid == "emplno") {
  1108. ipt_emplno.value = e.newvalue;
  1109. ipt_emplno.setFocus();
  1110. rpbfValidationCheck("EMPLNO", "emplno,emplnm,dutunitcd,dutunitnm");
  1111. if(!utlf_isNull(ds_send.getColumn(0,"emplnm"))) btn_search.click();
  1112. }
  1113. }
  1114. /****************************************************************************************
  1115. * Components : Button
  1116. * Description : 사원번호 검색 팝업
  1117. ****************************************************************************************/
  1118. function btn_emplno_onclick(obj:Button, e:ClickEventInfo)
  1119. {
  1120. rpbfOpenPopUpList("SPRPB00101", ipt_emplno, "emplno,emplnm,dutunitcd,dutunitnm", "", "N");
  1121. if(!utlf_isNull(ds_send.getColumn(0,"emplnm"))) btn_search.click();
  1122. }
  1123. /****************************************************************************************
  1124. * Components : Button
  1125. * Description : 조회
  1126. ****************************************************************************************/
  1127. function btn_search_onclick(obj:Button, e:ClickEventInfo)
  1128. {
  1129. if(utlf_isNull(ds_send.getColumn(0, "emplno"))) {
  1130. sysf_messageBox("사원번호를 입력해주세요.", "E999");
  1131. return;
  1132. }
  1133. misfGridInit(dtg_fmlymaster);
  1134. var oParam = {};
  1135. oParam.id = "TRRWP22001";
  1136. oParam.service = "paybnusmngtapp.PayCalcMngt";
  1137. oParam.method = "reqGetFmlyAlwncAppLst";
  1138. oParam.inds = "req=ds_send";
  1139. oParam.outds = "ds_main_fmlyheader=fmlyheader ds_main_fmlymaster=fmlymaster";
  1140. oParam.async = false;
  1141. oParam.callback = "cf_TRRWP22001";
  1142. tranf_submit(oParam);
  1143. if(arErrorCode.pop("TRRWP22001") > -1) {
  1144. if( !utlf_isNull(ds_main_fmlyheader.getColumn(0, "emplno")) ) {
  1145. btnAdd.enable = true;
  1146. btnDel.enable = true;
  1147. btn20save.enable = true;
  1148. }
  1149. if( utlf_isNull(ds_send.getColumn(0, "emplnm")) ){
  1150. ds_send.setColumn( 0, "emplnm", ds_main_fmlyheader.getColumn(0, "emplnm") );
  1151. }
  1152. if(DUTY_WELF_YN == "Y"){
  1153. // dtg_fmlymaster.setCellProperty("body",13,"edittype","checkbox");
  1154. // dtg_fmlymaster.setCellProperty("body",15,"edittype","checkbox");
  1155. for( var i = 0 ; i < ds_main_fmlymaster.rowcount ; i++ ){
  1156. ds_main_fmlymaster.setColumn(i, grdf_getBindCellName(dtg_fmlymaster, 13)+"_editYN", "Y");
  1157. ds_main_fmlymaster.setColumn(i, grdf_getBindCellName(dtg_fmlymaster, 15)+"_editYN", "Y");
  1158. }
  1159. }else{
  1160. // dtg_fmlymaster.setCellProperty("body",13,"edittype","none");
  1161. for( var i = 0 ; i < ds_main_fmlymaster.rowcount ; i++ ){
  1162. ds_main_fmlymaster.setColumn(i, grdf_getBindCellName(dtg_fmlymaster, 13)+"_editYN", "N");
  1163. }
  1164. //일반사용자는 승인여부에 다른 전체 잠금
  1165. // for(var i = 1 ; i <= 20 ; i++) {
  1166. // var orgType = dtg_fmlymaster.getCellProperty("body",i,"edittype");
  1167. // if(i == 15) dtg_fmlymaster.setCellProperty("body",i,"edittype","expr:approveflag=='Y' ? 'none' : relation!='11' && relation!='12' && relation!='13' ? 'none' : '"+orgType+"'");
  1168. // else dtg_fmlymaster.setCellProperty("body",i,"edittype","expr:approveflag=='Y' ? 'none' : '"+orgType+"'");
  1169. // }
  1170. for( var i = 0 ; i < ds_main_fmlymaster.rowcount ; i++ ){
  1171. if( ds_main_fmlymaster.getColumn(i, "approveflag") == "Y" ){
  1172. for(var j = 1 ; j <= 20 ; j++) {
  1173. ds_main_fmlymaster.setColumn(i, grdf_getBindCellName(dtg_fmlymaster, j)+"_editYN", "N");
  1174. }
  1175. }else{
  1176. var relationchk = ds_main_fmlymaster.getColumn(i, "relation");
  1177. if(relationchk == "11" || relationchk == "12" || relationchk == "19"){
  1178. ds_main_fmlymaster.setColumn(i, grdf_getBindCellName(dtg_fmlymaster, 15)+"_editYN", "Y");
  1179. }else{
  1180. ds_main_fmlymaster.setColumn(i, grdf_getBindCellName(dtg_fmlymaster, 15)+"_editYN", "N");
  1181. }
  1182. }
  1183. }
  1184. }
  1185. if(cmb_empmarryyn.value == "Y"){
  1186. ipt_spousephone.enable = true;
  1187. cmb_spousejob.enable = true;
  1188. }else{
  1189. ipt_spousephone.enable = false;
  1190. cmb_spousejob.enable = false;
  1191. }
  1192. var gndr = ds_main_fmlyheader.getColumn(0, "gndr"); //성별
  1193. var empmarryyn = cmb_empmarryyn.value; //결혼여부
  1194. if(gndr == "F"){
  1195. rbo_empfirsebornyn.enable = false; //장남여부
  1196. if(empmarryyn == "Y"){
  1197. rbo_under18.enable = true; //18세이하남자형제~
  1198. rbo_ptfirsebornyn.enable = true;
  1199. }else if(empmarryyn == "N"){
  1200. rbo_under18.enable = false; //18세이하남자형제~
  1201. rbo_ptfirsebornyn.enable = false;
  1202. }
  1203. }else if(gndr == "M"){
  1204. rbo_empfirsebornyn.enable = true; //장남여부
  1205. rbo_under18.enable = false; //18세이하남자형제~
  1206. rbo_ptfirsebornyn.enable = false;
  1207. }
  1208. }
  1209. for(var i = 0 ; i < ds_main_fmlymaster.rowcount ; i++){
  1210. var aplctnflag = ds_main_fmlymaster.getColumn(i, "aplctnflag");
  1211. var x = 1;
  1212. var y = 1;
  1213. if(aplctnflag == "2"){
  1214. var rregno = ds_main_fmlymaster.getColumn(i, "rregno");
  1215. for(var j = 1 ; j < ds_main_fmlymaster.rowcount ; j++){
  1216. var aplctnflagchk = ds_main_fmlymaster.getColumn(j, "aplctnflag");
  1217. var rregnochk = ds_main_fmlymaster.getColumn(j, "rregno");
  1218. if(aplctnflagchk == "1" && rregnochk == rregno){
  1219. x++;
  1220. }
  1221. if(aplctnflagchk == "2" && rregnochk == rregno){
  1222. y++;
  1223. }
  1224. }
  1225. if(x == y){
  1226. for(var m = 1 ; m < 20 ; i++) {
  1227. dtg_fmlymaster.setCellProperty("body",i,"color","expr:rregno=='"+rregno+"' ? '#FF4A4A' : ''");
  1228. dtg_fmlymaster.setCellProperty("body",i,"color2","expr:rregno=='"+rregno+"' ? '#FF4A4A' : ''");
  1229. }
  1230. }
  1231. }
  1232. }
  1233. }
  1234. function cf_TRRWP22001(sSvcId, nErrorCode, sErrorMsg) {
  1235. arErrorCode.push(sSvcId, nErrorCode);
  1236. fMakeEnableColumn();
  1237. }
  1238. /****************************************************************************************
  1239. * Components : Button
  1240. * Description : 주소조회 팝업
  1241. ****************************************************************************************/
  1242. function button5_onclick(obj:Button, e:ClickEventInfo)
  1243. {
  1244. var sZipcd = appf_getZipCodeList();
  1245. ds_main_fmlyheader.setColumn(0, "residnczipcd1", sZipcd.zipcdhead);
  1246. ds_main_fmlyheader.setColumn(0, "residnczipcd2", sZipcd.zipcdfoot);
  1247. ds_main_fmlyheader.setColumn(0, "residncaddr", sZipcd.address);
  1248. }
  1249. /****************************************************************************************
  1250. * Components : Combo
  1251. * Description : 결혼여부 변경에 따른 입력항목 변경
  1252. ****************************************************************************************/
  1253. function cmb_empmarryyn_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1254. {
  1255. var gndr = ds_main_fmlyheader.getColumn(0, "gndr"); //성별
  1256. var empmarryyn = cmb_empmarryyn.value; //결혼여부
  1257. if(cmb_empmarryyn.value == "Y"){
  1258. ipt_spousephone.enable = true;
  1259. cmb_spousejob.enable = true;
  1260. ds_main_fmlyheader.setColumn( 0, "spousejob","");
  1261. frmf_inputEnterKey("cmb_spousejob", "onitemchanged", new ItemChangeEventInfo);
  1262. if(gndr == "F"){
  1263. rbo_under18.enable = true; //18세이하남자형제~
  1264. rbo_ptfirsebornyn.enable = true; //배우자장남여부
  1265. }else if(gndr == "M"){
  1266. rbo_under18.enable = false; //18세이하남자형제~
  1267. rbo_ptfirsebornyn.enable = false; //배우자장남여부
  1268. }
  1269. }else{
  1270. ds_main_fmlyheader.setColumn( 0, "spousephone", "");
  1271. ds_main_fmlyheader.setColumn( 0, "spousejob","");
  1272. ds_main_fmlyheader.setColumn( 0, "ptfirsebornyn","N");
  1273. ds_main_fmlyheader.setColumn( 0, "under18","N");
  1274. ipt_spousephone.enable = false;
  1275. cmb_spousejob.enable = false;
  1276. rbo_ptfirsebornyn.enable = false;
  1277. rbo_under18.enable = false; //18세이하남자형제~
  1278. }
  1279. }
  1280. /****************************************************************************************
  1281. * Components : Combo
  1282. * Description : 배우자 직업 변경시 부양가족데이터 변경
  1283. ****************************************************************************************/
  1284. function cmb_spousejob_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1285. {
  1286. for(var i = 0 ; i < ds_main_fmlymaster.rowcount ; i++){
  1287. var relation = ds_main_fmlymaster.getColumn(i, "relation");
  1288. if(relation == "11" || relation == "12"){
  1289. ds_main_fmlymaster.setColumn(i, "job", cmb_spousejob.value);
  1290. // grdf_setStatus(dtg_fmlymaster, "U", [i]);
  1291. }
  1292. }
  1293. }
  1294. /****************************************************************************************
  1295. * Components : Radio
  1296. * Description : 배우자 장남여부 변경시 부양가족데이터 변경
  1297. ****************************************************************************************/
  1298. function rbo_ptfirsebornyn_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
  1299. {
  1300. for(var i = 0 ; i < ds_main_fmlymaster.rowcount ; i++){
  1301. var relation = ds_main_fmlymaster.getColumn(i, "relation");
  1302. if(relation == "11" || relation == "12"){
  1303. ds_main_fmlymaster.setColumn(i, "firsebornyn", rbo_ptfirsebornyn.value);
  1304. // grdf_setStatus(dtg_fmlymaster, "U", [i]);
  1305. }
  1306. }
  1307. }
  1308. /****************************************************************************************
  1309. * Components : Button
  1310. * Description : 20세이상
  1311. ****************************************************************************************/
  1312. function btn20save_onclick(obj:Button, e:ClickEventInfo)
  1313. {
  1314. var len = ds_main_fmlymaster.rowcount;
  1315. if( len > 0 ){
  1316. for( var i = 0; i < len ; i++ ){ // 13 아들, 14 딸 자녀가 만20세 이상이 되면 지급여부에 자동 N처리
  1317. if( ( ds_main_fmlymaster.getColumn(i,"relation" ) == "13" && ds_main_fmlymaster.getColumn(i,"relage" ) > 19 && ds_main_fmlymaster.getColumn(i,"payyn" ) == "Y" )
  1318. || ( ds_main_fmlymaster.getColumn(i,"relation" ) == "14" && ds_main_fmlymaster.getColumn(i,"relage" ) > 19 && ds_main_fmlymaster.getColumn(i,"payyn" ) == "Y" ) ){
  1319. var req = sysf_messageBox("자녀가 만20세 이상인 경우에는 가족수당이 지급되지 않습니다.\n[ " + i + "번째 행 : " + ds_main_fmlymaster.getColumn(i,"relname" ) + " ] ", "Q002");
  1320. if( req == 6 ){
  1321. ds_main_fmlymaster.setColumn( i , "payyn", "Y" );
  1322. // grdf_setStatus(dtg_fmlymaster, "U", [i]);
  1323. ds_send_save20.setColumn( 0, "emplno20", ds_main_fmlymaster.getColumn(i,"emplno" ));
  1324. ds_send_save20.setColumn( 0, "rregno20", ds_main_fmlymaster.getColumn(i,"rregno" ));
  1325. ds_send_save20.setColumn( 0, "aplctndate20", ds_main_fmlymaster.getColumn(i,"aplctndate" ));
  1326. ds_send_save20.setColumn( 0, "aplctnflag20", ds_main_fmlymaster.getColumn(i,"aplctnflag" ));
  1327. ds_send_save20.setColumn( 0, "payyn20", "N" );
  1328. var oParam = {};
  1329. oParam.id = "TXRWP22002";
  1330. oParam.service = "paybnusmngtapp.PayCalcMngt";
  1331. oParam.method = "reqSetFmlyAlwncAppMaster20Updt";
  1332. oParam.inds = "req=ds_send_save20";
  1333. oParam.outds = "";
  1334. oParam.async = false;
  1335. oParam.callback = "cf_TXRWP22002";
  1336. tranf_submit(oParam);
  1337. if(arErrorCode.pop("TXRWP22002") > -1) {
  1338. sysf_messageBox("저장되었습니다.", "I000");
  1339. btn_search.click();
  1340. }
  1341. }
  1342. }
  1343. }
  1344. }
  1345. }
  1346. function cf_TXRWP22002(sSvcId, nErrorCode, sErrorMsg) {
  1347. arErrorCode.push(sSvcId, nErrorCode);
  1348. }
  1349. /****************************************************************************************
  1350. * Components : Button
  1351. * Description : 엑셀저장
  1352. ****************************************************************************************/
  1353. function btn_excelsave_onclick(obj:Button, e:ClickEventInfo)
  1354. {
  1355. if( ds_main_fmlymaster.rowcount > 0 ){
  1356. grdf_exportExcel(dtg_fmlymaster, "SheetName", "SheetName", false, "", "user", false);
  1357. } else {
  1358. sysf_messageBox("조회된 데이터가 ", "I004");
  1359. }
  1360. }
  1361. /****************************************************************************************
  1362. * Components : Button
  1363. * Description : 행추가
  1364. ****************************************************************************************/
  1365. function btnAdd_onclick(obj:Button, e:ClickEventInfo)
  1366. {
  1367. var logindeptcd = sysf_getUserInfo("dutplcecd");
  1368. var loginid = sysf_getUserInfo("userid");
  1369. var curDate = utlf_getCurrentDate();
  1370. if(!(logindeptcd == "4020300000" || logindeptcd == "4020323000" || logindeptcd == "4020327000" || loginid == "97089" || loginid == "MIS" || loginid == "10179"))
  1371. {
  1372. if(parseInt(monthchk) > 10){
  1373. if (curDate.substr(0, 6) == "201603" || curDate.substr(0, 6) == "201612") {
  1374. } else {
  1375. sysf_messageBox("부양가족 추가는 1일부터 10일까지만 할수있습니다.", "E999", "");
  1376. return;
  1377. }
  1378. }
  1379. }
  1380. var cnt = 0;
  1381. misfGridIUD(dtg_fmlymaster,"A");
  1382. cnt = ds_main_fmlymaster.rowcount-1;
  1383. ds_main_fmlymaster.setColumn( cnt , "emplno", ds_main_fmlyheader.getColumn(0, "emplno") );
  1384. ds_main_fmlymaster.setColumn( cnt , "emplnm", ds_main_fmlyheader.getColumn(0, "emplnm") );
  1385. ds_main_fmlymaster.setColumn( cnt , "fstrgstdt", utlf_getCurrentDate() );
  1386. ds_main_fmlymaster.setColumn( cnt , "lastupdtdt", utlf_getCurrentDate() );
  1387. ds_main_fmlymaster.setColumn( cnt , "reasonindate", utlf_getCurrentDate() );
  1388. ds_main_fmlymaster.setColumn( cnt , "deaplctndate", utlf_getCurrentDate() );
  1389. ds_main_fmlymaster.setColumn( cnt , "approveflag", "N" );
  1390. ds_main_fmlymaster.setColumn( cnt , "togetheryn" , "N" );
  1391. ds_main_fmlymaster.setColumn( cnt , "firsebornyn" , "N" );
  1392. ds_main_fmlymaster.setColumn( cnt , "under18" , "N" );
  1393. ds_main_fmlymaster.setColumn( cnt , "disabledyn" , "N" );
  1394. ds_main_fmlymaster.setColumn( cnt , "job" , "2" );
  1395. ds_main_fmlymaster.setColumn( cnt , "rregno", "");
  1396. // ds_main_fmlymaster.setColumn( cnt , "payyn" , "N" );
  1397. if (curDate.substr(0, 6) == "201603" || curDate.substr(0, 6) == "201612") {
  1398. ds_main_fmlymaster.setColumn( cnt , "aplctndate", utlf_getCurrentDate() );
  1399. } else {
  1400. if(parseInt(monthchk) < 11){
  1401. ds_main_fmlymaster.setColumn( cnt , "aplctndate", utlf_getCurrentDate() );
  1402. }
  1403. }
  1404. if(!(logindeptcd == "4020300000" || logindeptcd == "4020323000" || logindeptcd == "4020327000" || loginid == "97089" ||loginid == "MIS" || loginid == "10179")) {
  1405. ds_main_fmlymaster.setColumn(i, "aplctndate_editYN", "N");
  1406. // dsf_makeValue(ds_main_fmlymaster,"aplctndate_enable","string","N",ds_main_fmlymaster.rowposition);
  1407. // var colIdx = dtg_fmlymaster.getBindCellIndex("body","aplctndate");
  1408. // var orgType = dtg_fmlymaster.getCellProperty("body",colIdx,"edittype");
  1409. // dtg_fmlymaster.setCellProperty("body",colIdx,"edittype","expr:aplctndate_enable=='N' ? 'none' : '"+orgType+"'");
  1410. }
  1411. // var orgType15 = dtg_fmlymaster.getCellProperty("body",15,"edittype");
  1412. // var orgType3 = dtg_fmlymaster.getCellProperty("body",3,"edittype");
  1413. // var orgType13 = dtg_fmlymaster.getCellProperty("body",13,"edittype");
  1414. // dtg_fmlymaster.setCellProperty("body",15,"edittype","expr:getRowType(currow) == '2' ? 'none' : '"+orgType15+"'");
  1415. // dtg_fmlymaster.setCellProperty("body",3,"edittype","expr:getRowType(currow) == '2' ? 'none' : '"+orgType3+"'");
  1416. // dtg_fmlymaster.setCellProperty("body",13,"edittype","expr:getRowType(currow) == '2' ? 'none' : '"+orgType13+"'");
  1417. ds_main_fmlymaster.setColumn(i, grdf_getBindCellName(dtg_fmlymaster, 15)+"_editYN", "N");
  1418. ds_main_fmlymaster.setColumn(i, grdf_getBindCellName(dtg_fmlymaster, 3)+"_editYN", "N");
  1419. ds_main_fmlymaster.setColumn(i, grdf_getBindCellName(dtg_fmlymaster, 13)+"_editYN", "N");
  1420. dtg_fmlymaster.setFocus();
  1421. dtg_fmlymaster.setCellPos(1);
  1422. dtg_fmlymaster.showEditor(true);
  1423. }
  1424. /****************************************************************************************
  1425. * Components : Button
  1426. * Description : 행삭제
  1427. ****************************************************************************************/
  1428. function btnDel_onclick(obj:Button, e:ClickEventInfo)
  1429. {
  1430. if(ds_main_fmlymaster.getColumn(ds_main_fmlymaster.rowposition, "approveflag") == "Y"){
  1431. sysf_messageBox("승인된 자료는 삭제가 불가능합니다.", "E999", "");
  1432. return;
  1433. }
  1434. misfGridIUD(dtg_fmlymaster,"D");
  1435. }
  1436. /****************************************************************************************
  1437. * Components : Dataset
  1438. * Description : 부양가족 정보 변경시 이벤트
  1439. ****************************************************************************************/
  1440. function ds_main_fmlymaster_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  1441. {
  1442. if(e.columnid=="payyn" || e.columnid=="togetheryn" || e.columnid=="firsebornyn" || e.columnid=="under18" || e.columnid=="disabledyn") {
  1443. obj.setColumn(e.row,e.columnid,(e.newvalue=="Y"||e.newvalue==1)?"Y":"N");
  1444. }
  1445. // 공무원은 가족수당을 지급하지 않는다.
  1446. // 부 만60세이상, 모 만55세이상, 자 만20세미만일 경우에 가족수당 지급.
  1447. var age = dsf_getColumnNullToEmpty(obj, e.row, "relage");
  1448. var relation = dsf_getColumnNullToEmpty(obj, e.row, "relation");
  1449. var job = dsf_getColumnNullToEmpty(obj, e.row, "job");
  1450. var payyn = dsf_getColumnNullToEmpty(obj, e.row, "payyn");
  1451. var disabledyn = dsf_getColumnNullToEmpty(obj, e.row, "disabledyn");
  1452. if( e.columnid == "job" || e.columnid == "relation" ){
  1453. // 05 부 , 07 모 , 13 아들 , 14 딸
  1454. if( age != "" ){
  1455. if( ( relation == "05" && age >= 60 ) || ( relation == "07" && age >= 55 ) || ( relation == "13" && age < 20 ) || ( relation == "14" && age < 20 ) ){
  1456. obj.setColumn(e.row, "payyn", "Y");
  1457. if(obj.getRowType(e.row) == 0 ){
  1458. obj.updatecontrol = false;
  1459. obj.setRowType(e.row, 4);
  1460. obj.updatecontrol = true;
  1461. }
  1462. }else{
  1463. obj.setColumn(e.row, "payyn", "N");
  1464. if(obj.getRowType(e.row) == 0 ){
  1465. obj.updatecontrol = false;
  1466. obj.getRowType(e.row, 4);
  1467. obj.updatecontrol = true;
  1468. }
  1469. }
  1470. }
  1471. if( dsf_getColumnNullToEmpty(obj, e.row,"job") == "1" && payyn == "Y" ){
  1472. obj.setColumn(e.row, "payyn" , "N");
  1473. obj.setColumn(e.row, "payyn_editYN", "N");
  1474. sysf_messageBox("공무원은 가족수당을 지급하지않습니다.", "E999", "");
  1475. return;
  1476. }else{
  1477. obj.setColumn(e.row, "payyn_editYN", "Y");
  1478. }
  1479. }
  1480. //본인,배우자는 장남여부 Y_N 체크가능 그 외 가족은 Disabled, 11=남편, 12=처, 19=본인
  1481. if(e.columnid == "relation"){
  1482. var relationchk = dsf_getColumnNullToEmpty(obj, e.row,"relation");
  1483. if(relationchk == "11" || relationchk == "12" || relationchk == "19"){
  1484. if(cmb_empmarryyn.value == "N"){
  1485. sysf_messageBox("사원정보 결혼여부에 미혼일시 등록할수 없습니다. 결혼여부를 기혼으로 변경후 진행하여 주십시오.", "E999", "");
  1486. obj.setColumn(e.row, "relation", "");
  1487. return;
  1488. }else{
  1489. obj.setColumn(e.row, grdf_getBindCellName(dtg_fmlymaster, 15)+"_editYN", "Y");
  1490. obj.setColumn(e.row,"firsebornyn", rbo_ptfirsebornyn.value);
  1491. obj.setColumn(e.row,"job", cmb_spousejob.value);
  1492. }
  1493. }else{
  1494. obj.setColumn(e.row, grdf_getBindCellName(dtg_fmlymaster, 15)+"_editYN", "N");
  1495. obj.setColumn(e.row,"firsebornyn", "N");
  1496. }
  1497. }
  1498. //배우자일시 직업변경시 헤더부분도 적용
  1499. if(e.columnid == "job"){
  1500. var relationchk = dsf_getColumnNullToEmpty(obj, e.row,"relation");
  1501. if(relationchk == "11" || relationchk == "12" || relationchk == "19"){
  1502. if(cmb_empmarryyn.value == "Y"){
  1503. var job = dsf_getColumnNullToEmpty(obj, e.row,"job");
  1504. cmb_spousejob.value = job;
  1505. ds_main_fmlyheader.updatecontrol = false;
  1506. ds_main_fmlyheader.setRowType(0, 4);
  1507. ds_main_fmlyheader.updatecontrol = true;
  1508. }
  1509. }
  1510. }
  1511. //배우자일시 장남여부변경시 헤더부분도 적용
  1512. if(e.columnid == "firsebornyn"){
  1513. var relationchk = dsf_getColumnNullToEmpty(obj, e.row,"relation");
  1514. if(relationchk == "11" || relationchk == "12" || relationchk == "19"){
  1515. if(cmb_empmarryyn.value == "Y"){
  1516. var firsebornyn = dsf_getColumnNullToEmpty(obj, e.row,"firsebornyn");
  1517. rbo_ptfirsebornyn.value = firsebornyn;
  1518. ds_main_fmlyheader.updatecontrol = false;
  1519. ds_main_fmlyheader.setRowType(0, 4);
  1520. ds_main_fmlyheader.updatecontrol = true;
  1521. }
  1522. }
  1523. }
  1524. if( e.columnid == "rregno" ){
  1525. if( utlf_isRsrNo( dsf_getColumnNullToEmpty(obj, e.row, "rregno")) ){
  1526. var calage = utlf_getFullAge( dsf_getColumnNullToEmpty(obj, e.row, "rregno"));
  1527. obj.setColumn(e.row, "relage", calage);
  1528. }else{
  1529. obj.setColumn(e.row, "rregno", "");
  1530. sysf_messageBox("유효하지않은 주민등록번호입니다. 다시확인해주십시오.", "E999", "");
  1531. return;
  1532. }
  1533. ds_send.setColumn( 0, "rregno", dsf_getColumnNullToEmpty(obj, e.row,"rregno"));
  1534. dsf_createDsRow("ds_req", [
  1535. {col:"rregno", type:"STRING", size:256, val:ds_send.getColumn( 0, "rregno")}
  1536. ]);
  1537. var oParam = {};
  1538. oParam.id = "TRRWP22003";
  1539. oParam.service = "paybnusmngtapp.PayCalcMngt";
  1540. oParam.method = "reqGetFmlyAlwnAppRregnoChck";
  1541. oParam.inds = "req=ds_req";
  1542. oParam.outds = "ds_temp2_fmlyrregno=fmlyrregno";
  1543. oParam.async = false;
  1544. oParam.callback = "cf_TRRWP22003";
  1545. tranf_submit(oParam);
  1546. if(arErrorCode.pop("TRRWP22003") > -1) {
  1547. if( ds_temp2_fmlyrregno.getColumn(0, "emplno") != ""){
  1548. sysf_messageBox( "해당 주민등록번호는 경북대학교병원직원입니다.\n중복등록일 경우 부양가족수당에 제외될수있습니다.", "E999", "");
  1549. var note = dsf_getColumnNullToEmpty(obj, e.row,"note");
  1550. if(ds_temp2_fmlyrregno.getColumn(0, "preststatcd") == "30"){
  1551. obj.setColumn(e.row, "note", "[경대병원직원-퇴직]"+note);
  1552. }else{
  1553. obj.setColumn(e.row, "note", "[경대병원직원]"+note);
  1554. }
  1555. }
  1556. }
  1557. }
  1558. if( e.columnid == "payyn" ){
  1559. if( age != "" ){
  1560. if( ( relation == "05" && age < 60 && payyn == "Y" && disabledyn == "N" ) || ( relation == "07" && age < 55 && payyn == "Y" && disabledyn == "N" )
  1561. || ( relation == "13" && age >19 && payyn == "Y" && disabledyn == "N") || ( relation == "14" && age > 19 && payyn == "Y" && disabledyn == "N") ){
  1562. obj.setColumn(e.row, "payyn", "N");
  1563. sysf_messageBox("(부)만60세이상, (모)만55세이상, (자)만20세미만의 \n경우에만 가족수당이 지급가능합니다.", "E999", "");
  1564. return;
  1565. }
  1566. }
  1567. }
  1568. if( e.columnid == "aplctndate" && obj.getRowType(e.row) == 2 ) { // || e.columnid == "aplctndate" && obj.getRowType(e.row) == "3"
  1569. obj.setColumn(e.row, "deaplctndate", dsf_getColumnNullToEmpty(obj, e.row, "aplctndate") );
  1570. }
  1571. if( e.columnid == "aplctnflag" && obj.getRowType(e.row) == 2 ) { // || e.columnid == "aplctnflag" && obj.getRowType(e.row) == "3"
  1572. obj.setColumn(e.row, "deaplctnflag", dsf_getColumnNullToEmpty(obj, e.row, "aplctnflag") );
  1573. }
  1574. //날짜제한 1~10일까지만 입력가능
  1575. if(e.columnid == "aplctndate"){
  1576. var gridmonthchk = dsf_getColumnNullToEmpty(obj, e.row,"aplctndate").substr(4,2);
  1577. if(gridmonthchk != utlf_getCurrentDate().substr(4,2)){
  1578. sysf_messageBox("신청일자는 현재 월만 선택가능합니다.", "E999", "");
  1579. obj.setColumn(e.row,"aplctndate", "");
  1580. return;
  1581. }
  1582. var aplctndatechk = dsf_getColumnNullToEmpty(obj, e.row,"aplctndate").substr(6,2);
  1583. if(parseInt(aplctndatechk) > 10){
  1584. sysf_messageBox("신청일자는 1일부터 10일까지만 선택가능합니다.", "E999", "");
  1585. obj.setColumn(e.row,"aplctndate", "");
  1586. return;
  1587. }
  1588. }
  1589. if(e.columnid == "aplctnflag" || e.columnid == "rregno" || e.columnid == "aplctndate"){
  1590. var aplctnflageq1 = dsf_getColumnNullToEmpty(obj, e.row,"aplctnflag");
  1591. var rregnoeq1 = dsf_getColumnNullToEmpty(obj, e.row,"rregno");
  1592. var aplctnflageq2 = obj.getColumn(e.row-1, "aplctnflag");
  1593. var rregnoeq2 = obj.getColumn(e.row-1, "rregno");
  1594. if( (aplctnflageq1 == aplctnflageq2) && (rregnoeq1 == rregnoeq2)){
  1595. sysf_messageBox("한 주민번호로 신청구분을 연속적으로 등록할수 없습니다.", "E999", "");
  1596. obj.setColumn(e.row,"rregno", "");
  1597. }
  1598. var aplctnflag = dsf_getColumnNullToEmpty(obj, e.row,"aplctnflag");
  1599. var rregno = dsf_getColumnNullToEmpty(obj, e.row,"rregno");
  1600. var aplctndate = dsf_getColumnNullToEmpty(obj, e.row,"aplctndate");
  1601. for(var i = 0 ; i < obj.rowcount ; i++){
  1602. var aplctnflageq = obj.getColumn(i, "aplctnflag");
  1603. var rregnoeq = obj.getColumn(i, "rregno");
  1604. var aplctndateeq = obj.getColumn(i, "aplctndate");
  1605. if(i != e.row ){
  1606. if(aplctnflageq == aplctnflag && rregno == rregnoeq && aplctndate == aplctndateeq){
  1607. sysf_messageBox("등재 or 상실은 한 주민번호로 하루에 한번만 가능합니다.", "E999", "");
  1608. obj.setColumn(e.row,"aplctndate", "");
  1609. dtg_fmlymaster.setFocus();
  1610. obj.rowposition = i;
  1611. dtg_fmlymaster.setCellPos(1);
  1612. dtg_fmlymaster.showEditor(true);
  1613. return;
  1614. }
  1615. }
  1616. }
  1617. }
  1618. }
  1619. function cf_TRRWP22003(sSvcId, nErrorCode, sErrorMsg) {
  1620. arErrorCode.push(sSvcId, nErrorCode);
  1621. dsf_setDefaultVal(ds_temp2_fmlyrregno,"all");
  1622. }
  1623. ]]></Script>
  1624. </Form>
  1625. </FDL>