SMLQJ00100_QC접수관리.xrw 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>QC접수관리</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <qcacptlist>
  11. <acptdt/>
  12. <eqmtnm/>
  13. <eqmtcd/>
  14. </qcacptlist>
  15. <tclscdlist>
  16. <bcchk/>
  17. <chk/>
  18. <bcno/>
  19. <levlnm/>
  20. <matrnm/>
  21. <testnm/>
  22. <matrcd/>
  23. <levlcd/>
  24. <testcd/>
  25. <matrfromdd/>
  26. <acptbcflag/>
  27. <rsltstat/>
  28. <lotno/>
  29. </tclscdlist>
  30. <bcnoinfo/>
  31. <barcdprntsetup>
  32. <prntsetupinfo>
  33. <setupinfo/>
  34. </prntsetupinfo>
  35. </barcdprntsetup>
  36. </main>
  37. <send>
  38. <codeflag/>
  39. <deptflag/>
  40. <basecdid/>
  41. <eqmtcd/>
  42. <acptflag/>
  43. <acptdt/>
  44. <tclscdlist/>
  45. <scrnid/>
  46. <acptfromdd/>
  47. <acpttodd/>
  48. <matrcd/>
  49. <bcno/>
  50. </send>
  51. <init/>
  52. <hidden>
  53. <acptdt/>
  54. <execdept>00</execdept>
  55. <eqmt>00</eqmt>
  56. <acptflag>00</acptflag>
  57. <acptfromdd/>
  58. <acpttodd/>
  59. <bcno/>
  60. </hidden>
  61. </root>
  62. </instance>
  63. <script type="javascript" ev:event="xforms-ready">
  64. <![CDATA[
  65. fSetInit();
  66. ]]>
  67. </script>
  68. <script type="javascript" src="../../../lis/commonweb/js/LZZ001.js"/>
  69. <script type="javascript" src="../../../lis/commonweb/js/LQZ001.js"/>
  70. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  71. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  72. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  73. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  74. <script type="javascript" src="../../../lis/commonweb/js/HanFont24.js"/>
  75. <submission id="TRLZZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/LB0111"/>
  76. <submission id="TRLQJ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/tclscdlist"/>
  77. <submission id="TXLQJ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/bcnoinfo"/>
  78. <submission id="TRLLC90101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/barcdprntsetup"/>
  79. <submission id="TRLQJ00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/qcacptlist"/>
  80. <submission id="TRLQJ00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/tclscdlist"/>
  81. <submission id="TXLQJ00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send"/>
  82. </model>
  83. <script type="javascript">
  84. <![CDATA[
  85. //#################################### 접수, 미접수 공통 #########################################################
  86. //초기화 버튼
  87. function fSetInit(){
  88. model.setValue("/root/send/scrnid", getScreenID()); //바코드프린터 설정 관련 화면아이디조회?
  89. submit("TRLLC90101");
  90. //lzzfMakeBrcdPrntObj("CommAX"); //바코드출력 위해
  91. lzzfMakeBrcdPrntObjHanDo("CommAX"); //한도에서 제공한 OCX로 변경 20080701
  92. //그리드 초기화
  93. model.removeNodeset("/root/main/qcacptlist");
  94. grd_qcAcptList.rebuild();
  95. model.removeNodeset("/root/main/tclscdlist");
  96. grd_tclsCdList.rebuild();
  97. model.removeNodeset("/root/init");
  98. //조회구분 날짜 설정
  99. model.setValue("/root/hidden/acptdt", getCurrentDate());
  100. model.setValue("/root/hidden/acptfromdd", getCurrentDate());
  101. model.setValue("/root/hidden/acpttodd", getCurrentDate());
  102. //미접수탭 선택
  103. fBcnoVisible("F");
  104. model.toggle("case1");
  105. model.setValue("/root/send/codeflag","0000|0111|0701|"); //0000:사용자부서코드, 0111:시행부서계 0707: 장비코드
  106. submit("TRLZZ00101");
  107. model.setValue("/root/send/codeflag","0704|"); //0704: 접수구분
  108. model.setValue("/root/send/basecdid", model.getValue("/root/init/LB0000/nm"));
  109. submit("TRLZZ00101"); //부서에 따른 접수구분 조회
  110. }
  111. //키입력이벤트
  112. function fKeyEvent(){
  113. if(event.keyCode == "13"){
  114. if(event.target == "ipt_bcno"){
  115. model.setValue("/root/hidden/bcno", (ipt_bcno.currentText).toUpperCase());
  116. fGetAcptList();
  117. }
  118. }
  119. }
  120. //장비코드설정
  121. function fSetEqmtCd(){
  122. model.removeNodeset("/root/main/tclscdlist");
  123. grd_tclsCdList.rebuild();
  124. model.removeNodeset("/root/init/LB0701");
  125. var execdept = model.getValue("/root/hidden/execdept");
  126. model.setValue("/root/send/basecdid", execdept); //검사실구분 코드(장비코드앞자리)
  127. model.setValue("/root/send/codeflag","0701|");
  128. model.setValue("/root/hidden/eqmt", '00');
  129. submit("TRLZZ00101");
  130. }
  131. //검사항목리스트 바코드 컬럼 보이기
  132. function fBcnoVisible(ref){
  133. model.resetInstanceNode("/root/send");
  134. model.removeNodeset("/root/main/qcacptlist");
  135. grd_qcAcptList.rebuild();
  136. model.removeNodeset("/root/main/tclscdlist");
  137. grd_tclsCdList.rebuild();
  138. if(ref == "T"){ //접수탭 선택
  139. grd_tclsCdList.colHidden(3) = false; //바코드번호 안보이기
  140. grd_tclsCdList.colHidden(15) = false; //결과상태 안보이기
  141. btn_acpt.attribute("visibility") = "hidden"; //접수버튼 사라지기
  142. btn_reiss.attribute("visibility") = "visible"; //재발행 버튼 보이게
  143. btn_acptcan.attribute("visibility") = "visible"; //접수취소버튼 보이게
  144. model.setValue("/root/hidden/acptflag", "00"); //접수구분 -전체- 로 셋팅
  145. }
  146. else { //미접수탭 선택
  147. grd_tclsCdList.colHidden(3) = true;
  148. grd_tclsCdList.colHidden(15) = true;
  149. btn_acpt.attribute("visibility") = "visible";
  150. btn_reiss.attribute("visibility") = "hidden";
  151. btn_acptcan.attribute("visibility") = "hidden";
  152. model.setValue("/root/hidden/acptflag", "0"); //접수구분 QC로 셋팅
  153. }
  154. model.refresh();
  155. }
  156. //바코드 구분 이미지 표시
  157. function fSetBcnoImg(){
  158. for(i=1; i<=grd_tclsCdList.rows-1; i++){
  159. if(model.getValue("/root/main/tclscdlist[" +i+"]/bcflag")=="0"){ //bcflag = 바코드구분하기 위한 값이 있다면 바코드 구분됨 0 or 1(미접수탭은 0, 접수탭은 1)
  160. grd_tclsCdList.cellstyle("background-image", i, 1) = "../../../lis/commonweb/images/chkBC0.gif"; //바코드체크이미지 설정
  161. grd_tclsCdList.cellstyle("background-position", i, 1) = "center";
  162. }else if(model.getValue("/root/main/tclscdlist[" +i+"]/bcflag")=="1"){ //bcflag = 바코드구분하기 위한 값
  163. grd_tclsCdList.cellstyle("background-image", i, 1) = "../../../lis/commonweb/images/chkBC1.gif"; //바코드체크이미지 설정
  164. grd_tclsCdList.cellstyle("background-position", i, 1) = "center";
  165. }
  166. }
  167. grd_tclsCdList.refresh();
  168. }
  169. //검사항목 리스트 바코드 구분 선택(바코드이미지 선택했을때 체크박스 자동 선택 해제기능)
  170. function fSetGrdChoi(){
  171. var row = grd_tclsCdList.row;
  172. var col = grd_tclsCdList.col;
  173. if(grd_tclsCdList.isCell(event.target) && grd_tclsCdList.row >= grd_tclsCdList.fixedRows){
  174. if(col == 1){ //바코드 구분을 선택하였을때
  175. if(model.getValue("/root/main/tclscdlist[" + row + "]/bcflag") == "1"){ //바코드 구분이 선택되어있으면
  176. model.setValue("/root/main/tclscdlist[" + row + "]/bcflag", "0"); //바코드 선택을 해제하고
  177. model.setValue("/root/main/tclscdlist[" + row + "]/chk", "0"); //선택된 체크값도 해제한다
  178. grd_tclsCdList.cellstyle("background-image", row, 1) = "../../../lis/commonweb/images/chkBC0.gif"; //바코드 구분 이미지를 체크해제 이미지로 변경한다
  179. if(row+1 <= grd_tclsCdList.rows-1){
  180. for(iRow=row+1; ;iRow++){
  181. if(model.getValue("/root/main/tclscdlist[" + iRow + "]/bcflag") == "1" ||model.getValue("/root/main/tclscdlist[" + iRow + "]/bcflag") == "0" || iRow>grd_tclsCdList.rows-1 ){
  182. break; //다음 바코드구분을 만나거나 마지막이라면 끝~
  183. }
  184. model.setValue("/root/main/tclscdlist[" + iRow + "]/chk", "0"); //선택값 체크해제
  185. }
  186. }
  187. }else if(model.getValue("/root/main/tclscdlist[" + row + "]/bcflag") == "0"){ //바코드 구분이 선택되어있지 않다면(해제상태)
  188. model.setValue("/root/main/tclscdlist[" + row + "]/bcflag", "1"); //바코드 선택하고
  189. model.setValue("/root/main/tclscdlist[" + row + "]/chk", "1"); //해제된 체크값도 선택한다
  190. grd_tclsCdList.cellstyle("background-image", row, 1) = "../../../lis/commonweb/images/chkBC1.gif"; //바코드 구분 이미지를 체크 이미지로 변경한다
  191. if(row+1 <= grd_tclsCdList.rows-1){
  192. for(iRow=row+1; ;iRow++){
  193. if(model.getValue("/root/main/tclscdlist[" + iRow + "]/bcflag") == "1" || model.getValue("/root/main/tclscdlist[" + iRow + "]/bcflag") == "0" || iRow>grd_tclsCdList.rows-1){
  194. break; //다음 바코드구분을 만나거나 마지막이라면 끝~
  195. }
  196. model.setValue("/root/main/tclscdlist[" + iRow + "]/chk", "1"); //선택값 체크해제
  197. }
  198. }
  199. }
  200. }
  201. }
  202. }
  203. //접수, 접수취소된 리스트 항목에서 사라진다~ removenodeset으로.. (사용안함)
  204. function fDelAcptList(){
  205. var kRows = grd_tclsCdList.rows;
  206. var i;
  207. for(i = 1 ; i < kRows ; i ++){
  208. if(model.getValue("/root/main/tclscdlist["+i+"]/chk") == "1"){
  209. model.removenodeset("/root/main/tclscdlist["+i+"]");
  210. i = i -1;
  211. kRows = kRows -1 ;
  212. }
  213. }
  214. model.refresh();
  215. }
  216. //접수, 접수취소된 항목 화면에서 사라지게~~ deleteRow방식 (사용안함.. 바코드 이미지 재설정하는 기능과 합침)
  217. function fSetDelSelect(){
  218. var maxRow = grd_tclsCdList.rows;
  219. for(i=0; i<=maxRow; i++){
  220. if(model.getValue("/root/main/tclscdlist[" + i + "]/chk") == "1"){ //선택된 항목
  221. grd_tclsCdList.deleteRow(i, "false")
  222. i = i-1;
  223. maxRow = maxRow -1
  224. }
  225. }
  226. }
  227. //선택된 항목 화면에서 지우고 바코드 이미지 다시 설정
  228. function fSetBcImg(){
  229. //접수된 항목 화면에서 사라지게~~ deleteRow방식
  230. var maxRow = grd_tclsCdList.rows;
  231. for(i=0; i<=maxRow; i++){
  232. if(model.getValue("/root/main/tclscdlist[" + i + "]/chk") == "1"){ //선택된 항목
  233. grd_tclsCdList.deleteRow(i, "false")
  234. i = i-1;
  235. maxRow = maxRow -1
  236. }
  237. }
  238. //바코드 구분 비교하여 바코드 이미지 셋팅
  239. for(i=1; i<maxRow; i++){
  240. var j = i-1; //이전 바코드구분값과 비교하기 위한 값 -_-
  241. if(i == 1){ //접수된 항목이 지워지고 난 후 첫번째 항목에 바코드이미지 셋팅
  242. grd_tclsCdList.cellstyle("background-image", i, 1) = "../../../lis/commonweb/images/chkBC0.gif";
  243. grd_tclsCdList.cellstyle("background-position", i, 1) = "center";
  244. model.setValue("/root/main/tclscdlist[" + i + "]/bcflag", "0");
  245. }else if(model.getValue("/root/main/tclscdlist[" + j +"]/acptbcflag") != model.getValue("/root/main/tclscdlist[" +i+"]/acptbcflag")){ //두번째부터는 이전 바코드 구분과 비교하여 다르다면 바코드 이미지 셋팅
  246. grd_tclsCdList.cellstyle("background-image", i, 1) = "../../../lis/commonweb/images/chkBC0.gif";
  247. grd_tclsCdList.cellstyle("background-position", i, 1) = "center";
  248. model.setValue("/root/main/tclscdlist[" + i + "]/bcflag", "0");
  249. }
  250. }
  251. grd_tclsCdList.refresh();
  252. }
  253. //###################################################### 미접수탭 ######################################################
  254. //미접수탭 검사항목리스트 조회
  255. function fGetTestList(){
  256. model.removeNodeset("/root/main/tclscdlist");
  257. grd_tclsCdList.rebuild();
  258. model.setValue("/root/send/eqmtcd", model.getValue("/root/hidden/eqmt")); //장비코드
  259. model.setValue("/root/send/deptflag", model.getValue("/root/init/LB0000/nm"));
  260. submit("TRLQJ00101");
  261. //바코드 구분별로 바코드 이미지 셋팅
  262. fSetBcnoImg();
  263. }
  264. //접수 버튼
  265. function fInstAcpt(){
  266. //model.removeNodeset("/root/send/tclscdlist");
  267. if(model.getValue("/root/hidden/acptdt") != getCurrentDate()){
  268. var rtn = messageBox("선택하신 날짜가 현재일과 일치하지 않습니다. \n접수를", "Q003");
  269. if(rtn == "7"){
  270. return;
  271. }
  272. }
  273. if(model.getValue("/root/hidden/acptflag") == "00"){
  274. alert("접수구분을 선택하세요");
  275. return;
  276. }
  277. for(i=1; i<=grd_tclsCdList.rows; i++){
  278. if(model.getValue("/root/main/tclscdlist[" + i + "]/chk") == "1"){ //선택된 항목
  279. grd_tclsCdList.addStatus(i, "insert"); //status 를 insert로 변경
  280. }else{
  281. grd_tclsCdList.removeStatus(i , "update"); //선택된 항목이 아니라면 update를 초기화한다
  282. }
  283. }
  284. model.setValue("/root/send/tclscdlist", grd_tclsCdList.getUpdateData());
  285. model.setValue("/root/send/deptflag", model.getValue("/root/init/LB0000/nm")); //사용자부서코드
  286. model.setValue("/root/send/acptdt", model.getValue("/root/hidden/acptdt")); //접수일자
  287. model.setValue("/root/send/acptflag", model.getValue("/root/hidden/acptflag")); //접수구분
  288. model.setValue("/root/send/eqmtcd", model.getValue("/root/hidden/eqmt")); //장비코드
  289. model.setValue("/root/send/basecdid", model.getValue("/root/hidden/execdept")); //검사실
  290. //선택항목 접수 및 바코드 정보 조회
  291. submit("TXLQJ00101");
  292. var prtkind = model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/prntkind");
  293. var portnm = model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/commkind");
  294. if((prtkind == "9" && portnm == "01") || (prtkind == "11" && portnm == "01") || prtkind == "10" || prtkind == "2" || prtkind == "6" || prtkind == "7"){
  295. fLisQCBarcodePrint_NewOCX2("/root/main/bcnoinfo");
  296. }else{
  297. fLisQCBarcodePrint_NewOCX("/root/main/bcnoinfo"); //바코드출력
  298. }
  299. fSetBcImg(); //체크된 항목 지우고 바코드 이미지 다시 셋팅
  300. }
  301. //########################################### 접수탭 #####################################################
  302. //접수취소 버튼
  303. function fSetAcptCancel(){
  304. for(i=1; i<=grd_tclsCdList.rows; i++){
  305. if(model.getValue("/root/main/tclscdlist[" + i + "]/chk") == "1"){ //선택된 항목
  306. if(model.getValue("/root/main/tclscdlist[" + i + "]/rsltstat") != "접수"){ //결과상태가 '-'인것만 취소가능(결과미입력상태)
  307. alert("결과가 저장된 항목이 있어 취소가 불가능합니다!!");
  308. return 0;
  309. }
  310. grd_tclsCdList.addStatus(i, "delete"); //status 를 delete로 변경
  311. }else{
  312. grd_tclsCdList.removeStatus(i , "update"); //선택된 항목이 아니라면 update를 초기화한다
  313. }
  314. }
  315. model.setValue("/root/send/tclscdlist", grd_tclsCdList.getUpdateData());
  316. submit("TXLQJ00102");
  317. //선택된 항목 그리드에서 삭제후 바코드 재생성
  318. //fSetBcImg();
  319. //접수리스트부터 재조회
  320. fGetAcptList();
  321. }
  322. //재발행 버튼
  323. function fSetReIss(){
  324. model.removeNodeset("/root/main/bcnoinfo");
  325. model.makeNode("/root/main/bcnoinfo");
  326. //var count = 0; // 체크된 값을 makeValue 하기 위해 변수 선언
  327. for(i = 1; i<grd_tclsCdList.rows; i++){
  328. if(model.getValue("/root/main/tclscdlist["+i+"]/chk") == "1"){
  329. copyNodeListType("/root/main/bcnoinfo", "/root/main/tclscdlist["+i+"]", "after"); //바코드 재출력위해 선택된 항목 바코드정보 복사
  330. //++count;
  331. /*model.makeValue("/root/main/bcnoinfo["+count+"]/bcno", model.getValue("/root/main/tclscdlist["+i+"]/bcno"));
  332. model.makeValue("/root/main/bcnoinfo["+count+"]/matrcd", model.getValue("/root/main/tclscdlist["+i+"]/matrcd"));
  333. model.makeValue("/root/main/bcnoinfo["+count+"]/levlcd", model.getValue("/root/main/tclscdlist["+i+"]/levlcd"));
  334. model.makeValue("/root/main/bcnoinfo["+count+"]/eqmtnm", model.getValue("/root/main/tclscdlist["+i+"]/eqmtnm"));
  335. model.makeValue("/root/main/bcnoinfo["+count+"]/testroom", model.getValue("/root/main/tclscdlist["+i+"]/sectnm"));
  336. model.makeValue("/root/main/bcnoinfo["+count+"]/acptdt", model.getValue("/root/main/tclscdlist["+i+"]/acptdt"));
  337. */
  338. }
  339. model.refresh();
  340. }
  341. fLisQCBarcodePrint_NewOCX("/root/main/bcnoinfo/tclscdlist"); // 바코드 출력 //경로 바꿔서 makeValue해결했음
  342. }
  343. //접수탭 조회버튼
  344. function fGetAcptList(){
  345. model.removeNodeset("/root/main/tclscdlist");
  346. grd_tclsCdList.rebuild();
  347. model.setValue("/root/send/matrcd" , model.getValue("/root/hidden/matrcd"));
  348. model.setValue("/root/send/acptflag" , model.getValue("/root/hidden/acptflag"));
  349. model.setValue("/root/send/eqmtcd" , model.getValue("/root/hidden/eqmt"));
  350. model.setValue("/root/send/basecdid" , model.getValue("/root/hidden/execdept")); //검사실
  351. model.setValue("/root/send/acptfromdd" , model.getValue("/root/hidden/acptfromdd"));
  352. model.setValue("/root/send/acpttodd" , model.getValue("/root/hidden/acpttodd"));
  353. model.setValue("/root/send/deptflag" , model.getValue("/root/init/LB0000/nm"));
  354. model.setValue("/root/send/bcno" , model.getValue("/root/hidden/bcno"));
  355. submit("TRLQJ00102");
  356. //QC 접수리스트 첫번째 항목 검사리스트 조회
  357. grd_qcAcptList.row = 1;
  358. fGetDetlAcptList();
  359. }
  360. //접수된 검사항목 리스트를 조회하기 위해 QC접수 리스트 클릭시
  361. function fGetDetlAcptList(){
  362. model.removeNodeset("/root/main/tclscdlist");
  363. grd_tclsCdList.rebuild();
  364. model.setValue("/root/send/acptdt" , model.getValue("/root/main/qcacptlist["+ grd_qcAcptList.row +"]/acptdt"));
  365. model.setValue("/root/send/eqmtcd" , model.getValue("/root/main/qcacptlist["+ grd_qcAcptList.row +"]/eqmtcd"));
  366. model.setValue("/root/send/deptflag" , model.getValue("/root/init/LB0000/nm"));
  367. submit("TRLQJ00103");
  368. //바코드 구분별로 바코드 이미지 셋팅
  369. fSetBcnoImg();
  370. model.setFocus("ipt_bcno");
  371. }
  372. ]]>
  373. </script>
  374. </xhtml:head>
  375. <xhtml:body style="font-size:10pt; margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  376. <group id="group1" style="left:0px; top:40px; width:1195px; height:744px; font-size:18pt; ">
  377. <datagrid id="grd_tclsCdList" nodeset="/root/main/tclscdlist" caption="검체구분^선택^바코드^LEVEL^물질명^검사항목^바코드구분^물질코드^lotno^레벨코드^검사코드^물질시작일자^시작일자^acptbcflag^결과상태" colsep="^" colwidth="60, 40, 100, 100, 210, 210, 10, 10, 10, 10, 10, 10, 10, 10, 80" dataheight="23" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:345px; top:107px; width:849px; height:621px; ">
  378. <col ref="bcchk" type="output" uncheckimage="1" style="left:20px; top:32px; width:43px; height:23px; "/>
  379. <col checkvalue="1,0" ref="chk" type="checkbox"/>
  380. <col ref="bcno"/>
  381. <col ref="levlnm"/>
  382. <col ref="matrnm"/>
  383. <col ref="testnm"/>
  384. <col ref="bcflag" visibility="hidden"/>
  385. <col ref="matrcd" visibility="hidden"/>
  386. <col ref="lotno" visibility="hidden"/>
  387. <col ref="levlcd" visibility="hidden"/>
  388. <col ref="testcd" visibility="hidden"/>
  389. <col ref="matrfromdd" visibility="hidden"/>
  390. <col ref="testfromdd" visibility="hidden"/>
  391. <col ref="acptbcflag" visibility="hidden"/>
  392. <col ref="rsltstat"/>
  393. <script type="javascript" ev:event="onclick">
  394. <![CDATA[
  395. //바코드 이미지 체크시 자동 체크 기능위한..
  396. fSetGrdChoi();
  397. ]]>
  398. </script>
  399. </datagrid>
  400. <line id="line1" class="line_1" style="x1:0px; y1:102px; x2:340px; y2:102px; "/>
  401. <caption id="caption7" class="tit_2" style="left:5px; top:87px; width:115px; height:13px; ">QC 접수 리스트</caption>
  402. <datagrid id="grd_qcAcptList" nodeset="/root/main/qcacptlist" caption="접수일시^장비명^장비코드" colsep="^" colwidth="120, 150^30" dataheight="23" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:0px; top:107px; width:340px; height:621px; ">
  403. <col ref="acptdt" format="yyyy-mm-dd hh:mm:ss"/>
  404. <col ref="eqmtnm"/>
  405. <col ref="eqmtcd" visibility="hidden"/>
  406. <script type="javascript" ev:event="onclick">
  407. <![CDATA[
  408. if(grd_qcAcptList.isCell(event.target) && grd_qcAcptList.row >= grd_qcAcptList.fixedRows){
  409. fGetDetlAcptList();
  410. }
  411. ]]>
  412. </script>
  413. </datagrid>
  414. <line id="line14" class="line_1" style="x1:345px; y1:102px; x2:1194px; y2:102px; "/>
  415. <caption id="caption3" class="tit_2" style="left:350px; top:87px; width:115px; height:13px; ">검사항목 리스트</caption>
  416. <group id="group5" style="left:0px; top:10px; width:1195px; height:67px; ">
  417. <switch id="switch1" class="sw_box" style="left:0px; top:21px; width:1195px; height:45px; ">
  418. <case id="case1" selected="true" style="left:0px; top:0px; width:1195px; height:70px; ">
  419. <shape id="roundrect3" class="roundrect_search" appearance="roundrect" style="left:5px; top:5px; width:1185px; height:35px; "/>
  420. <button id="btn_get" class="btn1_letter2" style="left:1119px; top:12px; width:56px; height:22px; ">
  421. <caption>조회</caption>
  422. <script type="javascript" ev:event="onclick">
  423. <![CDATA[
  424. //장비 선택 안하면 뜬다
  425. if(model.getValue("/root/hidden/eqmt") == "00"){
  426. messageBox("장비를 ", "C002");
  427. model.setFocus("cbo_eqmtList");
  428. }else
  429. fGetTestList(); //검사항목리스트 조회
  430. ]]>
  431. </script>
  432. </button>
  433. <caption id="caption8" class="search_name" style="left:216px; top:14px; width:73px; height:17px; ">검사실 :</caption>
  434. <input id="cbo_acptDt" ref="/root/hidden/acptdt" class="input_s_essential" inputtype="date" style="left:109px; top:13px; width:90px; height:19px; "/>
  435. <caption id="caption9" class="search_name" style="left:20px; top:14px; width:86px; height:17px; ">접수일자 :</caption>
  436. <caption id="caption1" class="search_name" style="left:590px; top:14px; width:86px; height:17px; ">접수구분 :</caption>
  437. <caption id="caption2" class="search_name" style="left:410px; top:14px; width:61px; height:17px; ">장비 :</caption>
  438. <select1 id="cbo_acptFlag" ref="/root/hidden/acptflag" class="combo_s_essential" appearance="minimal" style="left:681px; top:13px; width:100px; height:19px; ">
  439. <choices>
  440. <itemset nodeset="/root/init/LB0704">
  441. <label ref="nm"/>
  442. <value ref="cd"/>
  443. </itemset>
  444. </choices>
  445. </select1>
  446. <select1 id="cbo_execDept" ref="/root/hidden/execdept" class="combo_s_essential" appearance="minimal" style="left:294px; top:13px; width:100px; height:19px; ">
  447. <choices>
  448. <itemset nodeset="/root/init/LB0111">
  449. <label ref="nm"/>
  450. <value ref="cd"/>
  451. </itemset>
  452. </choices>
  453. <script type="javascript" ev:event="xforms-select">
  454. <![CDATA[
  455. fSetEqmtCd();
  456. ]]>
  457. </script>
  458. </select1>
  459. <select1 id="cbo_eqmtList" ref="/root/hidden/eqmt" class="combo_s_essential" appearance="minimal" style="left:475px; top:13px; width:100px; height:19px; ">
  460. <choices>
  461. <itemset nodeset="/root/init/LB0701">
  462. <label ref="nm"/>
  463. <value ref="cd"/>
  464. </itemset>
  465. </choices>
  466. <script type="javascript" ev:event="xforms-select">
  467. <![CDATA[
  468. fGetTestList();
  469. ]]>
  470. </script>
  471. </select1>
  472. <line id="line2" class="line_4" style="x1:1104px; y1:11px; x2:1104px; y2:33px; "/>
  473. </case>
  474. <case id="case2" style="left:0px; top:0px; width:1195px; height:70px; ">
  475. <shape id="roundrect4" class="roundrect_search" appearance="roundrect" style="left:5px; top:5px; width:1185px; height:35px; "/>
  476. <caption id="caption10" class="search_n_b" style="left:201px; top:16px; width:12px; height:17px; ">~</caption>
  477. <input id="ipt_acptFromdd" ref="/root/hidden/acptfromdd" class="input_s_essential" inputtype="date" style="left:109px; top:13px; width:90px; height:19px; "/>
  478. <caption id="caption11" class="search_name" style="left:20px; top:14px; width:86px; height:17px; ">접수일자 :</caption>
  479. <input id="ipt_acptTodd" ref="/root/hidden/acpttodd" class="input_s_essential" inputtype="date" style="left:215px; top:13px; width:90px; height:19px; "/>
  480. <caption id="caption12" class="search_name" style="left:320px; top:14; width:73px; height:17px; ">검사실 :</caption>
  481. <button id="btn_getAcpt" class="btn1_letter2" style="left:1119px; top:12px; width:56px; height:22px; ">
  482. <caption>조회</caption>
  483. <script type="javascript" ev:event="onclick">
  484. <![CDATA[
  485. fGetAcptList();
  486. ]]>
  487. </script>
  488. </button>
  489. <select1 id="cbo_acptExecDept" ref="/root/hidden/execdept" class="combo_s_essential" appearance="minimal" style="left:397px; top:13; width:90px; height:19px; ">
  490. <choices>
  491. <itemset nodeset="/root/init/LB0111">
  492. <label ref="nm"/>
  493. <value ref="cd"/>
  494. </itemset>
  495. </choices>
  496. <script type="javascript" ev:event="xforms-value-changed">
  497. <![CDATA[
  498. fSetEqmtCd();
  499. ]]>
  500. </script>
  501. </select1>
  502. <caption id="caption4" class="search_name" style="left:502px; top:14; width:60px; height:17px; ">장비 :</caption>
  503. <caption id="caption5" class="search_name" style="left:859px; top:14px; width:96px; height:17px; ">바코드번호:</caption>
  504. <caption id="caption13" class="search_name" style="left:676px; top:14px; width:86px; height:17px; ">접수구분 :</caption>
  505. <line id="line5" class="line_4" style="x1:1104px; y1:11px; x2:1104px; y2:33px; "/>
  506. <select1 id="cbo_acptEqmtList" ref="/root/hidden/eqmt" class="combo_s_essential" appearance="minimal" style="left:565px; top:13; width:100px; height:19px; ">
  507. <choices>
  508. <itemset nodeset="/root/init/LB0701">
  509. <label ref="nm"/>
  510. <value ref="cd"/>
  511. </itemset>
  512. </choices>
  513. </select1>
  514. <select1 id="acptFlagCd" ref="/root/hidden/acptflag" class="combo_s_essential" appearance="minimal" style="left:765px; top:13px; width:80px; height:19px; ">
  515. <choices>
  516. <itemset nodeset="/root/init/LB0704">
  517. <label ref="nm"/>
  518. <value ref="cd"/>
  519. </itemset>
  520. </choices>
  521. </select1>
  522. <input id="ipt_bcno" ref="/root/hidden/bcno" class="input_s_button" imemode="disabled" inputtype="button" _chartype="upper" style="left:959px; top:13px; width:120px; height:19px; ">
  523. <script type="javascript" ev:event="onkeypress">
  524. <![CDATA[
  525. fKeyEvent();
  526. ]]>
  527. </script>
  528. </input>
  529. <button id="btn_matrSearch" class="icon_search" visibility="hidden" style="left:1082px; top:14px; width:16px; height:16px; ">
  530. <caption/>
  531. </button>
  532. </case>
  533. </switch>
  534. <button id="button2" class="btn_sw" group="tab" select.background-image="../../../com/commonweb/images/tab_show.gif" style="left:70px; top:0px; width:70px; height:22px; ">
  535. <caption>접수</caption>
  536. <toggle case="case2" ev:event="onclick"/>
  537. <script type="javascript" ev:event="DOMActivate">
  538. <![CDATA[
  539. fBcnoVisible("T");
  540. ]]>
  541. </script>
  542. </button>
  543. <button id="button3" class="btn_sw" group="tab" selected="true" select.background-image="../../../com/commonweb/images/tab_show.gif" style="left:0px; top:0px; width:70px; height:22px; ">
  544. <caption>미접수</caption>
  545. <toggle case="case1" ev:event="onclick"/>
  546. <script type="javascript" ev:event="DOMActivate">
  547. <![CDATA[
  548. fBcnoVisible("F");
  549. ]]>
  550. </script>
  551. </button>
  552. </group>
  553. </group>
  554. <group id="group2" style="left:0px; top:0px; width:1195px; height:13px; ">
  555. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:126px; height:14px; ">QC접수관리</caption>
  556. </group>
  557. <group id="grp_btn" style="left:0px; top:13px; width:1195px; height:27px; ">
  558. <line id="line3" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  559. <button id="btn_reiss" class="btn4_letter3" style="left:974px; top:3px; width:68px; height:22px; ">
  560. <caption>재발행</caption>
  561. <script type="javascript" ev:event="onclick">
  562. <![CDATA[
  563. var acptcount = 0;
  564. for(i=1; i<=grd_tclsCdList.rows; i++){
  565. if(model.getValue("/root/main/tclscdlist[" + i + "]/chk") == "1"){ //선택된 항목
  566. acptcount = acptcount + 1;
  567. }
  568. }
  569. if(acptcount !=0) fSetReIss(); // 선택된 항목이 있다면 고고싱~
  570. else {
  571. messageBox("재발행할 항목이 ", "I004");
  572. }
  573. ]]>
  574. </script>
  575. </button>
  576. <button id="btn_acpt" class="btn4_letter2" style="left:1068px; top:3px; width:56px; height:22px; ">
  577. <caption>접수</caption>
  578. <script type="javascript" ev:event="onclick">
  579. <![CDATA[
  580. var acptcount = 0;
  581. for(i=1; i<=grd_tclsCdList.rows; i++){
  582. if(model.getValue("/root/main/tclscdlist[" + i + "]/chk") == "1"){ //선택된 항목
  583. acptcount = acptcount + 1;
  584. }
  585. }
  586. if(acptcount !=0) fInstAcpt(); // 선택된 항목이 있다면 고고싱~
  587. else {
  588. messageBox("접수할 내역이", "I004");
  589. }
  590. ]]>
  591. </script>
  592. </button>
  593. <button id="btn_acptcan" class="btn4_letter4" style="left:1045px; top:3px; width:80px; height:22px; ">
  594. <caption>접수취소</caption>
  595. <script type="javascript" ev:event="onclick">
  596. <![CDATA[
  597. var acptcount = 0;
  598. for(i=1; i<=grd_tclsCdList.rows; i++){
  599. if(model.getValue("/root/main/tclscdlist[" + i + "]/chk") == "1"){ //선택된 항목
  600. acptcount = acptcount + 1;
  601. }
  602. }
  603. if(acptcount !=0) fSetAcptCancel();
  604. else {
  605. messageBox("접수를 취소할 내역이", "I004");
  606. }
  607. ]]>
  608. </script>
  609. </button>
  610. <button id="btn_cle" class="btn4_letter3" style="left:1127px; top:3px; width:68px; height:22px; ">
  611. <caption>초기화</caption>
  612. <script type="javascript" ev:event="onclick">
  613. <![CDATA[
  614. window.reload();
  615. ]]>
  616. </script>
  617. </button>
  618. <button id="btn_prtSet" class="btn3_letter5" style="left:0px; top:2px; width:92px; height:22px; ">
  619. <caption>프린터설정</caption>
  620. <script type="javascript" ev:event="onclick">
  621. <![CDATA[
  622. //window.load("SPLLC90100_바코드프린터설정.xrw","modeless","width:327px; height:128;min:hidden;max:hidden;align:center");
  623. var count = getNodesetCount("/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
  624. if(count == 0) {
  625. model.makeNode("/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
  626. }
  627. modal("SPLLC90100" , "","","","","/root/main/barcdprntsetup/prntsetupinfo/setupinfo", "/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
  628. ]]>
  629. </script>
  630. </button>
  631. </group>
  632. </xhtml:body>
  633. </xhtml:html>