SMANT00600_상차림현황.xfdl 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMANT00600" position="absolute 0 0 1200 790" titletext="상차림현황" oninit="SMANT00600_oninit" onload="SMANT00600_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 14 1195 758" id="grp_biz" scrollbars="autoboth">
  8. <Layouts>
  9. <Layout>
  10. <Div position="absolute 0 10 1194 45" align="align:center top;" id="grp_sea" class="div_SA" anchor="default">
  11. <Layouts>
  12. <Layout>
  13. <Static text="일자 :" position="absolute 71 9 125 26" id="caption2" class="search_name" anchor="default"/>
  14. <Shape position="absolute 1097 6 1103 28" linetype="vertical" id="line13" class="line_4" anchor="default"/>
  15. <Button position="absolute 223 10 236 25" id="btn_beforedd" class="icon_pre" text="" anchor="default" onclick="grp_biz_grp_sea_btn_beforedd_onclick"/>
  16. <Button position="absolute 236 10 249 25" id="btn_nextdd" class="icon_next" text="" anchor="default" onclick="grp_biz_grp_sea_btn_nextdd_onclick"/>
  17. <Calendar position="absolute 127 8 215 27" id="ipt_appdd" class="input_search" autoselect="true" anchor="default"/>
  18. <Button position="absolute 1118 7 1174 29" id="btn_search" class="btn1" text="조회" anchor="default" onclick="grp_biz_grp_sea_btn_search_onclick"/>
  19. <Static text="끼니 :" position="absolute 321 9 371 26" id="caption4" class="search_name" anchor="default"/>
  20. <Radio position="absolute 373 8 520 27" id="rdo_mealflag" class="radio_search" columncount="3" rowcount="1" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  21. <Dataset id="innerdataset">
  22. <ColumnInfo>
  23. <Column id="codecolumn"/>
  24. <Column id="datacolumn"/>
  25. </ColumnInfo>
  26. <Rows>
  27. <Row>
  28. <Col id="codecolumn">1</Col>
  29. <Col id="datacolumn">조식</Col>
  30. </Row>
  31. <Row>
  32. <Col id="codecolumn">2</Col>
  33. <Col id="datacolumn">중식</Col>
  34. </Row>
  35. <Row>
  36. <Col id="codecolumn">3</Col>
  37. <Col id="datacolumn">석식</Col>
  38. </Row>
  39. </Rows>
  40. </Dataset>
  41. </Radio>
  42. <Static text="분류 :" position="absolute 540 9 590 26" id="caption1" class="search_name" anchor="default"/>
  43. <Combo position="absolute 590 8 725 27" id="cmb_dietmdlcd" class="combo_s_essential" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  44. <Dataset id="innerdataset">
  45. <ColumnInfo>
  46. <Column id="codecolumn"/>
  47. <Column id="datacolumn"/>
  48. </ColumnInfo>
  49. <Rows>
  50. <Row>
  51. <Col id="codecolumn">04</Col>
  52. <Col id="datacolumn">당뇨식</Col>
  53. </Row>
  54. <Row>
  55. <Col id="codecolumn">05</Col>
  56. <Col id="datacolumn">신장질환식</Col>
  57. </Row>
  58. <Row>
  59. <Col id="codecolumn">06</Col>
  60. <Col id="datacolumn">간장질환식</Col>
  61. </Row>
  62. <Row>
  63. <Col id="codecolumn">07</Col>
  64. <Col id="datacolumn">위장질환식</Col>
  65. </Row>
  66. <Row>
  67. <Col id="codecolumn">08</Col>
  68. <Col id="datacolumn">심혈관질환식</Col>
  69. </Row>
  70. <Row>
  71. <Col id="codecolumn">09</Col>
  72. <Col id="datacolumn">경장영양식</Col>
  73. </Row>
  74. <Row>
  75. <Col id="codecolumn">10</Col>
  76. <Col id="datacolumn">기타치료식</Col>
  77. </Row>
  78. <Row>
  79. <Col id="codecolumn">11</Col>
  80. <Col id="datacolumn">검사식</Col>
  81. </Row>
  82. <Row>
  83. <Col id="codecolumn">12</Col>
  84. <Col id="datacolumn">멸균식</Col>
  85. </Row>
  86. <Row>
  87. <Col id="codecolumn">13</Col>
  88. <Col id="datacolumn">비급여식</Col>
  89. </Row>
  90. </Rows>
  91. </Dataset>
  92. </Combo>
  93. </Layout>
  94. </Layouts>
  95. </Div>
  96. <Tab position="absolute 0 49 1194 744" id="switch2" anchor="default" onchanged="grp_biz_switch2_onchanged" tabindex="3">
  97. <Tabpages>
  98. <Tabpage text="일반식" id="case1">
  99. <Layouts>
  100. <Layout>
  101. <Grid position="absolute 0 0 1192 668" id="grd_gnrlmeal" binddataset="ds_main_gnrlmeal" anchor="default">
  102. <Formats>
  103. <Format id="default">
  104. <Columns>
  105. <Column size="20" band="left"/>
  106. <Column size="0"/>
  107. <Column size="0"/>
  108. <Column size="150"/>
  109. <Column size="150"/>
  110. <Column size="150"/>
  111. <Column size="150"/>
  112. <Column size="150"/>
  113. </Columns>
  114. <Rows>
  115. <Row size="24" band="head"/>
  116. <Row size="24"/>
  117. </Rows>
  118. <Band id="head">
  119. <Cell/>
  120. <Cell col="1" text="일자"/>
  121. <Cell col="2" text="끼니"/>
  122. <Cell col="3" text="구분"/>
  123. <Cell col="4" text="A"/>
  124. <Cell col="5" text="B"/>
  125. <Cell col="6" text="C"/>
  126. <Cell col="7" text="D"/>
  127. </Band>
  128. <Band id="body">
  129. <Cell celltype="head" expr="expr:currow + 1"/>
  130. <Cell col="1" text="bind:appdd"/>
  131. <Cell col="2" text="bind:mealflag"/>
  132. <Cell col="3" style="align:left;" text="bind:gnrlflag"/>
  133. <Cell col="4" text="bind:acount"/>
  134. <Cell col="5" text="bind:bcount"/>
  135. <Cell col="6" text="bind:ccount"/>
  136. <Cell col="7" text="bind:dcount"/>
  137. </Band>
  138. </Format>
  139. </Formats>
  140. </Grid>
  141. </Layout>
  142. </Layouts>
  143. </Tabpage>
  144. <Tabpage text="치료식찬" id="case2">
  145. <Layouts>
  146. <Layout>
  147. <Grid position="absolute 0 0 1192 668" id="grd_curesidemeal" binddataset="ds_main_curesidemeal" anchor="default">
  148. <Formats>
  149. <Format id="default">
  150. <Columns>
  151. <Column size="20" band="left"/>
  152. <Column size="0"/>
  153. <Column size="0"/>
  154. <Column size="0"/>
  155. <Column size="100"/>
  156. <Column size="0"/>
  157. <Column size="150"/>
  158. <Column size="80"/>
  159. <Column size="80"/>
  160. <Column size="80"/>
  161. <Column size="80"/>
  162. <Column size="80"/>
  163. <Column size="80"/>
  164. <Column size="200"/>
  165. </Columns>
  166. <Rows>
  167. <Row size="24" band="head"/>
  168. <Row size="24" band="head"/>
  169. <Row size="24"/>
  170. </Rows>
  171. <Band id="head">
  172. <Cell rowspan="2" taborder="undefined"/>
  173. <Cell col="1" rowspan="2" text="적용일자" taborder="undefined"/>
  174. <Cell col="2" rowspan="2" text="끼니" taborder="undefined"/>
  175. <Cell col="3" rowspan="2" text="식단구분" taborder="undefined"/>
  176. <Cell col="4" rowspan="2" text="구분" taborder="undefined"/>
  177. <Cell col="5" text="식단코드"/>
  178. <Cell col="6" rowspan="2" text="식단명" taborder="undefined"/>
  179. <Cell col="7" colspan="6" text="염분기준식수" taborder="undefined"/>
  180. <Cell col="13" rowspan="2" text="비고" taborder="undefined"/>
  181. <Cell row="1" col="5" text="식단코드"/>
  182. <Cell row="1" col="7" text="당뇨"/>
  183. <Cell row="1" col="8" text="당뇨다진"/>
  184. <Cell row="1" col="9" text="경저염"/>
  185. <Cell row="1" col="10" text="경저염다진"/>
  186. <Cell row="1" col="11" text="저염"/>
  187. <Cell row="1" col="12" text="저염다진"/>
  188. </Band>
  189. <Band id="body">
  190. <Cell celltype="head" expr="expr:currow + 1"/>
  191. <Cell col="1" text="bind:appdd"/>
  192. <Cell col="2" text="bind:mealflag"/>
  193. <Cell col="3" text="bind:menuflag"/>
  194. <Cell col="4" text="bind:dishtableflag"/>
  195. <Cell col="5" text="bind:dishcd"/>
  196. <Cell col="6" text="bind:dishnm"/>
  197. <Cell col="7" displaytype="text" edittype="text" text="bind:psnno1"/>
  198. <Cell col="8" displaytype="text" edittype="text" text="bind:psnno2"/>
  199. <Cell col="9" displaytype="text" edittype="text" text="bind:psnno3"/>
  200. <Cell col="10" displaytype="text" edittype="text" text="bind:psnno4"/>
  201. <Cell col="11" displaytype="text" edittype="text" text="bind:psnno5"/>
  202. <Cell col="12" displaytype="text" edittype="text" text="bind:psnno6"/>
  203. <Cell col="13" displaytype="text" edittype="text" text="bind:remark"/>
  204. </Band>
  205. </Format>
  206. </Formats>
  207. </Grid>
  208. </Layout>
  209. </Layouts>
  210. </Tabpage>
  211. <Tabpage text="치료식주식" id="case3">
  212. <Layouts>
  213. <Layout>
  214. <Grid position="absolute 0 0 322 255" align="align:center middle;" id="grd_curericemeal" binddataset="ds_main_curericemeal" anchor="default">
  215. <Formats>
  216. <Format id="default">
  217. <Columns>
  218. <Column size="20" band="left"/>
  219. <Column size="0"/>
  220. <Column size="0"/>
  221. <Column size="100"/>
  222. <Column size="100"/>
  223. <Column size="100"/>
  224. </Columns>
  225. <Rows>
  226. <Row size="24" band="head"/>
  227. <Row size="22"/>
  228. </Rows>
  229. <Band id="head">
  230. <Cell/>
  231. <Cell col="1" text="일자"/>
  232. <Cell col="2" text="끼니"/>
  233. <Cell col="3" text="밥량(g)"/>
  234. <Cell col="4" text="흰밥"/>
  235. <Cell col="5" text="잡곡밥"/>
  236. </Band>
  237. <Band id="body">
  238. <Cell celltype="head" expr="expr:currow + 1"/>
  239. <Cell col="1" text="bind:appdd"/>
  240. <Cell col="2" text="bind:mealflag"/>
  241. <Cell col="3" text="bind:riceflag"/>
  242. <Cell col="4" text="bind:whiterice"/>
  243. <Cell col="5" text="bind:mixrice"/>
  244. </Band>
  245. </Format>
  246. </Formats>
  247. </Grid>
  248. <Grid position="absolute 500 0 822 186" align="align:center middle;" id="grd_curegruelmeal" binddataset="ds_main_curegruelmeal" anchor="default">
  249. <Formats>
  250. <Format id="default">
  251. <Columns>
  252. <Column size="20" band="left"/>
  253. <Column size="0"/>
  254. <Column size="0"/>
  255. <Column size="100"/>
  256. <Column size="100"/>
  257. <Column size="100"/>
  258. </Columns>
  259. <Rows>
  260. <Row size="24" band="head"/>
  261. <Row size="22"/>
  262. </Rows>
  263. <Band id="head">
  264. <Cell/>
  265. <Cell col="1" text="일자"/>
  266. <Cell col="2" text="끼니"/>
  267. <Cell col="3" text="죽량(g)"/>
  268. <Cell col="4" text="흰죽"/>
  269. <Cell col="5" text="기타죽"/>
  270. </Band>
  271. <Band id="body">
  272. <Cell celltype="head" expr="expr:currow + 1"/>
  273. <Cell col="1" text="bind:appdd"/>
  274. <Cell col="2" text="bind:mealflag"/>
  275. <Cell col="3" text="bind:gruelflag"/>
  276. <Cell col="4" text="bind:whitegruel"/>
  277. <Cell col="5" text="bind:etcgruel"/>
  278. </Band>
  279. </Format>
  280. </Formats>
  281. </Grid>
  282. </Layout>
  283. </Layouts>
  284. </Tabpage>
  285. <Tabpage text="치료식" id="case4">
  286. <Layouts>
  287. <Layout>
  288. <Grid position="absolute 0 0 1192 668" id="grd_curemeal" binddataset="ds_main2_curemeal_rows" anchor="default">
  289. <Formats>
  290. <Format id="default">
  291. <Columns>
  292. <Column size="40"/>
  293. <Column size="50"/>
  294. <Column size="100"/>
  295. </Columns>
  296. <Rows>
  297. <Row size="35" band="head"/>
  298. <Row size="24" band="head"/>
  299. <Row size="24"/>
  300. </Rows>
  301. <Band id="head">
  302. <Cell rowspan="2" text="끼니" taborder="undefined"/>
  303. <Cell col="1" rowspan="2" text="구분" taborder="undefined"/>
  304. <Cell col="2" rowspan="2" text="식단" taborder="undefined"/>
  305. </Band>
  306. <Band id="body">
  307. <Cell displaytype="combo" text="bind:mealflag" suppress="1" suppressalign="middle,over" combodataset="ds_init_basecode_meal_A0055" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  308. <Cell col="1" style="align:left;" text="bind:dishtablenm" suppress="1" suppressalign="middle,over"/>
  309. <Cell col="2" style="align:left;" text="bind:dishnm"/>
  310. </Band>
  311. </Format>
  312. </Formats>
  313. </Grid>
  314. </Layout>
  315. </Layouts>
  316. </Tabpage>
  317. </Tabpages>
  318. </Tab>
  319. <Button position="absolute 1142 50 1191 69" id="btn_excel" class="btn7" text="엑셀" anchor="default" onclick="grp_biz_btn_excel_onclick"/>
  320. </Layout>
  321. </Layouts>
  322. </Div>
  323. <Div position="absolute 0 758 1195 785" id="grp_btn">
  324. <Layouts>
  325. <Layout>
  326. <Button position="absolute 5 5 61 27" id="btn_print" class="btn6" text="출력" onclick="grp_btn_btn_print_onclick"/>
  327. <Button position="absolute 1060 5 1128 27" id="btn_reset" class="btn4" visible="false" text="초기화" onclick="grp_btn_btn_reset_onclick"/>
  328. <Button position="absolute 1133 5 1189 27" id="btn_save" class="btn4" visible="false" text="저장"/>
  329. <Button position="absolute 70 5 151 27" id="button1" class="btn6" visible="false" text="신규출력" onclick="grp_btn_button1_onclick"/>
  330. </Layout>
  331. </Layouts>
  332. </Div>
  333. <Static id="caption6" text="상차림현황" class="tit_1" position="absolute 0 0 100 24"/>
  334. </Layout>
  335. </Layouts>
  336. <Objects>
  337. <Dataset id="ds_main2_curemeal_rows" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  338. <ColumnInfo>
  339. <Column id="mealflag" type="STRING"/>
  340. <Column id="dishtablenm" type="STRING"/>
  341. <Column id="dishnm" type="STRING"/>
  342. </ColumnInfo>
  343. </Dataset>
  344. <Dataset id="ds_send_searchitem" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  345. <ColumnInfo>
  346. <Column id="appdd" type="STRING" size="256" sumtext="적용일자"/>
  347. <Column id="menuflag" type="STRING" size="256" sumtext="식사구분"/>
  348. <Column id="mealflag" type="STRING" size="256" sumtext="끼니구분"/>
  349. <Column id="dietmdlcd" type="STRING" size="256"/>
  350. </ColumnInfo>
  351. <Rows>
  352. <Row/>
  353. </Rows>
  354. </Dataset>
  355. <Dataset id="ds_main_gnrlmeal" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  356. <ColumnInfo>
  357. <Column id="appdd" type="STRING" size="256" sumtext="적용일자"/>
  358. <Column id="mealflag" type="STRING" size="256" sumtext="끼니구분"/>
  359. <Column id="gnrlflag" type="STRING" size="256" sumtext="일반식구분"/>
  360. <Column id="acount" type="STRING" size="256" sumtext="Acount"/>
  361. <Column id="bcount" type="STRING" size="256" sumtext="Bcount"/>
  362. <Column id="ccount" type="STRING" size="256" sumtext="Ccount"/>
  363. <Column id="dcount" type="STRING" size="256" sumtext="Dcount"/>
  364. </ColumnInfo>
  365. </Dataset>
  366. <Dataset id="ds_main_curesidemeal" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  367. <ColumnInfo>
  368. <Column id="appdd" type="STRING" size="256" sumtext="적용일자"/>
  369. <Column id="mealflag" type="STRING" size="256" sumtext="끼니구분"/>
  370. <Column id="menuflag" type="STRING" size="256" sumtext="식단구분"/>
  371. <Column id="dishtableflag" type="STRING" size="256" sumtext="식단표분류"/>
  372. <Column id="dishcd" type="STRING" size="256" sumtext="식단코드"/>
  373. <Column id="dishnm" type="STRING" size="256" sumtext="식단명"/>
  374. <Column id="psnno1" type="STRING" size="256" sumtext="당뇨식수"/>
  375. <Column id="psnno2" type="STRING" size="256" sumtext="당뇨다진식수"/>
  376. <Column id="psnno3" type="STRING" size="256" sumtext="경저염식수"/>
  377. <Column id="psnno4" type="STRING" size="256" sumtext="경저염다진식수"/>
  378. <Column id="psnno5" type="STRING" size="256" sumtext="저염식수"/>
  379. <Column id="psnno6" type="STRING" size="256" sumtext="저염다진식수"/>
  380. <Column id="remark" type="STRING" size="256" sumtext="비고"/>
  381. </ColumnInfo>
  382. </Dataset>
  383. <Dataset id="ds_main_curericemeal" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  384. <ColumnInfo>
  385. <Column id="appdd" type="STRING" size="256" sumtext="적용일자"/>
  386. <Column id="mealflag" type="STRING" size="256" sumtext="끼니구분"/>
  387. <Column id="riceflag" type="STRING" size="256" sumtext="밥량구분"/>
  388. <Column id="whiterice" type="STRING" size="256" sumtext="흰밥식수"/>
  389. <Column id="mixrice" type="STRING" size="256" sumtext="잡곡밥식수"/>
  390. </ColumnInfo>
  391. </Dataset>
  392. <Dataset id="ds_main_curegruelmeal" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  393. <ColumnInfo>
  394. <Column id="appdd" type="STRING" size="256" sumtext="적용일자"/>
  395. <Column id="mealflag" type="STRING" size="256" sumtext="끼니구분"/>
  396. <Column id="gruelflag" type="STRING" size="256" sumtext="죽량구분"/>
  397. <Column id="whitegruel" type="STRING" size="256" sumtext="흰죽식수"/>
  398. <Column id="etcgruel" type="STRING" size="256" sumtext="기타죽식수"/>
  399. </ColumnInfo>
  400. </Dataset>
  401. <Dataset id="ds_temp_curemeal_header" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  402. <ColumnInfo>
  403. <Column id="dietcd" type="STRING" size="256"/>
  404. <Column id="dietnm" type="STRING" size="256"/>
  405. <Column id="mealcalrcnts" type="STRING" size="256"/>
  406. <Column id="columnid" type="STRING" size="256"/>
  407. </ColumnInfo>
  408. </Dataset>
  409. <Dataset id="ds_temp_curemeal_rows" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  410. <ColumnInfo>
  411. <Column id="mealflag" type="STRING" size="256"/>
  412. <Column id="dishtableflag" type="STRING" size="256"/>
  413. <Column id="dishtablenm" type="STRING" size="256"/>
  414. <Column id="dishcd" type="STRING" size="256"/>
  415. <Column id="dishnm" type="STRING" size="256"/>
  416. <Column id="columnid" type="STRING" size="256"/>
  417. </ColumnInfo>
  418. </Dataset>
  419. <Dataset id="ds_temp_curemeal_rows2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  420. <ColumnInfo>
  421. <Column id="mealflag" type="STRING" size="256"/>
  422. <Column id="dishtableflag" type="STRING" size="256"/>
  423. <Column id="dishtablenm" type="STRING" size="256"/>
  424. <Column id="dishcd" type="STRING" size="256"/>
  425. <Column id="dishnm" type="STRING" size="256"/>
  426. <Column id="columnid" type="STRING" size="256"/>
  427. </ColumnInfo>
  428. </Dataset>
  429. <Dataset id="ds_init_basecode_meal_A0055" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  430. <ColumnInfo>
  431. <Column id="cdnm" type="STRING" size="256"/>
  432. <Column id="cdid" type="STRING" size="256"/>
  433. </ColumnInfo>
  434. </Dataset>
  435. </Objects>
  436. <Bind>
  437. <BindItem id="item0" compid="grp_biz.grp_sea.ipt_appdd" propid="value" datasetid="ds_send_searchitem" columnid="appdd"/>
  438. <BindItem id="item1" compid="grp_biz.grp_sea.rdo_mealflag" propid="value" datasetid="ds_send_searchitem" columnid="mealflag"/>
  439. <BindItem id="item2" compid="grp_biz.grp_sea.cmb_dietmdlcd" propid="value" datasetid="ds_send_searchitem" columnid="dietmdlcd"/>
  440. </Bind>
  441. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  442. * System Name : 경대 의료정보시스템
  443. * Job Name : ast_dietxp -> SMANT00600
  444. * Creator : yjh
  445. * Make Date : 2017-10-20
  446. * Description :
  447. *---------------------------------------------------------------------------------------
  448. * Modify Date Modifier Modify Description
  449. *---------------------------------------------------------------------------------------
  450. * 2017-10-20 yjh TF->XP
  451. *
  452. *---------------------------------------------------------------------------------------
  453. ****************************************************************************************/
  454. //=======================================================================================
  455. // Lib Include
  456. //---------------------------------------------------------------------------------------
  457. include "com_commonxp::comm_main.xjs";
  458. //=======================================================================================
  459. // Global Form Variable
  460. //---------------------------------------------------------------------------------------
  461. //=======================================================================================
  462. // Function
  463. //---------------------------------------------------------------------------------------
  464. //var gvGridCaption = grd_curemeal.caption;
  465. function finit() {
  466. // 화면open시 공통코드 setting
  467. var arrParam = [{dsNm: "ds_init_basecode_meal_A0055", cdGrpId: "A0055"},
  468. {dsNm: "ds_init_basecode_diettable_A0417", cdGrpId: "A0417"},
  469. {dsNm: "ds_init_basecode_dietmdlcd_A0047", cdGrpId: "A0047"}]
  470. appf_getCodeList(arrParam);
  471. //model.resetInstanceNode("/root/main");
  472. ds_send_searchitem.clearData();
  473. ds_send_searchitem.addRow();
  474. ds_main_gnrlmeal.clearData();
  475. ds_main_curesidemeal.clearData();
  476. ds_main_curericemeal.clearData();
  477. ds_main_curegruelmeal.clearData();
  478. ds_main2_curemeal_rows.clearData();
  479. //model.setFocus("ipt_pid");
  480. ds_send_searchitem.setColumn(0, "appdd", utlf_getCurrentDate());
  481. ds_send_searchitem.setColumn(0, "menuflag", "Q1");
  482. ds_send_searchitem.setColumn(0, "dietmdlcd", "04");
  483. grp_biz.switch2.tabindex = 0;
  484. //화면open시 현재시간을 계산하여 끼니 자동setting
  485. //각 끼니별 2차 마감시간으로부터 2시간후까지는 이전끼니로 setting
  486. var tm = utlf_getCurrentTime();
  487. if ( tm.substr(0,4) <= 0830 ) { //조식 2차 마감시간은 06:30
  488. //if ( tm.substr(0,4) <= 0630 ) {
  489. ds_send_searchitem.setColumn(0, "mealflag", "1");
  490. } else if ( (tm.substr(0,4) > 0830) && (tm.substr(0,4) <= 1330) ) { //중식 2차 마감시간은 11:30
  491. //} else if ( (tm.substr(0,4) > 0630) && (tm.substr(0,4) <= 1130) ) {
  492. ds_send_searchitem.setColumn(0, "mealflag", "2");
  493. } else {
  494. ds_send_searchitem.setColumn(0, "mealflag", "3");
  495. }
  496. //치료식탭 관련
  497. //var gvGridCaption = grd_curemeal.caption;
  498. // grd_curemeal.mergeByFree(0,0,1,0);
  499. // grd_curemeal.mergeByFree(0,1,1,1);
  500. // grd_curemeal.mergeByFree(0,2,1,2);
  501. grp_biz.grp_sea.btn_search.click();
  502. }
  503. //치료식 상차림 현황 : temp 노드로 조회된 치료식 상차림 데이터를 main2 노드로 이동시킨다.
  504. function fAddGridColumns() {
  505. var nodelist = ds_temp_curemeal_header;
  506. var colcnt = ds_temp_curemeal_header.rowcount;
  507. //var grdCaption = grd_curemeal.caption.split("|"); // 헤더 caption을 2줄로 분리
  508. for (var i=0; i<colcnt; i++) {
  509. var columnid = ds_temp_curemeal_header.getColumn(i, "columnid");
  510. var dietnm = utlf_transNullToEmpty(ds_temp_curemeal_header.getColumn(i, "dietnm"));
  511. var mealcalrcnts = ds_temp_curemeal_header.getColumn(i, "mealcalrcnts");
  512. var nCol = grp_biz.switch2.case4.grd_curemeal.appendContentsCol();//.addColumn("ref:"+columnid+"; type:input; text-align:center;", false);
  513. grp_biz.switch2.case4.grd_curemeal.setCellProperty("Body", nCol, "text", "bind:"+columnid);
  514. grp_biz.switch2.case4.grd_curemeal.setCellProperty("Body", nCol, "displaytype", "text");
  515. grp_biz.switch2.case4.grd_curemeal.setCellProperty("Body", nCol, "edittype", "text");
  516. grp_biz.switch2.case4.grd_curemeal.setCellProperty("Body", nCol, "align", "center");
  517. //<col ref="bcount" style="text-align:right; "/>
  518. //식사처방명이 6글자 이상일 경우 첫번째 HeaderRow 높이 늘이기
  519. if( dietnm.length >= 6 ) {
  520. var dietnmLen = Math.ceil(dietnm.length / 2);
  521. dietnm = dietnm.substr(0, dietnmLen) + "\n" + dietnm.substr(dietnmLen);;
  522. }
  523. grp_biz.switch2.case4.grd_curemeal.setCellProperty("Head", nCol, "text", dietnm);
  524. grp_biz.switch2.case4.grd_curemeal.setCellProperty("Head", nCol+grp_biz.switch2.case4.grd_curemeal.getFormatColCount()-3, "text", mealcalrcnts);
  525. // grdCaption[0] = grdCaption[0] + "^" + dietnm;
  526. // grdCaption[1] = grdCaption[1] + "^" + mealcalrcnts;
  527. }
  528. //grd_curemeal.caption= grdCaption[0] + "|" + grdCaption[1];
  529. var nMergeStart = -1;
  530. for( var i=grp_biz.switch2.case4.grd_curemeal.getFormatColCount()-2 ; i>=2 ; i-- ){
  531. if( grp_biz.switch2.case4.grd_curemeal.getCellProperty("Head", i+1, "text") == grp_biz.switch2.case4.grd_curemeal.getCellProperty("Head", i, "text") ){
  532. if( nMergeStart == -1 ){
  533. nMergeStart = i+1;
  534. }
  535. }else{
  536. if( nMergeStart != -1 ){
  537. grp_biz.switch2.case4.grd_curemeal.mergeContentsCell("head", 0, i+1, 0, nMergeStart, i+1, false);
  538. }
  539. nMergeStart = -1;
  540. }
  541. }
  542. var grdnode = ds_main2_curemeal_rows;//instance1.selectSingleNode("/root/main2");
  543. if (!utlf_isNull(this.objects["ds_main2_curemeal_rows"])) {
  544. //ds_temp_curemeal_rows.assign(ds_main2_curemeal_rows);
  545. ds_main2_curemeal_rows.assign(ds_temp_curemeal_rows);
  546. }
  547. // grd_curemeal.mergeByFree(0,0,1,0);
  548. // grd_curemeal.mergeByFree(0,1,1,1);
  549. // grd_curemeal.mergeByFree(0,2,1,2);
  550. }
  551. //치료식 상차림 현황 : 치료식 그리드(grd_curemeal) 초기화
  552. function fInitGridColumns() {
  553. var cols = grp_biz.switch2.case4.grd_curemeal.getFormatColCount();
  554. for (var i=(cols-1); i>=3; i--) {
  555. grp_biz.switch2.case4.grd_curemeal.deleteContentsCol(i);
  556. }
  557. ds_main2_curemeal_rows.clearData();
  558. //grd_curemeal.caption = gvGridCaption;
  559. }
  560. //탭화면별로 컨트롤을 숨기거나 보이기
  561. function fvisible(str) {
  562. //일반식,치료식찬,치료식주식일 경우
  563. if ( str == '1' ) {
  564. //조회조건중 끼니 보임.
  565. grp_biz.grp_sea.caption4.visible = true;
  566. grp_biz.grp_sea.rdo_mealflag.visible = true;
  567. //조회조건중 분류 숨김.
  568. grp_biz.grp_sea.caption1.visible = false;
  569. grp_biz.grp_sea.cmb_dietmdlcd.visible = false;
  570. //엑셀버튼 숨김.
  571. grp_biz.btn_excel.visible = false;
  572. //출력버튼 보임.
  573. grp_btn.btn_print.visible = true;
  574. }
  575. //치료식일 경우
  576. else if ( str == '2' ) {
  577. //조회조건중 끼니 숨김.
  578. grp_biz.grp_sea.caption4.visible = false;
  579. grp_biz.grp_sea.rdo_mealflag.visible = false;
  580. //조회조건중 분류 보임.
  581. grp_biz.grp_sea.caption1.visible = true;
  582. grp_biz.grp_sea.cmb_dietmdlcd.visible = true;
  583. //엑셀버튼 보임.
  584. grp_biz.btn_excel.visible = true;
  585. //출력버튼 숨김.
  586. grp_btn.btn_print.visible = false;
  587. }
  588. }
  589. //=======================================================================================
  590. // Event
  591. //---------------------------------------------------------------------------------------
  592. /****************************************************************************************
  593. * Components : Form
  594. * Components ID : SMANT00600
  595. * Event : oninit
  596. * Argument : 01.obj : Object Event has occurred
  597. * : 02.e : Event Object
  598. * Description : 화면 처음 초기화시
  599. ****************************************************************************************/
  600. function SMANT00600_oninit(obj:Form, e:InitEventInfo)
  601. {
  602. frmf_initForm(obj); //폼 초기화
  603. }
  604. /****************************************************************************************
  605. * Components : Form
  606. * Components ID : SMANT00600
  607. * Event : onload
  608. * Argument : 01.obj : Object Event has occurred
  609. * : 02.e : Event Object
  610. * Description : 화면 로딩 완료시
  611. ****************************************************************************************/
  612. function SMANT00600_onload(obj:Form, e:LoadEventInfo)
  613. {
  614. finit();
  615. grp_biz.grp_sea.btn_search.enable = frmf_checkAuth("R");
  616. }
  617. /****************************************************************************************
  618. * Components : Button
  619. * Components ID : btn_beforedd
  620. * Event : onclick
  621. * Argument : 01.obj : Object Event has occurred
  622. * : 02.e : Event Object
  623. * Description : <버튼 클릭시
  624. ****************************************************************************************/
  625. function grp_biz_grp_sea_btn_beforedd_onclick(obj:Button, e:ClickEventInfo)
  626. {
  627. var dd = ds_send_searchitem.getColumn(0, "appdd");
  628. dd = dd.toDate().getAddDate(-1, "D");
  629. dd = dd.getDateFormat();
  630. ds_send_searchitem.setColumn(0, "appdd", dd);
  631. }
  632. /****************************************************************************************
  633. * Components : Button
  634. * Components ID : btn_nextdd
  635. * Event : onclick
  636. * Argument : 01.obj : Object Event has occurred
  637. * : 02.e : Event Object
  638. * Description : >버튼 클릭시
  639. ****************************************************************************************/
  640. function grp_biz_grp_sea_btn_nextdd_onclick(obj:Button, e:ClickEventInfo)
  641. {
  642. var dd = ds_send_searchitem.getColumn(0, "appdd");
  643. dd = dd.toDate().getAddDate(1, "D");
  644. dd = dd.getDateFormat();
  645. ds_send_searchitem.setColumn(0, "appdd", dd);
  646. }
  647. /****************************************************************************************
  648. * Components : Button
  649. * Components ID : btn_search
  650. * Event : onclick
  651. * Argument : 01.obj : Object Event has occurred
  652. * : 02.e : Event Object
  653. * Description : 조회버튼 클릭시
  654. ****************************************************************************************/
  655. function grp_biz_grp_sea_btn_search_onclick(obj:Button, e:ClickEventInfo)
  656. {
  657. var oParam = {};
  658. oParam.id = "TRANT00601";
  659. oParam.service = "dietsumapp.DietSum";
  660. oParam.method = "reqGetTableSet";
  661. oParam.inds = "req=ds_send_searchitem";
  662. oParam.outds = "ds_main_gnrlmeal=gnrlmeal ds_main_curesidemeal=curesidemeal ds_main_curericemeal=curericemeal ds_main_curegruelmeal=curegruelmeal";
  663. oParam.async = false;
  664. //oParam.callback = "cf_TRANT00601";
  665. tranf_submit(oParam);
  666. ds_main2_curemeal_rows.clearData();
  667. fInitGridColumns();
  668. if ( grp_biz.switch2.tabindex == 3 ) {
  669. fInitGridColumns();
  670. var oParam = {};
  671. oParam.id = "TRANT00602";
  672. oParam.service = "dietsumapp.DietSum";
  673. oParam.method = "reqGetCureTableSet";
  674. oParam.inds = "req=ds_send_searchitem";
  675. oParam.outds = "ds_temp_curemeal_header=header ds_temp_curemeal_rows=rows ds_temp_curemeal_rows2=rows2";
  676. oParam.async = false;
  677. //oParam.callback = "cf_TRANT00602";
  678. tranf_submit(oParam);
  679. for( var i=0 ; i<ds_temp_curemeal_rows2.rowcount ; i++ ){
  680. var sColNM = ds_temp_curemeal_rows2.getColumn(i, "columnid");
  681. if( utlf_isNull(ds_temp_curemeal_rows.getColumnInfo(sColNM)) ){
  682. ds_temp_curemeal_rows.addColumn(sColNM, "string");
  683. }
  684. var nRow = ds_temp_curemeal_rows.findRowExpr("mealflag=='"+ds_temp_curemeal_rows2.getColumn(i, "mealflag")+"' && dishtablenm=='"+ds_temp_curemeal_rows2.getColumn(i, "dishtablenm")+"' && dishnm=='"+ds_temp_curemeal_rows2.getColumn(i, "dishnm")+"'");
  685. ds_temp_curemeal_rows.setColumn(nRow, sColNM, ds_temp_curemeal_rows2.getColumn(i, "psncnt"));
  686. }
  687. fAddGridColumns();
  688. //첫번째 HeaderRow 높이 늘이기
  689. //grd_curemeal.rowHeight(0) = 35;
  690. //colWidth이 기본 100 이므로 70 으로 줄이기
  691. for( var i = 3; i < grp_biz.switch2.case4.grd_curemeal.getFormatColCount(); i++ ) {
  692. grp_biz.switch2.case4.grd_curemeal.setFormatColProperty(i, "size", 70);
  693. }
  694. //grd_curemeal.resizeCells();
  695. }
  696. }
  697. /****************************************************************************************
  698. * Components : Tab
  699. * Components ID : switch2
  700. * Event : onchanged
  701. * Argument : 01.obj : Object Event has occurred
  702. * : 02.e : Event Object
  703. * Description : 탭 변경시
  704. ****************************************************************************************/
  705. function grp_biz_switch2_onchanged(obj:Tab, e:TabIndexChangeEventInfo)
  706. {
  707. switch( e.postindex ){
  708. case 0 :
  709. fvisible('1'); //탭화면별로 컨트롤을 숨기거나 보이기
  710. break;
  711. case 1 :
  712. fvisible('1'); //탭화면별로 컨트롤을 숨기거나 보이기
  713. break;
  714. case 2 :
  715. fvisible('1'); //탭화면별로 컨트롤을 숨기거나 보이기
  716. break;
  717. case 3 :
  718. fvisible('2'); //탭화면별로 컨트롤을 숨기거나 보이기
  719. break;
  720. default :
  721. break;
  722. }
  723. }
  724. /****************************************************************************************
  725. * Components : Button
  726. * Components ID : btn_excel
  727. * Event : onclick
  728. * Argument : 01.obj : Object Event has occurred
  729. * : 02.e : Event Object
  730. * Description : 엑셀버튼 클릭시
  731. ****************************************************************************************/
  732. function grp_biz_btn_excel_onclick(obj:Button, e:ClickEventInfo)
  733. {
  734. //치료식 탭화면일때
  735. if ( grp_biz.switch2.tabindex == 3 ) {
  736. if ( ds_main2_curemeal_rows.rowcount > 0 ) {
  737. grdf_exportExcel(grp_biz.switch2.case4.grd_curemeal, "치료식상차림현황", "grd_curemeal", false, "", "user", false);
  738. } else {
  739. sysf_messageBox("엑셀로 저장할 데이터가", "I004")
  740. return;
  741. }
  742. }
  743. }
  744. /****************************************************************************************
  745. * Components : Button
  746. * Components ID : btn_print
  747. * Event : onclick
  748. * Argument : 01.obj : Object Event has occurred
  749. * : 02.e : Event Object
  750. * Description : 출력버튼 클릭시
  751. ****************************************************************************************/
  752. function grp_btn_btn_print_onclick(obj:Button, e:ClickEventInfo)
  753. {
  754. //일반식 탭화면일때
  755. if ( grp_biz.switch2.tabindex == 0 ) {
  756. var objDOM = rptf_createDOM(); // DOM 객체 설정
  757. rptf_setNodeListToDOM(objDOM, "root/main/gnrlmeal", ds_main_gnrlmeal); // 데이터셋
  758. rptf_setNodeListToDOM(objDOM, "root/send/searchitem", ds_send_searchitem); // 데이터셋
  759. var objParam = new Object();
  760. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  761. var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
  762. rptf_exeReportPreview30(["RPANT00601"],[objParam], option);
  763. }
  764. //치료식찬 탭화면일때
  765. else if ( grp_biz.switch2.tabindex == 1 ) {
  766. if ( ds_main_curesidemeal.rowcount > 0 ) {
  767. var objDOM = rptf_createDOM(); // DOM 객체 설정
  768. rptf_setNodeListToDOM(objDOM, "root/main/curesidemeal", ds_main_curesidemeal); // 데이터셋
  769. rptf_setNodeListToDOM(objDOM, "root/send/searchitem", ds_send_searchitem); // 데이터셋
  770. var objParam = new Object();
  771. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  772. var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
  773. rptf_exeReportPreview30(["RPANT00602"],[objParam], option);
  774. } else {
  775. sysf_messageBox("치료식찬 출력할 데이터가", "I004")
  776. return;
  777. }
  778. }
  779. //치료식주식 탭화면일때
  780. else if ( grp_biz.switch2.tabindex == 2 ) {
  781. var objDOM = rptf_createDOM(); // DOM 객체 설정
  782. rptf_setNodeListToDOM(objDOM, "root/main/curericemeal", ds_main_curericemeal); // 데이터셋
  783. rptf_setNodeListToDOM(objDOM, "root/send/searchitem", ds_send_searchitem); // 데이터셋
  784. rptf_setNodeListToDOM(objDOM, "root/main/curegruelmeal", ds_main_curegruelmeal); // 데이터셋
  785. var objDOM2 = rptf_createDOM(); // DOM 객체 설정
  786. rptf_setNodeListToDOM(objDOM2, "root/main/curericemeal", ds_main_curericemeal); // 데이터셋
  787. rptf_setNodeListToDOM(objDOM2, "root/send/searchitem", ds_send_searchitem); // 데이터셋
  788. var objParam = new Object();
  789. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  790. objParam.xml_data_XML2 = objDOM2.documentElement.source; // 최상의노드 XML 스트링 추출
  791. var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
  792. rptf_exeReportPreview30(["RPANT00603"],[objParam], option);
  793. //exeReportPreview("RPANT00604", "XMLSTR", "/root/main");
  794. }
  795. //치료식 탭화면일때
  796. else if ( grp_biz.switch2.tabindex == 3 ) {
  797. sysf_messageBox("치료식 출력은 엑셀로 처리", "I008");
  798. return;
  799. }
  800. }
  801. /****************************************************************************************
  802. * Components : Button
  803. * Components ID : btn_reset
  804. * Event : onclick
  805. * Argument : 01.obj : Object Event has occurred
  806. * : 02.e : Event Object
  807. * Description : 초기화버튼 클릭시
  808. ****************************************************************************************/
  809. function grp_btn_btn_reset_onclick(obj:Button, e:ClickEventInfo)
  810. {
  811. finit();
  812. }
  813. /****************************************************************************************
  814. * Components : Button
  815. * Components ID : button1
  816. * Event : onclick
  817. * Argument : 01.obj : Object Event has occurred
  818. * : 02.e : Event Object
  819. * Description : 신규출력버튼 클릭시
  820. ****************************************************************************************/
  821. function grp_btn_button1_onclick(obj:Button, e:ClickEventInfo)
  822. {
  823. //일반식 탭화면일때
  824. if ( btn_gnrlmeal.selected ) {
  825. // exeReportPreview("RPANT00601", "XMLSTR", "/root/main");
  826. //추가수정 함
  827. exeReportPreview("RPANT00605", "XMLSTR", "/root/main");
  828. }
  829. //치료식찬 탭화면일때
  830. else if ( btn_curesidemeal.selected ) {
  831. if ( grd_curesidemeal.rows-2 > 0 ) {
  832. exeReportPreview("RPANT00602", "XMLSTR", "/root/main");
  833. } else {
  834. messageBox("치료식찬 출력할 데이터가", "I004")
  835. return;
  836. }
  837. }
  838. //치료식주식 탭화면일때
  839. else if ( btn_curemainmeal.selected ) {
  840. exeReportPreview("RPANT00603", "XMLSTR", "/root/main");
  841. //exeReportPreview("RPANT00604", "XMLSTR", "/root/main");
  842. }
  843. //치료식 탭화면일때
  844. else if ( btn_curemeal.selected ) {
  845. messageBox("치료식 출력은 엑셀로 처리", "I008");
  846. return;
  847. }
  848. }
  849. ]]></Script>
  850. </Form>
  851. </FDL>