SMADT12200_마약류양도.xfdl 66 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMADT12200" classname="SMADT12200_마약류양도" inheritanceid="" position="absolute 0 0 1200 780" titletext="마약류 양도" onload="SMADT12200_onload" oninit="SMADT12200_oninit">
  5. <Layouts>
  6. <Layout>
  7. <Div id="grp_movinfo" taborder="44" position="absolute 0 231 1200 387">
  8. <Layouts>
  9. <Layout>
  10. <Static id="caption24" text="양도일자" class="cell_1" position="absolute 0 5 86 28" anchor="default"/>
  11. <Edit id="opt_prd_min_distb_qy" taborder="1" readonly="true" class="output" position="absolute 609 60 655 79" anchor="default" style="align:right;"/>
  12. <Static id="caption8" text="제품코드(01)" class="cell_1" position="absolute 206 5 293 28" anchor="default"/>
  13. <Static id="caption20" text="제조번호(10)" class="cell_1" position="absolute 0 31 86 54" anchor="default"/>
  14. <Shape id="line02" class="line_1" position="absolute 0 -1 1195 5" anchor="default"/>
  15. <Shape id="line00" class="line_1" position="absolute 0 134 1195 140" anchor="default"/>
  16. <Static id="caption02" text="바코드/RFID" class="cell_1" position="absolute 0 83 86 106" anchor="default"/>
  17. <Edit id="ipt_prd_sgtin" taborder="2" autoselect="true" class="input_default" position="absolute 89 85 459 104" anchor="default" onkeydown="grp_movinfo_ipt_prd_sgtin_onkeydown" imemode="none" inputmode="upper" useime="none"/>
  18. <Calendar id="ipt_outdd" taborder="3" autoselect="true" dateformat="yyyy-MM-dd" class="input_default" position="absolute 89 7 198 26" style="color:red;align:left;font:dotum,9,bold;" mask="yyyy-mm-dd" anchor="default"/>
  19. <Edit id="ipt_gtin" taborder="4" autoselect="true" class="input_search" position="absolute 297 7 390 26" anchor="default"/>
  20. <Button id="btn_gtin" taborder="5" class="icon_search" position="absolute 394 8 410 24" anchor="default" onclick="grp_movinfo_btn_gtin_onclick"/>
  21. <Edit id="opt_hngnm" taborder="6" readonly="true" autoselect="true" class="output" position="absolute 415 6 661 25" anchor="default"/>
  22. <Edit id="ipt_mnf_no" taborder="7" autoselect="true" class="input_default" position="absolute 89 34 318 53" anchor="default" imemode="none" inputmode="upper" useime="none"/>
  23. <Static id="caption00" text="유효기간(17)" class="cell_1" position="absolute 466 31 606 54" anchor="default"/>
  24. <Static id="caption03" text="일련번호(21)" class="cell_1" position="absolute 0 57 86 80" anchor="default"/>
  25. <Edit id="ipt_mnf_seq" taborder="8" autoselect="true" class="input_default" position="absolute 89 60 318 79" anchor="default" imemode="none" inputmode="upper" useime="none"/>
  26. <Calendar id="ipt_prd_valid_de" taborder="9" autoselect="true" dateformat="yyyy-MM-dd" class="input_default" position="absolute 609 34 709 53" style="align:left;" mask="yyyy-mm-dd" anchor="default"/>
  27. <Static id="caption04" text="중점/일반 관리구분" class="cell_1" position="absolute 875 5 1015 28" anchor="default"/>
  28. <Static id="caption05" text="제품낱개단위" class="cell_1" position="absolute 875 57 1015 80" anchor="default"/>
  29. <Static id="caption07" text="최소유통단위 양도수량" class="cell_1" position="absolute 466 83 606 106" anchor="default"/>
  30. <Static id="caption10" text="제품최소유통단위" class="cell_1" position="absolute 466 57 606 80" anchor="default"/>
  31. <Static id="caption11" text="낱개단위 양도수량" class="cell_1" position="absolute 875 83 1015 106" anchor="default"/>
  32. <Static id="caption12" text="저장소" class="cell_1" position="absolute 875 31 1015 54" anchor="default"/>
  33. <Combo id="cmb_storge_no" taborder="10" innerdataset="@ds_storgelist" codecolumn="storge_no" datacolumn="storge_nonm" class="combo_default" position="absolute 1018 33 1160 52" anchor="default"/>
  34. <Edit id="opt_prd_min_distb_unit" taborder="11" readonly="true" class="output" position="absolute 657 60 709 79" anchor="default"/>
  35. <Edit id="ipt_min_distb_qy" taborder="12" autoselect="true" class="input_default" position="absolute 609 85 655 104" anchor="default" style="align:right;font:dotum,9,bold;" inputtype="number" ontextchange="grp_movinfo_ipt_min_distb_qy_ontextchange"/>
  36. <Edit id="opt_prd_tot_pce_qy" taborder="13" readonly="true" class="output" position="absolute 1018 60 1064 79" anchor="default" style="align:right;"/>
  37. <Edit id="opt_prd_pce_unit" taborder="14" readonly="true" class="output" position="absolute 1066 60 1118 79" anchor="default"/>
  38. <Edit id="ipt_pce_qy" taborder="15" autoselect="true" class="input_default" position="absolute 1018 85 1064 104" anchor="default" style="align:right;font:dotum,9,bold;" inputtype="number" ontextchange="grp_movinfo_ipt_pce_qy_ontextchange"/>
  39. <Edit id="opt_prtm_se_nm" taborder="16" readonly="true" class="output" position="absolute 1018 8 1118 27" anchor="default"/>
  40. <Edit id="opt_drugcd" taborder="17" readonly="true" autoselect="true" class="output" position="absolute 663 6 756 25" anchor="default"/>
  41. <Edit id="opt_prd_pce_unit00" taborder="19" readonly="true" class="output" position="absolute 1066 85 1118 104" anchor="default"/>
  42. <Edit id="opt_prd_min_distb_unit00" taborder="20" readonly="true" class="output" position="absolute 657 85 709 104" anchor="default"/>
  43. <Static id="caption01" text="Label No" class="cell_1" position="absolute 0 109 86 132"/>
  44. <MaskEdit id="ipt_labelno" taborder="21" type="string" mask="9999-99-99 999" autoselect="true" position="absolute 89 110 197 130" style="align:left middle;font:dotum,9,bold;" onkeydown="grp_movinfo_ipt_labelno_onkeydown" readonly="true" class="output"/>
  45. </Layout>
  46. </Layouts>
  47. <InitValue/>
  48. </Div>
  49. <Static id="caption6" text="마약류 양도" class="tit_1" position="absolute 0 0 107 25"/>
  50. <Div id="grp_search" anchor="left top right" taborder="1" class="div_SA" position="absolute 0 50 1195 109">
  51. <Layouts>
  52. <Layout>
  53. <Button id="btn_search" taborder="58" text="조회" class="btn1" position="absolute 975 7 1031 29" anchor="default" onclick="grp_search_btn_search_onclick"/>
  54. <Static id="caption1" text="양도일자 :" class="search_name" position="absolute 21 10 96 27" anchor="default"/>
  55. <Calendar id="ipt_outdd_from" taborder="59" autoselect="true" dateformat="yyyy-MM-dd" class="input_essential" position="absolute 96 8 196 27" style="align:center;" align="align:center middle;" mask="yyyy-mm-dd" anchor="default"/>
  56. <Static id="caption00" text="~" position="absolute 200 9 211 26" style="align:center;font:dotum,9,bold;" anchor="default"/>
  57. <Calendar id="ipt_outdd_to" taborder="60" autoselect="true" dateformat="yyyy-MM-dd" class="input_essential" position="absolute 216 8 316 27" style="align:left;" mask="yyyy-mm-dd" anchor="default"/>
  58. <Button id="btn_backward" taborder="63" text="&lt;" position="absolute 322 7 344 29" onclick="grp_search_btn_backward_onclick" anchor="default"/>
  59. <Button id="btn_today" taborder="64" text="당일" position="absolute 345 7 377 29" onclick="grp_search_btn_today_onclick" anchor="default"/>
  60. <Button id="btn_forward" taborder="65" text="&gt;" position="absolute 378 7 400 29" onclick="grp_search_btn_forward_onclick" anchor="default"/>
  61. <Static id="caption05" text="관리구분 :" class="search_name" position="absolute 804 10 879 27" anchor="default"/>
  62. <Combo id="cmb_prtm_se_nm" taborder="66" codecolumn="codecolumn" datacolumn="datacolumn" class="combo_search" position="absolute 882 8 953 27" anchor="default">
  63. <Dataset id="innerdataset">
  64. <ColumnInfo>
  65. <Column id="codecolumn" size="256"/>
  66. <Column id="datacolumn" size="256"/>
  67. </ColumnInfo>
  68. <Rows>
  69. <Row>
  70. <Col id="codecolumn"/>
  71. <Col id="datacolumn">전체</Col>
  72. </Row>
  73. <Row>
  74. <Col id="codecolumn">중점</Col>
  75. <Col id="datacolumn">중점</Col>
  76. </Row>
  77. <Row>
  78. <Col id="codecolumn">일반</Col>
  79. <Col id="datacolumn">일반</Col>
  80. </Row>
  81. </Rows>
  82. </Dataset>
  83. </Combo>
  84. <Static id="caption06" text="약품코드 :" class="search_name" position="absolute 21 34 96 51" anchor="default"/>
  85. <Edit id="ipt_gtin" taborder="67" autoselect="true" class="input_search" visible="false" position="absolute 403 37 496 56" anchor="default"/>
  86. <Button id="btn_gtin" taborder="68" class="icon_search" position="absolute 194 34 210 50" anchor="default" onclick="grp_search_btn_gtin_onclick"/>
  87. <Edit id="opt_hngnm" taborder="69" readonly="true" autoselect="true" class="output" position="absolute 215 33 488 52" anchor="default"/>
  88. <Edit id="ipt_drugcd" taborder="70" imemode="alpha" inputmode="upper" autoselect="true" class="input_search" position="absolute 97 33 190 52" anchor="default" onkeydown="grp_search_ipt_drugcd_onkeydown"/>
  89. <Static id="caption03" text="상대업체 :" class="search_name" position="absolute 429 10 504 27"/>
  90. <Combo id="cmb_out_bssh_cd" taborder="71" innerdataset="ds_search_out_bsshlist" codecolumn="bssh_cd" datacolumn="bssh_cdnm" class="combo_search" position="absolute 506 8 780 27"/>
  91. </Layout>
  92. </Layouts>
  93. </Div>
  94. <Static id="caption26" text="양도정보" class="tit_2" position="absolute 0 214 102 231"/>
  95. <Static id="caption01" text="양도정보 목록" class="tit_2" position="absolute -1 379 170 400"/>
  96. <Grid id="grd_movlist" taborder="17" boutddataset="ds_movlist" autoenter="select" useinputpanel="false" selecttype="row" cellsizingtype="both" position="absolute 0 400 1195 758" anchor="all" oncellclick="grd_movlist_oncellclick" binddataset="ds_movlist">
  97. <Formats>
  98. <Format id="default">
  99. <Columns>
  100. <Column size="25" band="left"/>
  101. <Column size="71"/>
  102. <Column size="97"/>
  103. <Column size="83"/>
  104. <Column size="93"/>
  105. <Column size="87"/>
  106. <Column size="187"/>
  107. <Column size="73"/>
  108. <Column size="86"/>
  109. <Column size="124"/>
  110. <Column size="40"/>
  111. <Column size="44"/>
  112. <Column size="40"/>
  113. <Column size="44"/>
  114. <Column size="33"/>
  115. <Column size="33"/>
  116. <Column size="0"/>
  117. <Column size="0"/>
  118. <Column size="0"/>
  119. </Columns>
  120. <Rows>
  121. <Row size="24" band="head"/>
  122. <Row size="24"/>
  123. </Rows>
  124. <Band id="head">
  125. <Cell/>
  126. <Cell col="1" text="양도일자"/>
  127. <Cell col="2" text="상대업체"/>
  128. <Cell col="3" text="약품코드"/>
  129. <Cell col="4" text="Label No"/>
  130. <Cell col="5" text="제품코드"/>
  131. <Cell col="6" text="제품명"/>
  132. <Cell col="7" text="유효기간"/>
  133. <Cell col="8" text="제조번호"/>
  134. <Cell col="9" text="일련번호"/>
  135. <Cell col="10" colspan="2" text="유통단위 수" taborder="undefined"/>
  136. <Cell col="12" colspan="2" text="낱개단위 수" taborder="undefined"/>
  137. <Cell col="14" text="전송"/>
  138. <Cell col="15" text="구분"/>
  139. <Cell col="16" text="제품최소유통단위수량"/>
  140. <Cell col="17" text="제품총낱개단위수량"/>
  141. <Cell col="18" text="바코드"/>
  142. </Band>
  143. <Band id="body">
  144. <Cell celltype="head" text="expr:currow+1"/>
  145. <Cell col="1" displaytype="date" text="bind:outdd"/>
  146. <Cell col="2" style="align:left;" text="bind:out_bssh_nm"/>
  147. <Cell col="3" text="bind:drugcd"/>
  148. <Cell col="4" text="bind:labelno" mask="@@@@-@@-@@ @@@"/>
  149. <Cell col="5" text="bind:gtin"/>
  150. <Cell col="6" style="align:left;" text="bind:hngnm"/>
  151. <Cell col="7" displaytype="date" text="bind:prd_valid_de"/>
  152. <Cell col="8" text="bind:mnf_no"/>
  153. <Cell col="9" text="bind:mnf_seq"/>
  154. <Cell col="10" style="align:center;" text="bind:min_distb_qy"/>
  155. <Cell col="11" text="bind:prd_min_distb_unit"/>
  156. <Cell col="12" style="align:center;" text="bind:pce_qy"/>
  157. <Cell col="13" text="bind:prd_pce_unit"/>
  158. <Cell col="14" text="bind:sendfg"/>
  159. <Cell col="15" text="bind:prtm_se_nm"/>
  160. <Cell col="16" text="bind:prd_min_distb_qy"/>
  161. <Cell col="17" text="bind:prd_tot_pce_qy"/>
  162. <Cell col="18" text="bind:prd_sgtin"/>
  163. </Band>
  164. </Format>
  165. </Formats>
  166. </Grid>
  167. <Shape id="line01" class="line_1" position="absolute 0 139 1195 145"/>
  168. <Shape id="line03" class="line_1" position="absolute 0 194 1195 200"/>
  169. <Shape id="line7" class="line_10" position="absolute 0 395 1195 401" anchor="left top right"/>
  170. <Div id="grp_button" anchor="left top right" taborder="40" position="absolute 0 13 1195 45">
  171. <Layouts>
  172. <Layout>
  173. <Shape id="line2" class="line_6" position="absolute 0 25 1195 31" anchor="left top right"/>
  174. <Button id="btn_send" taborder="1" text="전송" class="btn3" position="absolute 1138 3 1194 25" onclick="grp_button_btn_send_onclick" anchor="top right" visible="true"/>
  175. </Layout>
  176. </Layouts>
  177. </Div>
  178. <Static id="caption09" text="상대 마약류취급자 정보" class="tit_2" position="absolute 0 123 167 140"/>
  179. <Button id="btn_new" taborder="45" text="신규" onclick="btn_new_onclick" class="btn3" position="absolute 89 209 142 228"/>
  180. <Button id="btn_delete" taborder="46" text="삭제" class="btn3" position="absolute 145 209 198 228" visible="true" enable="false" onclick="btn_delete_onclick"/>
  181. <Button id="btn_save" taborder="47" text="저장" class="btn3" position="absolute 201 209 254 228" onclick="btn_save_onclick"/>
  182. <CheckBox id="chk_autofg" taborder="48" text="바코드 스캔시 최소유통단위로 자동저장" position="absolute 269 210 518 230"/>
  183. <Static id="caption05" text="양도사유" class="cell_1" position="absolute 0 170 86 193" style="font:dotum,9;"/>
  184. <Combo id="cmb_out_trnsfr_se_cd" taborder="53" codecolumn="codecolumn" datacolumn="datacolumn" class="combo_default" position="absolute 89 172 430 191">
  185. <Dataset id="innerdataset">
  186. <ColumnInfo>
  187. <Column id="codecolumn" size="256"/>
  188. <Column id="datacolumn" size="256"/>
  189. </ColumnInfo>
  190. <Rows>
  191. <Row>
  192. <Col id="codecolumn">01</Col>
  193. <Col id="datacolumn">판매양도</Col>
  194. </Row>
  195. <Row>
  196. <Col id="codecolumn">02</Col>
  197. <Col id="datacolumn">허가양도 (허가증 양도에 의한 양도양수)</Col>
  198. </Row>
  199. <Row>
  200. <Col id="codecolumn">03</Col>
  201. <Col id="datacolumn">폐업양도 (페업에 의한 양도양수)</Col>
  202. </Row>
  203. <Row>
  204. <Col id="codecolumn">04</Col>
  205. <Col id="datacolumn">회수대상 마약류 양도양수</Col>
  206. </Row>
  207. <Row>
  208. <Col id="codecolumn">05</Col>
  209. <Col id="datacolumn">품질관리양도 (품질관리 및 시험검사 목적의 양도양수)</Col>
  210. </Row>
  211. <Row>
  212. <Col id="codecolumn">06</Col>
  213. <Col id="datacolumn">자격상실로 인한 대리신고 양도양수 (※ 공무원 전용)</Col>
  214. </Row>
  215. <Row>
  216. <Col id="codecolumn">07</Col>
  217. <Col id="datacolumn">보고의무가 없는 상대자 양도양수 (※ 군수용 제외)</Col>
  218. </Row>
  219. <Row>
  220. <Col id="codecolumn">99</Col>
  221. <Col id="datacolumn">반품양도 (반품에 의한 양도양수)</Col>
  222. </Row>
  223. <Row>
  224. <Col id="codecolumn">98</Col>
  225. <Col id="datacolumn">위수탁제조양도</Col>
  226. </Row>
  227. <Row>
  228. <Col id="codecolumn">97</Col>
  229. <Col id="datacolumn">소프트웨어 이전에 따른 재고 양도</Col>
  230. </Row>
  231. </Rows>
  232. </Dataset>
  233. </Combo>
  234. <Button id="btn_stoc" taborder="55" text="제품재고조회" class="btn8" position="absolute 759 237 856 256" onclick="btn_stoc_onclick"/>
  235. <Static id="caption13" text="상대업체" class="cell_1" position="absolute 0 145 86 168"/>
  236. <Combo id="cmb_out_bssh_cd" taborder="56" innerdataset="@ds_out_bsshlist" codecolumn="bssh_cd" datacolumn="bssh_cdnm" class="combo_default" position="absolute 89 147 430 166" onitemchanged="cmb_out_bssh_cd_onitemchanged"/>
  237. <Static id="caption14" text="상대업체 저장소" class="cell_1" position="absolute 466 145 606 168"/>
  238. <Combo id="cmb_out_storge_no" taborder="57" innerdataset="@ds_out_storgelist" codecolumn="storge_no" datacolumn="storge_nonm" class="combo_default" position="absolute 609 147 774 166"/>
  239. </Layout>
  240. </Layouts>
  241. <Bind>
  242. <BindItem id="item19" compid="grp_movinfo.opt_prtm_se_nm" propid="value" datasetid="ds_movinfo" columnid="prtm_se_nm"/>
  243. <BindItem id="item18" compid="grp_movinfo.ipt_pce_qy" propid="value" datasetid="ds_movinfo" columnid="pce_qy"/>
  244. <BindItem id="item17" compid="grp_movinfo.opt_prd_pce_unit" propid="value" datasetid="ds_movinfo" columnid="prd_pce_unit"/>
  245. <BindItem id="item16" compid="grp_movinfo.opt_prd_tot_pce_qy" propid="value" datasetid="ds_movinfo" columnid="prd_tot_pce_qy"/>
  246. <BindItem id="item13" compid="grp_movinfo.ipt_min_distb_qy" propid="value" datasetid="ds_movinfo" columnid="min_distb_qy"/>
  247. <BindItem id="item10" compid="grp_movinfo.opt_prd_min_distb_unit" propid="value" datasetid="ds_movinfo" columnid="prd_min_distb_unit"/>
  248. <BindItem id="item9" compid="grp_movinfo.cmb_storge_no" propid="value" datasetid="ds_movinfo" columnid="storge_no"/>
  249. <BindItem id="item7" compid="grp_movinfo.ipt_prd_valid_de" propid="value" datasetid="ds_movinfo" columnid="prd_valid_de"/>
  250. <BindItem id="item8" compid="grp_movinfo.ipt_mnf_seq" propid="value" datasetid="ds_movinfo" columnid="mnf_seq"/>
  251. <BindItem id="item3" compid="grp_movinfo.ipt_mnf_no" propid="value" datasetid="ds_movinfo" columnid="mnf_no"/>
  252. <BindItem id="item6" compid="grp_movinfo.opt_hngnm" propid="value" datasetid="ds_movinfo" columnid="hngnm"/>
  253. <BindItem id="item2" compid="grp_movinfo.ipt_gtin" propid="value" datasetid="ds_movinfo" columnid="gtin"/>
  254. <BindItem id="item1" compid="grp_movinfo.ipt_outdd" propid="value" datasetid="ds_movinfo" columnid="outdd"/>
  255. <BindItem id="item11" compid="grp_movinfo.ipt_prd_sgtin" propid="value" datasetid="ds_movinfo" columnid="prd_sgtin"/>
  256. <BindItem id="item4" compid="grp_movinfo.opt_prd_min_distb_qy" propid="value" datasetid="ds_movinfo" columnid="prd_min_distb_qy"/>
  257. <BindItem id="item12" compid="SMADT12200" propid="text" datasetid="ds_main_prntlist_patinfo" columnid=""/>
  258. <BindItem id="item14" compid="grp_search.ipt_outdd_from" propid="value" datasetid="ds_send_search" columnid="outdd_from"/>
  259. <BindItem id="item15" compid="grp_search.ipt_outdd_to" propid="value" datasetid="ds_send_search" columnid="outdd_to"/>
  260. <BindItem id="item21" compid="grp_movinfo.opt_drugcd" propid="value" datasetid="ds_movinfo" columnid="drugcd"/>
  261. <BindItem id="item23" compid="grp_movinfo.opt_prd_pce_unit00" propid="value" datasetid="ds_movinfo" columnid="prd_pce_unit"/>
  262. <BindItem id="item24" compid="chk_autofg" propid="value" datasetid="ds_send_search" columnid="autofg"/>
  263. <BindItem id="item5" compid="grp_movinfo.opt_prd_min_distb_unit00" propid="value" datasetid="ds_movinfo" columnid="prd_min_distb_unit"/>
  264. <BindItem id="item25" compid="grp_movinfo.ipt_labelno" propid="value" datasetid="ds_movinfo" columnid="labelno"/>
  265. <BindItem id="item26" compid="grp_search.cmb_prtm_se_nm" propid="value" datasetid="ds_send_search" columnid="prtm_se_nm"/>
  266. <BindItem id="item27" compid="grp_search.ipt_gtin" propid="value" datasetid="ds_send_search" columnid="gtin"/>
  267. <BindItem id="item28" compid="grp_search.opt_hngnm" propid="value" datasetid="ds_send_search" columnid="hngnm"/>
  268. <BindItem id="item29" compid="grp_search.ipt_drugcd" propid="value" datasetid="ds_send_search" columnid="drugcd"/>
  269. <BindItem id="item33" compid="cmb_out_trnsfr_se_cd" propid="value" datasetid="ds_movinfo" columnid="out_trnsfr_se_cd"/>
  270. <BindItem id="item34" compid="grp_search.cmb_out_bssh_cd" propid="value" datasetid="ds_send_search" columnid="out_bssh_cd"/>
  271. <BindItem id="item0" compid="cmb_out_bssh_cd" propid="value" datasetid="ds_movinfo" columnid="out_bssh_cd"/>
  272. <BindItem id="item20" compid="cmb_out_storge_no" propid="value" datasetid="ds_movinfo" columnid="out_storge_no"/>
  273. </Bind>
  274. <Objects>
  275. <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">
  276. <ColumnInfo>
  277. <Column id="outdd_from" type="STRING" size="256"/>
  278. <Column id="outdd_to" type="STRING" size="256"/>
  279. <Column id="out_bssh_cd" type="STRING" size="256" sumtext="연도"/>
  280. <Column id="autofg" type="STRING" size="256"/>
  281. <Column id="rpt_se_cd" type="STRING" size="256"/>
  282. <Column id="prtm_se_nm" type="STRING" size="256"/>
  283. <Column id="drugcd" type="STRING" size="256"/>
  284. <Column id="hngnm" type="STRING" size="256"/>
  285. <Column id="gtin" type="STRING" size="256"/>
  286. </ColumnInfo>
  287. <Rows>
  288. <Row/>
  289. </Rows>
  290. </Dataset>
  291. <Dataset id="ds_storgelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  292. <ColumnInfo>
  293. <Column id="storge_no" type="STRING" size="256"/>
  294. <Column id="storge_nm" type="STRING" size="256"/>
  295. <Column id="storge_nonm" type="STRING" size="256"/>
  296. </ColumnInfo>
  297. </Dataset>
  298. <Dataset id="ds_movlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  299. <ColumnInfo>
  300. <Column id="outdd" type="STRING" size="256"/>
  301. <Column id="gtin" type="STRING" size="256"/>
  302. <Column id="prd_valid_de" type="STRING" size="256"/>
  303. <Column id="mnf_no" type="STRING" size="256"/>
  304. <Column id="mnf_seq" type="STRING" size="256"/>
  305. <Column id="prd_sgtin" type="STRING" size="256"/>
  306. <Column id="out_bssh_cd" type="STRING" size="256"/>
  307. <Column id="out_bssh_nm" type="STRING" size="256"/>
  308. <Column id="out_storge_no" type="STRING" size="256"/>
  309. <Column id="out_trnsfr_se_cd" type="STRING" size="256"/>
  310. <Column id="storge_no" type="STRING" size="256"/>
  311. <Column id="prd_min_distb_qy" type="STRING" size="256"/>
  312. <Column id="prd_min_distb_unit" type="STRING" size="256"/>
  313. <Column id="prd_tot_pce_qy" type="STRING" size="256"/>
  314. <Column id="prd_pce_unit" type="STRING" size="256"/>
  315. <Column id="min_distb_qy" type="STRING" size="256"/>
  316. <Column id="pce_qy" type="STRING" size="256"/>
  317. <Column id="prtm_se_nm" type="STRING" size="256"/>
  318. <Column id="hngnm" type="STRING" size="256"/>
  319. <Column id="drugcd" type="STRING" size="256"/>
  320. <Column id="out_storge_nm" type="STRING" size="256"/>
  321. <Column id="storge_nm" type="STRING" size="256"/>
  322. <Column id="labelno" type="STRING" size="256"/>
  323. <Column id="sendfg" type="STRING" size="256"/>
  324. </ColumnInfo>
  325. </Dataset>
  326. <Dataset id="ds_movinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  327. <ColumnInfo>
  328. <Column id="status" type="STRING" size="256"/>
  329. <Column id="outdd" type="STRING" size="256"/>
  330. <Column id="gtin" type="STRING" size="256"/>
  331. <Column id="prd_valid_de" type="STRING" size="256"/>
  332. <Column id="mnf_no" type="STRING" size="256"/>
  333. <Column id="mnf_seq" type="STRING" size="256"/>
  334. <Column id="prd_sgtin" type="STRING" size="256"/>
  335. <Column id="out_bssh_cd" type="STRING" size="256"/>
  336. <Column id="out_bssh_nm" type="STRING" size="256"/>
  337. <Column id="out_storge_no" type="STRING" size="256"/>
  338. <Column id="out_trnsfr_se_cd" type="STRING" size="256"/>
  339. <Column id="storge_no" type="STRING" size="256"/>
  340. <Column id="prd_min_distb_qy" type="STRING" size="256"/>
  341. <Column id="prd_min_distb_unit" type="STRING" size="256"/>
  342. <Column id="prd_tot_pce_qy" type="STRING" size="256"/>
  343. <Column id="prd_pce_unit" type="STRING" size="256"/>
  344. <Column id="min_distb_qy" type="STRING" size="256"/>
  345. <Column id="pce_qy" type="STRING" size="256"/>
  346. <Column id="prtm_se_nm" type="STRING" size="256"/>
  347. <Column id="hngnm" type="STRING" size="256"/>
  348. <Column id="drugcd" type="STRING" size="256"/>
  349. <Column id="labelno" type="STRING" size="256"/>
  350. </ColumnInfo>
  351. <Rows>
  352. <Row/>
  353. </Rows>
  354. </Dataset>
  355. <Dataset id="ds_send_prd_sgtin" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  356. <ColumnInfo>
  357. <Column id="prd_sgtin" type="STRING" size="256"/>
  358. <Column id="basedd" type="STRING" size="256"/>
  359. <Column id="rfidfg" type="STRING" size="256"/>
  360. </ColumnInfo>
  361. <Rows>
  362. <Row/>
  363. </Rows>
  364. </Dataset>
  365. <Dataset id="ds_prdinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  366. <Column id="instcd" type="STRING" size="256"/>
  367. <Column id="drugcd" type="STRING" size="256"/>
  368. <Column id="fromdd" type="STRING" size="256"/>
  369. <Column id="todd" type="STRING" size="256"/>
  370. <Column id="ordnm" type="STRING" size="256"/>
  371. <Column id="hngnm" type="STRING" size="256"/>
  372. <Column id="gtin" type="STRING" size="256"/>
  373. <Column id="gtins" type="STRING" size="256"/>
  374. <Column id="gtine" type="STRING" size="256"/>
  375. <Column id="lots" type="STRING" size="256"/>
  376. <Column id="lote" type="STRING" size="256"/>
  377. <Column id="exps" type="STRING" size="256"/>
  378. <Column id="expe" type="STRING" size="256"/>
  379. <Column id="sns" type="STRING" size="256"/>
  380. <Column id="sne" type="STRING" size="256"/>
  381. <Column id="prtm_se_nm" type="STRING" size="256"/>
  382. <Column id="prd_min_distb_qy" type="STRING" size="256"/>
  383. <Column id="prd_min_distb_unit" type="STRING" size="256"/>
  384. <Column id="prd_tot_pce_qy" type="STRING" size="256"/>
  385. <Column id="prd_pce_unit" type="STRING" size="256"/>
  386. <ColumnInfo>
  387. <Column id="drugcd" type="STRING" size="256"/>
  388. <Column id="fromdd" type="STRING" size="256"/>
  389. <Column id="todd" type="STRING" size="256"/>
  390. <Column id="ordnm" type="STRING" size="256"/>
  391. <Column id="hngnm" type="STRING" size="256"/>
  392. <Column id="gtin" type="STRING" size="256"/>
  393. <Column id="prtm_se_nm" type="STRING" size="256"/>
  394. <Column id="prd_min_distb_qy" type="STRING" size="256"/>
  395. <Column id="prd_min_distb_unit" type="STRING" size="256"/>
  396. <Column id="prd_tot_pce_qy" type="STRING" size="256"/>
  397. <Column id="prd_pce_unit" type="STRING" size="256"/>
  398. <Column id="barsnum_d" type="STRING" size="256"/>
  399. </ColumnInfo>
  400. </Dataset>
  401. <Dataset id="ds_temp_receivedata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  402. <ColumnInfo>
  403. <Column id="receiveref" type="STRING" size="256"/>
  404. <Column id="receive_drugcd" type="STRING" size="256"/>
  405. <Column id="receive_hngnm" type="STRING" size="256"/>
  406. <Column id="receive_gtin" type="STRING" size="256"/>
  407. <Column id="receive_prtm_se_nm" type="STRING" size="256"/>
  408. <Column id="receive_prd_min_distb_qy" type="STRING" size="256"/>
  409. <Column id="receive_prd_min_distb_unit" type="STRING" size="256"/>
  410. <Column id="receive_prd_tot_pce_qy" type="STRING" size="256"/>
  411. <Column id="receive_prd_pce_unit" type="STRING" size="256"/>
  412. <Column id="basedd" type="STRING" size="256"/>
  413. <Column id="receive_prd_sgtin" type="STRING" size="256"/>
  414. <Column id="receive_mnf_no" type="STRING" size="256"/>
  415. <Column id="receive_mnf_seq" type="STRING" size="256"/>
  416. <Column id="receive_prd_valid_de" type="STRING" size="256"/>
  417. <Column id="receive_labelno" type="STRING" size="256"/>
  418. <Column id="receive_storge_no" type="STRING" size="256"/>
  419. </ColumnInfo>
  420. <Rows>
  421. <Row/>
  422. </Rows>
  423. </Dataset>
  424. <Dataset id="ds_search_out_bsshlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  425. <ColumnInfo>
  426. <Column id="bssh_cd" type="STRING" size="256"/>
  427. <Column id="bssh_nm" type="STRING" size="256"/>
  428. <Column id="bssh_cdnm" type="STRING" size="256"/>
  429. </ColumnInfo>
  430. </Dataset>
  431. <Dataset id="ds_out_bsshlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  432. <ColumnInfo>
  433. <Column id="bssh_cd" type="STRING" size="256"/>
  434. <Column id="bssh_nm" type="STRING" size="256"/>
  435. <Column id="bssh_cdnm" type="STRING" size="256"/>
  436. </ColumnInfo>
  437. </Dataset>
  438. <Dataset id="ds_out_storgelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  439. <ColumnInfo>
  440. <Column id="storge_no" type="STRING" size="256"/>
  441. <Column id="storge_nm" type="STRING" size="256"/>
  442. <Column id="storge_nonm" type="STRING" size="256"/>
  443. </ColumnInfo>
  444. </Dataset>
  445. <Dataset id="ds_send_opp_bssh" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_send_reqdata_oncolumnchanged">
  446. <ColumnInfo>
  447. <Column id="opp_bssh_cd" type="STRING" size="256"/>
  448. </ColumnInfo>
  449. <Rows>
  450. <Row/>
  451. </Rows>
  452. </Dataset>
  453. </Objects>
  454. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  455. * System Name : 경대 의료정보시스템
  456. * Job Name : ast_pharmacydrugsumxp-> SMADT12200
  457. * Creator : pjb
  458. * Make Date : 2018-06-26
  459. * Description :
  460. *---------------------------------------------------------------------------------------
  461. * Modify Date Modifier Modify Description
  462. *---------------------------------------------------------------------------------------
  463. * 2018-06-26 pjb XP개발
  464. *
  465. *---------------------------------------------------------------------------------------
  466. ****************************************************************************************/
  467. //=======================================================================================
  468. // Lib Include
  469. //---------------------------------------------------------------------------------------
  470. include "com_commonxp::comm_main.xjs";
  471. //include "mis_miscommonxp::MIS.xjs";
  472. //include "mis_humtrafactmngtxp::RPB001.xjs";
  473. //=======================================================================================
  474. // Global Form Variable
  475. //---------------------------------------------------------------------------------------
  476. var arErrorCode = new HashArray();
  477. //=======================================================================================
  478. // Function
  479. //---------------------------------------------------------------------------------------
  480. //=======================================================================================
  481. // Event
  482. //---------------------------------------------------------------------------------------
  483. /****************************************************************************************
  484. * Components : Form
  485. * Components ID : SMADT12200
  486. * Event : oninit
  487. * Argument : 01.obj : Object Event has occurred
  488. * : 02.e : Event Object
  489. * Description : 화면 처음 초기화시
  490. ****************************************************************************************/
  491. function SMADT12200_oninit(obj:Form, e:InitEventInfo)
  492. {
  493. frmf_initForm(obj); //폼 초기화
  494. }
  495. /****************************************************************************************
  496. * Components : Form
  497. * Components ID : SMADT12200
  498. * Event : onload
  499. * Argument : 01.obj : Object Event has occurred
  500. * : 02.e : Event Object
  501. * Description : 화면 로딩 완료시
  502. ****************************************************************************************/
  503. function SMADT12200_onload(obj:Form, e:LoadEventInfo)
  504. {
  505. //grdf_setRowTypeIcon(grd_movlist, 0);
  506. grdf_setGridSort(grd_movlist);
  507. var curdd = utlf_getCurrentDate();
  508. ds_send_search.setColumn(0, "outdd_from", curdd );
  509. ds_send_search.setColumn(0, "outdd_to", curdd );
  510. ds_movinfo.setColumn(0, "outdd", curdd);
  511. ds_movinfo.setColumn(0, "status", "i"); // 작업구분(i, u, d)
  512. //상대업체 목록 조회
  513. var oParam = {};
  514. oParam.id = "TRADT12201";
  515. oParam.service = "pharmacydrugsumapp.NarcManagent";
  516. oParam.method = "reqGetOppBsshList";
  517. oParam.inds = "req=";
  518. oParam.outds = "ds_search_out_bsshlist=oppbsshlist";
  519. oParam.async = false;
  520. // oParam.callback = "cf_TRADT12201";
  521. tranf_submit(oParam);
  522. ds_out_bsshlist.copyData(ds_search_out_bsshlist);
  523. frmf_addComboItem("grp_search.cmb_out_bssh_cd","전체","","above");
  524. ds_send_search.setColumn(0, "out_bssh_cd", ""); //default setting : 전체
  525. //저장소 목록 조회
  526. var oParam = {};
  527. oParam.id = "TRADT12202";
  528. oParam.service = "pharmacydrugsumapp.NarcManagent";
  529. oParam.method = "reqGetStorgeList";
  530. oParam.inds = "req=";
  531. oParam.outds = "ds_storgelist=storgelist";
  532. oParam.async = false;
  533. // oParam.callback = "cf_TRADT12112";
  534. tranf_submit(oParam);
  535. ds_movinfo.setColumn(0, "storge_no", "S0001"); //default setting : S0001 기본저장소
  536. //ds_send_search.setColumn(0, "autofg", "true"); //default setting : 자동저장
  537. ds_send_search.setColumn(0, "prtm_se_nm", ""); //default setting : 관리구분
  538. cmb_out_bssh_cd.setFocus(); //grp_pcminfo.ipt_prd_sgtin.setFocus();
  539. }
  540. /****************************************************************************************
  541. * Components : Button
  542. * Components ID : grp_search_btn_search
  543. * Event : onclick
  544. * Argument : 01.obj : Object Event has occurred
  545. * : 02.e : Event Object
  546. * Description : 조회버튼 클릭시
  547. ****************************************************************************************/
  548. function grp_search_btn_search_onclick(obj:Button, e:ClickEventInfo)
  549. {
  550. if (utlf_transNullToEmpty(ds_send_search.getColumn(0, "outdd_from")).length != 8){
  551. sysf_messageBox("양도일자를 확인하십시요. ", "E999", "");
  552. grp_search.ipt_outdd_from.setFocus();
  553. return;
  554. }
  555. if (utlf_transNullToEmpty(ds_send_search.getColumn(0, "outdd_to")).length != 8){
  556. sysf_messageBox("양도일자를 확인하십시요. ", "E999", "");
  557. grp_search.ipt_outdd_to.setFocus();
  558. return;
  559. }
  560. //양도 목록 조회
  561. var oParam = {};
  562. oParam.id = "TRADT12204";
  563. oParam.service = "pharmacydrugsumapp.NarcManagent";
  564. oParam.method = "reqGetTransOutList";
  565. oParam.inds = "req=ds_send_search";
  566. oParam.outds = "ds_movlist=movlist";
  567. oParam.async = false;
  568. oParam.callback = "cf_TRADT12204";
  569. tranf_submit(oParam);
  570. if (arErrorCode.pop("TRADT12204") > -1){
  571. //ds_movinfo.clearData();
  572. //ds_movinfo.addRow();
  573. //입력가능 모드
  574. cmb_out_bssh_cd.enable = true;
  575. cmb_out_storge_no.enable = true;
  576. cmb_out_trnsfr_se_cd.enable = true;
  577. grp_movinfo.enable = true;
  578. btn_save.enable = true;
  579. btn_delete.enable = false;
  580. btn_stoc.enable = true;
  581. //ds_movinfo clear
  582. ds_movinfo.setColumn(0, "status", "i"); //작업구분(i, u, d)
  583. ds_movinfo.setColumn(0, "gtin", "");
  584. ds_movinfo.setColumn(0, "hngnm", "");
  585. ds_movinfo.setColumn(0, "prtm_se_nm", "");
  586. ds_movinfo.setColumn(0, "prd_sgtin", "");
  587. ds_movinfo.setColumn(0, "labelno", "");
  588. ds_movinfo.setColumn(0, "prd_valid_de", "");
  589. //ds_movinfo.setColumn(0, "storge_no", "");
  590. ds_movinfo.setColumn(0, "mnf_no", "");
  591. ds_movinfo.setColumn(0, "prd_min_distb_qy", "");
  592. ds_movinfo.setColumn(0, "prd_min_distb_unit", "");
  593. ds_movinfo.setColumn(0, "prd_tot_pce_qy", "");
  594. ds_movinfo.setColumn(0, "prd_pce_unit", "");
  595. ds_movinfo.setColumn(0, "mnf_seq", "");
  596. ds_movinfo.setColumn(0, "min_distb_qy", "");
  597. ds_movinfo.setColumn(0, "pce_qy", "");
  598. ds_movinfo.setColumn(0, "drugcd", "");
  599. grp_movinfo.ipt_prd_sgtin.setFocus();
  600. }
  601. }
  602. function cf_TRADT12204(sSvcId, nErrorCode, sErrorMsg) {
  603. arErrorCode.push(sSvcId, nErrorCode);
  604. }
  605. /****************************************************************************************
  606. * Components : Grid
  607. * Components ID : grd_movlist
  608. * Event : oncellclick
  609. * Argument : 01.obj : Object Event has occurred
  610. * : 02.e : Event Object
  611. * Description : 그리드 Click시
  612. ****************************************************************************************/
  613. function grd_movlist_oncellclick(obj:Grid, e:GridClickEventInfo)
  614. {
  615. //grid의 1row를 구입정보에 copy
  616. ds_movinfo.copyRow(0, ds_movlist, ds_movlist.rowposition);
  617. //ds_movinfo.setColumn(0, "status", "u"); //작업구분(i, u, d)
  618. //상대업체 항목 변경시 Event Call
  619. var e = new ItemChangeEventInfo;
  620. cmb_out_bssh_cd.onitemchanged.fireEvent(cmb_out_bssh_cd, e);
  621. //event call하면서 저장소번호를 null로 초기화하기 때문에 다시 넣어줌
  622. ds_movinfo.setColumn(0, "out_storge_no", ds_movlist.getColumn(ds_movlist.rowposition, "out_storge_no"));
  623. //입력불가 모드
  624. cmb_out_bssh_cd.enable = false;
  625. cmb_out_storge_no.enable = false;
  626. cmb_out_trnsfr_se_cd.enable = false;
  627. grp_movinfo.enable = false;
  628. btn_save.enable = false;
  629. btn_delete.enable = true;
  630. btn_stoc.enable = false;
  631. }
  632. /****************************************************************************************
  633. * Components : Button
  634. * Components ID : btn_new
  635. * Event : onclick
  636. * Argument : 01.obj : Object Event has occurred
  637. * : 02.e : Event Object
  638. * Description : 신규 버튼 Click시
  639. ****************************************************************************************/
  640. function btn_new_onclick(obj:Button, e:ClickEventInfo)
  641. {
  642. //입력가능 모드
  643. cmb_out_bssh_cd.enable = true;
  644. cmb_out_storge_no.enable = true;
  645. cmb_out_trnsfr_se_cd.enable = true;
  646. grp_movinfo.enable = true;
  647. btn_save.enable = true;
  648. btn_delete.enable = false;
  649. btn_stoc.enable = true;
  650. //var curdd = utlf_getCurrentDate();
  651. //ds_movinfo.setColumn(0, "outdd", curdd);
  652. //ds_movinfo clear
  653. ds_movinfo.setColumn(0, "status", "i"); //작업구분(i, u, d)
  654. ds_movinfo.setColumn(0, "gtin", "");
  655. ds_movinfo.setColumn(0, "hngnm", "");
  656. ds_movinfo.setColumn(0, "prtm_se_nm", "");
  657. ds_movinfo.setColumn(0, "prd_sgtin", "");
  658. ds_movinfo.setColumn(0, "labelno", "");
  659. ds_movinfo.setColumn(0, "prd_valid_de", "");
  660. //ds_movinfo.setColumn(0, "storge_no", "");
  661. ds_movinfo.setColumn(0, "mnf_no", "");
  662. ds_movinfo.setColumn(0, "prd_min_distb_qy", "");
  663. ds_movinfo.setColumn(0, "prd_min_distb_unit", "");
  664. ds_movinfo.setColumn(0, "prd_tot_pce_qy", "");
  665. ds_movinfo.setColumn(0, "prd_pce_unit", "");
  666. ds_movinfo.setColumn(0, "mnf_seq", "");
  667. ds_movinfo.setColumn(0, "min_distb_qy", "");
  668. ds_movinfo.setColumn(0, "pce_qy", "");
  669. ds_movinfo.setColumn(0, "drugcd", "");
  670. grp_movinfo.ipt_prd_sgtin.setFocus();
  671. }
  672. /****************************************************************************************
  673. * Components : Button
  674. * Components ID : btn_save
  675. * Event : onclick
  676. * Argument : 01.obj : Object Event has occurred
  677. * : 02.e : Event Object
  678. * Description : 저장 버튼 Click시
  679. ****************************************************************************************/
  680. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  681. {
  682. /*
  683. if( sysf_messageBox("저장하시겠습니까? " , "Q99" ) != 6 ) {
  684. return;
  685. }
  686. */
  687. //0을 null로 변경함
  688. if (ds_movinfo.getColumn(0, "min_distb_qy") == "0") ds_movinfo.setColumn(0, "min_distb_qy", "");
  689. if (ds_movinfo.getColumn(0, "pce_qy") == "0") ds_movinfo.setColumn(0, "pce_qy", "");
  690. if (utlf_isNull(ds_movinfo.getColumn(0, "out_bssh_cd"))) {
  691. sysf_messageBox("상대업체가 선택되지 않았습니다.", "E999", "");
  692. cmb_out_bssh_cd.setFocus();
  693. return;
  694. }
  695. if (utlf_isNull(ds_movinfo.getColumn(0, "out_storge_no"))) {
  696. sysf_messageBox("상대업체 저장소가 선택되지 않았습니다.", "E999", "");
  697. cmb_out_storge_no.setFocus();
  698. return;
  699. }
  700. if (utlf_isNull(ds_movinfo.getColumn(0, "out_trnsfr_se_cd"))) {
  701. sysf_messageBox("양도사유가 선택되지 않았습니다.", "E999", "");
  702. cmb_out_trnsfr_se_cd.setFocus();
  703. return;
  704. }
  705. if (utlf_isNull(ds_movinfo.getColumn(0, "outdd"))) {
  706. sysf_messageBox("양도일자가 입력되지 않았습니다.", "E999", "");
  707. grp_movinfo.ipt_outdd.setFocus();
  708. return;
  709. }
  710. if (utlf_isNull(ds_movinfo.getColumn(0, "gtin"))) {
  711. sysf_messageBox("제품코드가 입력되지 않았습니다.", "E999", "");
  712. grp_movinfo.ipt_gtin.setFocus();
  713. return;
  714. }
  715. if (utlf_isNull(ds_movinfo.getColumn(0, "drugcd"))) {
  716. sysf_messageBox("마약류 마스터에 등록되지 않은 제품코드입니다. 제품코드를 확인하십시요", "E999", "");
  717. grp_movinfo.ipt_gtin.setFocus();
  718. return;
  719. }
  720. if (utlf_transNullToEmpty(ds_movinfo.getColumn(0, "prtm_se_nm")) != "중점" && utlf_transNullToEmpty(ds_movinfo.getColumn(0, "prtm_se_nm")) != "일반") {
  721. sysf_messageBox("제품코드의 중점/일반 관리구분이 등록되지 않았습니다. 마약류 코드 정보를 확인하십시요", "E999", "");
  722. grp_movinfo.ipt_gtin.setFocus();
  723. return;
  724. }
  725. if (utlf_transNullToEmpty(ds_movinfo.getColumn(0, "prtm_se_nm")) == "중점") {
  726. if (utlf_isNull(ds_movinfo.getColumn(0, "prd_sgtin"))) {
  727. sysf_messageBox("바코드/RFID 가 입력되지 않았습니다.", "E999", "");
  728. grp_movinfo.ipt_prd_sgtin.setFocus();
  729. return;
  730. }
  731. }
  732. if (utlf_isNull(ds_movinfo.getColumn(0, "mnf_no"))) {
  733. sysf_messageBox("제조번호가 입력되지 않았습니다.", "E999", "");
  734. grp_movinfo.ipt_mnf_no.setFocus();
  735. return;
  736. }
  737. if (utlf_isNull(ds_movinfo.getColumn(0, "prd_valid_de"))) {
  738. sysf_messageBox("유효기간이 입력되지 않았습니다.", "E999", "");
  739. grp_movinfo.ipt_prd_valid_de.setFocus();
  740. return;
  741. }
  742. //if (utlf_transNullToEmpty(ds_movinfo.getColumn(0, "prtm_se_nm")) == "중점") {
  743. if (utlf_isNull(ds_movinfo.getColumn(0, "mnf_seq"))) {
  744. sysf_messageBox("일련번호가 입력되지 않았습니다.", "E999", "");
  745. grp_movinfo.ipt_mnf_seq.setFocus();
  746. return;
  747. }
  748. //}
  749. if (utlf_isNull(ds_movinfo.getColumn(0, "storge_no"))) {
  750. sysf_messageBox("저장소가 선택되지 않았습니다.", "E999", "");
  751. grp_movinfo.cmb_storge_no.setFocus();
  752. return;
  753. }
  754. /*
  755. if (utlf_transNullToEmpty(ds_movinfo.getColumn(0, "storge_no")) == utlf_transNullToEmpty(ds_movinfo.getColumn(0, "out_storge_no"))) {
  756. sysf_messageBox("입고될 저장소와 현재 저장소가 같습니다. 저장소를 확인하십시요", "E999", "");
  757. cmb_dsuse_se_cd.setFocus();
  758. return;
  759. }
  760. */
  761. //alert("[" + utlf_transNullToEmpty(ds_movinfo.getColumn(0, "labelno")) + "]");
  762. //alert("[" + utlf_transNullToEmpty(ds_movinfo.getColumn(0, "labelno")).length + "]");
  763. /*
  764. if(utlf_transNullToEmpty(ds_movinfo.getColumn(0, "labelno")).trim().length != 11){
  765. sysf_messageBox("Label No를 정확하게 입력하십시요.", "E999", "");
  766. grp_movinfo.ipt_labelno.setFocus();
  767. return;
  768. }
  769. */
  770. if (utlf_isNull(ds_movinfo.getColumn(0, "min_distb_qy")) && utlf_isNull(ds_movinfo.getColumn(0, "pce_qy"))) {
  771. sysf_messageBox("양도수량이 입력되지 않았습니다.", "E999", "");
  772. grp_movinfo.ipt_min_distb_qy.setFocus();
  773. return;
  774. }
  775. if (!utlf_isNull(ds_movinfo.getColumn(0, "pce_qy"))) {
  776. if( parseInt(ds_movinfo.getColumn(0, "prd_tot_pce_qy")) < parseInt(ds_movinfo.getColumn(0, "pce_qy")) ) {
  777. sysf_messageBox("낱개단위 양도수량이 제품낱개단위 수량보다 클 수 없습니다. ", "E999", "");
  778. grp_movinfo.ipt_pce_qy.setFocus();
  779. return;
  780. }
  781. }
  782. ds_movinfo.setColumn(0, "out_bssh_nm", ds_out_bsshlist.getColumn(cmb_out_bssh_cd.index, "bssh_nm"));
  783. //양도내역 저장(입력/삭제)
  784. var oParam = {};
  785. oParam.id = "TXADT12201";
  786. oParam.service = "pharmacydrugsumapp.NarcManagent";
  787. oParam.method = "reqExeSaveTransOutList";
  788. oParam.inds = "movlist=ds_movinfo";
  789. oParam.outds = ""; //"ds_hidden_item=item";
  790. oParam.async = false;
  791. oParam.callback = "cf_TXADT12201";
  792. tranf_submit(oParam);
  793. if (arErrorCode.pop("TXADT12201") > -1){
  794. //해당 양도내역의 양도일자, 상대업체로 조회를 실시한다.
  795. ds_send_search.setColumn(0, "outdd_from", ds_movinfo.getColumn(0, "outdd") );
  796. ds_send_search.setColumn(0, "outdd_to", ds_movinfo.getColumn(0, "outdd") );
  797. ds_send_search.setColumn(0, "out_bssh_cd", ds_movinfo.getColumn(0, "out_bssh_cd") );
  798. //조회버튼 Click Event Call
  799. var e = new ClickEventInfo;
  800. grp_search.btn_search.onclick.fireEvent(grp_search.btn_search, e);
  801. ds_movlist.selectRow(ds_movlist.rowcount-1);
  802. }
  803. grp_movinfo.ipt_prd_sgtin.setFocus();
  804. }
  805. function cf_TXADT12201(sSvcId, nErrorCode, sErrorMsg) {
  806. arErrorCode.push(sSvcId, nErrorCode);
  807. }
  808. /****************************************************************************************
  809. * Components : Edit
  810. * Components ID : ipt_prd_sgtin
  811. * Event : onkeydown
  812. * Argument : 01.obj : Object Event has occurred
  813. * : 02.e : Event Object
  814. * Description : Enter키 누를 때
  815. ****************************************************************************************/
  816. function grp_movinfo_ipt_prd_sgtin_onkeydown(obj:Edit, e:KeyEventInfo)
  817. {
  818. if(e.keycode == 13) {
  819. obj.updateToDataset();
  820. if (utlf_isNull(ds_movinfo.getColumn(0, "prd_sgtin"))) {
  821. return;
  822. }
  823. if (utlf_transNullToEmpty(ds_movinfo.getColumn(0, "outdd")).length != 8){
  824. sysf_messageBox("양도일자를 확인하십시요. ", "E999", "");
  825. grp_movinfo.ipt_outdd.setFocus();
  826. return;
  827. }
  828. var rfidfg; //RFID 여부
  829. if(obj.text.substr(0, 6) == "010880") {
  830. rfidfg = "0"; //바코드
  831. } else {
  832. rfidfg = "1"; //RFID
  833. }
  834. //바코드, RFID 리딩 후 space가 따라 들어오는 것 제거함(리더기 문제인 듯)
  835. ds_movinfo.setColumn(0, "prd_sgtin", ds_movinfo.getColumn(0, "prd_sgtin").trim() );
  836. if(rfidfg == "0") {
  837. //마약류 바코드 읽기 - 박준범 개발 -------------여기부터----------->>>>>>>>>>>>>>>>>>>>
  838. var barcode_gtin = "";
  839. var barcode_date = ""; //17:유효기간
  840. var barcode_seq = ""; //21:일련번호
  841. var barcode_jaejo = ""; //10:제조번호
  842. var barcode_two = ""; //응용식별자
  843. var indexOfSeperator = 0; //필드구분자[GS]의 시작 index
  844. var srchbarcode_1 = obj.text; //입력된 값 //ds_pcminfo.getColumn(0, "prd_sgtin"); //ds_srchbarcode.getColumn(0, "barcode");
  845. var barcode_length = srchbarcode_1.length;
  846. //alert(barcode_length)
  847. if (barcode_length > 14) {
  848. barcode_gtin = srchbarcode_1.substr(2, 14);
  849. barcode_two = srchbarcode_1.substr(16, 2);
  850. indexOfSeperator = srchbarcode_1.indexOf("[");
  851. if(barcode_two == "17") { //17: 유효기간
  852. barcode_date = srchbarcode_1.substr(18, 6);
  853. barcode_two = srchbarcode_1.substr(24, 2);
  854. if (barcode_two == "10") { //10:제조번호
  855. barcode_jaejo = srchbarcode_1.substring(26, indexOfSeperator);
  856. barcode_seq = srchbarcode_1.substring(indexOfSeperator + 6, barcode_length + 1);
  857. }
  858. else if (barcode_two == "21") { //21:일련번호
  859. barcode_seq = srchbarcode_1.substring(26, indexOfSeperator);
  860. barcode_jaejo = srchbarcode_1.substring(indexOfSeperator + 6, barcode_length + 1);
  861. }
  862. }
  863. else if(barcode_two == "10") { //10:제조번호
  864. barcode_jaejo = srchbarcode_1.substring(18, indexOfSeperator);
  865. barcode_two = srchbarcode_1.substr(indexOfSeperator + 4, 2);
  866. if (barcode_two == "17") { //17: 유효기간
  867. barcode_date = srchbarcode_1.substr(indexOfSeperator + 6, 6);
  868. barcode_seq = srchbarcode_1.substring(indexOfSeperator + 6 + 8, barcode_length + 1);
  869. }
  870. }
  871. else if(barcode_two == "21") { //21:일련번호
  872. barcode_seq = srchbarcode_1.substring(18, indexOfSeperator);
  873. barcode_two = srchbarcode_1.substr(indexOfSeperator + 4, 2);
  874. if (barcode_two == "17") { //17: 유효기간
  875. barcode_date = srchbarcode_1.substr(indexOfSeperator + 6, 6);
  876. barcode_jaejo = srchbarcode_1.substring(indexOfSeperator + 6 + 8, barcode_length + 1);
  877. }
  878. }
  879. }
  880. //alert (barcode_gtin + ' : ' + barcode_date +' : ' +barcode_jaejo +' : ' + barcode_seq);
  881. //------------------------------------여기까지-------------------------<<<<<<<<<<<<<<<<<<<<
  882. //barcode안에 있는 필드구분자[GS] 를 제거함
  883. var newSgtin = ds_movinfo.getColumn(0, "prd_sgtin").replace("[GS]", "").replace("[gs]", "").replace("[Gs]", "").replace("[gS]", "");
  884. ds_movinfo.setColumn(0, "prd_sgtin", newSgtin);
  885. }
  886. ds_send_prd_sgtin.setColumn(0, "prd_sgtin", obj.value);
  887. ds_send_prd_sgtin.setColumn(0, "basedd", ds_movinfo.getColumn(0, "outdd"));
  888. ds_send_prd_sgtin.setColumn(0, "rfidfg", rfidfg); //RFID 여부
  889. //품목 정보 조회 - reqGetPrdInfo3 : basedd와 무관하게 조회
  890. var oParam = {};
  891. oParam.id = "TRADT12115";
  892. oParam.service = "pharmacydrugsumapp.NarcManagent";
  893. oParam.method = "reqGetPrdInfo3";
  894. oParam.inds = "req=ds_send_prd_sgtin";
  895. oParam.outds = "ds_prdinfo=prdinfo";
  896. oParam.async = false;
  897. oParam.callback = "cf_TRADT12115";
  898. tranf_submit(oParam);
  899. if (arErrorCode.pop("TRADT12115") > -1){
  900. ds_movinfo.setColumn(0, "gtin", ds_prdinfo.getColumn(0, "gtin"));
  901. ds_movinfo.setColumn(0, "hngnm", ds_prdinfo.getColumn(0, "hngnm"));
  902. ds_movinfo.setColumn(0, "prtm_se_nm", ds_prdinfo.getColumn(0, "prtm_se_nm"));
  903. //ds_movinfo.setColumn(0, "storge_no", "");
  904. if(rfidfg == "0") { //바코드
  905. ds_movinfo.setColumn(0, "prd_valid_de", '20' + barcode_date);
  906. ds_movinfo.setColumn(0, "mnf_no", barcode_jaejo);
  907. ds_movinfo.setColumn(0, "mnf_seq", barcode_seq);
  908. } else { //RFID
  909. ds_movinfo.setColumn(0, "prd_valid_de", "");
  910. ds_movinfo.setColumn(0, "mnf_no", "");
  911. ds_movinfo.setColumn(0, "mnf_seq", ds_prdinfo.getColumn(0, "barsnum_d"));
  912. }
  913. ds_movinfo.setColumn(0, "prd_min_distb_qy", ds_prdinfo.getColumn(0, "prd_min_distb_qy"));
  914. ds_movinfo.setColumn(0, "prd_min_distb_unit", ds_prdinfo.getColumn(0, "prd_min_distb_unit"));
  915. ds_movinfo.setColumn(0, "prd_tot_pce_qy", ds_prdinfo.getColumn(0, "prd_tot_pce_qy"));
  916. ds_movinfo.setColumn(0, "prd_pce_unit", ds_prdinfo.getColumn(0, "prd_pce_unit"));
  917. if(utlf_isNull(ds_movinfo.getColumn(0, "pce_qy"))) {
  918. ds_movinfo.setColumn(0, "min_distb_qy", "1"); //기본을 1개로 setting.
  919. }
  920. //ds_movinfo.setColumn(0, "pce_qy", "");
  921. ds_movinfo.setColumn(0, "drugcd", ds_prdinfo.getColumn(0, "drugcd"));
  922. //Label No가 입력된 경우에만 저장 Routine을 타도록 한다.
  923. //if(utlf_transNullToEmpty(ds_movinfo.getColumn(0, "labelno")).trim().length == 0) {
  924. // grp_movinfo.ipt_labelno.setFocus();
  925. //} else {
  926. //바코드 스캔시 자동저장
  927. if(ds_send_search.getColumn(0, "autofg") == "true") { //자동저장 여부가 true일 때
  928. //저장버튼 Click Event Call
  929. var e = new ClickEventInfo;
  930. btn_save.onclick.fireEvent(btn_save, e);
  931. }
  932. //}
  933. } else {
  934. //ds_movinfo clear
  935. ds_movinfo.setColumn(0, "status", "i"); //작업구분(i, u, d)
  936. ds_movinfo.setColumn(0, "gtin", "");
  937. ds_movinfo.setColumn(0, "hngnm", "");
  938. ds_movinfo.setColumn(0, "prtm_se_nm", "");
  939. //ds_movinfo.setColumn(0, "prd_sgtin", "");
  940. ds_movinfo.setColumn(0, "prd_valid_de", "");
  941. //ds_movinfo.setColumn(0, "storge_no", "");
  942. ds_movinfo.setColumn(0, "mnf_no", "");
  943. ds_movinfo.setColumn(0, "prd_min_distb_qy", "");
  944. ds_movinfo.setColumn(0, "prd_min_distb_unit", "");
  945. ds_movinfo.setColumn(0, "prd_tot_pce_qy", "");
  946. ds_movinfo.setColumn(0, "prd_pce_unit", "");
  947. ds_movinfo.setColumn(0, "mnf_seq", "");
  948. ds_movinfo.setColumn(0, "min_distb_qy", "");
  949. ds_movinfo.setColumn(0, "pce_qy", "");
  950. ds_movinfo.setColumn(0, "drugcd", "");
  951. grp_movinfo.ipt_prd_sgtin.setFocus();
  952. }
  953. }
  954. }
  955. function cf_TRADT12115(sSvcId, nErrorCode, sErrorMsg) {
  956. arErrorCode.push(sSvcId, nErrorCode);
  957. }
  958. /****************************************************************************************
  959. * Components : Button
  960. * Components ID : btn_delete
  961. * Event : onclick
  962. * Argument : 01.obj : Object Event has occurred
  963. * : 02.e : Event Object
  964. * Description : 삭제 버튼 Click시
  965. ****************************************************************************************/
  966. function btn_delete_onclick(obj:Button, e:ClickEventInfo)
  967. {
  968. if( sysf_messageBox("해당 양도정보를 삭제하시겠습니까? " , "Q99" ) != 6 ) {
  969. return;
  970. }
  971. ds_movinfo.setColumn(0, "status", "d"); //작업구분(i, u, d)
  972. //양도내역 저장(입력/삭제)
  973. var oParam = {};
  974. oParam.id = "TXADT12201";
  975. oParam.service = "pharmacydrugsumapp.NarcManagent";
  976. oParam.method = "reqExeSaveTransOutList";
  977. oParam.inds = "movlist=ds_movinfo";
  978. oParam.outds = ""; //"ds_hidden_item=item";
  979. oParam.async = false;
  980. oParam.callback = "cf_TXADT12201";
  981. tranf_submit(oParam);
  982. if (arErrorCode.pop("TXADT12201") > -1){
  983. //sysf_messageBox("삭제되었습니다. ", "I999", "");
  984. //조회버튼 Click Event Call
  985. var e = new ClickEventInfo;
  986. grp_search.btn_search.onclick.fireEvent(grp_search.btn_search, e);
  987. }
  988. }
  989. /****************************************************************************************
  990. * Components : Button
  991. * Components ID : btn_gtin
  992. * Event : onclick
  993. * Argument : 01.obj : Object Event has occurred
  994. * : 02.e : Event Object
  995. * Description : 제품코드 버튼 Click시
  996. ****************************************************************************************/
  997. function grp_movinfo_btn_gtin_onclick(obj:Button, e:ClickEventInfo)
  998. {
  999. ds_temp_receivedata.setColumn(0,"receiveref","ds_movinfo");
  1000. ds_temp_receivedata.setColumn(0,"receive_drugcd","drugcd");
  1001. ds_temp_receivedata.setColumn(0,"receive_hngnm","hngnm");
  1002. ds_temp_receivedata.setColumn(0,"receive_gtin","gtin");
  1003. ds_temp_receivedata.setColumn(0,"receive_prtm_se_nm","prtm_se_nm");
  1004. ds_temp_receivedata.setColumn(0,"receive_prd_min_distb_qy","prd_min_distb_qy");
  1005. ds_temp_receivedata.setColumn(0,"receive_prd_min_distb_unit","prd_min_distb_unit");
  1006. ds_temp_receivedata.setColumn(0,"receive_prd_tot_pce_qy","prd_tot_pce_qy");
  1007. ds_temp_receivedata.setColumn(0,"receive_prd_pce_unit","prd_pce_unit");
  1008. ds_temp_receivedata.setColumn(0,"basedd",""); //ds_movinfo.getColumn(0, "outdd")
  1009. var objArg = new Object();
  1010. objArg.arg_ds_temp_receivedata = ds_temp_receivedata;
  1011. frmf_modal("SMADT12120","SMADT12120", objArg, "", "", 100, 150, "", "", "", "", "", "M");
  1012. }
  1013. /****************************************************************************************
  1014. * Components : Edit
  1015. * Components ID : ipt_pce_qy
  1016. * Event : onclick
  1017. * Argument : 01.obj : Object Event has occurred
  1018. * : 02.e : Event Object
  1019. * Description : text change 시
  1020. ****************************************************************************************/
  1021. function grp_movinfo_ipt_pce_qy_ontextchange(obj:Edit, e:TextChangeEventInfo)
  1022. {
  1023. ds_movinfo.setColumn(0, "min_distb_qy", "");
  1024. }
  1025. /****************************************************************************************
  1026. * Components : Edit
  1027. * Components ID : ipt_min_distb_qy
  1028. * Event : onclick
  1029. * Argument : 01.obj : Object Event has occurred
  1030. * : 02.e : Event Object
  1031. * Description : text change 시
  1032. ****************************************************************************************/
  1033. function grp_movinfo_ipt_min_distb_qy_ontextchange(obj:Edit, e:TextChangeEventInfo)
  1034. {
  1035. ds_movinfo.setColumn(0, "pce_qy", "");
  1036. }
  1037. /****************************************************************************************
  1038. * Components : Dataset
  1039. * Components ID : ds_send_search
  1040. * Event : oncolumnchanged
  1041. * Argument : 01.obj : Object Event has occurred
  1042. * : 02.e : Event Object
  1043. * Description : 컬럼의 값 변경시
  1044. ****************************************************************************************/
  1045. function ds_send_search_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  1046. {
  1047. if(e.columnid == "autofg") {
  1048. if(e.newvalue == "true") {
  1049. grp_movinfo.ipt_min_distb_qy.enable = false;
  1050. grp_movinfo.ipt_pce_qy.enable = false;
  1051. } else {
  1052. grp_movinfo.ipt_min_distb_qy.enable = true;
  1053. grp_movinfo.ipt_pce_qy.enable = true;
  1054. }
  1055. }
  1056. else if(e.columnid == "outdd_from" || e.columnid == "outdd_to" || e.columnid == "out_bssh_cd" || e.columnid == "prtm_se_nm" ) {
  1057. //양도정보를 clear 하기위해 신규 버튼 Click시 Event Call
  1058. var e = new ClickEventInfo;
  1059. btn_new.onclick.fireEvent(btn_new, e);
  1060. //Grid Clear
  1061. ds_movlist.clearData();
  1062. }
  1063. else if(e.columnid == "drugcd") {
  1064. if(e.newvalue != e.oldvalue) {
  1065. obj.setColumn(0, "hngnm", "");
  1066. obj.setColumn(0, "gtin", "");
  1067. }
  1068. }
  1069. }
  1070. function grp_search_btn_backward_onclick(obj:Button, e:ClickEventInfo)
  1071. {
  1072. var curdd = utlf_getCurrentDate();
  1073. ds_send_search.setColumn(0, "outdd_from", utlf_addDate(ds_send_search.getColumn(0, "outdd_from"), -1) );
  1074. ds_send_search.setColumn(0, "outdd_to", utlf_addDate(ds_send_search.getColumn(0, "outdd_to"), -1) );
  1075. }
  1076. function grp_search_btn_today_onclick(obj:Button, e:ClickEventInfo)
  1077. {
  1078. var curdd = utlf_getCurrentDate();
  1079. ds_send_search.setColumn(0, "outdd_from", curdd );
  1080. ds_send_search.setColumn(0, "outdd_to", curdd );
  1081. }
  1082. function grp_search_btn_forward_onclick(obj:Button, e:ClickEventInfo)
  1083. {
  1084. var curdd = utlf_getCurrentDate();
  1085. ds_send_search.setColumn(0, "outdd_from", utlf_addDate(ds_send_search.getColumn(0, "outdd_from"), 1) );
  1086. ds_send_search.setColumn(0, "outdd_to", utlf_addDate(ds_send_search.getColumn(0, "outdd_to"), 1) );
  1087. }
  1088. /****************************************************************************************
  1089. * Components : EditMask
  1090. * Components ID : ipt_labelno
  1091. * Event : onkeydown
  1092. * Argument : 01.obj : Object Event has occurred
  1093. * : 02.e : Event Object
  1094. * Description : Enter키 누를 때
  1095. ****************************************************************************************/
  1096. function grp_movinfo_ipt_labelno_onkeydown(obj:MaskEdit, e:KeyEventInfo)
  1097. {
  1098. /*
  1099. if(e.keycode == 13) {
  1100. obj.updateToDataset();
  1101. //바코드/RFID 가 입력된 경우에만 저장 Routine을 타도록 한다.
  1102. if(utlf_transNullToEmpty(ds_movinfo.getColumn(0, "prd_sgtin")).trim().length == 0) {
  1103. grp_movinfo.ipt_prd_sgtin.setFocus();
  1104. } else {
  1105. //바코드 스캔시 자동저장
  1106. if(ds_send_search.getColumn(0, "autofg") == "true") { //자동저장 여부가 true일 때
  1107. //저장버튼 Click Event Call
  1108. var e = new ClickEventInfo;
  1109. btn_save.onclick.fireEvent(btn_save, e);
  1110. }
  1111. }
  1112. }
  1113. */
  1114. }
  1115. /****************************************************************************************
  1116. * Components : Button
  1117. * Components ID : btn_send
  1118. * Event : onclick
  1119. * Argument : 01.obj : Object Event has occurred
  1120. * : 02.e : Event Object
  1121. * Description : 전송 버튼 Click시
  1122. ****************************************************************************************/
  1123. function grp_button_btn_send_onclick(obj:Button, e:ClickEventInfo)
  1124. {
  1125. if( sysf_messageBox("양도일자 : " + grp_search.ipt_outdd_from.text + " ~ " + grp_search.ipt_outdd_to.text + "\n\n" +
  1126. "중점/일반 관리구분 : " + grp_search.cmb_prtm_se_nm.text + "\n\n\n\n" +
  1127. "해당 기간 미전송 자료를 전송하겠습니까? " + "\n\n" +
  1128. "※ 전송 이후 수정 및 취소가 불가하니 유의하시기 바랍니다. ", "Q99" ) != 6 ) {
  1129. return;
  1130. }
  1131. ds_send_search.setColumn(0, "rpt_se_cd", "TNT"); //보고구분코드 : TNT 양도보고
  1132. //양도 내역 전송
  1133. var oParam = {};
  1134. oParam.id = "TXADT12133";
  1135. oParam.service = "pharmacydrugsumapp.NarcManagent";
  1136. oParam.method = "reqExeNarcDataSend";
  1137. oParam.inds = "req=ds_send_search";
  1138. oParam.outds = ""; //"ds_hidden_item=item";
  1139. oParam.async = false;
  1140. oParam.callback = "cf_TXADT12133";
  1141. tranf_submit(oParam);
  1142. if (arErrorCode.pop("TXADT12133") > -1){
  1143. sysf_messageBox("처리되었습니다. ", "I999", "");
  1144. //조회버튼 Click Event Call
  1145. var e = new ClickEventInfo;
  1146. grp_search.btn_search.onclick.fireEvent(grp_search.btn_search, e);
  1147. }
  1148. }
  1149. function cf_TXADT12133(sSvcId, nErrorCode, sErrorMsg) {
  1150. arErrorCode.push(sSvcId, nErrorCode);
  1151. }
  1152. /****************************************************************************************
  1153. * Components : Button
  1154. * Components ID : btn_gtin
  1155. * Event : onclick
  1156. * Argument : 01.obj : Object Event has occurred
  1157. * : 02.e : Event Object
  1158. * Description : 제품코드 버튼 Click시
  1159. ****************************************************************************************/
  1160. function grp_search_btn_gtin_onclick(obj:Button, e:ClickEventInfo)
  1161. {
  1162. ds_temp_receivedata.setColumn(0,"receiveref","ds_send_search");
  1163. ds_temp_receivedata.setColumn(0,"receive_drugcd","drugcd");
  1164. ds_temp_receivedata.setColumn(0,"receive_hngnm","hngnm");
  1165. ds_temp_receivedata.setColumn(0,"receive_gtin","gtin");
  1166. ds_temp_receivedata.setColumn(0,"receive_prtm_se_nm",""); //prtm_se_nm
  1167. ds_temp_receivedata.setColumn(0,"receive_prd_min_distb_qy","prd_min_distb_qy");
  1168. ds_temp_receivedata.setColumn(0,"receive_prd_min_distb_unit","prd_min_distb_unit");
  1169. ds_temp_receivedata.setColumn(0,"receive_prd_tot_pce_qy","prd_tot_pce_qy");
  1170. ds_temp_receivedata.setColumn(0,"receive_prd_pce_unit","prd_pce_unit");
  1171. ds_temp_receivedata.setColumn(0,"basedd",""); //utlf_getCurrentDate() //ds_send_search.getColumn(0, "indd_to")
  1172. var objArg = new Object();
  1173. objArg.arg_ds_temp_receivedata = ds_temp_receivedata;
  1174. frmf_modal("SMADT12120","SMADT12120", objArg, "", "", 100, 150, "", "", "", "", "", "M");
  1175. }
  1176. function grp_search_ipt_drugcd_onkeydown(obj:Edit, e:KeyEventInfo)
  1177. {
  1178. if(e.keycode == 13) {
  1179. obj.updateToDataset();
  1180. }
  1181. }
  1182. /****************************************************************************************
  1183. * Components : Button
  1184. * Components ID : btn_stoc
  1185. * Event : onclick
  1186. * Argument : 01.obj : Object Event has occurred
  1187. * : 02.e : Event Object
  1188. * Description : 제품재고조회 버튼 Click시
  1189. ****************************************************************************************/
  1190. function btn_stoc_onclick(obj:Button, e:ClickEventInfo)
  1191. {
  1192. ds_temp_receivedata.setColumn(0,"receiveref","ds_movinfo");
  1193. ds_temp_receivedata.setColumn(0,"receive_drugcd","drugcd");
  1194. ds_temp_receivedata.setColumn(0,"receive_hngnm","hngnm");
  1195. ds_temp_receivedata.setColumn(0,"receive_gtin","gtin");
  1196. ds_temp_receivedata.setColumn(0,"receive_prtm_se_nm","prtm_se_nm");
  1197. ds_temp_receivedata.setColumn(0,"receive_prd_min_distb_qy","prd_min_distb_qy");
  1198. ds_temp_receivedata.setColumn(0,"receive_prd_min_distb_unit","prd_min_distb_unit");
  1199. ds_temp_receivedata.setColumn(0,"receive_prd_tot_pce_qy","prd_tot_pce_qy");
  1200. ds_temp_receivedata.setColumn(0,"receive_prd_pce_unit","prd_pce_unit");
  1201. ds_temp_receivedata.setColumn(0,"basedd",utlf_getCurrentDate()); //ds_send_search.getColumn(0, "indd_to")
  1202. ds_temp_receivedata.setColumn(0,"receive_prd_sgtin","prd_sgtin");
  1203. ds_temp_receivedata.setColumn(0,"receive_prd_valid_de","prd_valid_de");
  1204. ds_temp_receivedata.setColumn(0,"receive_mnf_no","mnf_no");
  1205. ds_temp_receivedata.setColumn(0,"receive_mnf_seq","mnf_seq");
  1206. ds_temp_receivedata.setColumn(0,"receive_labelno","labelno");
  1207. ds_temp_receivedata.setColumn(0,"receive_storge_no","storge_no");
  1208. var objArg = new Object();
  1209. objArg.arg_ds_temp_receivedata = ds_temp_receivedata;
  1210. frmf_modal("SMADT12190","SMADT12190", objArg, "", "", 100, 150, "", "", "", "", "", "M");
  1211. }
  1212. /****************************************************************************************
  1213. * Components : Combo
  1214. * Components ID : cmb_out_bssh_cd
  1215. * Event : onitemchanged
  1216. * Argument : 01.obj : Object Event has occurred
  1217. * : 02.e : Event Object
  1218. * Description : 상대업체 항목 변경시
  1219. ****************************************************************************************/
  1220. function cmb_out_bssh_cd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1221. {
  1222. ds_send_opp_bssh.setColumn(0, "opp_bssh_cd", cmb_out_bssh_cd.value);
  1223. //상대업체 저장소 목록 조회
  1224. var oParam = {};
  1225. oParam.id = "TRADT12203";
  1226. oParam.service = "pharmacydrugsumapp.NarcManagent";
  1227. oParam.method = "reqGetOppBsshStorgeList";
  1228. oParam.inds = "req=ds_send_opp_bssh";
  1229. oParam.outds = "ds_out_storgelist=oppstorgelist";
  1230. oParam.async = false;
  1231. // oParam.callback = "cf_TRADT12203";
  1232. tranf_submit(oParam);
  1233. ds_movinfo.setColumn(0, "out_storge_no", "");
  1234. }
  1235. ]]></Script>
  1236. </Form>
  1237. </FDL>