SMRPA00620_학자금신청new.xfdl 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRPA00620" position="absolute 0 0 1202 766" titletext="학자금 신청 및 관리" onload="SMRPA00620_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="grp_srch" taborder="18" position="absolute 0 25 1200 65" class="div_SA" anchor="left top right"/>
  8. <Static id="caption6" text="학자금 신청 현황" class="tit_1" position="absolute 0 0 140 25"/>
  9. <Button id="btn_search" taborder="1" text="조회" class="btn1" position="absolute 760 35 816 57" onclick="btn_search_onclick" anchor="top right"/>
  10. <Shape id="line13" linetype="vertical" class="line_4" position="absolute 750 35 756 57" anchor="top right"/>
  11. <Static id="caption278" text="자녀정보" class="tit_2" position="absolute 0 75 240 92"/>
  12. <Shape id="line207" class="line_10" position="absolute 0 91 1200 97" anchor="left top right"/>
  13. <Grid id="grd_chldlist" class="datagrid2" taborder="2" binddataset="ds_main_chldlist" useinputpanel="false" position="absolute 0 96 1200 231" oncellclick="grd_chldlist_oncellclick" anchor="left top right">
  14. <Formats>
  15. <Format id="default">
  16. <Columns>
  17. <Column size="25" band="left"/>
  18. <Column size="100"/>
  19. <Column size="100"/>
  20. <Column size="100"/>
  21. <Column size="100"/>
  22. <Column size="100"/>
  23. <Column size="100"/>
  24. <Column size="235"/>
  25. <Column size="0"/>
  26. <Column size="0"/>
  27. </Columns>
  28. <Rows>
  29. <Row size="30" band="head"/>
  30. <Row size="24"/>
  31. </Rows>
  32. <Band id="head">
  33. <Cell/>
  34. <Cell col="1" text="자녀명"/>
  35. <Cell col="2" text="생년월일"/>
  36. <Cell col="3" text="재학중 &#10;누적 지원횟수"/>
  37. <Cell col="4" text="졸업 후 &#10;누적 지원 횟수"/>
  38. <Cell col="5" text="지원시작일"/>
  39. <Cell col="6" text="지원종료일"/>
  40. <Cell col="7" text="비고"/>
  41. <Cell col="8" text="emplno"/>
  42. <Cell col="9" text="oldyn"/>
  43. </Band>
  44. <Band id="body">
  45. <Cell celltype="head"/>
  46. <Cell col="1" displaytype="text" edittype="text" text="bind:chldnm"/>
  47. <Cell col="2" displaytype="date" edittype="date" text="bind:chldbrth" mask="yyyy-MM-dd"/>
  48. <Cell col="3" text="bind:sprtcnt"/>
  49. <Cell col="4" text="bind:gradcnt"/>
  50. <Cell col="5" displaytype="date" edittype="date" text="bind:fromdd" mask="yyyy-MM-dd"/>
  51. <Cell col="6" displaytype="date" edittype="date" text="bind:todd" mask="yyyy-MM-dd"/>
  52. <Cell col="7" displaytype="text" edittype="text" text="bind:cmt"/>
  53. <Cell col="8" text="bind:emplno"/>
  54. <Cell col="9" text="bind:oldyn"/>
  55. </Band>
  56. </Format>
  57. </Formats>
  58. </Grid>
  59. <Grid id="grd_colglist" class="datagrid2" taborder="3" binddataset="ds_main_colglist" useinputpanel="false" position="absolute 0 262 1200 762" cellclickbound="cell" anchor="all">
  60. <Formats>
  61. <Format id="default">
  62. <Columns>
  63. <Column size="25" band="left"/>
  64. <Column size="60"/>
  65. <Column size="75"/>
  66. <Column size="75"/>
  67. <Column size="130"/>
  68. <Column size="100"/>
  69. <Column size="40"/>
  70. <Column size="40"/>
  71. <Column size="45"/>
  72. <Column size="80"/>
  73. <Column size="45"/>
  74. <Column size="80"/>
  75. <Column size="75"/>
  76. <Column size="75"/>
  77. <Column size="75"/>
  78. <Column size="40"/>
  79. <Column size="70"/>
  80. <Column size="130"/>
  81. <Column size="0"/>
  82. <Column size="0"/>
  83. </Columns>
  84. <Rows>
  85. <Row size="30" band="head"/>
  86. <Row size="24"/>
  87. </Rows>
  88. <Band id="head">
  89. <Cell/>
  90. <Cell col="1" text="자녀명"/>
  91. <Cell col="2" text="생년월일"/>
  92. <Cell col="3" text="신청일"/>
  93. <Cell col="4" text="학교"/>
  94. <Cell col="5" text="학과"/>
  95. <Cell col="6" text="학년"/>
  96. <Cell col="7" text="학기"/>
  97. <Cell col="8" text="상태"/>
  98. <Cell col="9" text="휴학사유"/>
  99. <Cell col="10" text="이자율&#10;(%)"/>
  100. <Cell col="11" text="대출원금"/>
  101. <Cell col="12" text="학기별&#10;이자금액"/>
  102. <Cell col="13" text="수업료&#10;(과거자료)"/>
  103. <Cell col="14" text="지원금액"/>
  104. <Cell col="15" text="승인"/>
  105. <Cell col="16" text="지급월"/>
  106. <Cell col="17" text="비고"/>
  107. <Cell col="18" text="emplno"/>
  108. <Cell col="19" text="oldyn"/>
  109. </Band>
  110. <Band id="body">
  111. <Cell celltype="head"/>
  112. <Cell col="1" text="bind:chldnm"/>
  113. <Cell col="2" displaytype="date" text="bind:chldbrth" mask="yyyy-MM-dd"/>
  114. <Cell col="3" displaytype="date" text="bind:regdd" mask="yyyy-MM-dd"/>
  115. <Cell col="4" displaytype="text" edittype="text" text="bind:colgnm"/>
  116. <Cell col="5" displaytype="text" edittype="text" text="bind:colgmajr"/>
  117. <Cell col="6" displaytype="text" edittype="text" text="bind:colggrad"/>
  118. <Cell col="7" displaytype="text" edittype="text" text="bind:colgterm"/>
  119. <Cell col="8" displaytype="combo" edittype="combo" text="bind:colgstat" combodataset="ds_cmb_colgstat" combocodecol="value" combodatacol="label"/>
  120. <Cell col="9" displaytype="combo" edittype="combo" text="bind:colgresn" combodataset="ds_cmb_colgresn" combocodecol="value" combodatacol="label"/>
  121. <Cell col="10" text="bind:loanrate"/>
  122. <Cell col="11" displaytype="number" edittype="text" text="bind:loanamt"/>
  123. <Cell col="12" displaytype="number" text="bind:nowsprtamt"/>
  124. <Cell col="13" displaytype="number" text="bind:scho"/>
  125. <Cell col="14" displaytype="number" text="bind:sprtamt"/>
  126. <Cell col="15" displaytype="checkbox" edittype="checkbox" text="bind:cnfmyn" expr="expr:(cnfmyn==&quot;Y&quot;||cnfmyn==1)?1:0"/>
  127. <Cell col="16" displaytype="date" edittype="date" text="bind:payym" mask="yyyy-MM"/>
  128. <Cell col="17" displaytype="text" edittype="text" text="bind:cmt"/>
  129. <Cell col="18" text="bind:emplno"/>
  130. <Cell col="19" text="bind:oldyn"/>
  131. </Band>
  132. </Format>
  133. </Formats>
  134. </Grid>
  135. <Static id="caption3" text="학사정보" class="tit_2" position="absolute 0 241 240 258"/>
  136. <Shape id="line1" class="line_10" position="absolute 0 257 1200 263" anchor="left top right"/>
  137. <Edit id="ipt_emplnm" taborder="4" class="input_essential" enable="false" position="absolute 210 37 315 56"/>
  138. <Edit id="ipt_emplno" taborder="5" class="input_essential" enable="false" position="absolute 115 37 184 56" onkeydown="ipt_emplno_onkeydown"/>
  139. <Static id="caption16" text="사원번호 :" class="search_name" position="absolute 20 38 106 55"/>
  140. <Button id="btn_emplsearch" taborder="6" class="icon_search" enable="false" position="absolute 190 39 206 55" onclick="btn_emplsearch_onclick"/>
  141. <Button id="btn_chldadd" taborder="7" text="행추가" class="btn2" enable="false" position="absolute 1048 71 1101 91" onclick="btn_chldadd_onclick" anchor="top right"/>
  142. <Button id="btn_chlddel" taborder="8" text="행삭제" class="btn2" enable="false" position="absolute 1103 71 1156 91" onclick="btn_chlddel_onclick" anchor="top right"/>
  143. <Button id="btn_chldsave" taborder="9" text="저장" class="btn2" enable="false" position="absolute 1158 71 1200 91" onclick="btn_chldsave_onclick" anchor="top right"/>
  144. <Button id="btn_colgadd" taborder="10" text="행추가" class="btn2" enable="false" position="absolute 1047 237 1100 257" onclick="btn_colgadd_onclick" anchor="top right"/>
  145. <Button id="btn_colgdel" taborder="11" text="행삭제" class="btn2" enable="false" position="absolute 1102 237 1155 257" onclick="btn_colgdel_onclick" anchor="top right"/>
  146. <Button id="btn_colgsave" taborder="12" text="저장" class="btn2" enable="false" position="absolute 1157 237 1199 257" onclick="btn_colgsave_onclick" anchor="top right"/>
  147. <Static id="caption1" text="※ 과거자료 연동된 정보 또는 기 승인된 정보는 수정이 불가능합니다." position="absolute 657 239 1035 260" style="color:#ff0000ff;" anchor="top right"/>
  148. <Button id="btn_mng" taborder="13" text="이자율관리" class="btn4" enable="false" position="absolute 1100 35 1192 57" onclick="btn_mng_onclick" anchor="top right"/>
  149. <Div id="grp_loanrate" taborder="14" visible="false" position="absolute 670 64 1022 255" style="background:#ffffccff;border:1 solid #008000ff ;">
  150. <Layouts>
  151. <Layout>
  152. <Button id="btn_loanrate" taborder="1" text="조회" class="btn2" position="absolute 109 5 151 25" anchor="default" onclick="grp_loanrate_btn_loanrate_onclick"/>
  153. <Button id="button3" taborder="2" text="행추가" class="btn2" position="absolute 152 5 205 25" anchor="default" onclick="grp_loanrate_button3_onclick"/>
  154. <Button id="button4" taborder="3" text="행삭제" class="btn2" position="absolute 206 5 259 25" anchor="default" onclick="grp_loanrate_button4_onclick"/>
  155. <Button id="button5" taborder="4" text="저장" class="btn2" position="absolute 260 5 302 25" anchor="default" onclick="grp_loanrate_button5_onclick"/>
  156. <Grid id="grd_loanrate" taborder="5" binddataset="ds_main_loanrate" useinputpanel="false" position="absolute 5 30 345 184" anchor="default">
  157. <Formats>
  158. <Format id="default">
  159. <Columns>
  160. <Column size="25" band="left"/>
  161. <Column size="100"/>
  162. <Column size="100"/>
  163. <Column size="100"/>
  164. <Column size="0"/>
  165. </Columns>
  166. <Rows>
  167. <Row size="24" band="head"/>
  168. <Row size="24"/>
  169. </Rows>
  170. <Band id="head">
  171. <Cell/>
  172. <Cell col="1" text="이자율(%)"/>
  173. <Cell col="2" text="적용시작일"/>
  174. <Cell col="3" text="적용종료일"/>
  175. <Cell col="4" text="cdid"/>
  176. </Band>
  177. <Band id="body">
  178. <Cell celltype="head"/>
  179. <Cell col="1" displaytype="text" edittype="text" text="bind:loanrate"/>
  180. <Cell col="2" displaytype="date" edittype="date" text="bind:fromdd" mask="yyyy-MM-dd"/>
  181. <Cell col="3" displaytype="date" edittype="date" text="bind:todd" mask="yyyy-MM-dd"/>
  182. <Cell col="4" text="bind:cdid"/>
  183. </Band>
  184. </Format>
  185. </Formats>
  186. </Grid>
  187. <Button id="button6" taborder="6" text="닫기" class="btn5" position="absolute 303 5 345 25" anchor="default" onclick="grp_loanrate_button6_onclick"/>
  188. <Shape id="line207" class="line_10" position="absolute 5 25 345 31" anchor="default"/>
  189. </Layout>
  190. </Layouts>
  191. </Div>
  192. <Button id="btn_prt" taborder="15" text="신청서출력" class="btn6" position="absolute 818 35 910 57" onclick="btn_prt_onclick" anchor="top right"/>
  193. <Button id="btn_help" taborder="16" text="HELP" class="btn4" position="absolute 912 35 980 57" onclick="btn_help_onclick" anchor="top right"/>
  194. <Button id="button1" taborder="17" text="전산입력설명서" class="btn4" position="absolute 982 35 1098 57" onclick="button1_onclick" anchor="top right"/>
  195. </Layout>
  196. </Layouts>
  197. <Objects>
  198. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  199. <ColumnInfo>
  200. <Column id="temp" type="STRING" size="256"/>
  201. </ColumnInfo>
  202. <Rows>
  203. <Row>
  204. <Col id="temp"/>
  205. </Row>
  206. </Rows>
  207. </Dataset>
  208. <Dataset id="ds_send_colginfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  209. <ColumnInfo>
  210. <Column id="emplno" type="STRING" size="256"/>
  211. <Column id="chldnm" type="STRING" size="256"/>
  212. <Column id="chldbrth" type="STRING" size="256"/>
  213. </ColumnInfo>
  214. <Rows>
  215. <Row>
  216. <Col id="emplno"/>
  217. <Col id="chldnm"/>
  218. <Col id="chldbrth"/>
  219. </Row>
  220. </Rows>
  221. </Dataset>
  222. <Dataset id="ds_init_loanrate" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep"/>
  223. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep" oncolumnchanged="ds_send_oncolumnchanged">
  224. <ColumnInfo>
  225. <Column id="emplno" type="STRING" size="256"/>
  226. <Column id="emplnm" type="STRING" size="256"/>
  227. <Column id="clhdsaveinfo" type="STRING" size="256"/>
  228. <Column id="colgsaveinfo" type="STRING" size="256"/>
  229. <Column id="loaninfo" type="STRING" size="256"/>
  230. <Column id="prtinfo" type="STRING" size="256"/>
  231. </ColumnInfo>
  232. <Rows>
  233. <Row>
  234. <Col id="emplno"/>
  235. <Col id="emplnm"/>
  236. </Row>
  237. </Rows>
  238. </Dataset>
  239. <Dataset id="ds_main_chldlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="true"/>
  240. <Dataset id="ds_main_colglist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="true" oncolumnchanged="ds_main_colglist_oncolumnchanged"/>
  241. <Dataset id="ds_main_loanrate" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="true"/>
  242. <Dataset id="ds_prtinfo_basicinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  243. <Dataset id="ds_prtinfo_chldinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  244. <Dataset id="ds_cmb_colgstat" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  245. <ColumnInfo>
  246. <Column id="label" type="STRING" size="256"/>
  247. <Column id="value" type="STRING" size="256"/>
  248. </ColumnInfo>
  249. <Rows>
  250. <Row>
  251. <Col id="label">재학</Col>
  252. <Col id="value">1</Col>
  253. </Row>
  254. <Row>
  255. <Col id="label">휴학</Col>
  256. <Col id="value">2</Col>
  257. </Row>
  258. <Row>
  259. <Col id="label">졸업</Col>
  260. <Col id="value">3</Col>
  261. </Row>
  262. <Row>
  263. <Col id="label">중퇴</Col>
  264. <Col id="value">4</Col>
  265. </Row>
  266. <Row>
  267. <Col id="label">기타</Col>
  268. <Col id="value">9</Col>
  269. </Row>
  270. </Rows>
  271. </Dataset>
  272. <Dataset id="ds_cmb_colgresn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  273. <ColumnInfo>
  274. <Column id="label" type="STRING" size="256"/>
  275. <Column id="value" type="STRING" size="256"/>
  276. </ColumnInfo>
  277. <Rows>
  278. <Row>
  279. <Col id="label">군복무</Col>
  280. <Col id="value">10</Col>
  281. </Row>
  282. <Row>
  283. <Col id="label">유학</Col>
  284. <Col id="value">20</Col>
  285. </Row>
  286. <Row>
  287. <Col id="label">일반휴학</Col>
  288. <Col id="value">30</Col>
  289. </Row>
  290. <Row>
  291. <Col id="label">기타</Col>
  292. <Col id="value">99</Col>
  293. </Row>
  294. </Rows>
  295. </Dataset>
  296. <Dataset id="ds_file_attachfile" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  297. <Dataset id="ds_init_colginfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  298. </Objects>
  299. <Bind>
  300. <BindItem id="item0" compid="ipt_emplnm" propid="value" datasetid="ds_send" columnid="emplnm"/>
  301. <BindItem id="item1" compid="ipt_emplno" propid="value" datasetid="ds_send" columnid="emplno"/>
  302. </Bind>
  303. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  304. * System Name :
  305. * Job Name :
  306. * Creator :
  307. * Make Date : 2017-06-19
  308. * Description :
  309. *---------------------------------------------------------------------------------------
  310. * Modify Date Modifier Modify Description
  311. *---------------------------------------------------------------------------------------
  312. * 2017-06-19 Live Converter TF->XP
  313. *
  314. *---------------------------------------------------------------------------------------
  315. ****************************************************************************************/
  316. //=======================================================================================
  317. // Lib Include
  318. //---------------------------------------------------------------------------------------
  319. include "com_commonxp::comm_main.xjs";
  320. include "mis_miscommonxp::MIS.xjs";
  321. //include "mis_paybaseinfomngtxp::RWC001.xjs";
  322. include "mis_humtrafactmngtxp::RPB001.xjs";
  323. include "mis_dligclaznsmngtxp::RPD001.xjs";
  324. //=======================================================================================
  325. // Global Form Variable
  326. //---------------------------------------------------------------------------------------
  327. var arErrorCode = new HashArray();
  328. //=======================================================================================
  329. // Function
  330. //---------------------------------------------------------------------------------------
  331. /****************************************************************************************
  332. * Argument : N/A
  333. * Description : 초기화
  334. ****************************************************************************************/
  335. function fInit() {
  336. misfGridInit(grd_chldlist);
  337. misfMsterDetailSet("grd_chldlist", null, "TRRPA00621", "Y");
  338. ds_send.setColumn( 0, "emplno", sysf_getUserInfo("userid"));
  339. ds_send.setColumn( 0, "emplnm", sysf_getUserInfo("usernm"));
  340. misfGetUserAuth();
  341. if (DUTY_WELF_YN == "Y") {
  342. ipt_emplno.enable = true;
  343. ipt_emplnm.enable = true;
  344. btn_emplsearch.enable = true;
  345. btn_mng.enable = true;
  346. } else {
  347. ipt_emplno.enable = false;
  348. ipt_emplnm.enable = false;
  349. btn_emplsearch.enable = false;
  350. btn_mng.enable = false;
  351. }
  352. var mm = utlf_getCurrentDate().substr(4,2);
  353. if ( mm == '03' || mm == '09' || DUTY_WELF_YN == "Y" ) {
  354. btn_chldadd.enable = true;
  355. btn_chlddel.enable = true;
  356. btn_chldsave.enable = true;
  357. btn_colgadd.enable = true;
  358. btn_colgdel.enable = true;
  359. btn_colgsave.enable = true;
  360. } else {
  361. sysf_messageBox("학자금 신청일자가 아닙니다. 지정된 기간(매년 3월, 9월)에 신청해 주세요.", "X999");
  362. btn_chldadd.enable = false;
  363. btn_chlddel.enable = false;
  364. btn_chldsave.enable = false;
  365. btn_colgadd.enable = false;
  366. btn_colgdel.enable = false;
  367. btn_colgsave.enable = false;
  368. }
  369. }
  370. /****************************************************************************************
  371. * Argument : N/A
  372. * Description : 학사정보 조회
  373. ****************************************************************************************/
  374. function fSearchColgInfo () {
  375. var row = ds_main_chldlist.rowposition;
  376. var emplno = ds_main_chldlist.getColumn(row, "emplno");
  377. var chldnm = ds_main_chldlist.getColumn(row, "chldnm");
  378. var chldbrth = ds_main_chldlist.getColumn(row, "chldbrth");
  379. ds_send_colginfo.setColumn( 0, "emplno", emplno);
  380. ds_send_colginfo.setColumn( 0, "chldnm", chldnm);
  381. ds_send_colginfo.setColumn( 0, "chldbrth", chldbrth);
  382. var oParam = {};
  383. oParam.id = "TRRPA00622";
  384. oParam.service = "pubwelfmngtapp.ScholExpMngt";
  385. oParam.method = "reqGetColgInfoByChild";
  386. oParam.inds = "req=ds_send_colginfo";
  387. oParam.outds = "ds_main_colglist=colglist";
  388. oParam.async = false;
  389. oParam.callback = "cf_TRRPA00622";
  390. tranf_submit(oParam);
  391. for (var i = 0; i < ds_main_colglist.rowcount ; i++) {
  392. //과거 연동자료 수정 불가
  393. if (ds_main_colglist.getColumn(i, "oldyn") == "Y") {
  394. ds_main_colglist.setColumn(i,"payym_editYN","N");
  395. ds_main_colglist.setColumn(i,"cmt_editYN","N");
  396. }
  397. //승인된 자료 관리자 외 수정 불가
  398. else if (ds_main_colglist.getColumn(i, "cnfmyn") == "Y" && DUTY_WELF_YN != "Y") {
  399. ds_main_colglist.setColumn(i,"payym_editYN","N");
  400. ds_main_colglist.setColumn(i,"cmt_editYN","N");
  401. } else {
  402. ds_main_colglist.setColumn(i,"payym_editYN","Y");
  403. ds_main_colglist.setColumn(i,"cmt_editYN","Y");
  404. }
  405. //관리자 외 승인정보 수정 불가
  406. if (DUTY_WELF_YN != "Y") {
  407. ds_main_colglist.setColumn(i,"cnfmyn_editYN","N");
  408. }
  409. }
  410. }
  411. function cf_TRRPA00622(sSvcId, nErrorCode, sErrorMsg) {
  412. if(nErrorCode < 0) return;
  413. fMakeEnableColumn();
  414. }
  415. /****************************************************************************************
  416. * Argument : N/A
  417. * Description : 그리드 사용여부 동작을 위한 컬럼 생성
  418. ****************************************************************************************/
  419. function fMakeEnableColumn() {
  420. ds_main_colglist.addColumn("payym_editYN","string");
  421. ds_main_colglist.addColumn("cmt_editYN","string");
  422. ds_main_colglist.addColumn("cnfmyn_editYN","string");
  423. var orgType1 = grd_colglist.getCellProperty("body",grd_colglist.getBindCellIndex("body","payym_editYN"),"edittype");
  424. var orgType2 = grd_colglist.getCellProperty("body",grd_colglist.getBindCellIndex("body","cmt_editYN"),"edittype");
  425. var orgType3 = grd_colglist.getCellProperty("body",grd_colglist.getBindCellIndex("body","cnfmyn_editYN"),"edittype");
  426. grd_colglist.setCellProperty("body",i,"edittype","expr:payym_editYN=='N' ? 'none' : '"+orgType1+"'");
  427. grd_colglist.setCellProperty("body",i,"edittype","expr:cmt_editYN=='N' ? 'none' : '"+orgType2+"'");
  428. grd_colglist.setCellProperty("body",i,"edittype","expr:cnfmyn_editYN=='N' ? 'none' : '"+orgType3+"'");
  429. }
  430. //=======================================================================================
  431. // Event
  432. //---------------------------------------------------------------------------------------
  433. /****************************************************************************************
  434. * Components : Form
  435. * Description : 화면 처음 초기화시 폼초기화
  436. ****************************************************************************************/
  437. function SMRPA00620_onload(obj:Form, e:LoadEventInfo)
  438. {
  439. frmf_initForm(obj); // 폼 초기화
  440. grdf_setRowTypeIcon(grd_chldlist, 0); // 그리드 상태 표시
  441. grdf_setRowTypeIcon(grd_colglist, 0); // 그리드 상태 표시
  442. grdf_setRowTypeIcon(grp_loanrate.grd_loanrate, 0); // 그리드 상태 표시
  443. fInit();
  444. }
  445. /****************************************************************************************
  446. * Components : Edit
  447. * Description : 사원번호 입력 검색
  448. ****************************************************************************************/
  449. function ipt_emplno_onkeydown(obj:Edit, e:KeyEventInfo)
  450. {
  451. if(e.keycode == 13)
  452. {
  453. if(ds_send.getColumn(0,"emplno") == obj.text) return;
  454. obj.updateToDataset();
  455. }
  456. }
  457. /****************************************************************************************
  458. * Components : Dataset
  459. * Description : 사원번호 입력 검색
  460. ****************************************************************************************/
  461. function ds_send_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  462. {
  463. if(e.columnid == "emplno") {
  464. ipt_emplno.value = e.newvalue;
  465. ipt_emplno.setFocus();
  466. var recv_list = "emplno,emplnm" ;
  467. rpbfValidationCheck("EMPLNO", recv_list);
  468. if(!utlf_isNull(ds_send.getColumn(0,"emplnm"))) btn_search.click();
  469. }
  470. }
  471. /****************************************************************************************
  472. * Components : Button
  473. * Description : 사원번호 검색 팝업
  474. ****************************************************************************************/
  475. function btn_emplsearch_onclick(obj:Button, e:ClickEventInfo)
  476. {
  477. var recv_list = "emplno,emplnm";
  478. rpbfOpenPopUpList("SPRPB00101", ipt_emplno, recv_list,"","N");
  479. btn_search.click();
  480. }
  481. /****************************************************************************************
  482. * Components : Button
  483. * Description : 조회
  484. ****************************************************************************************/
  485. function btn_search_onclick(obj:Button, e:ClickEventInfo)
  486. {
  487. misfGridInit(grd_chldlist);
  488. misfMsterDetailRetrieve();
  489. var rowcnt = ds_main_chldlist.rowcount;
  490. var insertcnt = 0;
  491. for (var i = 0; i < rowcnt; i++) {
  492. if (ds_main_chldlist.getColumn(i, "oldyn") == "Y") {
  493. grdf_setStatus(grd_chldlist, "I", [i]);
  494. insertcnt++;
  495. }
  496. }
  497. ds_main_colglist.clearData();
  498. if (insertcnt > 0) {
  499. btn_chldsave.click();
  500. }
  501. }
  502. /****************************************************************************************
  503. * Components : Button
  504. * Description : 신청서출력
  505. ****************************************************************************************/
  506. function btn_prt_onclick(obj:Button, e:ClickEventInfo)
  507. {
  508. var row = ds_main_colglist.rowposition;
  509. if (row < 1) {
  510. sysf_messageBox("신청할 학사정보를 선택해주세요.", "I999");
  511. return
  512. } else {
  513. dsf_createDsRow("ds_req", [
  514. {col:"emplno", type:"STRING", size:256, val:ds_main_colglist.getColumn(row, "emplno")}
  515. , {col:"chldnm", type:"STRING", size:256, val:ds_main_colglist.getColumn(row, "chldnm")}
  516. , {col:"chldbrth", type:"STRING", size:256, val:ds_main_colglist.getColumn(row, "chldbrth")}
  517. , {col:"payym", type:"STRING", size:256, val:ds_main_colglist.getColumn(row, "payym")}
  518. ]);
  519. var oParam = {};
  520. oParam.id = "TRRPA00625";
  521. oParam.service = "pubwelfmngtapp.ScholExpMngt";
  522. oParam.method = "reqGetColgPrtInfo";
  523. oParam.inds = "req=ds_req";
  524. oParam.outds = "ds_prtinfo_basicinfo=basicinfo ds_prtinfo_chldinfo=chldinfo";
  525. oParam.async = false;
  526. oParam.callback = "cf_TRRPA00625";
  527. tranf_submit(oParam);
  528. if (arErrorCode.pop("TRRPA00625") > -1) {
  529. var objDOM = rptf_createDOM();
  530. var objParam = new Object();
  531. rptf_setNodeListToDOM(objDOM, "/root/prtinfo/basicinfo" , ds_prtinfo_basicinfo);
  532. rptf_setNodeListToDOM(objDOM, "/root/prtinfo/chldinfo" , ds_prtinfo_chldinfo);
  533. objParam.xml_data_XML1 = objDOM.documentElement.source;
  534. var option = "open=1;save=1;directprint=0;printdialog=1;print=1;zoom=0";
  535. rptf_exeReportPreview30(["RPRPA00620"],[objParam], option);
  536. }
  537. }
  538. }
  539. function cf_TRRPA00625(sSvcId, nErrorCode, sErrorMsg) {
  540. arErrorCode.push(sSvcId, nErrorCode);
  541. }
  542. /****************************************************************************************
  543. * Components : Button
  544. * Description : HELP 팝업 오픈
  545. ****************************************************************************************/
  546. function btn_help_onclick(obj:Button, e:ClickEventInfo)
  547. {
  548. frmf_modal("SMRPA00630","SMRPA00630",null,null,null,null,null,null,null,null,null,null,"M");
  549. }
  550. /****************************************************************************************
  551. * Components : Button
  552. * Description : 전산입력설명서 다운
  553. ****************************************************************************************/
  554. function button1_onclick(obj:Button, e:ClickEventInfo)
  555. {
  556. var filepath = "mis/rpv/req//20151204/20151204163314585000_04188";
  557. dsf_createDsRow("ds_req", [
  558. {col:"filepath", type:"STRING", size:256, val:filepath}
  559. ]);
  560. var oParam = {};
  561. oParam.id = "TRRWC03003";
  562. oParam.service = "paybaseinfomngtapp.PayBaseInfoMngt";
  563. oParam.method = "reqGetManualAtt";
  564. oParam.inds = "req=ds_req";
  565. oParam.outds = "ds_file_attachfile=attachfile";
  566. oParam.async = false;
  567. oParam.callback = "cf_TRRWC03003";
  568. tranf_submit(oParam);
  569. }
  570. function cf_TRRWC03003(sSvcId, nErrorCode, sErrorMsg) {
  571. if(nErrorCode < 0) return;
  572. var filenm = "대학학자금무상대여신청방법.ppt";
  573. var fd = new FileDialog;
  574. var objVFile = fd.open("FileSave", FileDialog.SAVE, "%MYDOCUMENT%", filenm); // 단일 파일 선택
  575. if (objVFile != null)
  576. {
  577. var temp = dsf_readFileFromDs(objVFile.fullpath, ds_file_attachfile, 0, "filedata"); // 파일저장
  578. sleep(1000);
  579. if( !utlf_isNull(temp) )
  580. {
  581. var rtn = sysf_messageBox("파일을", "Q004");
  582. if( rtn == 6 )
  583. {
  584. var text = new String(objVFile.fullpath);
  585. var replaceText = text.replace(" ", "");
  586. if( text.length != replaceText.length )
  587. {
  588. sysf_messageBox("공백이 포함된 [파일명/폴더]는 자동열기가 실행되지 않습니다.", "E999", "");
  589. return;
  590. }
  591. else
  592. {
  593. // system.execShell(objVFile.fullpath);
  594. var path = objVFile.fullpath;
  595. var sArg = "";
  596. var objExtCommon = new ExtCommon();
  597. objExtCommon.executeProcess(path, sArg);
  598. }
  599. }
  600. }
  601. }
  602. }
  603. /****************************************************************************************
  604. * Components : Button
  605. * Description : 이자율관리
  606. ****************************************************************************************/
  607. function btn_mng_onclick(obj:Button, e:ClickEventInfo)
  608. {
  609. grp_loanrate.btn_loanrate.click();
  610. grp_loanrate.visible = true;
  611. }
  612. /****************************************************************************************
  613. * Components : Button
  614. * Description : 자녀정보 행추가
  615. ****************************************************************************************/
  616. function btn_chldadd_onclick(obj:Button, e:ClickEventInfo)
  617. {
  618. btn_search.click();
  619. misfGridIUD(grd_chldlist, "A");
  620. ds_main_chldlist.setColumn(ds_main_chldlist.rowposition, "emplno", ds_send.getColumn(0,"emplno"));
  621. }
  622. /****************************************************************************************
  623. * Components : Button
  624. * Description : 자녀정보 행삭제
  625. ****************************************************************************************/
  626. function btn_chlddel_onclick(obj:Button, e:ClickEventInfo)
  627. {
  628. if (ds_main_colglist.rowcount > 0) {
  629. sysf_messageBox("해당 자녀에 등록된 학사정보가 있으므로 삭제가 불가능합니다.", "X999");
  630. } else {
  631. var cRow = ds_grd_aminoinfo.rowposition;
  632. if( ds_main_chldlist.getRowType(cRow) == 2 ) {
  633. ds_main_chldlist.deleteRow(cRow);
  634. }else{
  635. grdf_setStatus(grd_chldlist, "D", [cRow]);
  636. }
  637. }
  638. }
  639. /****************************************************************************************
  640. * Components : Button
  641. * Description : 자녀정보 저장
  642. ****************************************************************************************/
  643. function btn_chldsave_onclick(obj:Button, e:ClickEventInfo)
  644. {
  645. dsf_createDs("ds_send_chldsaveinfo");
  646. var dsUpdate = grdf_getGridUpdateData(grd_chldlist, "all");
  647. grdf_setStatusColumn(dsUpdate, "status");
  648. ds_send_chldsaveinfo.copyData(grdf_setStatusColumn,true);
  649. var oParam = {};
  650. oParam.id = "TXRPA00621";
  651. oParam.service = "pubwelfmngtapp.ScholExpMngt";
  652. oParam.method = "reqSetChldInfoByEmplno";
  653. oParam.inds = "chldsaveinfo=ds_send_chldsaveinfo";
  654. oParam.outds = "";
  655. oParam.async = false;
  656. //oParam.callback = "cf_TXRPA00621";
  657. tranf_submit(oParam);
  658. btn_search.click();
  659. }
  660. /****************************************************************************************
  661. * Components : Grid
  662. * Description : 자녀정보 선택하여 학사정보 조회
  663. ****************************************************************************************/
  664. function grd_chldlist_oncellclick(obj:Grid, e:GridClickEventInfo)
  665. {
  666. if(e.row > -1) fSearchColgInfo();
  667. }
  668. /****************************************************************************************
  669. * Components : Button
  670. * Description : 학사정보 행추가
  671. ****************************************************************************************/
  672. function btn_colgadd_onclick(obj:Button, e:ClickEventInfo)
  673. {
  674. var chldcnt = ds_main_chldlist.rowcount;
  675. var chldrow = ds_main_chldlist.rowposition;
  676. if (ds_main_chldlist.getRowType(chldrow) > 1) {
  677. sysf_messageBox("변경된 자녀정보를 먼저 저장한 후 진행하세요.", "I999");
  678. return;
  679. }
  680. if (chldcnt < 1 || dsf_getColumnNullToEmpty(ds_main_chldlist, chldrow, "chldnm") == "" || dsf_getColumnNullToEmpty(ds_main_chldlist, chldrow, "chldbrth") == "") {
  681. sysf_messageBox("학사정보를 추가할 자녀 정보가 등록되어 있지 않습니다.", "I999");
  682. } else {
  683. fSearchColgInfo();
  684. misfGridIUD(grd_colglist, "A");
  685. ds_main_colglist.setColumn(ds_main_colglist.rowposition, "emplno", ds_send.getColumn(0, "emplno"));
  686. ds_main_colglist.setColumn(ds_main_colglist.rowposition, "chldnm", ds_send_colginfo.getColumn(0, "chldnm"));
  687. ds_main_colglist.setColumn(ds_main_colglist.rowposition, "chldbrth", ds_send_colginfo.getColumn(0, "chldbrth"));
  688. ds_main_colglist.setColumn(ds_main_colglist.rowposition, "regdd", utlf_getCurrentDate());
  689. }
  690. }
  691. /****************************************************************************************
  692. * Components : Button
  693. * Description : 학사정보 행삭제
  694. ****************************************************************************************/
  695. function btn_colgdel_onclick(obj:Button, e:ClickEventInfo)
  696. {
  697. var row = ds_main_colglist.rowposition;
  698. var cnfmyn = ds_main_colglist.getColumn(row, "cnfmyn");
  699. if (cnfmyn == 'Y') {
  700. sysf_messageBox("이미 승인된 자료는 삭제할 수 없습니다.", "X999");
  701. return;
  702. } else {
  703. if( ds_main_colglist.getRowType(row) == 2 ) {
  704. ds_main_colglist.deleteRow(row);
  705. }else{
  706. grdf_setStatus(grd_colglist, "D", [row]);
  707. }
  708. }
  709. }
  710. /****************************************************************************************
  711. * Components : Button
  712. * Description : 학사정보 저장
  713. ****************************************************************************************/
  714. function btn_colgsave_onclick(obj:Button, e:ClickEventInfo)
  715. {
  716. dsf_createDs("ds_send_colgsaveinfo");
  717. var dsUpdate = grdf_getGridUpdateData(grd_colglist, "all");
  718. grdf_setStatusColumn(dsUpdate, "status");
  719. ds_send_colgsaveinfo.copyData(dsUpdate, true);
  720. var oParam = {};
  721. oParam.id = "TXRPA00622";
  722. oParam.service = "pubwelfmngtapp.ScholExpMngt";
  723. oParam.method = "reqSetColgInfoByChild";
  724. oParam.inds = "colgsaveinfo=ds_send_colgsaveinfo";
  725. oParam.outds = "";
  726. oParam.async = false;
  727. //oParam.callback = "cf_TXRPA00622";
  728. tranf_submit(oParam);
  729. fSearchColgInfo();
  730. }
  731. /****************************************************************************************
  732. * Components : Dataset
  733. * Description : 학사정보 변경시 이자율 조회
  734. ****************************************************************************************/
  735. function ds_main_colglist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  736. {
  737. if(e.columnid=="cnfmyn") {
  738. obj.setColumn(e.row,e.columnid,(e.newvalue=="Y"||e.newvalue==1)?"Y":"N");
  739. }
  740. if (e.columnid == "payym") {
  741. var payym = obj.getColumn(e.row,"payym");
  742. dsf_createDsRow("ds_req", [
  743. {col:"payym", type:"STRING", size:256, val:payym}
  744. ]);
  745. var oParam = {};
  746. oParam.id = "TRRPA00623";
  747. oParam.service = "pubwelfmngtapp.ScholExpMngt";
  748. oParam.method = "reqGetColgLoanrateByPayym";
  749. oParam.inds = "req=ds_req";
  750. oParam.outds = "ds_init_colginfo=colginfo";
  751. oParam.async = false;
  752. oParam.callback = "cf_TRRPA00623";
  753. tranf_submit(oParam);
  754. if ( arErrorCode.pop("TRRPA00623") > -1 ) {
  755. obj.setColumn(e.row,"loanrate",ds_init_colginfo.getColumn(0, "loanrate"));
  756. }
  757. }
  758. if (e.columnid == "loanamt") {
  759. var loanamt = obj.getColumn(e.row,"loanamt");
  760. var loanrate = obj.getColumn(e.row,"loanrate");
  761. var nowsprtamt = (eval(loanamt) * eval(loanrate) / 100 / 2);
  762. obj.setColumn(e.row,"nowsprtamt",nowsprtamt);
  763. }
  764. }
  765. function cf_TRRPA00623(sSvcId, nErrorCode, sErrorMsg) {
  766. arErrorCode.push(sSvcId, nErrorCode);
  767. }
  768. /****************************************************************************************
  769. * Components : Button
  770. * Description : 이자율 조회
  771. ****************************************************************************************/
  772. function grp_loanrate_btn_loanrate_onclick(obj:Button, e:ClickEventInfo)
  773. {
  774. var oParam = {};
  775. oParam.id = "TRRPA00624";
  776. oParam.service = "pubwelfmngtapp.ScholExpMngt";
  777. oParam.method = "reqGetColgLoanrate";
  778. oParam.inds = "req=ds_send";
  779. oParam.outds = "ds_main_loanrate=loanrate";
  780. oParam.async = true;
  781. //oParam.callback = "cf_TRRPA00624";
  782. tranf_submit(oParam);
  783. }
  784. /****************************************************************************************
  785. * Components : Button
  786. * Description : 이자율 행추가
  787. ****************************************************************************************/
  788. function grp_loanrate_button3_onclick(obj:Button, e:ClickEventInfo)
  789. {
  790. misfGridIUD(grp_loanrate.grd_loanrate, "A");
  791. }
  792. /****************************************************************************************
  793. * Components : Button
  794. * Description : 이자율 행삭제
  795. ****************************************************************************************/
  796. function grp_loanrate_button4_onclick(obj:Button, e:ClickEventInfo)
  797. {
  798. var row = ds_main_loanrate.rowposition;
  799. if( ds_main_loanrate.getRowType(row) == 2 ) {
  800. ds_main_loanrate.deleteRow(row);
  801. }else{
  802. grdf_setStatus(grp_loanrate.grd_loanrate, "D", [row]);
  803. }
  804. }
  805. /****************************************************************************************
  806. * Components : Button
  807. * Description : 이자율 저장
  808. ****************************************************************************************/
  809. function grp_loanrate_button5_onclick(obj:Button, e:ClickEventInfo)
  810. {
  811. dsf_createDs("ds_send_loansaveinfo");
  812. var dsUpdate = grdf_getGridUpdateData(grp_loanrate.grd_loanrate, "all");
  813. grdf_setStatusColumn(dsUpdate, "status");
  814. ds_send_loansaveinfo.copyData(dsUpdate, true);
  815. var oParam = {};
  816. oParam.id = "TXRPA00624";
  817. oParam.service = "pubwelfmngtapp.ScholExpMngt";
  818. oParam.method = "reqSetLoanrate";
  819. oParam.inds = "loansaveinfo=ds_send_loansaveinfo";
  820. oParam.outds = "";
  821. oParam.async = false;
  822. //oParam.callback = "cf_TXRPA00624";
  823. tranf_submit(oParam);
  824. grp_loanrate.btn_loanrate.click();
  825. }
  826. /****************************************************************************************
  827. * Components : Button
  828. * Description : 이자율 닫기
  829. ****************************************************************************************/
  830. function grp_loanrate_button6_onclick(obj:Button, e:ClickEventInfo)
  831. {
  832. grp_loanrate.visible = false;
  833. }
  834. ]]></Script>
  835. </Form>
  836. </FDL>