SMRPH00900_교원정기승급처리.xrw 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>SMRPH00900_교원정기승급처리</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <promotnflaglist>
  11. <gradupym/>
  12. <instcd/>
  13. <payclsprfshipflag/>
  14. <deptnm/>
  15. <emplno/>
  16. <emplnm/>
  17. <jobrespnm/>
  18. <jobposnm/>
  19. <jobkindnm/>
  20. <ojobgradnm/>
  21. <njobgradnm/>
  22. <payclscd/>
  23. <graduppaycls/>
  24. <gradupmm/>
  25. <anual/>
  26. <limyn/>
  27. <limcd/>
  28. <limresn/>
  29. <cmt/>
  30. <entcodd/>
  31. <grupjoblncd/>
  32. <joblncd/>
  33. <preststatcd/>
  34. <brthdd/>
  35. <gndr/>
  36. <gvnoffcordtretyn/>
  37. <promotngradupflag/>
  38. <deptcd/>
  39. <teamcd/>
  40. <unitcd/>
  41. <jobkindcd/>
  42. <jobposcd/>
  43. <jobrespcd/>
  44. <ojobgradcd/>
  45. <njobgradcd/>
  46. <oldlimyn/>
  47. <oldgvnoffcordtretyn/>
  48. <gradupcnt/>
  49. </promotnflaglist>
  50. <listdetail>
  51. <gradupym/>
  52. <instcd/>
  53. <payclsprfshipflag/>
  54. <deptnm/>
  55. <emplno/>
  56. <emplnm/>
  57. <jobrespnm/>
  58. <jobposnm/>
  59. <jobkindnm/>
  60. <ojobgradnm/>
  61. <njobgradnm/>
  62. <payclscd/>
  63. <graduppaycls/>
  64. <gradupmm/>
  65. <anual/>
  66. <limyn/>
  67. <limcd/>
  68. <limresn/>
  69. <cmt/>
  70. <entcodd/>
  71. <grupjoblncd/>
  72. <joblncd/>
  73. <preststatcd/>
  74. <brthdd/>
  75. <gndr/>
  76. <gvnoffcordtretyn/>
  77. <promotngradupflag/>
  78. <deptcd/>
  79. <teamcd/>
  80. <unitcd/>
  81. <jobkindcd/>
  82. <jobposcd/>
  83. <jobrespcd/>
  84. <ojobgradcd/>
  85. <njobgradcd/>
  86. <oldlimyn/>
  87. <oldgvnoffcordtretyn/>
  88. <prfshipflag/>
  89. <adjtyearno/>
  90. <dutunitcd/>
  91. <dutunitnm/>
  92. <dutplceinst/>
  93. <gradupcnt/>
  94. </listdetail>
  95. </main>
  96. <send>
  97. <searchcond>
  98. <gradupym/>
  99. <instcd/>
  100. <deptcd/>
  101. <deptnm/>
  102. <emplno/>
  103. <emplnm/>
  104. <limyn/>
  105. <limcd/>
  106. <workgbn/>
  107. <payclsprfshipflag/>
  108. <promotngradupflag/>
  109. <iudflag/>
  110. </searchcond>
  111. <promotnflaglist/>
  112. </send>
  113. <init>
  114. <promconf>
  115. <label>예</label>
  116. <value>Y</value>
  117. <label>아니오</label>
  118. <value>N</value>
  119. </promconf>
  120. <cnfmyn>
  121. <label>전체</label>
  122. <value/>
  123. <label>예</label>
  124. <value>Y</value>
  125. <label>아니오</label>
  126. <value>N</value>
  127. </cnfmyn>
  128. <spref/>
  129. <totcount/>
  130. </init>
  131. <hidden/>
  132. <spreflist>
  133. <spref>
  134. <errormsg/>
  135. <errflag/>
  136. </spref>
  137. </spreflist>
  138. </root>
  139. </instance>
  140. <script type="javascript" ev:event="xforms-ready">
  141. <![CDATA[
  142. misfMsterDetailSet(grd_promotnflaglist,null,"TRRPH00600","Y");
  143. misfGridInit(grd_promotnflaglist);
  144. var curdate = getCurrentDate();
  145. var cvtdate = curdate.toDate("YYYYMM");
  146. model.setValue(ipt_gradupym.attribute("ref") , cvtdate.getAddDate(0,"M").getDateFormat("YYYYMM"));
  147. misfComboComCdList('R0211', cmb_limcd_rsn,'');
  148. misfComboComCdList('R0211', cmb_limcd,'Y');
  149. misfComboComCdList("R0058",cmb_payclsprfshipflag,'Y');
  150. misfComboComCdList("R0058",cmb_payclsprfshipflag_d,'');
  151. misfComboComCdList("R0098",cmb_graduppaycls,'');
  152. misfComboComCdList("R0098",cmb_payclscd,'');
  153. // misfComboComCdList('Z0007', cmb_instcd,'Y');
  154. misfComboInstCdListMulti("cmb_instcd",getCurrentDate(),"","Y");
  155. misfComboCopyItemSet(cmb_instcd, "", cmb_instcd_d, "");
  156. misfComboCopyItemSet(cmb_limcd_rsn, "", grd_promotnflaglist, "limcd");
  157. misfComboCopyItemSet(cmb_payclsprfshipflag_d, "", grd_promotnflaglist, "payclsprfshipflag");
  158. misfComboCopyItemSet(cmb_instcd, "", grd_promotnflaglist, "instcd");
  159. model.setValue(cmb_instcd.attribute("ref") , getUserInfo("dutplceinstcd"));
  160. btn_save.disabled = !(checkAuth("X"));
  161. misfGetUserAuth();
  162. if(DUTY_RANK_YN =='Y'){
  163. btn_gnvoffcanbnt.disabled = false;
  164. btn_gnvoffentbnt.disabled = false;
  165. btn_traget.disabled = false;
  166. btn_save.disabled =false;
  167. //misfSetReadOnlyCol(grd_grd01, "trgtpsncnfmyn", false);
  168. }else{
  169. btn_gnvoffcanbnt.disabled = true;
  170. btn_gnvoffentbnt.disabled = true;
  171. btn_traget.disabled = true;
  172. cmb_instcd.disabled = true;
  173. btn_save.disabled =true;
  174. //misfSetReadOnlyCol(grd_grd01, "trgtpsncnfmyn", true);
  175. }
  176. model.refresh();
  177. ]]>
  178. </script>
  179. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  180. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  181. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  182. <script type="javascript" src="../../../mis/promotnmngtweb/js/RPH001.js"/>
  183. <script type="javascript" src="../../../mis/purccommonweb/js/PURC.js"/>
  184. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  185. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  186. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  187. <script type="javascript" src="../../../mis/valuationmngtweb/js/RPV001.js"/>
  188. <script type="javascript">
  189. <![CDATA[
  190. function fEnableUpdateButton() {
  191. btn_insert.disabled = true;
  192. btn_update.disabled = false;
  193. }
  194. function fEnableInsertButton(){
  195. btn_insert.disabled = false;
  196. btn_update.disabled = true;
  197. ipt_emplno_d.disabled=false;
  198. ipt_emplnm_d.disabled=false;
  199. btn_emplno.disabled=false;
  200. ipt_gradupym_d.disabled = false;
  201. }
  202. ]]>
  203. </script>
  204. <submission id="TRRPH00600" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/searchcond" resultref="/root/main/promotnflaglist"/>
  205. <submission id="TXRPH00601" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/searchcond" resultref="/root/spreflist"/>
  206. <submission id="TXRPH00600" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/promotnflaglist"/>
  207. </model>
  208. </xhtml:head>
  209. <xhtml:body guideline="2,474;2,589;2,591;1,1434;" style="margin-left:8; margin-right:8; ">
  210. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  211. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">교원 정기승급처리</caption>
  212. </group>
  213. <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:732px; ">
  214. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:10px; width:1195px; height:60px; background-color:#fffbf2; border-color:#ffd799; "/>
  215. <caption id="cap_gradupym" class="search_name" style="left:15px; top:19px; width:86px; height:17px; ">승급년월 :</caption>
  216. <button id="btn_search" class="btn1_letter2" style="left:1125px; top:27px; width:56px; height:22px; ">
  217. <caption>조회</caption>
  218. <script type="javascript" ev:event="DOMActivate">
  219. <![CDATA[
  220. if ( !isRequiredControls("ipt_gradupym") ) return;
  221. model.setValue("/root/send/searchcond/promotngradupflag","4");
  222. misfMsterDetailRetrieve();
  223. var totcount=0;
  224. for(var i = grd_promotnflaglist.fixedRows ; i < grd_promotnflaglist.rows ; i++ ){
  225. totcount=totcount+1;
  226. }
  227. totcount= totcount;
  228. model.setValue("/root/init/totcount",totcount);
  229. model.refresh();
  230. ]]>
  231. </script>
  232. </button>
  233. <line id="line13" class="line_4" style="x1:1110px; y1:17px; x2:1110px; y2:61px; "/>
  234. <caption id="caption278" class="tit_2" style="left:5px; top:79px; width:87px; height:14px; ">대상자 목록</caption>
  235. <line id="line207" class="line_1" style="x1:0px; y1:98px; x2:1195px; y2:98px; "/>
  236. <!--datagrid id="promotnflaglist" nodeset="/root/main/promotnflaglist" caption="기관^부서" colwidth="60, 65" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" colsep="^" style="left:0px; top:74px; width:1195px; height:433px; ">
  237. <col ref="instcd"/>
  238. <col ref="deptcd"/>
  239. </datagrid-->
  240. <line id="line205" class="line_2" style="x1:0px; y1:638px; x2:1193px; y2:638px; "/>
  241. <line id="line206" class="line_2" style="x1:0px; y1:663px; x2:1193px; y2:663px; "/>
  242. <line id="line204" class="line_2" style="x1:0px; y1:613px; x2:1193px; y2:613px; "/>
  243. <caption id="caption283" class="tit_2" style="left:5px; top:567px; width:118px; height:13px; ">등록 및 수정사항</caption>
  244. <line id="line203" class="line_1" style="x1:0px; y1:585px; x2:1193px; y2:585px; "/>
  245. <caption id="cap_instnm" class="search_name" style="left:250px; top:19px; width:110px; height:17px; ">기 관 :</caption>
  246. <input id="ipt_gradupym" ref="/root/send/searchcond/gradupym" class="input_s_essential" inputtype="date" format="yyyy-mm" style="left:105px; top:18px; width:125px; height:19px; ">
  247. <script type="javascript" ev:event="xforms-value-changed">
  248. <![CDATA[
  249. var instcd = cmb_instcd.value;
  250. if( getStringLength(ipt_gradupym.value) == "6" ) {
  251. // model.removeNodeset(cmb_instnm.attribute("ref"));
  252. // model.makeNode("/root/send/searchcond/instcd");
  253. misfComboInstCdListMulti("cmb_instcd",ipt_gradupym.value+"31","","Y");
  254. cmb_instcd.value = instcd;
  255. cmb_instcd.refresh();
  256. }
  257. ]]>
  258. </script>
  259. </input>
  260. <button id="btn_emplnohelp" class="icon_search" style="left:689px; top:44px; width:16px; height:16px; ">
  261. <caption>
  262. <script type="javascript" ev:event="DOMActivate">
  263. <![CDATA[
  264. var precv_list = "emplno" + "," + "emplnm";
  265. //alert(precv_list);
  266. rpbfOpenPopUpList("SPRPB00101", ipt_emplno,precv_list,"ipt_systemflag",'Y');
  267. model.refresh();
  268. ]]>
  269. </script>
  270. </caption>
  271. </button>
  272. <caption id="caption16" class="search_name" style="left:520px; top:45px; width:86px; height:17px; ">사원번호 :</caption>
  273. <input id="ipt_emplno" ref="/root/send/searchcond/emplno" class="input_default" style="left:606px; top:43px; width:80px; height:19px; "/>
  274. <input id="ipt_emplnm" ref="/root/send/searchcond/emplnm" class="input_default" imemode="hangul" style="left:710px; top:43px; width:127px; height:19px; "/>
  275. <button id="btn_emplno" class="icon_search" style="left:154px; top:617px; width:16px; height:16px; ">
  276. <caption/>
  277. <script type="javascript" ev:event="DOMActivate">
  278. <![CDATA[
  279. var recv_list = "emplno,emplnm,dutplceinst,anual,dutunitcd,dutunitnm,teamcd,unitcd,jobkindcd,jobkindnm,jobposcd,jobposnm,jobrespcd,jobrespnm";
  280. recv_list = recv_list+",payclscd,entcodd,grupjoblncd,joblncd,preststatcd,brthdd,gndr,njobgradcd,njobgradnm,prfshipflag,gradupmm,ojobgradcd,ojobgradnm";
  281. payclsprfshipflag
  282. rpbfOpenPopUpList("SPRPB00101", ipt_emplno_d, recv_list,"","N");
  283. cmb_payclsprfshipflag_d.value=ipt_prfshipflag.value;
  284. var dutplceinst = model.getValue("/root/main/listdetail/dutplceinst");
  285. var dutnuitcd = model.getValue("/root/main/listdetail/dutunitcd");
  286. var dutnuitnm = model.getValue("/root/main/listdetail/dutunitnm");
  287. model.makeValue("/root/main/listdetail/instcd",dutplceinst);
  288. model.makeValue("/root/main/listdetail/deptcd",dutnuitcd);
  289. model.makeValue("/root/main/listdetail/deptnm",dutnuitnm);
  290. model.refresh();
  291. //misfOpenPopUpList("01", ipt_emplno,"", recv_list) ;
  292. ]]>
  293. </script>
  294. </button>
  295. <caption id="caption10" style="left:772px; top:616px; width:26px; height:20px; text-align:center; vertical-align:bottom; ">년차</caption>
  296. <select1 id="cmb_instcd" ref="/root/send/searchcond/instcd" class="combo_default" appearance="minimal" itemcount="10" style="left:364px; top:18px; width:140px; height:19px; ">
  297. <choices>
  298. <itemset>
  299. <label/>
  300. <value/>
  301. </itemset>
  302. </choices>
  303. </select1>
  304. <line id="line6" class="line_3" style="x1:0px; y1:718px; x2:1193px; y2:718px; "/>
  305. <button id="button19" class="btn2_letter4" style="left:1120px; top:75px; width:64px; height:19px; ">
  306. <caption>엑셀저장</caption>
  307. <script type="javascript" ev:event="DOMActivate">
  308. <![CDATA[
  309. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  310. if (fileName != "")
  311. {
  312. grd_promotnflaglist.saveExcel(fileName, "SheetName", true, true, "", "");
  313. }
  314. ]]>
  315. </script>
  316. </button>
  317. <!--button id="button3" class="btn2_letter3" style="left:955px; top:48px; width:53px; height:19px; ">
  318. <caption>행추가</caption>
  319. <script type="javascript" ev:event="DOMActivate">
  320. <![CDATA[
  321. ]]>
  322. </script>
  323. </button>
  324. <button id="button4" class="btn2_letter3" style="left:1010px; top:48px; width:53px; height:19px; ">
  325. <caption>행삭제</caption>
  326. <script type="javascript" ev:event="DOMActivate">
  327. <![CDATA[
  328. ]]>
  329. </script>
  330. </button-->
  331. <input id="input7" ref="/root/main/listdetail/ojobgradnm" class="input_default" editable="false" style="left:658px; top:616px; width:104px; height:19px; "/>
  332. <input id="input8" ref="/root/main/listdetail/anual" class="input_default" editable="false" style="left:806px; top:616px; width:47px; height:19px; "/>
  333. <input id="input20" ref="/root/main/listdetail/limresn" class="input_default" style="left:860px; top:667px; width:285px; height:19px; "/>
  334. <caption id="caption11" class="cell_1" style="left:0px; top:665px; width:82px; height:23px; vertical-align:middle; ">부서</caption>
  335. <input id="ipt_emplno_d" ref="/root/main/listdetail/emplno" class="input_default" disabled="false" editable="false" style="left:85px; top:616px; width:65px; height:19px; "/>
  336. <caption id="cap_promotnflag_d" class="cell_1" style="left:857px; top:590px; width:82px; height:23px; vertical-align:middle; ">직위</caption>
  337. <caption id="caption4" class="cell_1" style="left:572px; top:615px; width:82px; height:23px; vertical-align:middle; ">직급</caption>
  338. <caption id="cap_ojobgradcd_d" class="cell_1" style="left:285px; top:615px; width:82px; height:23px; vertical-align:middle; ">신직급</caption>
  339. <select1 id="cmb_limcd_rsn" ref="/root/main/listdetail/limcd" class="combo_default" appearance="minimal" style="left:658px; top:667px; width:195px; height:19px; ">
  340. <choices>
  341. <itemset>
  342. <label/>
  343. <value/>
  344. </itemset>
  345. </choices>
  346. </select1>
  347. <input id="input2" ref="/root/main/listdetail/jobkindnm" class="input_default" editable="false" style="left:658px; top:591px; width:195px; height:19px; "/>
  348. <input id="input3" ref="/root/main/listdetail/deptnm" class="input_default" editable="false" style="left:85px; top:667px; width:195px; height:19px; "/>
  349. <input id="ipt_emplnm_d" ref="/root/main/listdetail/emplnm" class="input_default" editable="false" style="left:175px; top:616px; width:105px; height:19px; "/>
  350. <caption id="cap_emplno_d" class="cell_1" style="left:0px; top:615px; width:82px; height:23px; vertical-align:middle; ">사번</caption>
  351. <caption id="caption9" class="cell_1" style="left:0px; top:640px; width:82px; height:23px; vertical-align:middle; ">기관</caption>
  352. <input id="input4" ref="/root/main/listdetail/jobposnm" class="input_default" editable="false" style="left:944px; top:591px; width:195px; height:19px; "/>
  353. <input id="input5" ref="/root/main/listdetail/jobrespnm" class="input_default" editable="false" style="left:944px; top:615px; width:195px; height:19px; "/>
  354. <caption id="caption20" class="cell_1" style="left:285px; top:590px; width:82px; height:23px; vertical-align:middle; ">교직구분</caption>
  355. <caption id="caption21" class="cell_1" style="left:572px; top:590px; width:82px; height:23px; vertical-align:middle; ">직종</caption>
  356. <caption id="cap_limyn" class="cell_1" style="left:857px; top:640px; width:82px; height:23px; vertical-align:middle; ">처리여부</caption>
  357. <select1 id="cmb_instcd_d" ref="/root/main/listdetail/instcd" class="combo_default" appearance="minimal" itemcount="10" style="left:85px; top:642px; width:195px; height:19px; ">
  358. <choices>
  359. <itemset>
  360. <label/>
  361. <value/>
  362. </itemset>
  363. </choices>
  364. </select1>
  365. <select1 id="rdo_limyn" ref="/root/main/listdetail/limyn" class="radio_search" appearance="full" cols="2" overflow="visible" style="left:944px; top:643px; width:180px; height:16px; text-align:center; border-style:none; ">
  366. <choices>
  367. <itemset nodeset="/root/init/promconf">
  368. <label ref="label"/>
  369. <value ref="value"/>
  370. </itemset>
  371. </choices>
  372. </select1>
  373. <button id="btn_update" class="btn2_letter2" navindex="13" style="left:1090px; top:563px; width:42px; height:19px; ">
  374. <caption>수정</caption>
  375. <script type="javascript" ev:event="DOMActivate">
  376. <![CDATA[
  377. if(!isRequiredControls("ipt_gradupym_d","ipt_emplno_d" ,"ipt_graduppaycls", "rdo_limyn"))return;
  378. if(rdo_limyn.value=='N' && cmb_limcd_rsn.value==""){
  379. messageBox("승급불가 사유는 ","I003");
  380. return;
  381. }
  382. var cur_row = grd_promotnflaglist.row; // 행 번호 가져오기
  383. if (cur_row > 0) {
  384. // 그리드에 추가
  385. model.copyNode("/root/main/promotnflaglist["+cur_row+"]","/root/main/listdetail");
  386. grd_promotnflaglist.valueMatrix(cur_row,grd_promotnflaglist.colRef("graduppayclsnm"))=cmb_graduppaycls.label;
  387. grd_promotnflaglist.valueMatrix(cur_row,grd_promotnflaglist.colRef("payclsnm"))=cmb_payclscd.label;
  388. grd_promotnflaglist.addStatus(cur_row,"update"); // 행을 업데이트 상태로 변경
  389. model.refresh();
  390. }
  391. ]]>
  392. </script>
  393. </button>
  394. <button id="button4" class="btn2_letter3" navindex="14" style="left:1135px; top:563px; width:53px; height:19px; ">
  395. <caption>지우기</caption>
  396. <script type="javascript" ev:event="DOMActivate">
  397. <![CDATA[
  398. fEnableInsertButton();
  399. model.resetInstanceNode("/root/main/listdetail");
  400. model.refresh();
  401. ]]>
  402. </script>
  403. </button>
  404. <button id="btn_insert" class="btn2_letter2" navindex="12" style="left:1045px; top:563px; width:42px; height:19px; ">
  405. <caption>추가</caption>
  406. <script type="javascript" ev:event="DOMActivate">
  407. <![CDATA[
  408. if(!isRequiredControls("ipt_gradupym_d","ipt_emplno_d" ,"ipt_graduppaycls","rdo_limyn"))return;
  409. if(rdo_limyn.value=='N' && cmb_limcd_rsn.value==""){
  410. messageBox("승급불가 사유는 ","I003");
  411. return;
  412. }
  413. ipt_promotngradupflag.value='1';
  414. //if (!fnullCheck()) return;
  415. grd_promotnflaglist.addrow(); // 입력할 행 추가.
  416. var cur_row = grd_promotnflaglist.row; // 추가된 행 번호 가져오기
  417. // 그리드에 추가
  418. model.copyNode("/root/main/promotnflaglist["+(cur_row-1)+"]","/root/main/listdetail");
  419. grd_promotnflaglist.valueMatrix(cur_row,grd_promotnflaglist.colRef("graduppayclsnm"))=cmb_graduppaycls.label;
  420. grd_promotnflaglist.valueMatrix(cur_row,grd_promotnflaglist.colRef("payclsnm"))=cmb_payclscd.label;
  421. fEnableUpdateButton();
  422. model.refresh();
  423. ]]>
  424. </script>
  425. </button>
  426. <datagrid id="grd_promotnflaglist" nodeset="/root/main/promotnflaglist" caption="승진년월^기관^교직구분^근무부서^사원번호^성명^직책^직위^직종^직급^신직급^현재&#xA;호봉^승급&#xA;호봉^승급월^년차^승급건수^처리&#xA;여부^발령&#xA;여부^불가&#xA;사유^불가사유기타사항^비고^입사일^직군^직렬^현근무상태^생일^성별^승급구분코드^부서코드^팀코드^유닛코드^직종코드^직위코드^직책코드^현직급코드^신직급코드^조정년차^이전처리구분|승진년월^기관^교직구분^근무부서^사원번호^성명^직책^직위^직종^직급^신직급^현재&#xA;호봉^승급&#xA;호봉^승급월^년차^승급건수^처리&#xA;여부^발령&#xA;여부^불가&#xA;사유^불가사유기타사항^비고^입사일^직군^직렬^현근무상태^생일^성별^승급구분코드^부서코드^팀코드^유닛코드^직종코드^직위코드^직책코드^현직급코드^신직급코드^조정년차^이전처리구분" colsep="^" colwidth="21, 100, 81, 100, 81, 73, 67, 58, 73, 65, 65, 42, 42, 45, 41, 62, 41, 46, 87, 107, 92, 67, 47, 35, 72, 50, 40, 39, 100, 65, 57, 57, 100, 100, 100, 100, 57, 100, 100, 100, 100" explorerbar="sortshow" frozencols="6" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:103px; width:1190px; height:440px; ">
  427. <col ref="gradupym" visibility="hidden" format="yyyy-mm"/>
  428. <col id="instcd" ref="instcd" type="combo">
  429. <choices>
  430. <itemset>
  431. <label/>
  432. <value/>
  433. </itemset>
  434. </choices>
  435. </col>
  436. <col id="payclsprfshipflag" ref="payclsprfshipflag" type="combo">
  437. <choices>
  438. <itemset>
  439. <label/>
  440. <value/>
  441. </itemset>
  442. </choices>
  443. </col>
  444. <col ref="deptnm"/>
  445. <col ref="emplno"/>
  446. <col ref="emplnm"/>
  447. <col ref="jobrespnm"/>
  448. <col ref="jobposnm"/>
  449. <col ref="jobkindnm"/>
  450. <col ref="ojobgradnm"/>
  451. <col ref="njobgradnm" visibility="hidden"/>
  452. <col ref="payclsnm" style="text-align:center; "/>
  453. <col ref="graduppayclsnm" style="text-align:center; "/>
  454. <col ref="gradupmm" style="text-align:center; "/>
  455. <col ref="anual"/>
  456. <col ref="gradupcnt" style="text-align:center; "/>
  457. <col checkvalue="Y,N" ref="limyn" type="checkbox" style="text-align:center; "/>
  458. <col ref="gvnoffcordtretyn" style="text-align:center; "/>
  459. <col id="limcd" ref="limcd" type="combo">
  460. <choices>
  461. <itemset>
  462. <label/>
  463. <value/>
  464. </itemset>
  465. </choices>
  466. </col>
  467. <col ref="limresn" type="input"/>
  468. <col ref="cmt" type="input"/>
  469. <col ref="entcodd" format="yyyy-mm-dd" style="text-align:center; "/>
  470. <col ref="grupjoblncd" visibility="hidden"/>
  471. <col ref="joblncd" visibility="hidden"/>
  472. <col ref="preststatcd" visibility="hidden"/>
  473. <col ref="brthdd" visibility="hidden"/>
  474. <col ref="gndr" visibility="hidden"/>
  475. <col ref="promotngradupflag" visibility="hidden"/>
  476. <col ref="deptcd" visibility="hidden"/>
  477. <col ref="teamcd" visibility="hidden"/>
  478. <col ref="unitcd" visibility="hidden"/>
  479. <col ref="jobkindcd" visibility="hidden"/>
  480. <col ref="jobposcd" visibility="hidden"/>
  481. <col ref="jobrespcd" visibility="hidden"/>
  482. <col ref="ojobgradcd" visibility="hidden"/>
  483. <col ref="njobgradcd" visibility="hidden"/>
  484. <col ref="adjtyearno" visibility="hidden"/>
  485. <col ref="oldlimyn" visibility="hidden"/>
  486. <col ref="oldgvnoffcordtretyn" visibility="hidden"/>
  487. <col ref="payclscd" visibility="hidden"/>
  488. <col ref="graduppaycls" visibility="hidden"/>
  489. <script type="javascript" ev:event="onclick">
  490. <![CDATA[
  491. var cur_row = grd_promotnflaglist.row;
  492. if ( cur_row > 0 ) {
  493. fEnableUpdateButton();
  494. model.copyNode("/root/main/listdetail","/root/main/promotnflaglist["+(cur_row-1)+"]");
  495. ipt_emplno_d.disabled=true;
  496. ipt_emplnm_d.disabled=true;
  497. btn_emplno.disabled=true;
  498. ipt_gradupym_d.disabled = true;
  499. model.refresh();
  500. }
  501. ]]>
  502. </script>
  503. <script type="javascript" ev:event="onaftersort">
  504. <![CDATA[
  505. grd_promotnflaglist.gridToInstance();
  506. ]]>
  507. </script>
  508. </datagrid>
  509. <caption id="cap_prom_rsn" class="cell_1" style="left:572px; top:665px; width:82px; height:23px; vertical-align:middle; ">승급불가사유</caption>
  510. <input id="ipt_gradupym_d" ref="/root/main/listdetail/gradupym" inputtype="date" format="yyyy-mm" style="left:85px; top:591px; width:195px; height:19px; "/>
  511. <input id="input9" ref="/root/main/listdetail/deptcd" visibility="hidden" style="left:415px; top:560px; width:20; height:19px; "/>
  512. <input id="input12" ref="/root/main/listdetail/teamcd" visibility="hidden" style="left:445px; top:560px; width:20; height:19px; "/>
  513. <input id="input13" ref="/root/main/listdetail/unitcd" visibility="hidden" style="left:475px; top:560px; width:20; height:19px; "/>
  514. <input id="input14" ref="/root/main/listdetail/jobkindcd" visibility="hidden" style="left:505px; top:560px; width:20; height:19px; "/>
  515. <input id="input15" ref="/root/main/listdetail/jobposcd" visibility="hidden" style="left:535px; top:560px; width:20; height:19px; "/>
  516. <input id="input16" ref="/root/main/listdetail/jobrespcd" visibility="hidden" style="left:560px; top:560px; width:20; height:19px; "/>
  517. <input id="input17" ref="/root/main/listdetail/ojobgradcd" visibility="hidden" style="left:585px; top:560px; width:20; height:19px; "/>
  518. <input id="input18" ref="/root/main/listdetail/njobgradnm" style="left:372px; top:616px; width:193px; height:19px; "/>
  519. <input id="input21" ref="/root/main/listdetail/njobgradcd" visibility="hidden" style="left:670px; top:560px; width:20; height:19px; "/>
  520. <input id="input24" ref="/root/main/listdetail/gndr" visibility="hidden" style="left:850px; top:558px; width:20; height:19px; "/>
  521. <input id="input26" ref="/root/main/listdetail/entcodd" visibility="hidden" style="left:695px; top:558px; width:20; height:19px; "/>
  522. <input id="input27" ref="/root/main/listdetail/grupjoblncd" visibility="hidden" style="left:725px; top:558px; width:20; height:19px; "/>
  523. <input id="input28" ref="/root/main/listdetail/joblncd" visibility="hidden" style="left:755px; top:558px; width:20; height:19px; "/>
  524. <input id="input31" ref="/root/main/listdetail/preststatcd" visibility="hidden" style="left:780px; top:558px; width:20; height:19px; "/>
  525. <input id="input32" ref="/root/main/listdetail/brthdd" visibility="hidden" style="left:820px; top:558px; width:20; height:19px; "/>
  526. <line id="line1" class="line_2" style="x1:0px; y1:688px; x2:1193px; y2:688px; "/>
  527. <caption id="cap_gradupym_d" class="cell_1" style="left:0px; top:590px; width:82px; height:23px; vertical-align:middle; ">승급년월</caption>
  528. <input id="input33" ref="/root/main/listdetail/cmt" class="input_default" style="left:85px; top:693px; width:1060px; height:19px; "/>
  529. <caption id="caption7" class="cell_1" style="left:0px; top:690px; width:82px; height:23px; vertical-align:middle; ">비고</caption>
  530. <caption id="caption8" class="search_name" style="left:855px; top:20px; width:86px; height:17px; ">확정여부 :</caption>
  531. <select1 id="rdo_limyn_s" ref="/root/send/searchcond/limyn" class="radio_search" appearance="full" cellspacing="5" cols="3" overflow="visible" style="left:940px; top:20px; width:145px; height:16px; text-align:center; border-style:none; ">
  532. <choices>
  533. <itemset nodeset="/root/init/cnfmyn">
  534. <label ref="label"/>
  535. <value ref="value"/>
  536. </itemset>
  537. </choices>
  538. </select1>
  539. <caption id="caption12" class="search_name" style="left:250px; top:43px; width:135px; height:17px; ">승급제한사유 :</caption>
  540. <select1 id="cmb_limcd" ref="/root/send/searchcond/limcd" class="combo_default" appearance="minimal" style="left:364px; top:41px; width:140px; height:19px; ">
  541. <choices>
  542. <itemset>
  543. <label/>
  544. <value/>
  545. </itemset>
  546. </choices>
  547. </select1>
  548. <button id="button5" class="btn5_letter3" style="left:1065px; top:75px; width:53px; height:19px; ">
  549. <caption>행삭제</caption>
  550. <script type="javascript" ev:event="DOMActivate">
  551. <![CDATA[
  552. misfGridIUD(grd_promotnflaglist,"D");
  553. model.refresh();
  554. ]]>
  555. </script>
  556. </button>
  557. <caption id="caption1" class="search_name" style="left:520px; top:20px; width:85px; height:17px; ">부 서 :</caption>
  558. <input id="ipt_deptnm" ref="/root/send/searchcond/deptnm" class="input_default" style="left:710px; top:20px; width:125px; height:19px; ">
  559. <script type="javascript" ev:event="xforms-value-changed">
  560. <![CDATA[
  561. var pre_deptcd = model.getValue(ipt_deptcd.attribute("ref"))
  562. misfValidationCheck("02", "", "deptcd,deptnm" );
  563. model.refresh();
  564. ]]>
  565. </script>
  566. </input>
  567. <input id="ipt_deptcd" ref="/root/send/searchcond/deptcd" class="input_default" style="left:605px; top:20px; width:80px; height:19px; ">
  568. <script type="javascript" ev:event="xforms-value-changed">
  569. <![CDATA[
  570. var recv_list = "deptcd,deptnm";
  571. var instcd = cmb_instcd.value;
  572. var pre_deptcd = model.getValue(ipt_deptcd.attribute("ref"))
  573. misfValidationCheck("02", "", "deptcd,deptnm" );
  574. ]]>
  575. </script>
  576. </input>
  577. <button id="btn_deptcd" class="icon_search" style="left:689px; top:21px; width:16px; height:16px; ">
  578. <caption/>
  579. <script type="javascript" ev:event="DOMActivate">
  580. <![CDATA[
  581. var recv_list = "deptcd,deptnm";
  582. var instcd = cmb_instcd.value;
  583. var pre_deptcd = model.getValue(ipt_deptcd.attribute("ref"))
  584. rpvfOpenDeptCdHelp(ipt_deptnm,recv_list, instcd, "instcd");
  585. var cur_deptcd = model.getValue(ipt_deptcd.attribute("ref"));
  586. model.refresh();
  587. ]]>
  588. </script>
  589. </button>
  590. <select1 id="cmb_payclsprfshipflag" ref="/root/send/searchcond/payclsprfshipflag" class="combo_default" appearance="minimal" itemcount="10" style="left:105px; top:41px; width:125px; height:19px; ">
  591. <choices>
  592. <itemset>
  593. <label/>
  594. <value/>
  595. </itemset>
  596. </choices>
  597. </select1>
  598. <caption id="caption2" class="search_name" style="left:15px; top:40px; width:86px; height:17px; ">교직구분 :</caption>
  599. <caption id="cap_graduppaycls" class="cell_1" style="left:285px; top:640px; width:82px; height:23px; vertical-align:middle; ">승급호봉</caption>
  600. <caption id="caption5" class="cell_1" style="left:572px; top:640px; width:82px; height:23px; vertical-align:middle; ">현호봉</caption>
  601. <select1 id="cmb_payclsprfshipflag_d" ref="/root/main/listdetail/payclsprfshipflag" class="combo_default" appearance="minimal" itemcount="10" style="left:372px; top:591px; width:193px; height:19px; ">
  602. <choices>
  603. <itemset>
  604. <label/>
  605. <value/>
  606. </itemset>
  607. </choices>
  608. </select1>
  609. <caption id="caption13" class="cell_1" style="left:857px; top:615px; width:82px; height:23px; vertical-align:middle; ">직책</caption>
  610. <caption id="caption14" class="cell_1" style="left:285px; top:665px; width:82px; height:23px; vertical-align:middle; ">승급월</caption>
  611. <input id="input10" ref="/root/main/listdetail/gradupmm" inputtype="date" format="mm" style="left:372px; top:667px; width:193px; height:19px; "/>
  612. <input id="input6" ref="/root/main/listdetail/gvnoffcordtretyn" visibility="hidden" style="left:880px; top:565px; width:20px; height:19px; "/>
  613. <input id="ipt_promotngradupflag" ref="/root/main/listdetail/promotngradupflag" visibility="hidden" style="left:910px; top:565px; width:20px; height:19px; "/>
  614. <input id="input19" ref="/root/main/listdetail/oldgvnoffcordtretyn" visibility="hidden" style="left:965px; top:565px; width:20px; height:19px; "/>
  615. <input id="input22" ref="/root/main/listdetail/oldlimyn" visibility="hidden" style="left:935px; top:565px; width:20px; height:19px; "/>
  616. <button id="button6" class="btn2_letter4" style="left:999px; top:75px; width:64px; height:19px; ">
  617. <caption>전체취소</caption>
  618. <script type="javascript" ev:event="DOMActivate">
  619. <![CDATA[
  620. var updtdata = getGridUpdateData(grd_promotnflaglist);
  621. if (updtdata != "") {
  622. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 저장후","C002");
  623. return;
  624. }
  625. for (var i = grd_promotnflaglist.fixedRows; i < grd_promotnflaglist.rows; i++ ) {
  626. grd_grd01.valueMatrix(i, grd_promotnflaglist.colRef("limyn")) = 'N';
  627. if(grd_promotnflaglist.valueMatrix(i, grd_promotnflaglist.colRef("oldlimyn"))!=grd_promotnflaglist.valueMatrix(i, grd_promotnflaglist.colRef("limyn"))){
  628. grd_promotnflaglist.addStatus(i,"update");
  629. }else{
  630. grd_promotnflaglist.rowStatus(i) =0;
  631. }
  632. }
  633. ]]>
  634. </script>
  635. </button>
  636. <button id="button12" class="btn2_letter4" style="left:932px; top:75px; width:64px; height:19px; ">
  637. <caption>전체선택</caption>
  638. <script type="javascript" ev:event="DOMActivate">
  639. <![CDATA[
  640. var updtdata = getGridUpdateData(grd_promotnflaglist);
  641. if (updtdata != "") {
  642. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 저장후","C002");
  643. return;
  644. }
  645. for (var i = grd_promotnflaglist.fixedRows; i < grd_promotnflaglist.rows; i++ ) {
  646. grd_promotnflaglist.valueMatrix(i, grd_promotnflaglist.colRef("limyn")) = 'Y';
  647. if(grd_promotnflaglist.valueMatrix(i, grd_promotnflaglist.colRef("oldlimyn"))!=grd_promotnflaglist.valueMatrix(i, grd_promotnflaglist.colRef("limyn"))){
  648. grd_promotnflaglist.addStatus(i,"update");
  649. }else{
  650. grd_promotnflaglist.rowStatus(i) =0;
  651. }
  652. }
  653. ]]>
  654. </script>
  655. </button>
  656. <caption id="caption3" style="left:125px; top:75px; width:95px; height:20px; font-weight:bold; color:#0000ff; ">* 조회인원수:</caption>
  657. <output id="output1" ref="/root/init/totcount" style="left:210px; top:75px; width:110px; height:19px; font-weight:bold; color:#0000ff; "/>
  658. <input id="ipt_prfshipflag" ref="/root/main/listdetail/prfshipflag" visibility="hidden" style="left:390px; top:565px; width:20px; height:19px; "/>
  659. <input id="input1" ref="/root/main/listdetail/adjtyearno" visibility="hidden" style="left:360px; top:565px; width:20px; height:19px; "/>
  660. <input id="input11" ref="/root/main/listdetail/dutunitcd" visibility="hidden" style="left:255px; top:565px; width:20px; height:15px; "/>
  661. <input id="input25" ref="/root/main/listdetail/dutunitnm" visibility="hidden" style="left:285px; top:565px; width:20px; height:15px; "/>
  662. <input id="input29" ref="/root/main/listdetail/dutplceinst" visibility="hidden" style="left:230px; top:565px; width:20px; height:19px; "/>
  663. <input id="input30" ref="/root/main/listdetail/gradupcnt" visibility="hidden" style="left:620px; top:565px; width:20px; height:19px; "/>
  664. <select1 id="cmb_graduppaycls" ref="/root/main/listdetail/graduppaycls" class="combo_default" appearance="minimal" style="left:370px; top:642px; width:195px; height:19px; ">
  665. <choices>
  666. <itemset>
  667. <label/>
  668. <value/>
  669. </itemset>
  670. </choices>
  671. </select1>
  672. <select1 id="cmb_payclscd" ref="/root/main/listdetail/payclscd" class="combo_default" appearance="minimal" style="left:658px; top:640px; width:195px; height:19px; ">
  673. <choices>
  674. <itemset>
  675. <label/>
  676. <value/>
  677. </itemset>
  678. </choices>
  679. </select1>
  680. </group>
  681. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:28px; ">
  682. <button id="button16" class="btn3_letter2" style="left:0px; top:3px; width:56px; height:22px; ">
  683. <caption>출력</caption>
  684. </button>
  685. <line id="line4" class="line_6" style="x1:0px; y1:25; x2:1195px; y2:25; "/>
  686. <button id="btn_traget" class="btn4_letter5" selected="dksemffudy?" style="left:1037px; top:3px; width:92px; height:22px; ">
  687. <caption>대상자산출</caption>
  688. <script type="javascript" ev:event="DOMActivate">
  689. <![CDATA[
  690. if ( !isRequiredControls("ipt_gradupym") ) return;
  691. var ret = messageBox("대상자산출 작업을 ","Q004");
  692. if (ret != 6) { // not OK
  693. return;
  694. } else {
  695. model.setValue("/root/send/searchcond/promotngradupflag","4");
  696. model.setValue("/root/send/searchcond/workgbn","D");
  697. submit("TXRPH00601");
  698. }
  699. var errormsg=model.getValue("/root/spreflist/spref/errormsg");
  700. var errflag=model.getValue("/root/spreflist/spref/errflag");
  701. if(errflag =='Y'){
  702. messageBox(errormsg,"E001");
  703. return;
  704. }
  705. if (model.getValue(gvErrorMsgPath + "/type") != "error"){
  706. messageBox("대상자산출 작업이 ","I002");
  707. btn_search.dispatch("DOMActivate");
  708. }
  709. ]]>
  710. </script>
  711. </button>
  712. <button id="btn_save" class="btn4_letter2" style="left:1130px; top:3px; width:56px; height:22px; ">
  713. <caption>저장</caption>
  714. <script type="javascript" ev:event="DOMActivate">
  715. <![CDATA[
  716. var updtdata = getGridUpdateData(grd_promotnflaglist);
  717. if (updtdata == "" ) {
  718. messageBox("변경된 데이터가","I004");
  719. return;
  720. }
  721. //alert(model.getValue("/root/send/uptprom/emplno"));
  722. var ret = messageBox("저장합니다.","Q003");
  723. if (ret != 6) { // not OK
  724. return;
  725. } else {
  726. misfSave("TXRPH00600");
  727. }
  728. model.setValue("/root/send/searchcond/promotngradupflag","1");
  729. misfMsterDetailRetrieve();
  730. fEnableInsertButton();
  731. model.refresh();
  732. ]]>
  733. </script>
  734. </button>
  735. <button id="btn_gnvoffentbnt" class="btn4_letter6" style="left:932px; top:3px; width:104px; height:22px; ">
  736. <caption>일괄승급발령</caption>
  737. <script type="javascript" ev:event="DOMActivate">
  738. <![CDATA[
  739. var updtdata = getGridUpdateData(grd_promotnflaglist);
  740. if (updtdata != "") {
  741. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 저장후","C002");
  742. return;
  743. }
  744. if ( !isRequiredControls("ipt_gradupym") ) return;
  745. var ret = messageBox("승급발령 작업을 ","Q004");
  746. if (ret != 6) { // not OK
  747. return;
  748. } else {
  749. model.setValue("/root/send/searchcond/promotngradupflag","4");
  750. model.setValue("/root/send/searchcond/iudflag",'U');
  751. model.setValue("/root/send/searchcond/workgbn","G");
  752. submit("TXRPH00601");
  753. }
  754. var errormsg=model.getValue("/root/spreflist/spref/errormsg");
  755. var errflag=model.getValue("/root/spreflist/spref/errflag");
  756. if(errflag =='0'){
  757. messageBox(errormsg,"I004");
  758. return;
  759. }
  760. if (model.getValue(gvErrorMsgPath + "/type") != "error"){
  761. messageBox("승급발령 작업이 ","I002");
  762. btn_search.dispatch("DOMActivate");
  763. }
  764. ]]>
  765. </script>
  766. </button>
  767. <button id="btn_gnvoffcanbnt" class="btn4_letter6" style="left:827px; top:3px; width:104px; height:22px; ">
  768. <caption>일괄발령취소</caption>
  769. <script type="javascript" ev:event="DOMActivate">
  770. <![CDATA[
  771. var updtdata = getGridUpdateData(grd_promotnflaglist);
  772. if (updtdata != "") {
  773. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 저장후","C002");
  774. return;
  775. }
  776. if ( !isRequiredControls("ipt_gradupym") ) return;
  777. var ret = messageBox("승급발령 작업을 ","Q004");
  778. if (ret != 6) { // not OK
  779. return;
  780. } else {
  781. model.setValue("/root/send/searchcond/promotngradupflag","4");
  782. model.setValue("/root/send/searchcond/iudflag",'C');
  783. model.setValue("/root/send/searchcond/workgbn","G");
  784. submit("TXRPH00601");
  785. }
  786. var errormsg=model.getValue("/root/spreflist/spref/errormsg");
  787. var errflag=model.getValue("/root/spreflist/spref/errflag");
  788. if(errflag =='0'){
  789. messageBox(errormsg,"I004");
  790. return;
  791. }
  792. messageBox("승급발령취소 작업이 ","I002");
  793. btn_search.dispatch("DOMActivate");
  794. ]]>
  795. </script>
  796. </button>
  797. </group>
  798. </xhtml:body>
  799. </xhtml:html>