SMRSO24000_적정재고량설정(정량보충).xfdl 46 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRSO24000" position="absolute 0 0 1200 790" titletext="적정재고량등록(부서재고)" oninit="SMRSO24000_oninit" onload="SMRSO24000_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="부서별 적정재고량등록" class="tit_1" position="absolute 0 0 305 23"/>
  8. <Shape id="line17" onclick="group1_line17_onclick" class="line_6" position="absolute 0 45 1195 51" anchor="left top right"/>
  9. <Button id="btn_save" taborder="1" text="저장" class="btn4" position="absolute 1138 24 1194 46" anchor="top right" onclick="btn_save_onclick"/>
  10. <Div id="grp_search" taborder="2" class="div_SA" position="absolute 0 49 1195 85" anchor="left top right">
  11. <Layouts>
  12. <Layout>
  13. <Shape id="line30" linetype="vertical" class="line_4" position="absolute 1112 6 1118 31" anchor="top right"/>
  14. <Button id="btn_mngtdeptcd" taborder="13" class="icon_search" position="absolute 487 9 503 25" onclick="grp_search_btn_mngtdeptcd_onclick"/>
  15. <Combo id="cmb_instcd" taborder="14" innerdataset="@ds_main_init" codecolumn="cnstcd" datacolumn="cnstnm" class="combo_default" enable="false" position="absolute 117 9 253 28"/>
  16. <Static id="caption20" text="관리부서:" class="search_name" position="absolute 295 10 376 27"/>
  17. <Static id="caption2" text="진행상태 :" class="search_name" position="absolute 682 11 764 28"/>
  18. <Static id="cap_instcd" text="기관코드:" class="search_name" position="absolute 33 9 119 26"/>
  19. <Edit id="ipt_mngtdeptcd" taborder="15" class="input_default" position="absolute 380 9 485 28" autoselect="true" autoskip="true" onkeydown="grp_search_ipt_mngtdeptcd_onkeydown"/>
  20. <Button id="btn_search" taborder="16" text="조회" class="btn1" position="absolute 1129 7 1185 29" anchor="top right" onclick="grp_search_btn_search_onclick"/>
  21. <Combo id="cmb_status" taborder="17" codecolumn="codecolumn" datacolumn="datacolumn" class="combo_default" position="absolute 765 10 901 29" onitemchanged="grp_search_cmb_status_onitemchanged">
  22. <Dataset id="innerdataset">
  23. <ColumnInfo>
  24. <Column id="codecolumn"/>
  25. <Column id="datacolumn"/>
  26. </ColumnInfo>
  27. <Rows>
  28. <Row>
  29. <Col id="codecolumn">0</Col>
  30. <Col id="datacolumn">전체</Col>
  31. </Row>
  32. <Row>
  33. <Col id="codecolumn">1</Col>
  34. <Col id="datacolumn">신청</Col>
  35. </Row>
  36. <Row>
  37. <Col id="codecolumn">2</Col>
  38. <Col id="datacolumn">부서승인</Col>
  39. </Row>
  40. <Row>
  41. <Col id="codecolumn">3</Col>
  42. <Col id="datacolumn">물류승인</Col>
  43. </Row>
  44. <Row>
  45. <Col id="codecolumn">4</Col>
  46. <Col id="datacolumn">승인불허</Col>
  47. </Row>
  48. <Row>
  49. <Col id="codecolumn">5</Col>
  50. <Col id="datacolumn">부서미승인</Col>
  51. </Row>
  52. <Row>
  53. <Col id="codecolumn">6</Col>
  54. <Col id="datacolumn">물류미승인</Col>
  55. </Row>
  56. </Rows>
  57. </Dataset>
  58. </Combo>
  59. <Edit id="opt_mngtdeptnm" taborder="18" readonly="true" position="absolute 505 9 661 28" class="output"/>
  60. <Static id="caption35" text="불용코드 :" class="search_name" position="absolute 945 11 1036 28"/>
  61. <CheckBox id="chk_acptyn" taborder="19" position="absolute 1029 6 1049 31" truevalue="Y" falsevalue="N"/>
  62. </Layout>
  63. </Layouts>
  64. </Div>
  65. <Shape id="line1" class="line_10" position="absolute 0 110 1195 116" anchor="left top right"/>
  66. <Static id="caption1" text="출고내역" class="tit_2" position="absolute 0 94 180 115"/>
  67. <Button id="button2" taborder="3" text="부서재고" class="btn2" position="absolute 1022 91 1086 110" anchor="top right" onclick="button2_onclick"/>
  68. <Button id="button3" taborder="4" text="전체삭제" class="btn2" visible="false" position="absolute 155 91 219 110" onclick="button3_onclick"/>
  69. <Button id="btn_deptaprv" taborder="5" text="일괄부서승인" class="btn2" position="absolute 934 91 1020 110" anchor="top right" onclick="btn_deptaprv_onclick"/>
  70. <Button id="btn_del" taborder="6" text="행삭제" class="btn2" position="absolute 1142 91 1195 110" anchor="top right" onclick="btn_del_onclick"/>
  71. <Button id="btn_insert" taborder="7" text="행추가" class="btn2" position="absolute 1088 91 1141 110" anchor="top right" onclick="btn_insert_onclick"/>
  72. <Grid id="grd_prprtystoclist" class="datagrid2" taborder="8" binddataset="ds_main_prprtystoc_prprtystoclist" autoenter="select" useinputpanel="false" cellsizingtype="col" position="absolute 0 115 1195 782" anchor="all" onexpanddown="grd_prprtystoclist_onexpanddown" oncellclick="grd_prprtystoclist_oncellclick" oncelldblclick="grd_prprtystoclist_oncelldblclick" onkeydown="grd_prprtystoclist_onkeydown">
  73. <Formats>
  74. <Format id="default">
  75. <Columns>
  76. <Column size="26"/>
  77. <Column size="0"/>
  78. <Column size="0"/>
  79. <Column size="103"/>
  80. <Column size="0"/>
  81. <Column size="90"/>
  82. <Column size="92"/>
  83. <Column size="301"/>
  84. <Column size="158"/>
  85. <Column size="55"/>
  86. <Column size="67"/>
  87. <Column size="57"/>
  88. <Column size="91"/>
  89. <Column size="90"/>
  90. <Column size="73"/>
  91. <Column size="52"/>
  92. <Column size="60"/>
  93. <Column size="70"/>
  94. <Column size="60"/>
  95. <Column size="70"/>
  96. <Column size="0"/>
  97. </Columns>
  98. <Rows>
  99. <Row size="24" band="head"/>
  100. <Row size="24"/>
  101. </Rows>
  102. <Band id="head">
  103. <Cell/>
  104. <Cell col="1" text="기관코드"/>
  105. <Cell col="2" text="사용여부"/>
  106. <Cell col="3" text="부서명"/>
  107. <Cell col="4" text="부서코드"/>
  108. <Cell col="5" text="창고구분"/>
  109. <Cell col="6" text="물품코드"/>
  110. <Cell col="7" text="물품명"/>
  111. <Cell col="8" text="규격"/>
  112. <Cell col="9" text="단위"/>
  113. <Cell col="10" text="주당사용량"/>
  114. <Cell col="11" text="재고주기"/>
  115. <Cell col="12" text="현재적정재고량"/>
  116. <Cell col="13" text="변경적정재고량"/>
  117. <Cell col="14" text="진행상태"/>
  118. <Cell col="15" text="신청자"/>
  119. <Cell col="16" text="부서승인"/>
  120. <Cell col="17" text="부서승인자"/>
  121. <Cell col="18" text="물류승인"/>
  122. <Cell col="19" text="물류승인자"/>
  123. <Cell col="20" text="모드"/>
  124. </Band>
  125. <Band id="body">
  126. <Cell celltype="head"/>
  127. <Cell col="1" text="bind:instcd"/>
  128. <Cell col="2" displaytype="combo" edittype="combo" text="bind:useflag"/>
  129. <Cell col="3" text="bind:dutunitnm"/>
  130. <Cell col="4" text="bind:mngtdeptcd"/>
  131. <Cell col="5" displaytype="combo" edittype="combo" text="bind:wareflag" combodataset="ds_cmb_wareflag" combocodecol="value" combodatacol="label"/>
  132. <Cell col="6" displaytype="text" edittype="text" text="bind:goodcd" editautoselect="true" expandshow="show" enable="false"/>
  133. <Cell col="7" text="bind:goodnm"/>
  134. <Cell col="8" text="bind:goodspec"/>
  135. <Cell col="9" text="bind:purcunit"/>
  136. <Cell col="10" text="bind:weekqty"/>
  137. <Cell col="11" displaytype="combo" edittype="combo" text="bind:stocunit" combodataset="ds_cmb_stocunit" combocodecol="value" combodatacol="label"/>
  138. <Cell col="12" displaytype="number" edittype="none" text="bind:pptstocqty"/>
  139. <Cell col="13" displaytype="number" edittype="none" text="bind:pptreqqty"/>
  140. <Cell col="14" displaytype="combo" edittype="combo" text="bind:status" combodataset="ds_cmb_status" combocodecol="value" combodatacol="label" enable="false"/>
  141. <Cell col="15" text="bind:reqid"/>
  142. <Cell col="16" displaytype="combo" edittype="combo" text="bind:deptaprvyn" combodataset="ds_cmb_deptaprvyn" combocodecol="value" combodatacol="label"/>
  143. <Cell col="17" text="bind:deptaprvid"/>
  144. <Cell col="18" displaytype="combo" edittype="combo" text="bind:cmfyn" combodataset="ds_cmb_cmfyn" combocodecol="value" combodatacol="label"/>
  145. <Cell col="19" text="bind:cmfid"/>
  146. <Cell col="20" text="bind:flag"/>
  147. </Band>
  148. </Format>
  149. </Formats>
  150. </Grid>
  151. <Button id="btn_cmf" taborder="9" text="일괄물류승인" class="btn2" position="absolute 846 91 932 110" anchor="top right" onclick="btn_cmf_onclick"/>
  152. <Static id="caption10" text="저장 시 관련 버튼 클릭 후 반드시 저장 버튼 클릭" position="absolute 400 89 710 109" style="background:#ffff99ff;border:1 solid black ;color:#ff0000ff;font:Dotum,9,bold;"/>
  153. <Button id="btn_useflag" taborder="10" text="불용" class="btn2" position="absolute 803 91 845 110" anchor="top right" onclick="btn_useflag_onclick"/>
  154. </Layout>
  155. </Layouts>
  156. <Objects>
  157. <Dataset id="ds_send_search" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_send_search_oncolumnchanged">
  158. <ColumnInfo>
  159. <Column id="instcd" type="STRING" size="256"/>
  160. <Column id="mngtdeptcd" type="STRING" size="256"/>
  161. <Column id="mngtdeptnm" type="STRING" size="256"/>
  162. <Column id="status" type="STRING" size="256"/>
  163. <Column id="flag" type="STRING" size="256"/>
  164. <Column id="emplno" type="STRING" size="256"/>
  165. <Column id="useflag" type="STRING" size="256"/>
  166. </ColumnInfo>
  167. <Rows>
  168. <Row>
  169. <Col id="instcd"/>
  170. <Col id="mngtdeptcd"/>
  171. <Col id="mngtdeptnm"/>
  172. <Col id="status">0</Col>
  173. <Col id="flag"/>
  174. <Col id="emplno"/>
  175. <Col id="useflag"/>
  176. </Row>
  177. </Rows>
  178. </Dataset>
  179. <Dataset id="ds_main_prprtystoc_prprtystoclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_prprtystoc_prprtystoclist_oncolumnchanged">
  180. <ColumnInfo>
  181. <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
  182. <Column id="useflag" type="STRING" size="256" sumtext="불용여부"/>
  183. <Column id="mngtdeptcd" type="STRING" size="256" sumtext="부서코드"/>
  184. <Column id="dutunitnm" type="STRING" size="256" sumtext="부서명"/>
  185. <Column id="goodcd" type="STRING" size="256" sumtext="물품코드"/>
  186. <Column id="goodnm" type="STRING" size="256" sumtext="물품명"/>
  187. <Column id="goodspec" type="STRING" size="256" sumtext="물품규격"/>
  188. <Column id="purcunit" type="STRING" size="256" sumtext="물품단위"/>
  189. <Column id="wareflag" type="STRING" size="256" sumtext="창고구분"/>
  190. <Column id="pptstocqty" type="STRING" size="256" sumtext="적정재고량"/>
  191. <Column id="pptreqqty" type="STRING" size="256" sumtext="적정청구량"/>
  192. <Column id="weekqty" type="STRING" size="256" sumtext="주당사용량"/>
  193. <Column id="stocunit" type="STRING" size="256" sumtext="재고주기"/>
  194. <Column id="status" type="STRING" size="256" sumtext="진행상태"/>
  195. <Column id="reqid" type="STRING" size="256" sumtext="신청자명"/>
  196. <Column id="deptaprvyn" type="STRING" size="256" sumtext="부서과장승인여부"/>
  197. <Column id="deptaprvid" type="STRING" size="256" sumtext="부서과장승인자명"/>
  198. <Column id="deptaprvdd" type="STRING" size="256" sumtext="부서과장승인일자"/>
  199. <Column id="cmfyn" type="STRING" size="256" sumtext="물류승인여부"/>
  200. <Column id="cmfid" type="STRING" size="256" sumtext="물류승인자명"/>
  201. <Column id="cmfdd" type="STRING" size="256" sumtext="물류승인일자"/>
  202. <Column id="flag" type="STRING" size="256" sumtext="저장모드"/>
  203. </ColumnInfo>
  204. </Dataset>
  205. <Dataset id="ds_main_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  206. <ColumnInfo>
  207. <Column id="cnstnm" type="STRING" size="256"/>
  208. <Column id="cnstcd" type="STRING" size="256"/>
  209. </ColumnInfo>
  210. </Dataset>
  211. <Dataset id="ds_cmb_useflag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  212. <ColumnInfo>
  213. <Column id="label" type="STRING" size="256"/>
  214. <Column id="value" type="STRING" size="256"/>
  215. </ColumnInfo>
  216. <Rows>
  217. <Row>
  218. <Col id="label">사용</Col>
  219. <Col id="value">Y</Col>
  220. </Row>
  221. <Row>
  222. <Col id="label">불용</Col>
  223. <Col id="value">N</Col>
  224. </Row>
  225. </Rows>
  226. </Dataset>
  227. <Dataset id="ds_cmb_wareflag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  228. <ColumnInfo>
  229. <Column id="label" type="STRING" size="256"/>
  230. <Column id="value" type="STRING" size="256"/>
  231. </ColumnInfo>
  232. <Rows>
  233. <Row>
  234. <Col id="label">물류관리창고</Col>
  235. <Col id="value">1</Col>
  236. </Row>
  237. <Row>
  238. <Col id="label">진료재료창고</Col>
  239. <Col id="value">2</Col>
  240. </Row>
  241. <Row>
  242. <Col id="label">수술재료창고</Col>
  243. <Col id="value">3</Col>
  244. </Row>
  245. <Row>
  246. <Col id="label">검사재료창고</Col>
  247. <Col id="value">4</Col>
  248. </Row>
  249. <Row>
  250. <Col id="label">진단재료창고</Col>
  251. <Col id="value">5</Col>
  252. </Row>
  253. </Rows>
  254. </Dataset>
  255. <Dataset id="ds_deptaprvyn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  256. <ColumnInfo>
  257. <Column id="flag" type="STRING" size="256"/>
  258. </ColumnInfo>
  259. </Dataset>
  260. <Dataset id="ds_cmb_stocunit" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  261. <ColumnInfo>
  262. <Column id="label" type="STRING" size="256"/>
  263. <Column id="value" type="STRING" size="256"/>
  264. </ColumnInfo>
  265. <Rows>
  266. <Row>
  267. <Col id="label">주</Col>
  268. <Col id="value">1</Col>
  269. </Row>
  270. <Row>
  271. <Col id="label">월</Col>
  272. <Col id="value">2</Col>
  273. </Row>
  274. </Rows>
  275. </Dataset>
  276. <Dataset id="ds_cmb_status" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  277. <ColumnInfo>
  278. <Column id="label" type="STRING" size="256"/>
  279. <Column id="value" type="STRING" size="256"/>
  280. </ColumnInfo>
  281. <Rows>
  282. <Row>
  283. <Col id="label">신청</Col>
  284. <Col id="value">1</Col>
  285. </Row>
  286. <Row>
  287. <Col id="label">부서승인</Col>
  288. <Col id="value">2</Col>
  289. </Row>
  290. <Row>
  291. <Col id="label">물류승인</Col>
  292. <Col id="value">3</Col>
  293. </Row>
  294. <Row>
  295. <Col id="label">승인불허</Col>
  296. <Col id="value">4</Col>
  297. </Row>
  298. <Row>
  299. <Col id="label">부서미승인</Col>
  300. <Col id="value">5</Col>
  301. </Row>
  302. <Row>
  303. <Col id="label">물류미승인</Col>
  304. <Col id="value">6</Col>
  305. </Row>
  306. </Rows>
  307. </Dataset>
  308. <Dataset id="ds_cmb_deptaprvyn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  309. <ColumnInfo>
  310. <Column id="label" type="STRING" size="256"/>
  311. <Column id="value" type="STRING" size="256"/>
  312. </ColumnInfo>
  313. <Rows>
  314. <Row>
  315. <Col id="label">미승인</Col>
  316. <Col id="value">1</Col>
  317. </Row>
  318. <Row>
  319. <Col id="label">승인</Col>
  320. <Col id="value">2</Col>
  321. </Row>
  322. </Rows>
  323. </Dataset>
  324. <Dataset id="ds_cmb_cmfyn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  325. <ColumnInfo>
  326. <Column id="label" type="STRING" size="256"/>
  327. <Column id="value" type="STRING" size="256"/>
  328. </ColumnInfo>
  329. <Rows>
  330. <Row>
  331. <Col id="label">미승인</Col>
  332. <Col id="value">1</Col>
  333. </Row>
  334. <Row>
  335. <Col id="label">승인</Col>
  336. <Col id="value">2</Col>
  337. </Row>
  338. <Row>
  339. <Col id="label">승인불허</Col>
  340. <Col id="value">3</Col>
  341. </Row>
  342. </Rows>
  343. </Dataset>
  344. <Dataset id="ds_popgood" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  345. <ColumnInfo>
  346. <Column id="instcd" type="STRING" size="256"/>
  347. <Column id="wareflag" type="STRING" size="256"/>
  348. <Column id="delivedd" type="STRING" size="256"/>
  349. <Column id="basedd" type="STRING" size="256"/>
  350. <Column id="selectyn" type="STRING" size="256"/>
  351. <Column id="goodcd" type="STRING" size="256"/>
  352. </ColumnInfo>
  353. <Rows>
  354. <Row>
  355. <Col id="instcd"/>
  356. <Col id="wareflag"/>
  357. <Col id="delivedd"/>
  358. <Col id="basedd"/>
  359. <Col id="selectyn"/>
  360. <Col id="goodcd"/>
  361. </Row>
  362. </Rows>
  363. </Dataset>
  364. <Dataset id="ds_popgood_goodlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  365. <Dataset id="ds_main_good_gooddetail" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  366. <ColumnInfo>
  367. <Column id="goodcd" type="STRING" size="256" sumtext="물품코드"/>
  368. <Column id="goodnm" type="STRING" size="256" sumtext="물품명"/>
  369. <Column id="goodspec" type="STRING" size="256" sumtext="규격"/>
  370. <Column id="deliveunit" type="STRING" size="256" sumtext="출고단위"/>
  371. <Column id="exchqty" type="STRING" size="256" sumtext="환산배수"/>
  372. <Column id="siqty" type="STRING" size="256" sumtext="시점재고"/>
  373. <Column id="hunqty" type="STRING" size="256" sumtext="현재고"/>
  374. <Column id="goodunitcost" type="STRING" size="256" sumtext="단가"/>
  375. <Column id="allsizespecid" type="STRING" size="256" sumtext="ALLSIZE"/>
  376. <Column id="purcunit" type="STRING" size="256" sumtext="입고단위"/>
  377. <Column id="mainusedeptcd" type="STRING" size="256" sumtext="주사용부서코드"/>
  378. <Column id="maincustlastsuplplce" type="STRING" size="256" sumtext="최종공급처"/>
  379. <Column id="wareflag" type="STRING" size="256" sumtext="창고구분"/>
  380. <Column id="wstyn" type="STRING" size="256" sumtext="의료폐기물 용기 여부"/>
  381. </ColumnInfo>
  382. </Dataset>
  383. <Dataset id="ds_send_weekqty" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  384. <ColumnInfo>
  385. <Column id="instcd" type="STRING" size="256"/>
  386. <Column id="goodcd" type="STRING" size="256"/>
  387. <Column id="deptcd" type="STRING" size="256"/>
  388. <Column id="delivedd" type="STRING" size="256"/>
  389. <Column id="wareflag" type="STRING" size="256"/>
  390. </ColumnInfo>
  391. <Rows>
  392. <Row>
  393. <Col id="instcd"/>
  394. <Col id="goodcd"/>
  395. <Col id="deptcd"/>
  396. <Col id="delivedd"/>
  397. <Col id="wareflag"/>
  398. </Row>
  399. </Rows>
  400. </Dataset>
  401. <Dataset id="ds_mthuse" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  402. <ColumnInfo>
  403. <Column id="weekqty" type="STRING" size="256"/>
  404. </ColumnInfo>
  405. </Dataset>
  406. <Dataset id="ds_popgoodcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  407. <ColumnInfo>
  408. <Column id="instcd" type="STRING" size="256"/>
  409. <Column id="mngtdeptcd" type="STRING" size="256"/>
  410. <Column id="goodcd" type="STRING" size="256"/>
  411. </ColumnInfo>
  412. <Rows>
  413. <Row>
  414. <Col id="instcd"/>
  415. <Col id="mngtdeptcd"/>
  416. <Col id="goodcd"/>
  417. </Row>
  418. </Rows>
  419. </Dataset>
  420. <Dataset id="ds_popdelive" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  421. <ColumnInfo>
  422. <Column id="instcd" type="STRING" size="256"/>
  423. <Column id="delivedd" type="STRING" size="256"/>
  424. <Column id="delivedeptcd" type="STRING" size="256"/>
  425. <Column id="delivedeptnm" type="STRING" size="256"/>
  426. <Column id="opener" type="STRING" size="256"/>
  427. </ColumnInfo>
  428. <Rows>
  429. <Row>
  430. <Col id="instcd"/>
  431. <Col id="delivedd"/>
  432. <Col id="delivedeptcd"/>
  433. <Col id="delivedeptnm"/>
  434. <Col id="opener"/>
  435. </Row>
  436. </Rows>
  437. </Dataset>
  438. <Dataset id="ds_popreq" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  439. <ColumnInfo>
  440. <Column id="count" type="STRING" size="256"/>
  441. </ColumnInfo>
  442. <Rows>
  443. <Row/>
  444. </Rows>
  445. </Dataset>
  446. <Dataset id="ds_popsubdata_stocklist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  447. </Objects>
  448. <Bind>
  449. <BindItem id="item0" compid="grp_search.ipt_mngtdeptcd" propid="value" datasetid="ds_send_search" columnid="mngtdeptcd"/>
  450. <BindItem id="item1" compid="grp_search.cmb_instcd" propid="value" datasetid="ds_send_search" columnid="instcd"/>
  451. <BindItem id="item2" compid="grp_search.opt_mngtdeptnm" propid="value" datasetid="ds_send_search" columnid="mngtdeptnm"/>
  452. <BindItem id="item3" compid="grp_search.cmb_status" propid="value" datasetid="ds_send_search" columnid="status"/>
  453. <BindItem id="item4" compid="grp_search.chk_acptyn" propid="value" datasetid="ds_send_search" columnid="useflag"/>
  454. </Bind>
  455. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  456. * System Name :
  457. * Job Name :
  458. * Creator :
  459. * Make Date : 2017-06-19
  460. * Description :
  461. *---------------------------------------------------------------------------------------
  462. * Modify Date Modifier Modify Description
  463. *---------------------------------------------------------------------------------------
  464. * 2017-06-19 Live Converter TF->XP
  465. *
  466. *---------------------------------------------------------------------------------------
  467. ****************************************************************************************/
  468. include "com_commonxp::comm_main.xjs";
  469. include "mis_miscommonxp::MIS.xjs";
  470. function SMRSO24000_oninit(obj:Form, e:InitEventInfo)
  471. {
  472. frmf_initForm(obj);
  473. }
  474. function SMRSO24000_onload(obj:Form, e:LoadEventInfo)
  475. {
  476. grdf_initGrid(grd_prprtystoclist);
  477. grdf_setRowTypeIcon(grd_prprtystoclist, 0);
  478. misfComboComCdList("Z0007",grp_search.cmb_instcd);
  479. var instcd = ds_send_search.getColumn(0, "instcd");
  480. if(instcd == "031")
  481. {
  482. ds_send_search.setColumn(0, "mngtdeptcd", sysf_getUserInfo("dutunitcd"));
  483. ds_send_search.setColumn(0, "mngtdeptnm", sysf_getUserInfo("dutunitnm"));
  484. }
  485. else
  486. {
  487. ds_send_search.setColumn(0, "mngtdeptcd", sysf_getUserInfo("dutplcecd"));
  488. ds_send_search.setColumn(0, "mngtdeptnm", sysf_getUserInfo("dutplcenm"));
  489. }
  490. ds_send_search.setColumn(0, "instcd", sysf_getUserInfo("dutplceinstcd"));
  491. var userid = sysf_getUserInfo("userid");
  492. ds_send_search.setColumn(0, "emplno", userid);
  493. var oParam = {};
  494. oParam.id = "TRRSO24003";
  495. oParam.service = "deliveapp.DeliveMngt";
  496. oParam.method = "reqGetDeptAprvyn";
  497. oParam.inds = "req=ds_send_search";
  498. oParam.outds = "ds_deptaprvyn=deptaprvyn";
  499. oParam.async = false;
  500. //oParam.callback = "cf_TRRSO24003";
  501. tranf_submit(oParam);
  502. var dutplcecd = sysf_getUserInfo("dutplcecd");
  503. var flagyn = ds_deptaprvyn.getColumn(0, "flag");
  504. if(dutplcecd == "4020334000" || flagyn == "Y" || userid == "MIS" || userid == "03134")
  505. {
  506. btn_cmf.enable = true;
  507. grd_prprtystoclist.setCellProperty("Body", grd_prprtystoclist.getBindCellIndex("Body", "cmfyn"), "edittype", "combo");
  508. btn_deptaprv.enable = true;
  509. grd_prprtystoclist.setCellProperty("Body", grd_prprtystoclist.getBindCellIndex("Body", "deptaprvyn"), "edittype", "combo");
  510. grp_search.btn_mngtdeptcd.enable = true;
  511. grp_search.ipt_mngtdeptcd.enable = true;
  512. }
  513. else
  514. {
  515. btn_cmf.enable = false;
  516. grd_prprtystoclist.setCellProperty("Body", grd_prprtystoclist.getBindCellIndex("Body", "cmfyn"), "edittype", "none");
  517. btn_deptaprv.enable = false;
  518. grd_prprtystoclist.setCellProperty("Body", grd_prprtystoclist.getBindCellIndex("Body", "deptaprvyn"), "edittype", "none");
  519. //grp_search.btn_mngtdeptcd.enable = false;
  520. //grp_search.ipt_mngtdeptcd.enable = false;
  521. }
  522. btn_del.enable = false;
  523. }
  524. function grp_search_ipt_mngtdeptcd_onkeydown(obj:Edit, e:KeyEventInfo)
  525. {
  526. if(e.keycode == 13)
  527. {
  528. obj.updateToDataset();
  529. }
  530. }
  531. function grp_search_btn_mngtdeptcd_onclick(obj:Button, e:ClickEventInfo)
  532. {
  533. var vOrigDeptcd = grp_search.ipt_mngtdeptcd.value;
  534. var recv_list = "mngtdeptcd,mngtdeptnm";
  535. misfOpenPopUpList("02", ds_send_search,"", recv_list);
  536. }
  537. function grp_search_cmb_status_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  538. {
  539. grp_search_btn_search_onclick();
  540. }
  541. function grp_search_btn_search_onclick(obj:Button, e:ClickEventInfo)
  542. {
  543. if(utlf_isNull(grp_search.opt_mngtdeptnm.value))
  544. {
  545. sysf_messageBox("관리부서가 선택되지 않았습니다. \n\n먼저 관리부서를 선택하십시요.", "E999", "");
  546. grp_search.ipt_mngtdeptcd.setFocus();
  547. return;
  548. }
  549. var oParam = {};
  550. oParam.id = "TRRSO24002";
  551. oParam.service = "deliveapp.DeliveMngt";
  552. oParam.method = "reqGetRscdOpstList";
  553. oParam.inds = "req=ds_send_search";
  554. oParam.outds = "ds_main_prprtystoc_prprtystoclist=prprtystoclist";
  555. oParam.async = false;
  556. //oParam.callback = "cf_TRRSO24002";
  557. tranf_submit(oParam);
  558. }
  559. function grd_prprtystoclist_onexpanddown(obj:Grid, e:GridMouseEventInfo)
  560. {
  561. ds_popgood.setColumn(0, "instcd", grp_search.cmb_instcd.value);
  562. ds_popgood.setColumn(0, "selectyn", "");
  563. var objArg = new Object();
  564. objArg.arg_ds_popdata = ds_popgood;
  565. frmf_modal("SPRSO20700", "SPRSO20700", objArg, "", "", "", "", "", "", "", "", "", "M");
  566. if(ds_popgood.getColumn(0, "selectyn") == "Y")
  567. {
  568. fGetGoodDetail();
  569. grd_prprtystoclist.setCellPos(grd_prprtystoclist.getBindCellIndex("body", "pptreqqty"));
  570. grd_prprtystoclist.showEditor(true);
  571. }
  572. }
  573. function fGetGoodDetail()
  574. {
  575. for(var k = 0; k < ds_popgood_goodlist.rowcount; k++)
  576. {
  577. var bDup = false;
  578. for(var i = 0; i < ds_main_prprtystoc_prprtystoclist.rowcount; i++)
  579. {
  580. if(ds_main_prprtystoc_prprtystoclist.getColumn(i, "goodcd") == ds_popgood_goodlist.getColumn(k, "goodcd"))
  581. {
  582. sysf_messageBox("물품코드가 중복되었습니다. [" + grd_prprtystoclist.valueMatrix(i, grd_prprtystoclist.colRef("goodcd")) + "] ", "E999", ""); //E: 경고
  583. bDup = true;
  584. continue;
  585. }
  586. }
  587. if( bDup == false )
  588. {
  589. ds_popgood.setColumn(0, "goodcd", ds_popgood_goodlist.getColumn(k, "goodcd"));
  590. var oParam = {};
  591. oParam.id = "TRRSO20104";
  592. oParam.service = "deliveapp.DeliveMngt";
  593. oParam.method = "reqGetGoodDetail";
  594. oParam.inds = "req=ds_popgood";
  595. oParam.outds = "ds_main_good_gooddetail=gooddetail";
  596. oParam.async = false;
  597. oParam.callback = "cf_TRRSO20104";
  598. tranf_submit(oParam);
  599. }
  600. }
  601. }
  602. function cf_TRRSO20104(sSvcId, nErrorCode, sErrorMsg)
  603. {
  604. if(nErrorCode < 0)
  605. {
  606. return;
  607. }
  608. else
  609. {
  610. if(!utlf_isNull(ds_main_prprtystoc_prprtystoclist.getColumn(ds_main_prprtystoc_prprtystoclist.rowcount-1, "goodcd")))
  611. {
  612. btn_insert_onclick();
  613. }
  614. ds_main_prprtystoc_prprtystoclist.setColumn(ds_main_prprtystoc_prprtystoclist.rowcount-1, "goodcd", ds_main_good_gooddetail.getColumn(0, "goodcd"));
  615. ds_main_prprtystoc_prprtystoclist.setColumn(ds_main_prprtystoc_prprtystoclist.rowcount-1, "goodnm", ds_main_good_gooddetail.getColumn(0, "goodnm"));
  616. ds_main_prprtystoc_prprtystoclist.setColumn(ds_main_prprtystoc_prprtystoclist.rowcount-1, "goodspec", ds_main_good_gooddetail.getColumn(0, "goodspec"));
  617. ds_main_prprtystoc_prprtystoclist.setColumn(ds_main_prprtystoc_prprtystoclist.rowcount-1, "purcunit", ds_main_good_gooddetail.getColumn(0, "purcunit"));
  618. ds_main_prprtystoc_prprtystoclist.setColumn(ds_main_prprtystoc_prprtystoclist.rowcount-1, "wareflag", ds_main_good_gooddetail.getColumn(0, "wareflag"));
  619. ds_main_prprtystoc_prprtystoclist.setColumn(ds_main_prprtystoc_prprtystoclist.rowcount-1, "pptstocqty", "0");
  620. ds_send_weekqty.setColumn(0, "instcd", grp_search.cmb_instcd.value);
  621. ds_send_weekqty.setColumn(0, "goodcd", ds_main_good_gooddetail.getColumn(0, "goodcd"));
  622. ds_send_weekqty.setColumn(0, "deptcd", grp_search.ipt_mngtdeptcd.value);
  623. ds_send_weekqty.setColumn(0, "delivedd", utlf_getCurrentDate());
  624. ds_send_weekqty.setColumn(0, "wareflag", ds_main_good_gooddetail.getColumn(0, "wareflag"));
  625. var oParam = {};
  626. oParam.id = "TRRSO24001";
  627. oParam.service = "deliveapp.DeliveMngt";
  628. oParam.method = "reqGetWeekQtyList";
  629. oParam.inds = "req=ds_send_weekqty";
  630. oParam.outds = "ds_mthuse=mthuse";
  631. oParam.async = false;
  632. //oParam.callback = "cf_TRRSO24001";
  633. tranf_submit(oParam);
  634. if(!utlf_isNull(ds_mthuse.getColumn(0, "weekqty")))
  635. {
  636. ds_main_prprtystoc_prprtystoclist.setColumn(ds_main_prprtystoc_prprtystoclist.rowcount-1, "weekqty", ds_mthuse.getColumn(0, "weekqty"));
  637. }
  638. else
  639. {
  640. ds_main_prprtystoc_prprtystoclist.setColumn(ds_main_prprtystoc_prprtystoclist.rowcount-1, "weekqty", "0");
  641. }
  642. }
  643. }
  644. function ds_main_prprtystoc_prprtystoclist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  645. {
  646. if(e.columnid == "pptreqqty")
  647. {
  648. var pptreqqty = obj.getColumn(e.row, "pptreqqty");
  649. var pptstocqty = obj.getColumn(e.row, "pptstocqty");
  650. if(pptreqqty != pptstocqty)
  651. {
  652. var status = obj.getColumn(e.row, "status");
  653. if(status == "2" || status == "4" || status == "6")
  654. {
  655. sysf_messageBox("승인 진행중이므로 적정재고량을 수정할 수", "I004", "");
  656. obj.setColumn(e.row, "pptreqqty", pptstocqty);
  657. obj.updatecontrol = false;
  658. obj.setRowType(e.row, "");
  659. obj.updatecontrol = true;
  660. }
  661. }
  662. if(utlf_isNull(pptreqqty))
  663. {
  664. return;
  665. }
  666. }
  667. else if(e.columnid == "deptaprvyn")
  668. {
  669. obj.setColumn(e.row, "flag", "2");
  670. }
  671. else if(e.columnid == "cmfyn")
  672. {
  673. obj.setColumn(e.row, "flag", "3");
  674. }
  675. }
  676. function grd_prprtystoclist_oncellclick(obj:Grid, e:GridClickEventInfo)
  677. {
  678. var rows = grdf_getSelectedRows(grd_prprtystoclist);
  679. if(rows.length > 0)
  680. {
  681. for( var i = 0 ; i < rows.length; i++ )
  682. {
  683. if(ds_main_prprtystoc_prprtystoclist.getColumn(rows[i], "status") == "1" || ds_main_prprtystoc_prprtystoclist.getColumn(rows[i], "status") == "5")
  684. {
  685. btn_del.enable = true;
  686. }
  687. else
  688. {
  689. btn_del.enable = false;
  690. }
  691. if(ds_main_prprtystoc_prprtystoclist.getColumn(rows[i], "useflag") == "N")
  692. {
  693. btn_useflag.enable = false;
  694. }
  695. else
  696. {
  697. btn_useflag.enable = true;
  698. }
  699. }
  700. }
  701. }
  702. function grd_prprtystoclist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  703. {
  704. var dutplcecd = sysf_getUserInfo("dutplcecd");
  705. if(e.col == 7 && dutplcecd == "4020334000")
  706. {
  707. var goodcd = ds_main_prprtystoc_prprtystoclist.getColumn(0, "goodcd");
  708. ds_popgoodcd.setColumn(0, "instcd", grp_search.cmb_instcd.value);
  709. ds_popgoodcd.setColumn(0, "mngtdeptcd", grp_search.ipt_mngtdeptcd.value);
  710. ds_popgoodcd.setColumn(0, "goodcd", goodcd);
  711. var objArg = new Object();
  712. objArg.arg_ds_popdata = ds_popgoodcd;
  713. frmf_modal("SPRSO209000", "SPRSO209000", objArg, "", "", "", "", "", "", "", "", "", "M");
  714. }
  715. }
  716. function btn_insert_onclick(obj:Button, e:ClickEventInfo)
  717. {
  718. if(utlf_isNull(grp_search.opt_mngtdeptnm.value))
  719. {
  720. sysf_messageBox("관리부서가 선택되지 않았습니다. \n\n먼저 관리부서를 선택하십시요.", "E999", "");
  721. grp_search.ipt_mngtdeptcd.setFocus();
  722. return;
  723. }
  724. var addRow = ds_main_prprtystoc_prprtystoclist.addRow();
  725. ds_main_prprtystoc_prprtystoclist.setColumn(addRow, "instcd", grp_search.cmb_instcd.value);
  726. ds_main_prprtystoc_prprtystoclist.setColumn(addRow, "mngtdeptcd", grp_search.ipt_mngtdeptcd.value);
  727. ds_main_prprtystoc_prprtystoclist.setColumn(addRow, "dutunitnm", grp_search.opt_mngtdeptnm.value);
  728. }
  729. function grd_prprtystoclist_onkeydown(obj:Grid, e:KeyEventInfo)
  730. {
  731. if(e.keycode == 13)
  732. {
  733. ds_main_prprtystoc_prprtystoclist.rowposition = ds_main_prprtystoc_prprtystoclist.rowposition+1;
  734. }
  735. }
  736. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  737. {
  738. if(utlf_isNull(grp_search.opt_mngtdeptnm.value))
  739. {
  740. sysf_messageBox("관리부서가 선택되지 않았습니다. \n\n먼저 관리부서를 선택하십시요.", "E999", "");
  741. grp_search.ipt_mngtdeptcd.setFocus();
  742. return;
  743. }
  744. for(var i = 0; i < ds_main_prprtystoc_prprtystoclist.rowcount; i++)
  745. {
  746. var dutplcecd = sysf_getUserInfo("dutplcecd");
  747. var goodcd = ds_main_prprtystoc_prprtystoclist.getColumn(i, "goodcd");
  748. var status = ds_main_prprtystoc_prprtystoclist.getColumn(i, "status");
  749. var flag = ds_main_prprtystoc_prprtystoclist.getColumn(i, "flag");
  750. var deptaprvyn = ds_main_prprtystoc_prprtystoclist.getColumn(i, "deptaprvyn");
  751. var cmfyn = ds_main_prprtystoc_prprtystoclist.getColumn(i, "cmfyn");
  752. if(dutplcecd == "4020334000")
  753. {
  754. if(flag == "3")
  755. {
  756. if((deptaprvyn != "2" && cmfyn == "2") || (deptaprvyn != "2" && cmfyn == "3"))
  757. {
  758. sysf_messageBox(i+1+"번째 [" + utlf_transNullToEmpty(ds_main_prprtystoc_prprtystoclist.getColumn(i, "goodnm")) + "]품목이 부서승인상태가 아니므로 물류승인", "E001", "");
  759. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  760. ds_main_prprtystoc_prprtystoclist.setRowType(i, "");
  761. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  762. return;
  763. }
  764. }
  765. if(deptaprvyn =="1" && cmfyn == "2")
  766. {
  767. sysf_messageBox(i+1+"번째 물류승인상태이므로 부서미승인 할 수", "I004", "");
  768. ds_main_prprtystoc_prprtystoclist.setColumn(i, "deptaprvyn", "2");
  769. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  770. ds_main_prprtystoc_prprtystoclist.setRowType(i, "");
  771. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  772. return;
  773. }
  774. if(deptaprvyn =="1" && cmfyn == "3")
  775. {
  776. sysf_messageBox(i+1+"번째 물류승인불허상태이므로 부서미승인 할 수", "I004", "");
  777. ds_main_prprtystoc_prprtystoclist.setColumn(i, "deptaprvyn", "2");
  778. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  779. ds_main_prprtystoc_prprtystoclist.setRowType(i, "");
  780. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  781. return;
  782. }
  783. if(ds_main_prprtystoc_prprtystoclist.getRowType(i) == "8" || ds_main_prprtystoc_prprtystoclist.getRowType(i) == "2" || ds_main_prprtystoc_prprtystoclist.getRowType(i) == "4")
  784. {
  785. if(status == "2" || status == "3" || status == "4" || status == "6")
  786. {
  787. sysf_messageBox(i+1+"번째 [" + utlf_transNullToEmpty(ds_main_prprtystoc_prprtystoclist.getColumn(i, "goodnm")) + "] 품목이 승인 진행중이므로 삭제할 수", "I004", "");
  788. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  789. ds_main_prprtystoc_prprtystoclist.setRowType(i, "");
  790. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  791. return;
  792. }
  793. }
  794. }
  795. else
  796. {
  797. if(utlf_isNull(goodcd))
  798. {
  799. sysf_messageBox(i+"번째 품목이 선택되지 않았습니다.", "E999", "");
  800. return;
  801. }
  802. if(ds_main_prprtystoc_prprtystoclist.getRowType(i) == "4")
  803. {
  804. if(flag == "2")
  805. {
  806. var cmfyn = ds_main_prprtystoc_prprtystoclist.getColumn(i, "cmfyn");
  807. if(cmfyn != "1")
  808. {
  809. sysf_messageBox(i+1+"번째 [" + utlf_transNullToEmpty(ds_main_prprtystoc_prprtystoclist.getColumn(i, "goodnm"))+ "] 품목이 물류승인 상태이므로 수정할 수", "I004", "");
  810. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  811. ds_main_prprtystoc_prprtystoclist.setRowType(i, "");
  812. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  813. return;
  814. }
  815. }
  816. if(deptaprvyn =="1" && cmfyn == "3")
  817. {
  818. sysf_messageBox(i+1+"번째 물류승인불허상태이므로 부서미승인 할 수", "I004", "");
  819. ds_main_prprtystoc_prprtystoclist.setColumn(i, "deptaprvyn", "2");
  820. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  821. ds_main_prprtystoc_prprtystoclist.setRowType(i, "");
  822. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  823. return;
  824. }
  825. }
  826. if(ds_main_prprtystoc_prprtystoclist.getRowType(i) == "8" || ds_main_prprtystoc_prprtystoclist.getRowType(i) == "2" || ds_main_prprtystoc_prprtystoclist.getRowType(i) == "4")
  827. {
  828. if(status == "2" || status == "3" || status == "4" || status == "6")
  829. {
  830. sysf_messageBox(i+1+"번째 [" + utlf_transNullToEmpty(ds_main_prprtystoc_prprtystoclist.getColumn(i, "goodnm")) + "] 품목이 승인 진행중이므로 삭제할 수", "I004", "");
  831. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  832. ds_main_prprtystoc_prprtystoclist.setRowType(i, "");
  833. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  834. return;
  835. }
  836. }
  837. }
  838. }
  839. for(var j = ds_main_prprtystoc_prprtystoclist.rowcount ; j > 0 ; j-- )
  840. {
  841. var pptreqqty = ds_main_prprtystoc_prprtystoclist.getColumn(j, "pptreqqty");
  842. if(utlf_isNull(pptreqqty) || pptreqqty == 0)
  843. {
  844. ds_main_prprtystoc_prprtystoclist.deleteRow(j);
  845. }
  846. }
  847. var oParam = {};
  848. oParam.id = "TXRSO24001";
  849. oParam.service = "deliveapp.DeliveMngt";
  850. oParam.method = "reqExeRscdOpstList";
  851. oParam.inds = "prprtystoclist=ds_main_prprtystoc_prprtystoclist:u";
  852. oParam.outds = "";
  853. oParam.async = false;
  854. oParam.callback = "cf_TXRSO24001";
  855. tranf_submit(oParam);
  856. }
  857. function cf_TXRSO24001(sSvcId, nErrorCode, sErrorMsg)
  858. {
  859. if(nErrorCode < 0)
  860. {
  861. return;
  862. }
  863. else
  864. {
  865. grp_search_btn_search_onclick();
  866. }
  867. }
  868. function btn_useflag_onclick(obj:Button, e:ClickEventInfo)
  869. {
  870. }
  871. function btn_cmf_onclick(obj:Button, e:ClickEventInfo)
  872. {
  873. for(var i = 0; i < ds_main_prprtystoc_prprtystoclist.rowcount; i++)
  874. {
  875. var deptaprvyn = ds_main_prprtystoc_prprtystoclist.getColumn(i, "deptaprvyn");
  876. var cmfyn = ds_main_prprtystoc_prprtystoclist.getColumn(i, "cmfyn");
  877. if(deptaprvyn == "2" || deptaprvyn == "6")
  878. {
  879. if(cmfyn != "2")
  880. {
  881. ds_main_prprtystoc_prprtystoclist.setColumn(i, "cmfyn", "2");
  882. ds_main_prprtystoc_prprtystoclist.setColumn(i, "flag", "3");
  883. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  884. ds_main_prprtystoc_prprtystoclist.setRowType(i, "u");
  885. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  886. }
  887. }
  888. else
  889. {
  890. sysf_messageBox(i+1+"번째 [" + utlf_transNullToEmpty(ds_main_prprtystoc_prprtystoclist.getColumn(i, "goodnm")) + "]품목이 부서승인상태가 아니므로 물류승인 ", "E001", "");
  891. return;
  892. }
  893. }
  894. }
  895. function btn_deptaprv_onclick(obj:Button, e:ClickEventInfo)
  896. {
  897. for(var i = 0 ; i < ds_main_prprtystoc_prprtystoclist.rowcount; i++)
  898. {
  899. var status = ds_main_prprtystoc_prprtystoclist.getColumn(i, "status");
  900. var cmfyn = ds_main_prprtystoc_prprtystoclist.getColumn(i, "cmfyn");
  901. if(status == "1" || status == "5")
  902. {
  903. ds_main_prprtystoc_prprtystoclist.setColumn(i, "deptaprvyn", "2");
  904. ds_main_prprtystoc_prprtystoclist.setColumn(i, "flag", "2");
  905. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  906. ds_main_prprtystoc_prprtystoclist.setRowType(i, "u");
  907. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  908. }
  909. else
  910. {
  911. sysf_messageBox(i+1+"번째 [" + utlf_transNullToEmpty(ds_main_prprtystoc_prprtystoclist.getColumn(i, "goodnm")) + "]품목이 신청상태가 아니거나 부서승인할 내역이 ", "I004", "");
  912. return;
  913. }
  914. }
  915. }
  916. function button2_onclick(obj:Button, e:ClickEventInfo)
  917. {
  918. if(utlf_isNull(grp_search.ipt_mngtdeptcd.value))
  919. {
  920. sysf_messageBox("관리부서가 선택되지 않았습니다. \n\n먼저 관리부서를 선택하십시요.", "E999", "");
  921. grp_search.ipt_mngtdeptcd.setFocus();
  922. return;
  923. }
  924. ds_popdelive.setColumn(0, "instcd", grp_search.cmb_instcd.value);
  925. ds_popdelive.setColumn(0, "delivedd", utlf_getCurrentDate());
  926. ds_popdelive.setColumn(0, "delivedeptcd", grp_search.ipt_mngtdeptcd.value);
  927. ds_popdelive.setColumn(0, "delivedeptnm", grp_search.opt_mngtdeptnm.value);
  928. ds_popdelive.setColumn(0, "opener", "jaego");
  929. ds_popreq.setColumn(0, "count", "0")
  930. var objArg = new Object();
  931. objArg.arg_ds_popdata = ds_popdelive;
  932. frmf_modal("SMRSO21450", "SMRSO21450", objArg, "", "", "", "", "", "", "", "", "", "M");
  933. for(var k = 0; k < ds_popsubdata_stocklist.rowcount; k++)
  934. {
  935. var temp = false;
  936. for(var i = 0; i < ds_main_prprtystoc_prprtystoclist.rowcount; i++)
  937. {
  938. if( ds_main_prprtystoc_prprtystoclist.getColumn(i, "goodcd") == ds_popsubdata_stocklist.getColumn(k, "goodcd"))
  939. {
  940. sysf_messageBox("물품코드가 중복되었습니다. [" + utlf_transNullToEmpty(ds_main_prprtystoc_prprtystoclist.getColumn(i, "goodcd")) + "] ", "E999", "");
  941. temp = true;
  942. continue;
  943. }
  944. }
  945. if( temp == false )
  946. {
  947. var cnt = ds_popreq.getColumn(0, "count");
  948. var mrows = ds_main_prprtystoc_prprtystoclist.rowcount;
  949. var mcnt = parseInt(mrows)+parseInt(cnt);
  950. for(var i = mrows ; i < mcnt-1 ; i++)
  951. {
  952. var j = ds_main_prprtystoc_prprtystoclist.addRow();
  953. ds_main_prprtystoc_prprtystoclist.setColumn(i, "instcd", grp_search.cmb_instcd.value);
  954. ds_main_prprtystoc_prprtystoclist.setColumn(i, "goodcd", ds_popsubdata_stocklist.getColumn(j, "goodcd"));
  955. ds_main_prprtystoc_prprtystoclist.setColumn(i, "goodnm", ds_popsubdata_stocklist.getColumn(j, "goodnm"));
  956. ds_main_prprtystoc_prprtystoclist.setColumn(i, "purcunit", ds_popsubdata_stocklist.getColumn(j, "purcunit"));
  957. ds_main_prprtystoc_prprtystoclist.setColumn(i, "goodspec", ds_popsubdata_stocklist.getColumn(j, "goodspec"));
  958. ds_main_prprtystoc_prprtystoclist.setColumn(i, "wareflag", ds_popsubdata_stocklist.getColumn(j, "wareflag"));
  959. ds_main_prprtystoc_prprtystoclist.setColumn(i, "dutunitnm", ds_popsubdata_stocklist.getColumn(j, "dutunitnm"));
  960. ds_main_prprtystoc_prprtystoclist.setColumn(i, "weekqty", ds_popsubdata_stocklist.getColumn(j, "weekqty"));
  961. ds_main_prprtystoc_prprtystoclist.setColumn(i, "stocunit", "1");
  962. ds_main_prprtystoc_prprtystoclist.setColumn(i, "pptstocqty", "0");
  963. ds_main_prprtystoc_prprtystoclist.setColumn(i, "mngtdeptcd", grp_search.ipt_mngtdeptcd.value);
  964. }
  965. }
  966. }
  967. }
  968. function ds_send_search_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  969. {
  970. if(e.columnid == "mngtdeptcd")
  971. {
  972. grp_search.ipt_mngtdeptcd.value = e.newvalue;
  973. grp_search.ipt_mngtdeptcd.setFocus();
  974. misfValidationCheck("02", "", "mngtdeptcd,mngtdeptnm" );
  975. }
  976. }
  977. function btn_del_onclick(obj:Button, e:ClickEventInfo)
  978. {
  979. if(ds_main_prprtystoc_prprtystoclist.getRowType(ds_main_prprtystoc_prprtystoclist.rowposition) == "2")
  980. {
  981. ds_main_prprtystoc_prprtystoclist.deleteRow(ds_main_prprtystoc_prprtystoclist.rowposition);
  982. }
  983. else
  984. {
  985. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  986. ds_main_prprtystoc_prprtystoclist.setRowType(ds_main_prprtystoc_prprtystoclist.rowposition, "d");
  987. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  988. }
  989. }
  990. function button3_onclick(obj:Button, e:ClickEventInfo)
  991. {
  992. ds_main_prprtystoc_prprtystoclist.updatecontrol = false;
  993. for(var i = 0; i < ds_main_prprtystoc_prprtystoclist.rowcount; i++)
  994. {
  995. ds_main_prprtystoc_prprtystoclist.setRowType(ds_main_prprtystoc_prprtystoclist.rowposition, "d");
  996. }
  997. ds_main_prprtystoc_prprtystoclist.updatecontrol = true;
  998. }
  999. ]]></Script>
  1000. </Form>
  1001. </FDL>