SMANT02600_직원식상세현황.xfdl 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMANT02600" position="absolute 0 0 1201 793" titletext="직원식상세현황" oninit="SMANT02600_oninit" onload="SMANT02600_onload">
  5. <Layouts>
  6. <Layout>
  7. <Tab position="absolute 0 26 1194 763" id="switch1" onchanged="switch1_onchanged">
  8. <Tabpages>
  9. <Tabpage text="ID카드식수" id="case1">
  10. <Layouts>
  11. <Layout>
  12. <Div position="absolute 5 10 1187 45" align="align:center top;" id="group2" class="div_SA">
  13. <Layouts>
  14. <Layout>
  15. <Static text="사원번호 :" position="absolute 866 10 955 27" id="caption2" class="search_name"/>
  16. <Edit position="absolute 955 8 1040 27" id="ipt_emplno" class="input_search" autoselect="true" onkeydown="switch1_case1_group2_ipt_emplno_onkeydown"/>
  17. <Button position="absolute 1122 7 1178 29" id="btn_search1" class="btn1" text="조회" onclick="switch1_case1_group2_btn_search1_onclick"/>
  18. <Shape position="absolute 1103 7 1109 29" linetype="vertical" id="line13"/>
  19. <Static text="일자 :" position="absolute 31 10 95 27" id="caption3" class="search_name"/>
  20. <Calendar position="absolute 90 7 180 26" id="ipt_eatfromdd" class="input_s_essential" autoselect="true"/>
  21. <Static text="~" position="absolute 185 9 197 26" id="caption11" class="search_n_b"/>
  22. <Calendar position="absolute 200 7 290 26" id="ipt_eattodd" class="input_s_essential" autoselect="true"/>
  23. <Static text="끼니 :" position="absolute 336 10 400 27" id="caption4" class="search_name"/>
  24. <Radio position="absolute 398 8 595 27" id="rdo_mealflag" class="radio_search" columncount="4" rowcount="1" codecolumn="codecolumn" datacolumn="datacolumn">
  25. <Dataset id="innerdataset">
  26. <ColumnInfo>
  27. <Column id="codecolumn"/>
  28. <Column id="datacolumn"/>
  29. </ColumnInfo>
  30. <Rows>
  31. <Row>
  32. <Col id="codecolumn">-</Col>
  33. <Col id="datacolumn">전체</Col>
  34. </Row>
  35. <Row>
  36. <Col id="codecolumn">1</Col>
  37. <Col id="datacolumn">조식</Col>
  38. </Row>
  39. <Row>
  40. <Col id="codecolumn">2</Col>
  41. <Col id="datacolumn">중식</Col>
  42. </Row>
  43. <Row>
  44. <Col id="codecolumn">3</Col>
  45. <Col id="datacolumn">석식</Col>
  46. </Row>
  47. </Rows>
  48. </Dataset>
  49. </Radio>
  50. <Static text="사원명 :" position="absolute 650 10 736 27" id="caption12" class="search_name"/>
  51. <Edit position="absolute 725 8 805 27" id="ipt_hngnm" class="input_search" autoselect="true" onkeydown="switch1_case1_group2_ipt_hngnm_onkeydown"/>
  52. </Layout>
  53. </Layouts>
  54. </Div>
  55. <Shape position="absolute 5 69 1188 75" linetype="horizontal" id="line1" class="line_10"/>
  56. <Grid position="absolute 5 74 1188 710" align="align:center middle;" id="grd_emplidcard" binddataset="ds_main_emplidcard_data">
  57. <Formats>
  58. <Format id="default">
  59. <Columns>
  60. <Column size="24"/>
  61. <Column size="100"/>
  62. <Column size="100"/>
  63. <Column size="100"/>
  64. <Column size="0"/>
  65. <Column size="100"/>
  66. <Column size="0"/>
  67. <Column size="100"/>
  68. <Column size="0"/>
  69. <Column size="100"/>
  70. <Column size="0"/>
  71. </Columns>
  72. <Rows>
  73. <Row size="24" band="head"/>
  74. <Row size="24"/>
  75. </Rows>
  76. <Band id="head">
  77. <Cell/>
  78. <Cell col="1" text="일자"/>
  79. <Cell col="2" text="사원명"/>
  80. <Cell col="3" text="사원번호"/>
  81. <Cell col="4" text="카드ID"/>
  82. <Cell col="5" text="조식"/>
  83. <Cell col="6" text="조식식수시간"/>
  84. <Cell col="7" text="중식"/>
  85. <Cell col="8" text="중식식수시간"/>
  86. <Cell col="9" text="석식"/>
  87. <Cell col="10" text="석식식수시간"/>
  88. </Band>
  89. <Band id="body">
  90. <Cell celltype="head" expr="currow + 1"/>
  91. <Cell col="1" displaytype="date" text="bind:eatdd" calendardisplaynulltype="none"/>
  92. <Cell col="2" text="bind:hngnm"/>
  93. <Cell col="3" text="bind:emplno"/>
  94. <Cell col="4" text="bind:cardid"/>
  95. <Cell col="5" text="bind:breakmeal"/>
  96. <Cell col="6" text="bind:breakmealtm" mask="hh:nn:ss"/>
  97. <Cell col="7" text="bind:lunchmeal"/>
  98. <Cell col="8" text="bind:lunchmealtm" mask="hh:nn:ss"/>
  99. <Cell col="9" text="bind:dinnermeal"/>
  100. <Cell col="10" text="bind:dinnermealtm" mask="hh:nn:ss"/>
  101. </Band>
  102. </Format>
  103. </Formats>
  104. </Grid>
  105. <Button position="absolute 1025 47 1129 69" id="button1" class="btn1" text="자료가져오기" onclick="switch1_case1_button1_onclick"/>
  106. <Grid position="absolute 20 200 1170 635" id="datagrid1" visible="false" binddataset="ds_main_empllist_emplinfo">
  107. <Formats>
  108. <Format id="default">
  109. <Columns>
  110. <Column size="100"/>
  111. <Column size="100"/>
  112. <Column size="100"/>
  113. <Column size="100"/>
  114. <Column size="100"/>
  115. <Column size="100"/>
  116. <Column size="100"/>
  117. <Column size="100"/>
  118. <Column size="100"/>
  119. <Column size="100"/>
  120. <Column size="60"/>
  121. <Column size="100"/>
  122. </Columns>
  123. <Rows>
  124. <Row size="24" band="head"/>
  125. <Row size="24"/>
  126. </Rows>
  127. <Band id="head">
  128. <Cell text="caption1"/>
  129. <Cell col="1" text="caption2"/>
  130. <Cell col="2" text="caption3"/>
  131. <Cell col="3" text="caption4"/>
  132. <Cell col="4" text="caption5"/>
  133. <Cell col="5" text="caption6"/>
  134. <Cell col="6" text="caption7"/>
  135. <Cell col="7" text="caption8"/>
  136. <Cell col="8" text="caption9"/>
  137. <Cell col="9" text="caption10"/>
  138. <Cell col="10" text="emplflag"/>
  139. <Cell col="11" text="usrnm"/>
  140. </Band>
  141. <Band id="body">
  142. <Cell text="bind:instcd"/>
  143. <Cell col="1" text="bind:emplinstcd"/>
  144. <Cell col="2" text="bind:mealflag"/>
  145. <Cell col="3" text="bind:seqno"/>
  146. <Cell col="4" text="bind:emplno"/>
  147. <Cell col="5" text="bind:cardid"/>
  148. <Cell col="6" text="bind:eatdd"/>
  149. <Cell col="7" text="bind:eattm"/>
  150. <Cell col="8" text="bind:eatamt"/>
  151. <Cell col="9" text="bind:readyn"/>
  152. <Cell col="10" text="bind:emplflag"/>
  153. <Cell col="11" text="bind:usrnm"/>
  154. </Band>
  155. </Format>
  156. </Formats>
  157. </Grid>
  158. </Layout>
  159. </Layouts>
  160. </Tabpage>
  161. <Tabpage text="기타식수관리" id="case2">
  162. <Layouts>
  163. <Layout>
  164. <Div position="absolute 5 10 1187 45" align="align:center top;" id="group3" class="div_SA">
  165. <Layouts>
  166. <Layout>
  167. <Static text="조회년월 :" position="absolute 31 10 120 27" id="caption5" class="search_name"/>
  168. <MaskEdit position="absolute 120 8 205 27" align="align:center middle;" id="ipt_yyyymm" mask="####-##" autoselect="true" onkeydown="switch1_case2_group3_ipt_yyyymm_onkeydown" maskchar=" " type="string" style="align:center middle;"/>
  169. <Button position="absolute 208 10 221 25" id="btn_before" class="icon_pre" text="" onclick="switch1_case2_group3_btn_before_onclick"/>
  170. <Button position="absolute 223 10 236 25" id="btn_next" class="icon_next" text="" onclick="switch1_case2_group3_btn_next_onclick"/>
  171. <Button position="absolute 1112 7 1168 29" id="btn_search2" class="btn1" text="조회" onclick="switch1_case2_group3_btn_search2_onclick"/>
  172. <Shape position="absolute 1093 7 1099 29" linetype="vertical" id="line2"/>
  173. </Layout>
  174. </Layouts>
  175. </Div>
  176. <Shape position="absolute 5 69 1188 75" linetype="horizontal" id="line3" class="line_10"/>
  177. <Grid position="absolute 5 74 1188 709" align="align:center middle;" id="grd_empletc" binddataset="ds_main_empletc_data">
  178. <Formats>
  179. <Format id="default">
  180. <Columns>
  181. <Column size="24"/>
  182. <Column size="0"/>
  183. <Column size="70"/>
  184. <Column size="50"/>
  185. <Column size="50"/>
  186. <Column size="50"/>
  187. <Column size="50"/>
  188. <Column size="50"/>
  189. <Column size="50"/>
  190. <Column size="50"/>
  191. <Column size="50"/>
  192. <Column size="50"/>
  193. <Column size="50"/>
  194. <Column size="50"/>
  195. <Column size="50"/>
  196. <Column size="50"/>
  197. <Column size="50"/>
  198. <Column size="50"/>
  199. <Column size="50"/>
  200. <Column size="50"/>
  201. <Column size="50"/>
  202. <Column size="50"/>
  203. <Column size="50"/>
  204. <Column size="50"/>
  205. <Column size="50"/>
  206. <Column size="50"/>
  207. <Column size="50"/>
  208. <Column size="50"/>
  209. <Column size="50"/>
  210. <Column size="50"/>
  211. <Column size="50"/>
  212. <Column size="50"/>
  213. <Column size="50"/>
  214. <Column size="70"/>
  215. </Columns>
  216. <Rows>
  217. <Row size="24" band="head"/>
  218. <Row size="24" band="head"/>
  219. <Row size="24" band="head"/>
  220. <Row size="24"/>
  221. <Row size="24" band="summ"/>
  222. </Rows>
  223. <Band id="head">
  224. <Cell rowspan="3" taborder="undefined"/>
  225. <Cell col="1" rowspan="3" text="년월일" taborder="undefined"/>
  226. <Cell col="2" rowspan="3" text="일자" taborder="undefined"/>
  227. <Cell col="3" colspan="10" text="조식" taborder="undefined"/>
  228. <Cell col="13" colspan="10" text="중식" taborder="undefined"/>
  229. <Cell col="23" colspan="10" text="석식" taborder="undefined"/>
  230. <Cell col="33" rowspan="3" text="총계" taborder="undefined"/>
  231. <Cell row="1" col="3" colspan="3" text="본원" taborder="undefined"/>
  232. <Cell row="1" col="6" colspan="6" text="외부" taborder="undefined"/>
  233. <Cell row="1" col="12" rowspan="2" text="합계" taborder="undefined"/>
  234. <Cell row="1" col="13" colspan="3" text="본원" taborder="undefined"/>
  235. <Cell row="1" col="16" colspan="6" text="외부" taborder="undefined"/>
  236. <Cell row="1" col="22" rowspan="2" text="합계" taborder="undefined"/>
  237. <Cell row="1" col="23" colspan="3" text="본원" taborder="undefined"/>
  238. <Cell row="1" col="26" colspan="6" text="외부" taborder="undefined"/>
  239. <Cell row="1" col="32" rowspan="2" text="합계" taborder="undefined"/>
  240. <Cell row="2" col="3" text="현금"/>
  241. <Cell row="2" col="4" text="공용"/>
  242. <Cell row="2" col="5" text="소계"/>
  243. <Cell row="2" col="6" text="성의"/>
  244. <Cell row="2" col="7" text="성모"/>
  245. <Cell row="2" col="8" text="의정부"/>
  246. <Cell row="2" col="9" text="부천"/>
  247. <Cell row="2" col="10" text="기타"/>
  248. <Cell row="2" col="11" text="소계"/>
  249. <Cell row="2" col="13" text="현금"/>
  250. <Cell row="2" col="14" text="공용"/>
  251. <Cell row="2" col="15" text="소계"/>
  252. <Cell row="2" col="16" text="성의"/>
  253. <Cell row="2" col="17" text="성모"/>
  254. <Cell row="2" col="18" text="의정부"/>
  255. <Cell row="2" col="19" text="부천"/>
  256. <Cell row="2" col="20" text="기타"/>
  257. <Cell row="2" col="21" text="소계"/>
  258. <Cell row="2" col="23" text="현금"/>
  259. <Cell row="2" col="24" text="공용"/>
  260. <Cell row="2" col="25" text="소계"/>
  261. <Cell row="2" col="26" text="성의"/>
  262. <Cell row="2" col="27" text="성모"/>
  263. <Cell row="2" col="28" text="의정부"/>
  264. <Cell row="2" col="29" text="부천"/>
  265. <Cell row="2" col="30" text="기타"/>
  266. <Cell row="2" col="31" text="소계"/>
  267. </Band>
  268. <Band id="body">
  269. <Cell celltype="head" expr="currow + 1"/>
  270. <Cell col="1" text="bind:appdd"/>
  271. <Cell col="2" displaytype="text" style="align:center middle;" text="bind:appmmdd" mask="##-##" maskchar=" "/>
  272. <Cell col="3" displaytype="number" edittype="text" text="bind:psnno1"/>
  273. <Cell col="4" displaytype="number" edittype="text" text="bind:psnno2"/>
  274. <Cell col="5" displaytype="number" text="bind:insum1"/>
  275. <Cell col="6" displaytype="number" edittype="text" text="bind:psnno3"/>
  276. <Cell col="7" displaytype="number" edittype="text" text="bind:psnno4"/>
  277. <Cell col="8" displaytype="number" edittype="text" text="bind:psnno5"/>
  278. <Cell col="9" displaytype="number" edittype="text" text="bind:psnno6"/>
  279. <Cell col="10" displaytype="number" edittype="text" text="bind:psnno7"/>
  280. <Cell col="11" displaytype="number" text="bind:outsum1"/>
  281. <Cell col="12" displaytype="number" text="bind:sum1"/>
  282. <Cell col="13" displaytype="number" edittype="text" text="bind:psnno8"/>
  283. <Cell col="14" displaytype="number" edittype="text" text="bind:psnno9"/>
  284. <Cell col="15" displaytype="number" text="bind:insum2"/>
  285. <Cell col="16" displaytype="number" edittype="text" text="bind:psnno10"/>
  286. <Cell col="17" displaytype="number" edittype="text" text="bind:psnno11"/>
  287. <Cell col="18" displaytype="number" edittype="text" text="bind:psnno12"/>
  288. <Cell col="19" displaytype="number" edittype="text" text="bind:psnno13"/>
  289. <Cell col="20" displaytype="number" edittype="text" text="bind:psnno14"/>
  290. <Cell col="21" displaytype="number" text="bind:outsum2"/>
  291. <Cell col="22" displaytype="number" text="bind:sum2"/>
  292. <Cell col="23" displaytype="number" edittype="text" text="bind:psnno15"/>
  293. <Cell col="24" displaytype="number" edittype="text" text="bind:psnno16"/>
  294. <Cell col="25" displaytype="number" text="bind:insum3"/>
  295. <Cell col="26" displaytype="number" edittype="text" text="bind:psnno17"/>
  296. <Cell col="27" displaytype="number" edittype="text" text="bind:psnno18"/>
  297. <Cell col="28" displaytype="number" edittype="text" text="bind:psnno19"/>
  298. <Cell col="29" displaytype="number" edittype="text" text="bind:psnno20"/>
  299. <Cell col="30" displaytype="number" edittype="text" text="bind:psnno21"/>
  300. <Cell col="31" displaytype="number" text="bind:outsum3"/>
  301. <Cell col="32" displaytype="number" text="bind:sum3"/>
  302. <Cell col="33" displaytype="number" text="bind:totalsum"/>
  303. </Band>
  304. <Band id="summary">
  305. <Cell/>
  306. <Cell col="1"/>
  307. <Cell col="2" text="계"/>
  308. <Cell col="3" style="align:right middle;" expr="expr:getSum(&quot;psnno1&quot;)"/>
  309. <Cell col="4" style="align:right middle;" expr="expr:getSum(&quot;psnno2&quot;)"/>
  310. <Cell col="5" style="align:right middle;" expr="expr:getSum(&quot;insum1&quot;)"/>
  311. <Cell col="6" style="align:right middle;" expr="expr:getSum(&quot;psnno3&quot;)"/>
  312. <Cell col="7" style="align:right middle;" expr="expr:getSum(&quot;psnno4&quot;)"/>
  313. <Cell col="8" style="align:right middle;" expr="expr:getSum(&quot;psnno5&quot;)"/>
  314. <Cell col="9" style="align:right middle;" expr="expr:getSum(&quot;psnno6&quot;)"/>
  315. <Cell col="10" style="align:right middle;" expr="expr:getSum(&quot;psnno7&quot;)"/>
  316. <Cell col="11" style="align:right middle;" expr="expr:getSum(&quot;outsum1&quot;)"/>
  317. <Cell col="12" style="align:right middle;" expr="expr:getSum(&quot;sum1&quot;)"/>
  318. <Cell col="13" style="align:right middle;" expr="expr:getSum(&quot;psnno8&quot;)"/>
  319. <Cell col="14" style="align:right middle;" expr="expr:getSum(&quot;psnno9&quot;)"/>
  320. <Cell col="15" style="align:right middle;" expr="expr:getSum(&quot;insum2&quot;)"/>
  321. <Cell col="16" style="align:right middle;" expr="expr:getSum(&quot;psnno10&quot;)"/>
  322. <Cell col="17" style="align:right middle;" expr="expr:getSum(&quot;psnno11&quot;)"/>
  323. <Cell col="18" style="align:right middle;" expr="expr:getSum(&quot;psnno12&quot;)"/>
  324. <Cell col="19" style="align:right middle;" expr="expr:getSum(&quot;psnno13&quot;)"/>
  325. <Cell col="20" style="align:right middle;" expr="expr:getSum(&quot;psnno14&quot;)"/>
  326. <Cell col="21" style="align:right middle;" expr="expr:getSum(&quot;outsum2&quot;)"/>
  327. <Cell col="22" style="align:right middle;" expr="expr:getSum(&quot;sum2&quot;)"/>
  328. <Cell col="23" style="align:right middle;" expr="expr:getSum(&quot;psnno15&quot;)"/>
  329. <Cell col="24" style="align:right middle;" expr="expr:getSum(&quot;psnno16&quot;)"/>
  330. <Cell col="25" style="align:right middle;" expr="expr:getSum(&quot;insum3&quot;)"/>
  331. <Cell col="26" style="align:right middle;" expr="expr:getSum(&quot;psnno17&quot;)"/>
  332. <Cell col="27" style="align:right middle;" expr="expr:getSum(&quot;psnno18&quot;)"/>
  333. <Cell col="28" style="align:right middle;" expr="expr:getSum(&quot;psnno19&quot;)"/>
  334. <Cell col="29" style="align:right middle;" expr="expr:getSum(&quot;psnno20&quot;)"/>
  335. <Cell col="30" style="align:right middle;" expr="expr:getSum(&quot;psnno21&quot;)"/>
  336. <Cell col="31" style="align:right middle;" expr="expr:getSum(&quot;outsum3&quot;)"/>
  337. <Cell col="32" style="align:right middle;" expr="expr:getSum(&quot;sum3&quot;)"/>
  338. <Cell col="33" style="align:right middle;" expr="expr:getSum(&quot;totalsum&quot;)"/>
  339. </Band>
  340. </Format>
  341. </Formats>
  342. </Grid>
  343. </Layout>
  344. </Layouts>
  345. </Tabpage>
  346. </Tabpages>
  347. </Tab>
  348. <Button position="absolute 1132 102 1187 121" id="btn_excel" class="btn7" text="엑셀" onclick="btn_excel_onclick"/>
  349. <Static id="caption1" text="직원식상세현황" class="tit_1" position="absolute 0 0 189 25"/>
  350. <Button id="btn_save" taborder="1" text="저장" class="btn4" position="absolute 1133 766 1189 788" onclick="btn_save_onclick"/>
  351. </Layout>
  352. </Layouts>
  353. <Objects>
  354. <Dataset id="ds_main_emplidcard_data" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  355. <ColumnInfo>
  356. <Column id="eatdd" type="STRING" size="256"/>
  357. <Column id="hngnm" type="STRING" size="256"/>
  358. <Column id="emplno" type="STRING" size="256"/>
  359. <Column id="cardid" type="STRING" size="256"/>
  360. <Column id="breakmeal" type="STRING" size="256"/>
  361. <Column id="breakmealtm" type="STRING" size="256"/>
  362. <Column id="lunchmeal" type="STRING" size="256"/>
  363. <Column id="lunchmealtm" type="STRING" size="256"/>
  364. <Column id="dinnermeal" type="STRING" size="256"/>
  365. <Column id="dinnermealtm" type="STRING" size="256"/>
  366. </ColumnInfo>
  367. <Rows>
  368. <Row>
  369. <Col id="eatdd"/>
  370. <Col id="hngnm"/>
  371. <Col id="emplno"/>
  372. <Col id="cardid"/>
  373. <Col id="breakmeal"/>
  374. <Col id="breakmealtm"/>
  375. <Col id="lunchmeal"/>
  376. <Col id="lunchmealtm"/>
  377. <Col id="dinnermeal"/>
  378. <Col id="dinnermealtm"/>
  379. </Row>
  380. </Rows>
  381. </Dataset>
  382. <Dataset id="ds_main_empletc_data" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  383. <ColumnInfo>
  384. <Column id="appdd" type="STRING" size="256"/>
  385. <Column id="appmmdd" type="STRING" size="256"/>
  386. <Column id="psnno1" type="STRING" size="256"/>
  387. <Column id="psnno2" type="STRING" size="256"/>
  388. <Column id="insum1" type="STRING" size="256"/>
  389. <Column id="psnno3" type="STRING" size="256"/>
  390. <Column id="psnno4" type="STRING" size="256"/>
  391. <Column id="psnno5" type="STRING" size="256"/>
  392. <Column id="psnno6" type="STRING" size="256"/>
  393. <Column id="psnno7" type="STRING" size="256"/>
  394. <Column id="outsum1" type="STRING" size="256"/>
  395. <Column id="sum1" type="STRING" size="256"/>
  396. <Column id="psnno8" type="STRING" size="256"/>
  397. <Column id="psnno9" type="STRING" size="256"/>
  398. <Column id="insum2" type="STRING" size="256"/>
  399. <Column id="psnno10" type="STRING" size="256"/>
  400. <Column id="psnno11" type="STRING" size="256"/>
  401. <Column id="psnno12" type="STRING" size="256"/>
  402. <Column id="psnno13" type="STRING" size="256"/>
  403. <Column id="psnno14" type="STRING" size="256"/>
  404. <Column id="outsum2" type="STRING" size="256"/>
  405. <Column id="sum2" type="STRING" size="256"/>
  406. <Column id="psnno15" type="STRING" size="256"/>
  407. <Column id="psnno16" type="STRING" size="256"/>
  408. <Column id="insum3" type="STRING" size="256"/>
  409. <Column id="psnno17" type="STRING" size="256"/>
  410. <Column id="psnno18" type="STRING" size="256"/>
  411. <Column id="psnno19" type="STRING" size="256"/>
  412. <Column id="psnno20" type="STRING" size="256"/>
  413. <Column id="psnno21" type="STRING" size="256"/>
  414. <Column id="outsum3" type="STRING" size="256"/>
  415. <Column id="sum3" type="STRING" size="256"/>
  416. <Column id="totalsum" type="STRING" size="256"/>
  417. </ColumnInfo>
  418. <Rows>
  419. <Row>
  420. <Col id="appdd"/>
  421. <Col id="appmmdd"/>
  422. <Col id="psnno1"/>
  423. <Col id="psnno2"/>
  424. <Col id="insum1"/>
  425. <Col id="psnno3"/>
  426. <Col id="psnno4"/>
  427. <Col id="psnno5"/>
  428. <Col id="psnno6"/>
  429. <Col id="psnno7"/>
  430. <Col id="outsum1"/>
  431. <Col id="sum1"/>
  432. <Col id="psnno8"/>
  433. <Col id="psnno9"/>
  434. <Col id="insum2"/>
  435. <Col id="psnno10"/>
  436. <Col id="psnno11"/>
  437. <Col id="psnno12"/>
  438. <Col id="psnno13"/>
  439. <Col id="psnno14"/>
  440. <Col id="outsum2"/>
  441. <Col id="sum2"/>
  442. <Col id="psnno15"/>
  443. <Col id="psnno16"/>
  444. <Col id="insum3"/>
  445. <Col id="psnno17"/>
  446. <Col id="psnno18"/>
  447. <Col id="psnno19"/>
  448. <Col id="psnno20"/>
  449. <Col id="psnno21"/>
  450. <Col id="outsum3"/>
  451. <Col id="sum3"/>
  452. <Col id="totalsum"/>
  453. </Row>
  454. </Rows>
  455. </Dataset>
  456. <Dataset id="ds_main_empllist_emplinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  457. <ColumnInfo>
  458. <Column id="instcd" type="STRING" size="256"/>
  459. <Column id="emplinstcd" type="STRING" size="256"/>
  460. <Column id="mealflag" type="STRING" size="256"/>
  461. <Column id="seqno" type="STRING" size="256"/>
  462. <Column id="emplno" type="STRING" size="256"/>
  463. <Column id="cardid" type="STRING" size="256"/>
  464. <Column id="eatdd" type="STRING" size="256"/>
  465. <Column id="eattm" type="STRING" size="256"/>
  466. <Column id="eatamt" type="STRING" size="256"/>
  467. <Column id="readyn" type="STRING" size="256"/>
  468. <Column id="emplflag" type="STRING" size="256"/>
  469. <Column id="usrnm" type="STRING" size="256"/>
  470. </ColumnInfo>
  471. <Rows>
  472. <Row>
  473. <Col id="instcd"/>
  474. <Col id="emplinstcd"/>
  475. <Col id="mealflag"/>
  476. <Col id="seqno"/>
  477. <Col id="emplno"/>
  478. <Col id="cardid"/>
  479. <Col id="eatdd"/>
  480. <Col id="eattm"/>
  481. <Col id="eatamt"/>
  482. <Col id="readyn"/>
  483. <Col id="emplflag"/>
  484. <Col id="usrnm"/>
  485. </Row>
  486. </Rows>
  487. </Dataset>
  488. <Dataset id="ds_send_searchitem" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  489. <ColumnInfo>
  490. <Column id="eatfromdd" type="STRING" size="256"/>
  491. <Column id="eattodd" type="STRING" size="256"/>
  492. <Column id="mealflag" type="STRING" size="256"/>
  493. <Column id="hngnm" type="STRING" size="256"/>
  494. <Column id="emplno" type="STRING" size="256"/>
  495. <Column id="yyyymm" type="STRING" size="256"/>
  496. </ColumnInfo>
  497. <Rows>
  498. <Row>
  499. <Col id="eatfromdd"/>
  500. <Col id="eattodd"/>
  501. <Col id="mealflag"/>
  502. <Col id="hngnm"/>
  503. <Col id="emplno"/>
  504. <Col id="yyyymm"/>
  505. </Row>
  506. </Rows>
  507. </Dataset>
  508. <Dataset id="ds_send_data_empletc" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  509. <Dataset id="ds_send_data1_emplinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  510. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  511. <Dataset id="ds_init_basecode_meal_A0055" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  512. <ColumnInfo>
  513. <Column id="cdid" type="STRING" size="256"/>
  514. <Column id="cdnm" type="STRING" size="256"/>
  515. </ColumnInfo>
  516. <Rows>
  517. <Row>
  518. <Col id="cdid"/>
  519. <Col id="cdnm"/>
  520. </Row>
  521. </Rows>
  522. </Dataset>
  523. </Objects>
  524. <Bind>
  525. <BindItem id="item0" compid="switch1.case1.group2.ipt_eatfromdd" propid="value" datasetid="ds_send_searchitem" columnid="eatfromdd"/>
  526. <BindItem id="item1" compid="switch1.case1.group2.ipt_eattodd" propid="value" datasetid="ds_send_searchitem" columnid="eattodd"/>
  527. <BindItem id="item2" compid="switch1.case1.group2.rdo_mealflag" propid="value" datasetid="ds_send_searchitem" columnid="mealflag"/>
  528. <BindItem id="item3" compid="switch1.case1.group2.ipt_hngnm" propid="value" datasetid="ds_send_searchitem" columnid="hngnm"/>
  529. <BindItem id="item4" compid="switch1.case1.group2.ipt_emplno" propid="value" datasetid="ds_send_searchitem" columnid="emplno"/>
  530. <BindItem id="item5" compid="switch1.case2.group3.ipt_yyyymm" propid="value" datasetid="ds_send_searchitem" columnid="yyyymm"/>
  531. </Bind>
  532. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  533. * System Name :
  534. * Job Name :
  535. * Creator :
  536. * Make Date : 2015-11-13
  537. * Description :
  538. *---------------------------------------------------------------------------------------
  539. * Modify Date Modifier Modify Description
  540. *---------------------------------------------------------------------------------------
  541. * 2015-11-13 Live Converter TF->XP
  542. *
  543. *---------------------------------------------------------------------------------------
  544. ****************************************************************************************/
  545. include "com_commonxp::comm_main.xjs";
  546. var arErrorCode = new HashArray();
  547. function SMANT02600_oninit(obj:Form, e:InitEventInfo)
  548. {
  549. frmf_initForm(obj); //폼 초기화
  550. }
  551. function SMANT02600_onload(obj:Form, e:LoadEventInfo)
  552. {
  553. finit();
  554. switch1.case1.group2.btn_search1.enable = frmf_checkAuth("R");
  555. switch1.case2.group3.btn_search2.enable = frmf_checkAuth("R");
  556. btn_save.enable = frmf_checkAuth("X");
  557. btn_excel.enable = frmf_checkAuth("P");
  558. btn_save.visible = false;
  559. }
  560. //초기화
  561. function finit() {
  562. // 화면open시 공통코드 setting
  563. var arrParam = [{dsNm: "ds_init_basecode_meal_A0055", cdGrpId: "A0055"}]
  564. appf_getCodeList(arrParam);
  565. ds_send_searchitem.setColumn(0, "eatfromdd", utlf_getCurrentDate());
  566. ds_send_searchitem.setColumn(0, "eattodd", utlf_getCurrentDate());
  567. ds_send_searchitem.setColumn(0, "mealflag", "-");
  568. ds_send_searchitem.setColumn(0, "yyyymm", utlf_getCurrentDate().substr(0,6));
  569. ds_send_data1_emplinfo.clearData();
  570. ds_main_emplidcard_data.clearData();
  571. ds_main_empletc_data.clearData();
  572. switch1.tabindex = 0;
  573. }
  574. function switch1_onchanged(obj:Tab, e:TabIndexChangeEventInfo)
  575. {
  576. if(switch1.tabindex == 0){
  577. btn_save.visible = false;
  578. }else if(switch1.tabindex == 1){
  579. btn_save.visible = true;
  580. }
  581. }
  582. function switch1_case1_group2_ipt_hngnm_onkeydown(obj:Edit, e:KeyEventInfo)
  583. {
  584. if(e.keycode == 13){
  585. switch1_case1_group2_btn_search1_onclick();
  586. }
  587. }
  588. function switch1_case1_group2_ipt_emplno_onkeydown(obj:Edit, e:KeyEventInfo)
  589. {
  590. if(e.keycode == 13){
  591. switch1_case1_group2_btn_search1_onclick();
  592. }
  593. }
  594. function switch1_case1_group2_btn_search1_onclick(obj:Button, e:ClickEventInfo)
  595. {
  596. var fromdd = ds_send_searchitem.getColumn(0, "eatfromdd");
  597. var todd = ds_send_searchitem.getColumn(0, "eattodd");
  598. if (utlf_getDateInterval(fromdd, todd) < 0) {
  599. sysf_messageBox("조회 시작일은 종료일보다 클 수", "I004");
  600. return;
  601. } else {
  602. var oParam = {};
  603. oParam.id = "TRANT02601";
  604. oParam.service = "dietsumapp.DietSum";
  605. oParam.method = "reqGetEmplDietDetl";
  606. oParam.inds = "req=ds_send_searchitem";
  607. oParam.outds = "ds_main_emplidcard_data=ret";
  608. oParam.async = false;
  609. tranf_submit(oParam);
  610. }
  611. }
  612. function switch1_case1_button1_onclick(obj:Button, e:ClickEventInfo)
  613. {
  614. var fromdd = ds_send_searchitem.getColumn(0, "eatfromdd");
  615. var todd = ds_send_searchitem.getColumn(0, "eattodd");
  616. if (utlf_getDateInterval(fromdd, todd) < 0) {
  617. sysf_messageBox("조회 시작일은 종료일보다 클 수", "I004");
  618. return;
  619. } else {
  620. ds_main_empllist_emplinfo.clearData();
  621. var oParam = {};
  622. oParam.id = "TRANT02603";
  623. oParam.service = "dietsumapp.DietSum";
  624. oParam.method = "reqGetEmplDiet";
  625. oParam.inds = "req=ds_send_searchitem";
  626. oParam.outds = "ds_main_empllist_emplinfo=emplinfo";
  627. oParam.async = false;
  628. oParam.callback = "cf_TRANT02603";
  629. tranf_submit(oParam);
  630. if (arErrorCode.pop("TRANT02603") > -1){
  631. var updateData = grdf_getGridUpdateData(switch1.case1.datagrid1, "insert");
  632. ds_send_data1_emplinfo.copyData(updateData, true);
  633. var oParam = {};
  634. oParam.id = "TXANT02602";
  635. oParam.service = "dietsumapp.DietSum";
  636. oParam.method = "reqExeEmplDiet";
  637. oParam.inds = "req=ds_send_searchitem req1=ds_send_data1_emplinfo";
  638. oParam.outds = "";
  639. oParam.async = false;
  640. tranf_submit(oParam);
  641. var oParam = {};
  642. oParam.id = "TRANT02601";
  643. oParam.service = "dietsumapp.DietSum";
  644. oParam.method = "reqGetEmplDietDetl";
  645. oParam.inds = "req=ds_send_searchitem";
  646. oParam.outds = "ds_main_emplidcard_data=ret";
  647. oParam.async = false;
  648. tranf_submit(oParam);
  649. }
  650. }
  651. }
  652. function cf_TRANT02603(sSvcId, nErrorCode, sErrorMsg) {
  653. arErrorCode.push(sSvcId, nErrorCode);
  654. }
  655. function btn_excel_onclick(obj:Button, e:ClickEventInfo)
  656. {
  657. if ( switch1.tabindex == 0 ) {
  658. grdf_exportExcel(switch1.case1.grd_emplidcard, "직원식ID카드현황" + utlf_getCurrentDate(), "sheetname1" , true, "" , "" , true);
  659. } else if ( switch1.tabindex == 1 ) {
  660. grdf_exportExcel(switch1.case2.grd_empletc, "직원식기타현황" + utlf_getCurrentDate(), "sheetname1" , true, "" , "" , true);
  661. }
  662. }
  663. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  664. {
  665. var temp = grdf_getGridUpdateData(switch1.case2.grd_empletc);
  666. if ( temp.rowcount == 0) {
  667. sysf_messageBox("저장할 데이터가", "I004");
  668. return;
  669. } else {
  670. if ( sysf_messageBox("", "Q002") == 6 ) {
  671. ds_send_data_empletc.copyData(temp, true);
  672. var oParam = {};
  673. oParam.id = "TXANT02601";
  674. oParam.service = "dietsumapp.DietSum";
  675. oParam.method = "reqExeEmplDietEtc";
  676. oParam.inds = "req=ds_send_data_empletc";
  677. oParam.outds = "";
  678. oParam.async = false;
  679. tranf_submit(oParam);
  680. switch1_case2_group3_btn_search2_onclick();//저장후 재조회
  681. } else { return; }
  682. }
  683. }
  684. function switch1_case2_group3_btn_search2_onclick(obj:Button, e:ClickEventInfo)
  685. {
  686. if (utlf_isValidDateTime(ds_send_searchitem.getColumn(0, "yyyymm"), "YYYYMM") == false) {
  687. sysf_messageBox("조회년월의 형식이", "E016");
  688. switch1.case2.group3.ipt_yyyymm.setFocus();
  689. return;
  690. }
  691. else {
  692. var oParam = {};
  693. oParam.id = "TRANT02602";
  694. oParam.service = "dietsumapp.DietSum";
  695. oParam.method = "reqGetEmplDietEtc";
  696. oParam.inds = "req=ds_send_searchitem";
  697. oParam.outds = "ds_main_empletc_data=ret";
  698. oParam.async = false;
  699. tranf_submit(oParam);
  700. //row status가 null이기 때문에 무조건 'insert'로 초기화
  701. ds_main_empletc_data.enableevent = false;
  702. ds_main_empletc_data.updatecontrol = false;
  703. if(utlf_isNull(ds_main_empletc_data.getColumnInfo("insum1"))){
  704. ds_main_empletc_data.addColumn("insum1", "string");
  705. ds_main_empletc_data.addColumn("outsum1", "string");
  706. ds_main_empletc_data.addColumn("sum1", "string");
  707. ds_main_empletc_data.addColumn("insum2", "string");
  708. ds_main_empletc_data.addColumn("outsum2", "string");
  709. ds_main_empletc_data.addColumn("sum2", "string");
  710. ds_main_empletc_data.addColumn("insum3", "string");
  711. ds_main_empletc_data.addColumn("outsum3", "string");
  712. ds_main_empletc_data.addColumn("sum3", "string");
  713. ds_main_empletc_data.addColumn("totalsum", "string");
  714. }
  715. for (var i = 0; i < ds_main_empletc_data.rowcount; i++) {
  716. ds_main_empletc_data.setRowType(i, 2);
  717. }
  718. ds_main_empletc_data.updatecontrol = true;
  719. ds_main_empletc_data.enableevent = true;
  720. fsum(); //소계,합계,총계 구하기
  721. //grd_empletc.subtotalPosition = "below";
  722. // for (var i = 3; i <= 33; i++) {
  723. // grd_empletc.subtotal("sum", -1, i, "#,###", "", 2, "계");
  724. // }
  725. }
  726. }
  727. function fsum() {
  728. var val = 0;
  729. var temp = 0;
  730. var sum = 0;
  731. var totalsum = 0;
  732. for (var i = 0; i < ds_main_empletc_data.rowcount; i++) {
  733. //조식
  734. for (var k = 1; k <= 7; k++) {
  735. val = ds_main_empletc_data.getColumn(i, "psnno" + k);
  736. if (eval(val) > 0) {
  737. temp = parseInt(temp) + parseInt(val);
  738. }
  739. if (k == 2) {
  740. ds_main_empletc_data.setColumn(i, "insum1", temp);
  741. sum = sum + temp;
  742. temp = 0;
  743. } else if (k == 7) {
  744. ds_main_empletc_data.setColumn(i, "outsum1", temp);
  745. ds_main_empletc_data.setColumn(i, "sum1", sum + temp);
  746. totalsum = totalsum + sum + temp;
  747. }
  748. }
  749. temp = 0;
  750. sum = 0;
  751. //중식
  752. for (var k = 8; k <= 14; k++) {
  753. val = ds_main_empletc_data.getColumn(i, "psnno" + k);
  754. if (val > 0) {
  755. temp = parseInt(temp) + parseInt(val);
  756. }
  757. if (k == 9) {
  758. ds_main_empletc_data.setColumn(i, "insum2", temp);
  759. sum = sum + temp;
  760. temp = 0;
  761. } else if (k == 14) {
  762. ds_main_empletc_data.setColumn(i, "outsum2", temp);
  763. ds_main_empletc_data.setColumn(i, "sum2", sum + temp);
  764. totalsum = totalsum + sum + temp;
  765. }
  766. }
  767. temp = 0;
  768. sum = 0;
  769. //석식
  770. for (var k = 15; k <= 21; k++) {
  771. val = ds_main_empletc_data.getColumn(i, "psnno" + k);
  772. if (val > 0) {
  773. temp = parseInt(temp) + parseInt(val);
  774. }
  775. if (k == 16) {
  776. ds_main_empletc_data.setColumn(i, "insum3", temp);
  777. sum = sum + temp;
  778. temp = 0;
  779. } else if (k == 21) {
  780. ds_main_empletc_data.setColumn(i, "outsum3", temp);
  781. ds_main_empletc_data.setColumn(i, "sum3", sum + temp);
  782. totalsum = totalsum + sum + temp;
  783. }
  784. }
  785. temp = 0;
  786. sum = 0;
  787. ds_main_empletc_data.setColumn(i, "totalsum", totalsum);
  788. totalsum = 0;
  789. }
  790. }
  791. function switch1_case2_group3_ipt_yyyymm_onkeydown(obj:MaskEdit, e:KeyEventInfo)
  792. {
  793. if(e.keycode == 13){
  794. switch1_case2_group3_btn_search2_onclick();
  795. }
  796. }
  797. function switch1_case2_group3_btn_before_onclick(obj:Button, e:ClickEventInfo)
  798. {
  799. var dd = ds_send_searchitem.getColumn(0, "yyyymm") + "01";
  800. dd = dd.toDate().getAddDate(-1, "M");
  801. dd = dd.getDateFormat("YYYYMM");
  802. ds_send_searchitem.setColumn(0, "yyyymm", dd);
  803. }
  804. function switch1_case2_group3_btn_next_onclick(obj:Button, e:ClickEventInfo)
  805. {
  806. var dd = ds_send_searchitem.getColumn(0, "yyyymm") + "01";
  807. dd = dd.toDate().getAddDate(1, "M");
  808. dd = dd.getDateFormat("YYYYMM");
  809. ds_send_searchitem.setColumn(0, "yyyymm", dd);
  810. }
  811. ]]></Script>
  812. </Form>
  813. </FDL>