SMAED00200_입출고관리.xfdl 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMAED00200" position="absolute 0 0 787 712" titletext="치 기공접수" onload="SMAED00200_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 685 785 712" id="grp_btn" anchor="left bottom">
  8. <Layouts>
  9. <Layout>
  10. <Button position="absolute 3 3 59 25" id="btn_prt" class="btn6" text="출력" anchor="left bottom" onclick="grp_btn_btn_prt_onclick"/>
  11. <Button position="absolute 669 3 725 25" id="btn_save" class="btn4" text="저장" anchor="left bottom" onclick="grp_btn_btn_save_onclick"/>
  12. <Button position="absolute 729 3 785 25" id="btn_edit" class="btn4" text="삭제" anchor="left bottom" onclick="grp_btn_btn_edit_onclick"/>
  13. <Button position="absolute 597 3 665 25" id="btn_clear" class="btn4" text="초기화" anchor="left bottom" onclick="grp_btn_btn_clear_onclick"/>
  14. </Layout>
  15. </Layouts>
  16. </Div>
  17. <Div position="absolute 0 18 786 688" id="grp_main" scrollbars="autoboth" anchor="all">
  18. <Layouts>
  19. <Layout width="786" height="670">
  20. <Div position="absolute 0 7 785 47" align="align:center top;" id="grp_srch" class="div_SA" anchor="left top right">
  21. <Layouts>
  22. <Layout>
  23. <Shape position="absolute 697 9 703 31" linetype="vertical" id="line16" class="line_4" anchor="top right"/>
  24. <Button position="absolute 715 9 771 31" id="btn_select" class="btn1" text="조회" anchor="top right" onclick="grp_main_grp_srch_btn_select_onclick" taborder="3"/>
  25. <Calendar position="absolute 110 10 210 29" id="ipt_srchfromdd" class="input_essential" anchor="default" dateformat="yyyy-MM-dd" value="null" onkeydown="grp_main_grp_srch_ipt_srchfromdd_onkeydown" autoselect="true" taborder="1"/>
  26. <Static text="조회일자 :" position="absolute 15 11 101 28" id="lbl_srchsearch" class="search_name" anchor="default"/>
  27. <CheckBox position="absolute 341 9 366 29" id="bool1" anchor="default" truevalue="Y" falsevalue="N"/>
  28. <Static text="취소포함" position="absolute 366 10 440 30" id="caption75" anchor="default"/>
  29. <Calendar position="absolute 230 10 330 29" id="ipt_srchtodd" class="input_essential" anchor="default" dateformat="yyyy-MM-dd" onkeydown="grp_main_grp_srch_ipt_srchtodd_onkeydown" autoselect="true" taborder="2"/>
  30. <Static text="~" position="absolute 215 8 227 33" align="align:center middle;" id="caption3" anchor="default"/>
  31. </Layout>
  32. </Layouts>
  33. </Div>
  34. <Grid position="absolute 0 78 785 558" align="align:center middle;" id="grd_maininfo" binddataset="ds_main_inoutlist_item" anchor="all" oncelldblclick="grp_main_grd_maininfo_oncelldblclick">
  35. <Formats>
  36. <Format id="default">
  37. <Columns>
  38. <Column size="25" band="left"/>
  39. <Column size="40"/>
  40. <Column size="80"/>
  41. <Column size="150"/>
  42. <Column size="90"/>
  43. <Column size="60"/>
  44. <Column size="70"/>
  45. <Column size="90"/>
  46. <Column size="180"/>
  47. </Columns>
  48. <Rows>
  49. <Row size="24" band="head"/>
  50. <Row size="24"/>
  51. </Rows>
  52. <Band id="head">
  53. <Cell/>
  54. <Cell col="1" text="No"/>
  55. <Cell col="2" text="입/출고 구분"/>
  56. <Cell col="3" text="금속명"/>
  57. <Cell col="4" text="일 자"/>
  58. <Cell col="5" text="수 량"/>
  59. <Cell col="6" text="취소여부"/>
  60. <Cell col="7" text="취소일자"/>
  61. <Cell col="8" text="비고"/>
  62. </Band>
  63. <Band id="body">
  64. <Cell celltype="head" text="expr:currow+1"/>
  65. <Cell col="1" edittype="none" text="bind:inoutseq"/>
  66. <Cell col="2" displaytype="combo" edittype="combo" style="align:center middle;" text="bind:inoutgb" combodataset="ds_main_inoutgbcdlist_item" combocodecol="cdid" combodatacol="cdnm"/>
  67. <Cell col="3" displaytype="combo" edittype="combo" style="align:center middle;" text="bind:materialcd" combodataset="ds_main_eqmtlist_item" combocodecol="basecd" combodatacol="basecdflagdesc"/>
  68. <Cell col="4" text="bind:inoutdt"/>
  69. <Cell col="5" text="bind:inoutqty"/>
  70. <Cell col="6" text="bind:cnclyn"/>
  71. <Cell col="7" displaytype="date" text="bind:cncldt"/>
  72. <Cell col="8" displaytype="text" text="bind:bigo"/>
  73. </Band>
  74. </Format>
  75. </Formats>
  76. </Grid>
  77. <Static text="입/출고 정보" position="absolute 0 57 113 79" id="caption45" class="tit_2" anchor="default"/>
  78. <Shape position="absolute 0 73 785 79" id="line18" class="line_10" anchor="left top right"/>
  79. <Div position="absolute 0 558 785 668" id="grp_prcpinfo" enable="false" anchor="left bottom">
  80. <Layouts>
  81. <Layout width="785" height="110">
  82. <Static text="입출고 등록/삭제" position="absolute 0 10 143 31" id="caption31" class="tit_2" anchor="left bottom"/>
  83. <Shape position="absolute 0 26 785 32" id="line5" class="line_10" anchor="left bottom"/>
  84. <Static text="입/출고 일자" position="absolute 196 32 284 54" align="align:center middle;" id="lbl_rsrvdd" class="cell_1" anchor="left bottom" style=":disabled {padding:0 0 0 4;}"/>
  85. <Calendar position="absolute 288 33 421 52" id="ipt_rsrvdd" class="input_essential" anchor="left bottom"/>
  86. <Static text="입/출고 구분" position="absolute 1 57 89 79" align="align:center middle;" id="lbl_state" class="cell_1" anchor="left bottom" style=":disabled {padding:0 0 0 4;}"/>
  87. <Combo position="absolute 93 58 193 77" id="cmb_inoutgb" class="combo_search" innerdataset="@ds_main_inoutgbcdlist_item" datacolumn="cdnm" codecolumn="cdid" anchor="left bottom"/>
  88. <Static text="입/출고 수량" position="absolute 1 83 89 105" align="align:center middle;" id="caption38" class="cell_1" anchor="left bottom" style=":disabled {padding:0 0 0 4;}"/>
  89. <Static text="금 속 종 류" position="absolute 196 58 284 80" align="align:center middle;" id="caption1" class="cell_1" anchor="left bottom" style=":disabled {padding:0 0 0 4;}"/>
  90. <Combo position="absolute 288 59 421 78" id="cmb_materialcd" class="combo_search" innerdataset="@ds_main_eqmtlist_item" datacolumn="basecdflagdesc" codecolumn="basecd" anchor="left bottom"/>
  91. <Static text="입/출고 N O" position="absolute 1 31 89 53" align="align:center middle;" id="caption2" class="cell_1" anchor="left bottom" style=":disabled {padding:0 0 0 4;}"/>
  92. <Edit position="absolute 93 32 193 51" id="ipt_inoutseq" class="input_default" enable="false" anchor="left bottom"/>
  93. <Edit position="absolute 93 84 193 103" id="ipt_inoutqty" class="input_default" anchor="left bottom" onkeydown="grp_main_grp_prcpinfo_ipt_inoutqty_onkeydown" onkillfocus="grp_main_grp_prcpinfo_ipt_inoutqty_onkillfocus"/>
  94. </Layout>
  95. </Layouts>
  96. </Div>
  97. <Button position="absolute 743 564 785 584" id="btn_exec" class="btn2" text="등록" anchor="left bottom" onclick="grp_main_btn_exec_onclick"/>
  98. <Static text="비고" position="absolute 425 589 465 662" align="align:center middle;" id="lbl_bigo" class="cell_1" anchor="left bottom"/>
  99. </Layout>
  100. </Layouts>
  101. </Div>
  102. <TextArea position="absolute 469 607 785 679" id="tex_bigo" anchor="left bottom"/>
  103. <Static id="caption6" text="치기공 입/출고 관리" class="tit_1" position="absolute 0 0 200 25"/>
  104. </Layout>
  105. </Layouts>
  106. <Objects>
  107. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  108. <ColumnInfo>
  109. <Column id="hidden" type="STRING" size="256"/>
  110. </ColumnInfo>
  111. <Rows>
  112. <Row>
  113. <Col id="hidden"/>
  114. </Row>
  115. </Rows>
  116. </Dataset>
  117. <Dataset id="ds_init2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  118. <ColumnInfo/>
  119. </Dataset>
  120. <Dataset id="ds_send_globalinstance" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  121. <ColumnInfo>
  122. <Column id="instance1" type="STRING" size="256"/>
  123. </ColumnInfo>
  124. <Rows>
  125. <Row>
  126. <Col id="instance1"/>
  127. </Row>
  128. </Rows>
  129. </Dataset>
  130. <Dataset id="ds_init_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  131. <ColumnInfo>
  132. <Column id="count" type="STRING" size="256"/>
  133. </ColumnInfo>
  134. <Rows>
  135. <Row>
  136. <Col id="count"/>
  137. </Row>
  138. </Rows>
  139. </Dataset>
  140. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  141. <ColumnInfo/>
  142. </Dataset>
  143. <Dataset id="ds_init2_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  144. <ColumnInfo>
  145. <Column id="count" type="STRING" size="256"/>
  146. </ColumnInfo>
  147. </Dataset>
  148. <Dataset id="ds_main_eqmtlist_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  149. <ColumnInfo>
  150. <Column id="sortno" type="STRING" size="256"/>
  151. <Column id="basecd" type="STRING" size="256"/>
  152. <Column id="basecdflagdesc" type="STRING" size="256"/>
  153. <Column id="basecdcnts" type="STRING" size="256"/>
  154. <Column id="basesuppdeptcd" type="STRING" size="256"/>
  155. <Column id="basecdflag" type="STRING" size="256"/>
  156. </ColumnInfo>
  157. <Rows>
  158. <Row>
  159. <Col id="sortno"/>
  160. <Col id="basecd"/>
  161. <Col id="basecdflagdesc"/>
  162. <Col id="basecdcnts"/>
  163. <Col id="basesuppdeptcd"/>
  164. <Col id="basecdflag"/>
  165. </Row>
  166. </Rows>
  167. </Dataset>
  168. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  169. <ColumnInfo>
  170. <Column id="basecd" type="STRING" size="256"/>
  171. <Column id="basecdflag" type="STRING" size="256"/>
  172. </ColumnInfo>
  173. <Rows>
  174. <Row/>
  175. </Rows>
  176. </Dataset>
  177. <Dataset id="ds_main_inoutlist_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  178. <ColumnInfo>
  179. <Column id="inoutgb" type="STRING" size="256"/>
  180. <Column id="inoutseq" type="STRING" size="256"/>
  181. <Column id="materialcd" type="STRING" size="256"/>
  182. <Column id="inoutdt" type="STRING" size="256"/>
  183. <Column id="inoutqty" type="STRING" size="256"/>
  184. <Column id="cnclyn" type="STRING" size="256"/>
  185. <Column id="cncldt" type="STRING" size="256"/>
  186. <Column id="bigo" type="STRING" size="256"/>
  187. </ColumnInfo>
  188. <Rows>
  189. <Row>
  190. <Col id="inoutgb"/>
  191. <Col id="inoutseq"/>
  192. <Col id="materialcd"/>
  193. <Col id="inoutdt"/>
  194. <Col id="inoutqty"/>
  195. <Col id="cnclyn"/>
  196. <Col id="cncldt"/>
  197. <Col id="bigo"/>
  198. </Row>
  199. </Rows>
  200. </Dataset>
  201. <Dataset id="ds_main" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  202. <ColumnInfo>
  203. <Column id="stocklist" type="STRING" size="256"/>
  204. </ColumnInfo>
  205. </Dataset>
  206. <Dataset id="ds_main_stocklist_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep"/>
  207. <Dataset id="ds_main_inoutdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  208. <ColumnInfo>
  209. <Column id="inoutgb" type="STRING" size="256"/>
  210. <Column id="materialcd" type="STRING" size="256"/>
  211. <Column id="inoutdt" type="STRING" size="256"/>
  212. <Column id="inoutqty" type="STRING" size="256"/>
  213. <Column id="cnclyn" type="STRING" size="256"/>
  214. <Column id="cncldt" type="STRING" size="256"/>
  215. <Column id="bigo" type="STRING" size="256"/>
  216. <Column id="inoutseq" type="STRING" size="256"/>
  217. </ColumnInfo>
  218. <Rows>
  219. <Row>
  220. <Col id="inoutgb"/>
  221. <Col id="materialcd"/>
  222. <Col id="inoutdt"/>
  223. <Col id="inoutqty"/>
  224. <Col id="cnclyn"/>
  225. <Col id="cncldt"/>
  226. <Col id="bigo"/>
  227. <Col id="inoutseq"/>
  228. </Row>
  229. </Rows>
  230. </Dataset>
  231. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  232. <ColumnInfo/>
  233. </Dataset>
  234. <Dataset id="ds_main_inoutgbcdlist_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  235. <ColumnInfo>
  236. <Column id="cdid" type="STRING" size="256"/>
  237. <Column id="cdnm" type="STRING" size="256"/>
  238. <Column id="cdid" type="STRING" size="256"/>
  239. <Column id="cdnm" type="STRING" size="256"/>
  240. </ColumnInfo>
  241. <Rows>
  242. <Row>
  243. <Col id="cdid">1</Col>
  244. <Col id="cdnm">입고</Col>
  245. </Row>
  246. <Row>
  247. <Col id="cdid">2</Col>
  248. <Col id="cdnm">출고</Col>
  249. </Row>
  250. </Rows>
  251. </Dataset>
  252. <Dataset id="ds_send_srch" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  253. <ColumnInfo>
  254. <Column id="srchfromdt" type="STRING" size="256"/>
  255. <Column id="srchcncl" type="STRING" size="256"/>
  256. <Column id="metalcd" type="STRING" size="256"/>
  257. <Column id="useqty" type="STRING" size="256"/>
  258. <Column id="srchtodt" type="STRING" size="256"/>
  259. <Column id="inoutseq" type="STRING" size="256"/>
  260. <Column id="srchmaterialcd" type="STRING" size="256"/>
  261. </ColumnInfo>
  262. <Rows>
  263. <Row>
  264. <Col id="srchfromdt"/>
  265. <Col id="srchcncl"/>
  266. <Col id="metalcd"/>
  267. <Col id="useqty"/>
  268. <Col id="srchtodt"/>
  269. <Col id="inoutseq"/>
  270. <Col id="srchmaterialcd"/>
  271. </Row>
  272. </Rows>
  273. </Dataset>
  274. <Dataset id="ds_temp_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  275. <ColumnInfo>
  276. <Column id="count" type="STRING" size="256"/>
  277. </ColumnInfo>
  278. <Rows>
  279. <Row>
  280. <Col id="count"/>
  281. </Row>
  282. </Rows>
  283. </Dataset>
  284. <Dataset id="ds_hidden_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  285. </Objects>
  286. <Bind>
  287. <BindItem id="item0" compid="grp_main.grp_srch.ipt_srchfromdd" propid="value" datasetid="ds_send_srch" columnid="srchfromdt"/>
  288. <BindItem id="item1" compid="grp_main.grp_srch.bool1" propid="value" datasetid="ds_send_srch" columnid="srchcncl"/>
  289. <BindItem id="item2" compid="grp_main.grp_srch.ipt_srchtodd" propid="value" datasetid="ds_send_srch" columnid="srchtodt"/>
  290. <BindItem id="item3" compid="grp_main.grp_prcpinfo.ipt_rsrvdd" propid="value" datasetid="ds_main_inoutdata" columnid="inoutdt"/>
  291. <BindItem id="item4" compid="grp_main.grp_prcpinfo.cmb_inoutgb" propid="value" datasetid="ds_main_inoutdata" columnid="inoutgb"/>
  292. <BindItem id="item5" compid="grp_main.grp_prcpinfo.cmb_materialcd" propid="value" datasetid="ds_main_inoutdata" columnid="materialcd"/>
  293. <BindItem id="item6" compid="grp_main.grp_prcpinfo.ipt_inoutseq" propid="value" datasetid="ds_main_inoutdata" columnid="inoutseq"/>
  294. <BindItem id="item7" compid="grp_main.grp_prcpinfo.ipt_inoutqty" propid="value" datasetid="ds_main_inoutdata" columnid="inoutqty"/>
  295. <BindItem id="item8" compid="tex_bigo" propid="value" datasetid="ds_main_inoutdata" columnid="bigo"/>
  296. </Bind>
  297. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  298. * System Name :
  299. * Job Name :
  300. * Creator :
  301. * Make Date : 2016-09-30
  302. * Description :
  303. *---------------------------------------------------------------------------------------
  304. * Modify Date Modifier Modify Description
  305. *---------------------------------------------------------------------------------------
  306. * 2016-09-30 Live Converter TF->XP
  307. *
  308. *---------------------------------------------------------------------------------------
  309. ****************************************************************************************/
  310. //=======================================================================================
  311. // Lib Include
  312. //---------------------------------------------------------------------------------------
  313. include "com_commonxp::comm_main.xjs";
  314. include "ast_examcurexp::AEZ0001.xjs";
  315. //include "ast_dentalcraftxp::dentalcraftcombolist.xjs";
  316. //=======================================================================================
  317. // Global Form Variable
  318. //---------------------------------------------------------------------------------------
  319. var arErrorCode = new HashArray();
  320. var click_useqty = 0;
  321. //=======================================================================================
  322. // Function
  323. //---------------------------------------------------------------------------------------
  324. /****************************************************************************************
  325. * Argument : N/A
  326. * Description : 콤보 초기화
  327. ****************************************************************************************/
  328. function fGetComboInit() {
  329. // 근무지코드 셋팅
  330. lf_aezfSetSuppDeptcd();
  331. ds_send_globalinstance.setColumn(0,"instance1",frmf_getParameter("AST_DEPTCD"));
  332. // 금속종류 코드 LIST(대분류)
  333. ds_send.setColumn(0,"basecdflag", "H");
  334. ds_main_eqmtlist_item.clearData();
  335. dsf_createDsRow("ds_req", [
  336. {col:"basesuppdeptcd", type:"STRING", size:256, val:ds_send_globalinstance.getColumn(0,"instance1")}
  337. , {col:"instcd", type:"STRING", size:256, val:""}
  338. , {col:"basecdflag", type:"STRING", size:256, val:"H"}
  339. ]);
  340. var oParam = {};
  341. oParam.id = "TRAED00103";
  342. oParam.service = "dentalcraftapp.DentalCraftCode";
  343. oParam.method = "reqGetEqmtCodeList";
  344. oParam.inds = "req=ds_req";
  345. oParam.outds = "ds_main_eqmtlist_item=item";
  346. oParam.async = false;
  347. //oParam.callback = "cf_TRAED00103";
  348. tranf_submit(oParam);
  349. }
  350. /****************************************************************************************
  351. * Argument : N/A
  352. * Description : 화면 기본 초기화
  353. ****************************************************************************************/
  354. function fGetScreenInit() {
  355. ds_main_inoutlist_item.clearData();
  356. ds_main_inoutdata.clearData(); ds_main_inoutdata.addRow();
  357. ds_send_srch.clearData(); ds_send_srch.addRow();
  358. grp_main.grp_prcpinfo.enable = false;
  359. ds_send_srch.setColumn( 0, "srchcncl", "N" );
  360. var curdate = utlf_getCurrentDate();
  361. ds_send_srch.setColumn( 0, "srchfromdt", curdate);
  362. ds_send_srch.setColumn( 0, "srchtodt", curdate);
  363. // 재고 LIST 조회
  364. ds_main_stocklist_item.clearData();
  365. dsf_createDsRow("ds_req", [
  366. {col:"basesuppdeptcd", type:"STRING", size:256, val:ds_send_globalinstance.getColumn(0,"instance1")}
  367. ]);
  368. var oParam = {};
  369. oParam.id = "TRAED00300";
  370. oParam.service = "dentalcraftapp.DentalCraft";
  371. oParam.method = "reqGetDentalStockList";
  372. oParam.inds = "req=ds_req";
  373. oParam.outds = "ds_main_stocklist_item=item";
  374. oParam.async = false;
  375. //oParam.callback = "cf_TRAED00300";
  376. tranf_submit(oParam);
  377. }
  378. /****************************************************************************************
  379. * Argument : N/A
  380. * Description : 입출고 LIST 조회
  381. ****************************************************************************************/
  382. function fGetInoutList() {
  383. ds_main_inoutlist_item.clearData();
  384. dsf_createDsRow("ds_req", [
  385. {col:"srchfromdt", type:"STRING", size:256, val:ds_send_srch.getColumn(0,"srchfromdt")}
  386. , {col:"srchtodt", type:"STRING", size:256, val:ds_send_srch.getColumn(0,"srchtodt")}
  387. , {col:"srchcncl", type:"STRING", size:256, val:ds_send_srch.getColumn(0,"srchcncl")}
  388. , {col:"instcd", type:"STRING", size:256, val:ds_send_globalinstance.getColumn(0,"instance1")}
  389. ]);
  390. var oParam = {};
  391. oParam.id = "TRAED00200";
  392. oParam.service = "dentalcraftapp.DentalCraft";
  393. oParam.method = "reqGetDentalInoutList";
  394. oParam.inds = "req=ds_req";
  395. oParam.outds = "ds_main_inoutlist_item=item";
  396. oParam.async = false;
  397. //oParam.callback = "cf_TRAED00200";
  398. tranf_submit(oParam);
  399. }
  400. function fStockInsert(){
  401. dsf_createDsRow("ds_req", [
  402. {col:"m", type:"STRING", size:256, val:"i"}
  403. , {col:"materialcd", type:"STRING", size:256, val:ds_main_inoutdata.getColumn(0, "materialcd")}
  404. , {col:"materialnm", type:"STRING", size:256, val:grp_main.grp_prcpinfo.ipt_inoutqty.text}
  405. , {col:"stockqty", type:"STRING", size:256, val:ds_main_inoutdata.getColumn(0, "inoutqty")}
  406. ]);
  407. var oParam = {};
  408. oParam.id = "TXAED00301";
  409. oParam.service = "dentalcraftapp.DentalCraft";
  410. oParam.method = "reqSetDentalStockInsert";
  411. oParam.inds = "req=ds_req";
  412. oParam.outds = "ds_temp_item=item";
  413. oParam.async = false;
  414. //oParam.callback = "cf_TXAED00301";
  415. tranf_submit(oParam);
  416. }
  417. /****************************************************************************************
  418. * Argument : N/A
  419. * Description : 입출고 수량변경 이벤트
  420. ****************************************************************************************/
  421. function execInoutqtyEvent() {
  422. var inoutqty = ds_main_inoutdata.getColumn(0, "inoutqty");
  423. var flag = "";
  424. flag = isNaN(inoutqty);
  425. if( flag != false ) {
  426. sysf_messageBox("수량은 숫자로", "C001");
  427. }
  428. }
  429. //=======================================================================================
  430. // Event
  431. //---------------------------------------------------------------------------------------
  432. /****************************************************************************************
  433. * Components : Form
  434. * Description : 화면 처음 초기화시 폼초기화
  435. ****************************************************************************************/
  436. function SMAED00200_onload(obj:Form, e:LoadEventInfo) {
  437. frmf_initForm(obj);
  438. //grdf_initGrid(grd_XXX);
  439. //grdf_setGridSort(grd_XXX);
  440. //grdf_setRowTypeIcon(grp_main.grd_maininfo, 0);
  441. fGetComboInit();
  442. fGetScreenInit();
  443. grp_main.grp_srch.btn_select.click();
  444. }
  445. /****************************************************************************************
  446. * Components : Button
  447. * Description : 출력
  448. ****************************************************************************************/
  449. function grp_btn_btn_prt_onclick(obj:Button, e:ClickEventInfo) {
  450. dsf_createDs("ds_rexprnt_inoutlist_item");
  451. var row = ds_main_inoutlist_item.rowcount;
  452. if( row > 0 ) {
  453. dsf_copyColInfo(ds_rexprnt_inoutlist_item,ds_main_inoutlist_item);
  454. for (var i = 0 ; i < row ; i++ ) {
  455. ds_rexprnt_inoutlist_item.copyRow(ds_rexprnt_inoutlist_item.addRow(),ds_main_inoutlist_item,i);
  456. ds_rexprnt_inoutlist_item.setColumn( i , "inoutgb" , grp_main.grd_maininfo.getCellText(i,grp_main.grd_maininfo.getBindCellIndex("body","inoutgb")) );
  457. ds_rexprnt_inoutlist_item.setColumn( i , "materialcd", grp_main.grd_maininfo.getCellText(i,grp_main.grd_maininfo.getBindCellIndex("body","materialcd")) );
  458. }
  459. var objDOM = rptf_createDOM();
  460. var objParam = new Object();
  461. rptf_setNodeListToDOM(objDOM, "/root/rexprnt/inoutlist/item" , ds_rexprnt_inoutlist_item);
  462. objParam.xml_data_XML1 = objDOM.documentElement.source;
  463. var option = "open=1;save=1;directprint=0;printdialog=1;print=1;zoom=0";
  464. rptf_exeReportPreview30(["RPAED00200"],[objParam], option);
  465. } else {
  466. sysf_messageBox("입_출고 LIST가", "I004", "조회 또는 등록 후 출력하십시오.");
  467. }
  468. }
  469. /****************************************************************************************
  470. * Components : Button
  471. * Description : 저장
  472. ****************************************************************************************/
  473. function grp_btn_btn_save_onclick(obj:Button, e:ClickEventInfo) {
  474. var selrow = ds_main_inoutlist_item.rowposition;
  475. if( dsf_getColumnNullToEmpty(ds_main_inoutdata, 0, "inoutseq") == "" ) {
  476. sysf_messageBox("등록버튼을 클릭하셔서 입_출고 데이터를 입력한 후", "C003");
  477. } else {
  478. if( dsf_getColumnNullToEmpty(ds_main_inoutdata, 0, "inoutgb") == "" ) {
  479. sysf_messageBox("입_출고 구분 데이터를", "C001");
  480. } else if ( dsf_getColumnNullToEmpty(ds_main_inoutdata, 0, "materialcd") == "" ) {
  481. sysf_messageBox("금속 종류 데이터를", "C001");
  482. } else if ( dsf_getColumnNullToEmpty(ds_main_inoutdata, 0, "inoutdt") == "" ) {
  483. sysf_messageBox("입_출고 일자 데이터를", "C001");
  484. } else if ( dsf_getColumnNullToEmpty(ds_main_inoutdata, 0, "inoutqty") == "" ) {
  485. sysf_messageBox("입_출고 수량 데이터를", "C001");
  486. } else {
  487. if( ds_main_inoutlist_item.getColumn(selrow, "cnclyn") != "Y" ){
  488. ds_send_srch.setColumn( 0, "srchmaterialcd", ds_main_inoutdata.getColumn(0, "materialcd"));
  489. ds_send_srch.setColumn( 0, "inoutseq", ds_main_inoutdata.getColumn(0, "inoutseq"));
  490. // submit("TRAED00202");
  491. dsf_createDsRow("ds_req", [
  492. {col:"srchinoutseq", type:"STRING", size:256, val:ds_send_srch.getColumn(0,"inoutseq")}
  493. ]);
  494. var oParam = {};
  495. oParam.id = "TRAED00202";
  496. oParam.service = "dentalcraftapp.DentalCraft";
  497. oParam.method = "reqGetDentalInoutSeqCheck";
  498. oParam.inds = "req=ds_req";
  499. oParam.outds = "ds_init_item=item";
  500. oParam.async = false;
  501. //oParam.callback = "cf_TRAED00202";
  502. tranf_submit(oParam);
  503. if( ds_init_item.getColumn(0, "count") == 0 ) { // insert
  504. if ( sysf_messageBox("입_출고 데이터를","Q002")==6 ) {
  505. ds_main_inoutdata.setColumn( 0, "cnclyn", "N" )
  506. ds_main_inoutdata.setColumn( 0, "cncldt", "" );
  507. dsf_setFixVal(ds_main_inoutdata, "useqty:0,useqty_b:0");
  508. var oParam = {};
  509. oParam.id = "TXAED00200";
  510. oParam.service = "dentalcraftapp.DentalCraft";
  511. oParam.method = "reqSetDentalInoutInsert";
  512. oParam.inds = "req=ds_main_inoutdata";
  513. oParam.outds = "ds_temp_item=item";
  514. oParam.async = false;
  515. //oParam.callback = "cf_TXAED00200";
  516. tranf_submit(oParam);
  517. fGetInoutList();
  518. ds_main_inoutdata.clearData(); ds_main_inoutdata.addRow();
  519. }
  520. } else { // update
  521. if ( sysf_messageBox("입_출고 비고 데이터를","Q012")==6 ) {
  522. dsf_createDsRow("ds_req", [
  523. {col:"inoutseq", type:"STRING", size:256, val:ds_main_inoutdata.getColumn(0,"inoutseq")}
  524. , {col:"bigo", type:"STRING", size:256, val:ds_main_inoutdata.getColumn(0,"bigo")}
  525. ]);
  526. var oParam = {};
  527. oParam.id = "TXAED00202";
  528. oParam.service = "dentalcraftapp.DentalCraft";
  529. oParam.method = "reqSetDentalInoutUpdate";
  530. oParam.inds = "req=ds_req";
  531. oParam.outds = "ds_temp_item=item";
  532. oParam.async = false;
  533. //oParam.callback = "cf_TXAED00202";
  534. tranf_submit(oParam);
  535. ds_main_inoutdata.clearData(); ds_main_inoutdata.addRow();
  536. }
  537. }
  538. } else {
  539. sysf_messageBox("이미 삭제된 입_출고 데이터" , "E008");
  540. }
  541. }
  542. }
  543. }
  544. /****************************************************************************************
  545. * Components : Button
  546. * Description : 삭제
  547. ****************************************************************************************/
  548. function grp_btn_btn_edit_onclick(obj:Button, e:ClickEventInfo) {
  549. var selrow = ds_main_inoutlist_item.rowposition;
  550. var row = ds_main_inoutlist_item.rowcount;
  551. if( row > 0 ) {
  552. if( ds_main_inoutlist_item.getColumn(selrow, "cnclyn") != "Y" ) {
  553. if ( sysf_messageBox("입_출고 데이터를","Q001")==6 ) {
  554. ds_main_inoutdata.setColumn( 0, "cnclyn", "Y")
  555. ds_main_inoutdata.setColumn( 0, "cncldt", utlf_getCurrentDate());
  556. var oParam = {};
  557. oParam.id = "TXAED00201";
  558. oParam.service = "dentalcraftapp.DentalCraft";
  559. oParam.method = "reqSetDentalInoutDelete";
  560. oParam.inds = "req=ds_main_inoutdata";
  561. oParam.outds = "ds_temp_item=item";
  562. oParam.async = false;
  563. //oParam.callback = "cf_TXAED00201";
  564. tranf_submit(oParam);
  565. fGetInoutList();
  566. ds_main_inoutdata.clearData(); ds_main_inoutdata.addRow();
  567. }
  568. } else {
  569. sysf_messageBox("이미 삭제된 입_출고 데이터" , "E008");
  570. }
  571. } else {
  572. sysf_messageBox("삭제할 입_출고" , "E013");
  573. }
  574. }
  575. /****************************************************************************************
  576. * Components : Button
  577. * Description : 초기화
  578. ****************************************************************************************/
  579. function grp_btn_btn_clear_onclick(obj:Button, e:ClickEventInfo) {
  580. fGetComboInit();
  581. fGetScreenInit();
  582. }
  583. /****************************************************************************************
  584. * Components : Button
  585. * Description : 조회
  586. ****************************************************************************************/
  587. function grp_main_grp_srch_btn_select_onclick(obj:Button, e:ClickEventInfo) {
  588. if( dsf_getColumnNullToEmpty(ds_send_srch, 0, "srchcncl") == "" ){
  589. ds_send_srch.setColumn( 0, "srchcncl", "N" );
  590. }
  591. fGetInoutList();
  592. }
  593. /****************************************************************************************
  594. * Components : Calendar
  595. * Description : 일자입력 후 리스트 조회
  596. ****************************************************************************************/
  597. function grp_main_grp_srch_ipt_srchfromdd_onkeydown(obj:Calendar, e:KeyEventInfo) {
  598. // if( dsf_getColumnNullToEmpty(ds_send_srch, 0, "srchdt") == ""){
  599. if ( e.keycode == 13 ) {
  600. obj.updateToDataset();
  601. fGetInoutList();
  602. }
  603. // }
  604. }
  605. /****************************************************************************************
  606. * Components : Calendar
  607. * Description : 일자입력 후 리스트 조회
  608. ****************************************************************************************/
  609. function grp_main_grp_srch_ipt_srchtodd_onkeydown(obj:Calendar, e:KeyEventInfo) {
  610. // if( dsf_getColumnNullToEmpty(ds_send_srch, 0, "srchdt") == ""){
  611. if ( e.keycode == 13 ) {
  612. obj.updateToDataset();
  613. fGetInoutList();
  614. }
  615. // }
  616. }
  617. /****************************************************************************************
  618. * Components : Grid
  619. * Description : 입출고 정보 선택
  620. ****************************************************************************************/
  621. function grp_main_grd_maininfo_oncelldblclick(obj:Grid, e:GridClickEventInfo) {
  622. // var row = ds_main_inoutlist_item.rowcount;
  623. var idx = e.row;
  624. if( idx > -1 ) {
  625. ds_main_inoutdata.copyRow( 0, ds_main_inoutlist_item, idx);
  626. } else {
  627. sysf_messageBox("조회된 입_출고 정보가", "I004");
  628. }
  629. click_useqty = ds_main_inoutdata.getColumn(0, "inoutqty");
  630. grp_main.grp_prcpinfo.enable = false;
  631. }
  632. /****************************************************************************************
  633. * Components : Button
  634. * Description : 등록
  635. ****************************************************************************************/
  636. function grp_main_btn_exec_onclick(obj:Button, e:ClickEventInfo) {
  637. ds_main_inoutdata.clearData(); ds_main_inoutdata.addRow();
  638. grp_main.grp_prcpinfo.enable = true;
  639. grp_main.grp_prcpinfo.ipt_inoutseq.enable = false;
  640. //입_출고NO 가져오기
  641. var curdate = utlf_getCurrentDate();
  642. dsf_createDsRow("ds_req", [
  643. {col:"instcd", type:"STRING", size:256, val:ds_send_globalinstance.getColumn(0,"instance1")}
  644. ]);
  645. var oParam = {};
  646. oParam.id = "TRAED00201";
  647. oParam.service = "dentalcraftapp.DentalCraft";
  648. oParam.method = "reqGetDentalInoutSeq";
  649. oParam.inds = "req=ds_req";
  650. oParam.outds = "ds_hidden_item=item";
  651. oParam.async = false;
  652. //oParam.callback = "cf_TRAED00201";
  653. tranf_submit(oParam);
  654. ds_main_inoutdata.setColumn( 0, "inoutdt", curdate);
  655. if(dsf_getColumnNullToEmpty(ds_hidden_item, 0, "inoutseq") == "" ) {
  656. ds_main_inoutdata.setColumn( 0, "inoutseq", "1");
  657. } else {
  658. ds_main_inoutdata.setColumn( 0, "inoutseq", ds_hidden_item.getColumn(0, "inoutseq") );
  659. }
  660. }
  661. /****************************************************************************************
  662. * Components : Edit
  663. * Description : 입출고 수량 변경
  664. ****************************************************************************************/
  665. function grp_main_grp_prcpinfo_ipt_inoutqty_onkeydown(obj:Edit, e:KeyEventInfo) {
  666. if(e.keycode == 13) {
  667. obj.updateToDataset();
  668. execInoutqtyEvent();
  669. }
  670. }
  671. /****************************************************************************************
  672. * Components : Edit
  673. * Description : 입출고 수량 변경
  674. ****************************************************************************************/
  675. function grp_main_grp_prcpinfo_ipt_inoutqty_onkillfocus(obj:Edit, e:KillFocusEventInfo) {
  676. execInoutqtyEvent();
  677. }
  678. ]]></Script>
  679. </Form>
  680. </FDL>