SMADT12220_마약류기타출고.xfdl 67 KB

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