SMLQF00600_QC물질관리.xfdl 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLQF00600" position="absolute 0 0 1256 813" titletext="QC물질관리" onload="SMLQF00600_onload" oninit="SMLQF00600_oninit">
  5. <Layouts>
  6. <Layout>
  7. <Div id="group4" position="absolute 736 5 1256 25" anchor="left top right" positiontype="position">
  8. <Layouts>
  9. <Layout>
  10. <Button id="btn_init" class="btn4" position="absolute 450 0 519 20" anchor="top right" text="초기화" onclick="group4_btn_init_onclick" positiontype="position"/>
  11. <Button id="btn_save" class="btn4" position="absolute 388 0 444 20" anchor="top right" text="저장" onclick="group4_btn_save_onclick" positiontype="position"/>
  12. </Layout>
  13. </Layouts>
  14. </Div>
  15. <Static id="caption6" text="QC물질관리" class="tit_1" position="absolute 0 0 120 25"/>
  16. <Static id="caption1" text="QC물질 목록" class="tit_2" position="absolute 1 80 111 96" style="align:left middle;"/>
  17. <Div id="group2" anchor="left top right" taborder="1" style="align:center top;" class="div_SA" position="absolute 0 25 1256 67">
  18. <Layouts>
  19. <Layout>
  20. <Static id="caption5" text="조회구분 :" class="search_name" position="absolute 16 10 92 30"/>
  21. <Shape id="line3" linetype="vertical" class="line_4" position="absolute 1108 6 1108 28"/>
  22. <Combo id="cmb_refflag" taborder="1" value="1" text="사용자료" innerdataset="@ds_refgbn" codecolumn="value" datacolumn="label" index="0" onitemchanged="group2_cmb_refflag_onitemchanged" class="combo_search" position="absolute 100 12 221 32"/>
  23. <Edit id="ipt_searchtext" taborder="2" onkeydown="group3_group2_ipt_searchtext_onkeydown" class="input_s_button" position="absolute 1039 10 1159 30" style="align:left middle;" anchor="top right"/>
  24. <Static id="caption7" text="검색구분 :" class="search_name" position="absolute 842 10 916 30" style="align:left middle;" anchor="top right"/>
  25. <Combo id="cmb_searchflag" taborder="3" value="1" text="물질코드" innerdataset="@ds_searchgbn" codecolumn="value" datacolumn="label" index="0" class="combo_search" position="absolute 916 10 1036 30" style="align:left middle;" anchor="top right"/>
  26. <Button id="btn_ref" taborder="4" text="조회" onclick="group3_group2_btn_ref_onclick" class="btn1" position="absolute 1187 10 1244 30" anchor="top right"/>
  27. <Combo id="cmb_refflag00" taborder="5" innerdataset="@ds_grid_grd_sect" codecolumn="sectcd" datacolumn="sectscrnnm" index="-1" class="combo_search" position="absolute 344 12 465 32" onitemchanged="group2_cmb_refflag00_onitemchanged"/>
  28. <Combo id="cmb_refflag01" taborder="6" value="1" text="사용자료" innerdataset="@ds_grd_eqmtcd" codecolumn="eqmtcd" datacolumn="eqmtabbrnm" index="0" class="combo_search" position="absolute 596 12 717 32"/>
  29. <Static id="caption00" text="시행부서" class="search_name" position="absolute 274 12 342 32"/>
  30. <Static id="caption01" text="장비명" class="search_name" position="absolute 538 12 590 32"/>
  31. </Layout>
  32. </Layouts>
  33. </Div>
  34. <Button id="btn_end" taborder="2" text="물질종료" onclick="group3_btn_end_onclick" class="btn2" position="absolute 1046 74 1114 94" anchor="top right"/>
  35. <Button id="button1" taborder="3" text="물질변경" onclick="group3_button1_onclick" class="btn2" position="absolute 1116 74 1184 94" anchor="top right"/>
  36. <Button id="btn_addrow" taborder="4" text="물질추가" onclick="group3_btn_addrow_onclick" class="btn2" position="absolute 1186 74 1256 94" anchor="top right"/>
  37. <Grid id="grd_matlist" taborder="5" binddataset="ds_grid_grd_matlist" autoenter="select" useinputpanel="false" cellsizingtype="col" autofittype="col" position="absolute 0 100 1256 805" anchor="all">
  38. <Formats>
  39. <Format id="default">
  40. <Columns>
  41. <Column size="30"/>
  42. <Column size="150"/>
  43. <Column size="90"/>
  44. <Column size="90"/>
  45. <Column size="90"/>
  46. <Column size="160"/>
  47. <Column size="90"/>
  48. <Column size="84"/>
  49. <Column size="84"/>
  50. <Column size="90"/>
  51. <Column size="84"/>
  52. <Column size="90"/>
  53. <Column size="0"/>
  54. <Column size="122"/>
  55. <Column size="0"/>
  56. <Column size="79"/>
  57. <Column size="99"/>
  58. </Columns>
  59. <Rows>
  60. <Row size="24" band="head"/>
  61. <Row size="24"/>
  62. </Rows>
  63. <Band id="head">
  64. <Cell/>
  65. <Cell col="1" text="QC물질코드"/>
  66. <Cell col="2" text="레벨코드"/>
  67. <Cell col="3" text=" 사용시작일자"/>
  68. <Cell col="4" text=" 사용종료일자"/>
  69. <Cell col="5" text="QC물질명"/>
  70. <Cell col="6" text="입고일자"/>
  71. <Cell col="7" text="Lot번호"/>
  72. <Cell col="8" text="OnCall Lot번호"/>
  73. <Cell col="9" text="Expire Date"/>
  74. <Cell col="10" text="제조회사"/>
  75. <Cell col="11" text="제조일자"/>
  76. <Cell col="12" text="라벨명"/>
  77. <Cell col="13" text="IF연동코드"/>
  78. <Cell col="14" text="status"/>
  79. <Cell col="15" displaytype="normal" edittype="none" text="시행부서"/>
  80. <Cell col="16" text="장비명"/>
  81. </Band>
  82. <Band id="body">
  83. <Cell celltype="head" expr="expr:currow+1"/>
  84. <Cell col="1" displaytype="text" edittype="expr:getRowType(currow) == 2 ? 'text' : 'none'" editfilter="none" style="align:left middle;" text="bind:matrcd" editlimit="10" editimemode="none"/>
  85. <Cell col="2" displaytype="combo" edittype="combo" style="align:left middle;" text="bind:levlcd" displayexpdec="-1" editlimit="2" expandshow="hide" expandsize="20" combodataset="ds_init_lb0501" combocodecol="cd" combodatacol="nm" combodisplayrowcount="20" combodisplaynulltype="nulltext" combotype="dropdown" calendardisplaynulltype="nulltext"/>
  86. <Cell col="3" displaytype="date" edittype="expr:getRowType(currow) == 2 ? 'date' : 'none'" text="bind:matrfromdd" calendardisplaynulltype="none"/>
  87. <Cell col="4" displaytype="date" edittype="expr:getRowType(currow) == 2 ? 'date' : 'none'" text="bind:matrtodd" calendardisplaynulltype="none"/>
  88. <Cell col="5" displaytype="text" edittype="text" style="align:left;" text="bind:matrnm" editlimit="50"/>
  89. <Cell col="6" displaytype="date" edittype="date" text="bind:windt" calendardisplaynulltype="none"/>
  90. <Cell col="7" displaytype="text" edittype="text" text="bind:lotno" editlimit="50"/>
  91. <Cell col="8" text="bind:oclotno"/>
  92. <Cell col="9" displaytype="date" edittype="date" text="bind:validd" calendardisplaynulltype="none"/>
  93. <Cell col="10" displaytype="text" edittype="text" text="bind:prodcmpy" editlimit="50"/>
  94. <Cell col="11" displaytype="date" edittype="date" text="bind:proddt" calendardisplaynulltype="none"/>
  95. <Cell col="12"/>
  96. <Cell col="13" displaytype="text" edittype="text" text="bind:matrifcd" editlimit="20"/>
  97. <Cell col="14" text="bind:status"/>
  98. <Cell col="15" displaytype="combo" edittype="combo" text="bind:sectcd" combodataset="ds_grid_grd_sect" combocodecol="sectcd" combodatacol="sectnm" combodisplayrowcount="15"/>
  99. <Cell col="16" displaytype="combo" edittype="combo" text="bind:eqmtcd" combodataset="ds_grd_eqmtcd" combocodecol="eqmtcd" combodatacol="eqmtnm" combodisplayrowcount="30"/>
  100. </Band>
  101. </Format>
  102. </Formats>
  103. </Grid>
  104. <Shape id="line02" class="line_10" position="absolute 0 96 1256 102" anchor="left top right" style="strokepen:3 solid #33bbbbff;"/>
  105. </Layout>
  106. </Layouts>
  107. <Objects>
  108. <Dataset id="ds_init_lb0501" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  109. <ColumnInfo>
  110. <Column id="cd" type="STRING" size="256"/>
  111. <Column id="nm" type="STRING" size="256"/>
  112. <Column id="chk" type="STRING" size="256"/>
  113. <Column id="etc01" type="STRING" size="256"/>
  114. <Column id="etc02" type="STRING" size="256"/>
  115. <Column id="etc03" type="STRING" size="256"/>
  116. <Column id="etc04" type="STRING" size="256"/>
  117. <Column id="etc05" type="STRING" size="256"/>
  118. </ColumnInfo>
  119. </Dataset>
  120. <Dataset id="ds_init_lb0000" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  121. <ColumnInfo>
  122. <Column id="cd" type="STRING" size="256"/>
  123. <Column id="nm" type="STRING" size="256"/>
  124. </ColumnInfo>
  125. </Dataset>
  126. <Dataset id="ds_searchgbn" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  127. <ColumnInfo>
  128. <Column id="label" type="STRING" size="256"/>
  129. <Column id="value" type="STRING" size="256"/>
  130. </ColumnInfo>
  131. <Rows>
  132. <Row>
  133. <Col id="label">물질코드</Col>
  134. <Col id="value">1</Col>
  135. </Row>
  136. <Row>
  137. <Col id="label">물질명</Col>
  138. <Col id="value">2</Col>
  139. </Row>
  140. </Rows>
  141. </Dataset>
  142. <Dataset id="ds_refgbn" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  143. <ColumnInfo>
  144. <Column id="label" type="STRING" size="256"/>
  145. <Column id="value" type="STRING" size="256"/>
  146. </ColumnInfo>
  147. <Rows>
  148. <Row>
  149. <Col id="label">사용자료</Col>
  150. <Col id="value">1</Col>
  151. </Row>
  152. <Row>
  153. <Col id="label">전체자료</Col>
  154. <Col id="value">2</Col>
  155. </Row>
  156. </Rows>
  157. </Dataset>
  158. <Dataset id="ds_grid_grd_matlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" onrowposchanged="ds_grid_grd_keyantilist_onrowposchanged">
  159. <ColumnInfo>
  160. <Column id="status" type="STRING" size="256"/>
  161. <column id="levlcd" type="STRING" size="256"/>
  162. <column id="levlnm" type="STRING" size="256"/>
  163. <column id="matrcd" type="STRING" size="256"/>
  164. <column id="matrnm" type="STRING" size="256"/>
  165. <column id="matrfromdd" type="STRING" size="256"/>
  166. <column id="matrtodd" type="STRING" size="256"/>
  167. <column id="prodcmpy" type="STRING" size="256"/>
  168. <column id="proddt" type="STRING" size="256"/>
  169. <column id="windt" type="STRING" size="256"/>
  170. <column id="lotno" type="STRING" size="256"/>
  171. <column id="validd" type="STRING" size="256"/>
  172. <column id="matrifcd" type="STRING" size="256"/>
  173. <Column id="userdeptcd" type="STRING" size="256"/>
  174. <Column id="oclotno" type="STRING" size="256" sumtext="OCLOT번호"/>
  175. <Column id="virtualsetflag" type="STRING" size="256"/>
  176. <Column id="edittype" type="STRING" size="256"/>
  177. <Column id="sectcd" type="STRING" size="256"/>
  178. <Column id="eqmtcd" type="STRING" size="256"/>
  179. </ColumnInfo>
  180. </Dataset>
  181. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" onrowposchanged="ds_grid_grd_keyantilist_onrowposchanged">
  182. <ColumnInfo>
  183. <column id="levlcd" type="STRING" size="256"/>
  184. <column id="levlnm" type="STRING" size="256"/>
  185. <column id="matrcd" type="STRING" size="256"/>
  186. <column id="matrnm" type="STRING" size="256"/>
  187. <column id="matrfromdd" type="STRING" size="256"/>
  188. <column id="matrtodd" type="STRING" size="256"/>
  189. <column id="prodcmpy" type="STRING" size="256"/>
  190. <column id="proddt" type="STRING" size="256"/>
  191. <column id="windt" type="STRING" size="256"/>
  192. <column id="lotno" type="STRING" size="256"/>
  193. <column id="validd" type="STRING" size="256"/>
  194. <column id="matrifcd" type="STRING" size="256"/>
  195. <Column id="tsectcd" type="STRING" size="256"/>
  196. <Column id="sectcd" type="STRING" size="256"/>
  197. <Column id="virtualsetflag" type="STRING" size="256"/>
  198. </ColumnInfo>
  199. </Dataset>
  200. <Dataset id="ds_init_lb0111" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  201. <ColumnInfo>
  202. <Column id="cd" type="STRING" size="256"/>
  203. <Column id="nm" type="STRING" size="256"/>
  204. </ColumnInfo>
  205. </Dataset>
  206. <Dataset id="ds_init_lb0106" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  207. <ColumnInfo>
  208. <Column id="cd" type="STRING" size="256"/>
  209. <Column id="nm" type="STRING" size="256"/>
  210. </ColumnInfo>
  211. </Dataset>
  212. <Dataset id="ds_init_cmb_sectcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  213. <ColumnInfo>
  214. <Column id="cd" type="STRING" size="256"/>
  215. <Column id="nm" type="STRING" size="256"/>
  216. </ColumnInfo>
  217. </Dataset>
  218. <Dataset id="ds_init_cmb_tsectcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  219. <ColumnInfo>
  220. <Column id="cd" type="STRING" size="256"/>
  221. <Column id="nm" type="STRING" size="256"/>
  222. </ColumnInfo>
  223. </Dataset>
  224. <Dataset id="ds_grid_grd_levlList" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  225. <ColumnInfo>
  226. <Column id="chk" type="STRING"/>
  227. <Column id="cd" type="STRING"/>
  228. <Column id="etc01" type="STRING"/>
  229. </ColumnInfo>
  230. </Dataset>
  231. <Dataset id="ds_grid_grd_sect" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  232. <ColumnInfo>
  233. <Column id="sectfromdd" type="STRING"/>
  234. <Column id="secttodd" type="STRING"/>
  235. <Column id="sectcd" type="STRING"/>
  236. <Column id="sectnm" type="STRING"/>
  237. <Column id="sectscrnnm" type="STRING"/>
  238. <Column id="sectabbrnm" type="STRING"/>
  239. <Column id="sectprntnm" type="STRING"/>
  240. <Column id="sectlblnm" type="STRING"/>
  241. <Column id="sectdispseq" type="STRING"/>
  242. </ColumnInfo>
  243. </Dataset>
  244. <Dataset id="ds_grd_eqmtcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  245. <ColumnInfo>
  246. <Column id="status" type="STRING" size="256"/>
  247. <Column id="eqmtfromdd" type="STRING"/>
  248. <Column id="eqmttodd" type="STRING"/>
  249. <Column id="eqmtcd" type="STRING"/>
  250. <Column id="eqmtnm" type="STRING"/>
  251. <Column id="meterno" type="STRING"/>
  252. <Column id="eqmtabbrnm" type="STRING"/>
  253. <Column id="rsltreptid" type="STRING"/>
  254. <Column id="rsltreptkind" type="STRING"/>
  255. <Column id="rsltreptresn" type="STRING"/>
  256. <Column id="retestyn" type="STRING"/>
  257. <Column id="qcyn" type="STRING"/>
  258. </ColumnInfo>
  259. </Dataset>
  260. </Objects>
  261. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  262. * System Name :
  263. * Job Name :
  264. * Creator :
  265. * Make Date : 2015-11-13
  266. * Description :
  267. *---------------------------------------------------------------------------------------
  268. * Modify Date Modifier Modify Description
  269. *---------------------------------------------------------------------------------------
  270. * 2015-11-13 Live Converter TF->XP
  271. *
  272. *---------------------------------------------------------------------------------------
  273. ****************************************************************************************/
  274. include "com_commonxp::comm_main.xjs";
  275. function SMLQF00600_onload(obj:Form, e:LoadEventInfo)
  276. {
  277. grdf_initGrid(grd_matlist);
  278. dsf_createDsRow("ds_temp_search"
  279. , [{col: "codeflag", val: "0000|"}
  280. , {col: "basecdid", val: ""}
  281. , {col: "menuparam", val: ""}]);
  282. var oParam = {};
  283. oParam.id = "TRLZZ00101";
  284. oParam.service = "diagtestapplib.DiagTestBaseInfoMngt";
  285. oParam.method = "reqGetInitCodeInfo";
  286. oParam.inds = "cond=ds_temp_search";
  287. oParam.outds = "ds_init_lb0000=0000 ds_init_lb0501=0501";
  288. oParam.async = false;
  289. tranf_submit(oParam);
  290. var basecdid = ds_init_lb0000.getColumn(0, "nm");
  291. dsf_createDsRow("ds_temp_search"
  292. , [{col: "codeflag", val: "0501|"}
  293. , {col: "basecdid", val: basecdid}
  294. , {col: "menuparam", val: ""}]);
  295. oParam = {};
  296. oParam.id = "TRLZZ00101";
  297. oParam.service = "diagtestapplib.DiagTestBaseInfoMngt";
  298. oParam.method = "reqGetInitCodeInfo";
  299. oParam.inds = "cond=ds_temp_search";
  300. oParam.outds = "ds_init_lb0501=0501";
  301. oParam.async = false;
  302. tranf_submit(oParam);
  303. ds_grid_grd_levlList.copyData(ds_init_lb0501);
  304. //ds_grid_grd_levlList.filter("cd!='00'");
  305. group2.cmb_refflag.value = "1";
  306. group2.cmb_refflag00.value = "";
  307. group2.cmb_refflag01.value = "";
  308. group2.cmb_searchflag.value = "1";
  309. group2.ipt_searchtext.value = "";
  310. grd_matlist.setFormatColProperty(grd_matlist.getBindCellIndex("body","matrtodd"), "size", 0);
  311. var sInDsName = dsf_createDsRow("ds_temp_search2"
  312. , [{col: "refgbn", val: "2"}
  313. , {col: "deptflag", val: "L"}]);
  314. trace("lee --> " + sInDsName);
  315. var oParam = {};
  316. oParam.id = "TRLLF00101";
  317. oParam.service = "diagtestbaseinfomngtapp.GeneralTestBaseInfoMngt";
  318. oParam.method = "reqGetSectList";
  319. oParam.inds = "cond="+sInDsName;
  320. oParam.outds = "ds_grid_grd_sect=getsect";
  321. oParam.async = false;
  322. oParam.callback = "cbf_SMLLF00100";
  323. tranf_submit(oParam);
  324. var sInDsName = dsf_createDsRow("ds_temp_search3", [{col: "refgbn", val : "2"}
  325. , {col: "deptflag", val: "L"}
  326. , {col: "dept", val : "00"}]);
  327. var oParam = {};
  328. oParam.id = "TRLIF00101";
  329. oParam.service = "diagtestbaseinfomngtapp.InterfaceTestBaseInfoMngt";
  330. oParam.method = "reqGetEqmtCdList";
  331. oParam.inds = "cond=" + sInDsName;
  332. oParam.outds = "ds_grd_eqmtcd=getEqmtCdList";
  333. oParam.async = false;
  334. //oParam.callback = "cf_TRLIF00101";
  335. tranf_submit(oParam);
  336. lf_getMatList(); // 일반조회
  337. }
  338. function lf_getMatList() {
  339. var refflag = group2.cmb_refflag.value;
  340. var searchflag = group2.cmb_searchflag.value;
  341. var searchtext = group2.ipt_searchtext.value;
  342. var userdeptcd = ds_init_lb0000.getColumn(0, "nm");
  343. // 시행부서 장비명 추가 2018.3.20일
  344. var refflag1 = group2.cmb_refflag00.value;
  345. var refflag2 = group2.cmb_refflag01.value;
  346. // if ( refflag1 == "undefined" )
  347. // if(utlf_isNull(refflag1))
  348. // {
  349. // utlf_transEmptyToNull(refflag1);
  350. //
  351. // }
  352. // 시행부서 장비명 추가 2018.3.20일
  353. trace(refflag1);
  354. trace(refflag2);
  355. dsf_createDsRow("ds_temp_search"
  356. , [{col: "refflag", val: refflag}
  357. , {col: "searchflag", val: searchflag}
  358. , {col: "searchtext", val: searchtext}
  359. , {col: "userdeptcd", val: userdeptcd}
  360. , {col: "refflag1", val: refflag1}
  361. , {col: "refflag2", val: refflag2}
  362. ]);
  363. var oParam = {};
  364. oParam.id = "TRLQF00601";
  365. oParam.service = "grademngtbasemngtapp.QCMaterialMngt";
  366. oParam.method = "reqGetMat";
  367. oParam.inds = "cond=ds_temp_search";
  368. oParam.outds = "ds_grid_grd_matlist=getMat";
  369. oParam.async = false;
  370. tranf_submit(oParam);
  371. }
  372. function lf_insMat(){
  373. var keyCode = "";
  374. for(var i =0; i < ds_grid_grd_matlist.rowcount; i++)
  375. {
  376. // insert 일때 체크
  377. if(ds_grid_grd_matlist.getColumn(i, "status")=="i")
  378. {
  379. if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "matrcd")))
  380. {
  381. sysf_messageBox("QC물질 코드는", "I003");
  382. return;
  383. }
  384. else if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "levlcd")))
  385. {
  386. sysf_messageBox("레벨코드는", "I003");
  387. return;
  388. }
  389. else if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "matrfromdd")))
  390. {
  391. sysf_messageBox("사용시작일자는", "I003");
  392. return;
  393. }
  394. else if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "matrnm")))
  395. {
  396. sysf_messageBox("QC물질명은", "I003");
  397. return;
  398. }
  399. else if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "matrtodd")))
  400. {
  401. if(group2.cmb_refflag.value =="2")
  402. {
  403. sysf_messageBox("사용종료일자는", "I003");
  404. return;
  405. }
  406. else
  407. {
  408. ds_grid_grd_matlist.setColumn(i, "matrtodd", "99991231");
  409. }
  410. }
  411. if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "windt")))
  412. {
  413. ds_grid_grd_matlist.setColumn(i, "windt", utlf_getCurrentDate());
  414. }
  415. if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "lotno")))
  416. {
  417. ds_grid_grd_matlist.setColumn(i, "lotno", "-");
  418. }
  419. if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "oclotno")))
  420. {
  421. ds_grid_grd_matlist.setColumn(i, "oclotno", "-");
  422. }
  423. if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "prodcmpy")))
  424. {
  425. ds_grid_grd_matlist.setColumn(i, "prodcmpy", "-");
  426. }
  427. if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "proddt")))
  428. {
  429. ds_grid_grd_matlist.setColumn(i, "proddt", "19000101");
  430. }
  431. if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "matrifcd")))
  432. {
  433. ds_grid_grd_matlist.setColumn(i, "matrifcd", "-");
  434. }
  435. if(utlf_isNull(ds_grid_grd_matlist.getColumn(i, "levlnm")))
  436. {
  437. var cd = ds_grid_grd_matlist.getColumn(i, "levlcd");
  438. var etc01 = "";
  439. for(var j=0; j<ds_init_lb0501.rowcount; j++)
  440. {
  441. if(ds_init_lb0501.getColumn(j, "cd") == cd)
  442. {
  443. etc01 =ds_init_lb0501.getColumn(j, "etc01");
  444. break;
  445. }
  446. }
  447. ds_grid_grd_matlist.setColumn(i, "levlnm", etc01);
  448. }
  449. // Row Type Update 일때 처리
  450. }
  451. else if(ds_grid_grd_matlist.getRowType(i)==4)
  452. {
  453. ds_grid_grd_matlist.setColumn(i, "status", "u");
  454. }
  455. }
  456. var userdeptcd = ds_init_lb0000.getColumn(0, "nm");
  457. dsf_createDsRow("ds_temp_input"
  458. , [{col: "userdeptcd", val: userdeptcd}]);
  459. var oParam = {};
  460. oParam.id = "TXLQF00601";
  461. oParam.service = "grademngtbasemngtapp.QCMaterialMngt";
  462. oParam.method = "reqInsMat";
  463. oParam.inds = "grid=ds_grid_grd_matlist:U cond=ds_temp_input";
  464. oParam.async = false;
  465. oParam.callback = "cf_TXLQF00601";
  466. tranf_submit(oParam);
  467. // var oParam = {};
  468. // oParam.id = "TXLQF00601";
  469. // oParam.service = "grademngtbasemngtapp.QCMaterialMngt";
  470. // oParam.method = "reqInsMat";
  471. // oParam.inds = "grid=ds_grid_grd_matlist:U cond=ds_temp_input";
  472. // oParam.async = false;
  473. // tranf_submit(oParam);
  474. lf_getMatList();
  475. }
  476. function cf_TXLQF00601(sSvcId, nErrorCode, sErrorMsg) {
  477. if(nErrorCode < 0) return;
  478. }
  479. function lf_addRow() {
  480. var addRw = ds_grid_grd_matlist.addRow();
  481. ds_grid_grd_matlist.setColumn(addRw, "status", "i");
  482. ds_grid_grd_matlist.setColumn(addRw, "matrfromdd", utlf_getCurrentDate());
  483. ds_grid_grd_matlist.setColumn(addRw, "matrtodd", "99991231");
  484. ds_grid_grd_matlist.setColumn(addRw, "windt", utlf_getCurrentDate());
  485. ds_grid_grd_matlist.setColumn(addRw, "lotno", "-");
  486. ds_grid_grd_matlist.setColumn(addRw, "validd", "99991231");
  487. ds_grid_grd_matlist.setColumn(addRw, "prodcmpy", "-");
  488. ds_grid_grd_matlist.setColumn(addRw, "proddt", "19000101");
  489. ds_grid_grd_matlist.setColumn(addRw, "matrifcd", "-");
  490. }
  491. function lf_addRow2(){
  492. ds_temp.clearData();
  493. var addRw = ds_temp.addRow();
  494. ds_temp.copyRow(addRw, ds_grid_grd_matlist, ds_grid_grd_matlist.rowposition); //선택항목 임시노드에 복사
  495. lf_endMat(); //선택된항목 물질 종료
  496. var addRw = ds_grid_grd_matlist.addRow();
  497. ds_grid_grd_matlist.setColumn(addRw, "matrcd", ds_temp.getColumn(0, "matrcd"));
  498. ds_grid_grd_matlist.setColumn(addRw, "levlcd", ds_temp.getColumn(0, "levlcd"));
  499. ds_grid_grd_matlist.setColumn(addRw, "matrnm", ds_temp.getColumn(0, "matrnm"));
  500. var orgDt = utlf_getCurrentDate();
  501. var fromdate = gf_getDate(orgDt, 1); // 새로운 물질 시작일자를 다음날로 변경
  502. ds_grid_grd_matlist.setColumn(addRw, "status", "i");
  503. ds_grid_grd_matlist.setColumn(addRw, "matrfromdd", fromdate);
  504. ds_grid_grd_matlist.setColumn(addRw, "matrtodd", "99991231");
  505. ds_grid_grd_matlist.setColumn(addRw, "windt", utlf_getCurrentDate());
  506. ds_grid_grd_matlist.setColumn(addRw, "lotno", "-");
  507. ds_grid_grd_matlist.setColumn(addRw, "validd", "99991231");
  508. ds_grid_grd_matlist.setColumn(addRw, "prodcmpy", "-");
  509. ds_grid_grd_matlist.setColumn(addRw, "proddt", "19000101");
  510. ds_grid_grd_matlist.setColumn(addRw, "matrifcd", "-");
  511. }
  512. function lf_endMat() {
  513. var currow = ds_grid_grd_matlist.rowposition;
  514. var todd = ds_grid_grd_matlist.getColumn(currow, "matrtodd");
  515. if(todd < utlf_getCurrentDate()) {
  516. sysf_messageBox("이미 종료된 물질입니다.","I");
  517. return;
  518. }
  519. ds_grid_grd_matlist.setColumn(currow, "status", "d"); // delete 상태
  520. ds_grid_grd_matlist.setRowType(currow, 8);
  521. var objTempFilterDs = grdf_getGridUpdateData(grd_matlist);
  522. var userdeptcd = ds_init_lb0000.getColumn(0, "nm");
  523. dsf_createDsRow("ds_temp_input"
  524. , [{col: "userdeptcd", val: userdeptcd}]);
  525. var oParam = {};
  526. oParam.id = "TXLQF00602";
  527. oParam.service = "grademngtbasemngtapp.QCMaterialMngt";
  528. oParam.method = "reqExeMat";
  529. oParam.inds = "grid=ds_tempFilterDs cond=ds_temp_input";
  530. oParam.async = false;
  531. tranf_submit(oParam);
  532. lf_getMatList();
  533. }
  534. function group3_group2_btn_ref_onclick(obj:Button, e:ClickEventInfo)
  535. {
  536. lf_getMatList();
  537. }
  538. function group3_group2_ipt_searchtext_onkeydown(obj:Edit, e:KeyEventInfo)
  539. {
  540. if(e.keycode == "13") {
  541. lf_getMatList();
  542. }
  543. }
  544. function group3_btn_addrow_onclick(obj:Button, e:ClickEventInfo)
  545. {
  546. lf_addRow();
  547. }
  548. function group3_btn_end_onclick(obj:Button, e:ClickEventInfo)
  549. {
  550. lf_endMat();
  551. }
  552. function group3_button1_onclick(obj:Button, e:ClickEventInfo)
  553. {
  554. lf_addRow2();
  555. }
  556. function group4_btn_init_onclick(obj:Button, e:ClickEventInfo)
  557. {
  558. // group2.cmb_refflag.index = 0;
  559. // group2.cmb_searchflag.index = 0;
  560. // group2.ipt_searchtext.value = "";
  561. // group5.visible = false;
  562. // ds_grid_grd_matlist.clearData();
  563. this.reload();
  564. }
  565. function group4_btn_save_onclick(obj:Button, e:ClickEventInfo)
  566. {
  567. lf_insMat();
  568. }
  569. // 조회구분에 따른 사용종료일자 활성화 조회
  570. function group2_cmb_refflag_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  571. {
  572. var refflag = group2.cmb_refflag.value;
  573. group2.cmb_refflag00.value = "";
  574. group2.cmb_refflag01.value = "";
  575. if(refflag == "2") {
  576. grd_matlist.setFormatColProperty(grd_matlist.getBindCellIndex("body","matrtodd"), "size", 90);
  577. } else {
  578. grd_matlist.setFormatColProperty(grd_matlist.getBindCellIndex("body","matrtodd"), "size", 0);
  579. }
  580. lf_getMatList();
  581. }
  582. function group3_group5_Button00_onclick(obj:Button, e:ClickEventInfo)
  583. {
  584. group5.visible = false;
  585. }
  586. function SMLQF00600_oninit(obj:Form, e:InitEventInfo)
  587. {
  588. frmf_initForm(obj);
  589. }
  590. function gf_getDate(strDate, diff) {
  591. if (strDate) {
  592. var date = gf_str2Date(strDate);
  593. var d = (new Date(date)).addDate(diff);
  594. }
  595. else {
  596. var d = (new Date).addDate(diff);
  597. }
  598. var s = (new Date(d)).getFullYear()
  599. + (((new Date(d)).getMonth() + 1) + "").padLeft(2, '0')
  600. + (((new Date(d)).getDate()) + "").padLeft(2, '0');
  601. return (s);
  602. }
  603. function gf_str2Date(inDate) {
  604. var date = new Date(parseInt(inDate.substr(0,4)),parseInt(inDate.substr(4,2))-1,parseInt(inDate.substr(6,2)));
  605. return date;
  606. }
  607. function group2_cmb_refflag00_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  608. {
  609. }
  610. ]]></Script>
  611. </Form>
  612. </FDL>