123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540 |
- /*
- ===============================================================================
- File Name : LZZ001.js
- File Explanation : 바코드출력 Common js (for Zebra ZPL )
- File Author : Jin Hwa Ji. 2007-05-08
- Revision Details :
- ===============================================================================
- */
- /**
- * @group : commonweb
- * @ver : 2007.05.08 (CMCDEV-0001)
- * @by : Jin Hwa Ji [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 바코드 Format 시작
- *
- * </pre>
- * @param : pX = 시작 가로위치 (in dots)
- * @param : pY = 시작 세로위치 (in dots)
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_StartFormat(pX, pY) {
- return "^XA" + "^LH" + pX + "," + pY;
- }
- /**
- * @group : commonweb
- * @ver : 2007.05.08 (CMCDEV-0001)
- * @by : Jin Hwa Ji [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 바코드 Format 종료
- *
- * </pre>
- * @param : pCnt = 출력매수
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_EndFormat(pCnt) {
- var vCnt = 1;
- if (isNull(pCnt)) {
- vCnt = 1;
- } else {
- vCnt = pCnt
- }
- return "^PQ" + vCnt + "^XZ";
- }
- /**
- * @group : commonweb
- * @ver : 2007.05.08 (CMCDEV-0001)
- * @by : Jin Hwa Ji [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 바코드 Format 종료
- *
- * </pre>
- * @param : pX = 시작 가로위치 (in dots)
- * @param : pY = 시작 세로위치 (in dots)
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_FiendOrigin(pX, pY) {
- return "^FO" + pX + "," + pY;
- }
- /**
- * @group : commonweb
- * @ver : 2007.05.08 (CMCDEV-0001)
- * @by : Jin Hwa Ji [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 기본 Font 설정
- *
- * </pre>
- * @param : pF = Default Font
- * @param : pH = Height(in dots) - Default 9
- * @param : pW = Width(in dots) - Default 5
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_ChangeFont(pF, pH, pW) {
- var sBuf = "";
- sBuf = "^CF" + pF;
- sBuf += "," + pH;
- sBuf += "," + pW;
- return sBuf;
- }
- /**
- * @group : commonweb
- * @ver : 2007.05.08 (CMCDEV-0001)
- * @by : Jin Hwa Ji [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 박스 출력
- *
- * </pre>
- * @param : pX = 시작 가로위치 (in dots)
- * @param : pY = 시작 세로위치 (in dots)
- * @param : pW = 박스 폭 (in dots)
- * @param : pH = 박스 높이 (in dots)
- * @param : pBF = 보더 굵이 (박스를 채우려면 값을 크게 준다. 1 ~ 3200)
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_GraphicBox(pX, pY, pW, pH, pBF) {
- var sBuf = "";
- sBuf = lzzfBP_FiendOrigin(pX, pY);
- sBuf += "^GB" + pW + "," + pH + "," + pBF + "^FS";
- return sBuf;
- }
- /**
- * @group : commonweb
- * @ver : 2007.05.08 (CMCDEV-0001)
- * @by : Jin Hwa Ji [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 알파벳, 숫자 Field정의
- *
- * </pre>
- * @param : pX = 시작 가로위치 (in dots)
- * @param : pY = 시작 세로위치 (in dots)
- * @param : pData = Field Data
- * @param : pReverse = 배경 기준으로 역상으로표시 ( Y:역상으로 )
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_FieldDataA(pX, pY, pData, pReverse) {
- var sBuf = "";
- sBuf = lzzfBP_FiendOrigin(pX, pY);
- if (!isNull(pReverse)) {
- if (pReverse.getTrim() == "Y") {
- sBuf += "^FR";
- }
- }
- sBuf += "^FD" + pData + "^FS";
- return sBuf;
- }
- /**
- * @group : commonweb
- * @ver : 2007.05.08 (CMCDEV-0001)
- * @by : Jin Hwa Ji [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 한글 및 특수문자 Field정의
- *
- * </pre>
- * @param : pX = 시작 가로위치 (in dots)
- * @param : pY = 시작 세로위치 (in dots)
- * @param : pW = 폰트 Width
- * @param : pH = 폰트 Height
- * @param : pData = Field Data
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_FieldDataH(pX, pY, pW, pH, pData) {
- var sBuf = "";
- sBuf = "^CI26";
- sBuf += lzzfBP_FiendOrigin(pX, pY);
- sBuf += "^AQN" + "," + pW + "," + pH;
- sBuf += "^FD" + pData + "^FS";
- return sBuf;
- }
- /**
- * @group : commonweb
- * @ver : 2007.05.08 (CMCDEV-0001)
- * @by : Jin Hwa Ji [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 바코드 정의(Code 39)
- *
- * </pre>
- * @param : pX = 시작 가로위치
- * @param : pY = 시작 세로위치
- * @param : pO = 방향
- * @param : pH = 바코드 Height
- * @param : pData = 바코드정보
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_BarCode_Code39(pX, pY, pO, pH, pData) {
- var sBuf = "";
- sBuf = lzzfBP_FiendOrigin(pX, pY);
- sBuf += "^BY2,2.0";
- sBuf += "^B3" + pO + ",N," + pH + ",N,N^FD" + pData + "^FS";
- return sBuf;
- }
- /**
- * @group : commonweb
- * @ver : 2010.10.12
- * @by : Yo Sep Song [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 바코드 정의(Code 39)300dpi
- *
- * </pre>
- * @param : pX = 시작 가로위치
- * @param : pY = 시작 세로위치
- * @param : pO = 방향
- * @param : pH = 바코드 Height
- * @param : pData = 바코드정보
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_BarCode_Code39_300dpi(pX, pY, pO, pH, pData) {
- var sBuf = "";
- sBuf = lzzfBP_FiendOrigin(pX, pY);
- sBuf += "^BY3,2.4,130";
- sBuf += "^B3" + pO + ",N," + pH + ",N,N^FD" + pData + "^FS";
- return sBuf;
- }
- /* 바코드 프린터 설정 초기정보 가져오기
- *
- * 바코드 프린터 설정 instance 설명
- * <prntkind> : 프린터 종류 ( 0 : 없음, 1 : Zebra, 2 : SATO, 3 : Auto labeler)
- * <commkind> : 통신유형 (01 : PRT, 02 : COM, 03 : TCP/IP)
- * <comm01> <setupval> : PRT의 설정정보
- * <comm02> <comm> : COM의 COM Port (1 : COM1, 2 : COM2)
- * <comm02> <databit> : COM의 Data bit (7 : 7 bit, 8 : 8 bit)
- * <comm02> <stopbit> : COM의 Stop Bit (1 : 1 bit, 2 : 2 bit)
- * <comm02> <baudrate> : COM의 Baud Rate (기본 : 9600)
- * <comm02> <parity> : COM의 Parity (n : None, e : Even, o : Odd)
- * <comm03> <setupval> : COM의 IP Address
- *
- */
- function fGetBrcdPrntInfo() {
- model.makeNode("/root/main/barcdprntsetup");
- model.makeNode("/root/send/scrnid");
- model.setValue("/root/send/scrnid", getScreenID());
- submit("TRLLC90101");
- }
- // 바코드 프린터 설정 팝업 창 띄우기
- function fOpenBrcdPrnt() {
- var count = getNodesetCount("/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
- if(count == 0) {
- model.makeNode("/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
- }
- open("SPLLC90100_바코드프린터설정.xrw","","","","", "/root/main/barcdprntsetup/prntsetupinfo/setupinfo", "/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
- }
- //바코드 object생성 - 2008-07-16 삭제, 사용안함
- /*function lzzfMakeBrcdPrntObj(objNm){
- // 추가 2008-03-20 Jin Hwa Ji
- body.removeChild(objNm);
- // 추가 2008-03-20 Jin Hwa Ji
- body.createChild("xforms:object", "id:"+objNm+"; clsid:{08e57c89-8bf3-4a8c-a34f-84735f870449}; visibility:hidden; left:0px; top:0px; width:0px; height:0px; ");
- }*/
- //바코드 object생성 - 한도미디어작성, 버전 1.0.0.33
- function lzzfMakeBrcdPrntObjHanDo(objNm, pSetRef, pIsNew){
-
- if(pSetRef != null){
-
- var prtkind = model.getvalue(pSetRef + "/prntkind");
- var portnm = model.getvalue(pSetRef + "/commkind");
- var prtnm = model.getvalue(pSetRef + "/comm01/setupval");
- var comnum = model.getvalue(pSetRef + "/comm02/comm");
- var comset = model.getvalue(pSetRef + "/comm02/baudrate");
- comset = comset + "," + model.getvalue(pSetRef + "/comm02/parity");
- comset = comset + "," + model.getvalue(pSetRef + "/comm02/databit");
- comset = comset + "," + model.getvalue(pSetRef + "/comm02/stopbit");
- }else{
-
- var prtkind = model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/prntkind");
- var portnm = model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/commkind");
- var prtnm = model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/comm01/setupval");
- var comnum = model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/comm02/comm");
- var comset = model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/comm02/baudrate");
- comset = comset + "," + model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/comm02/parity");
- comset = comset + "," + model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/comm02/databit");
- comset = comset + "," + model.getvalue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/comm02/stopbit");
- }
- body.removeChild(objNm);
- if( (prtkind == "9" && portnm == "01") || (prtkind == "11" && portnm == "01") || prtkind == "10" || prtkind == "2" || prtkind == "6" || prtkind == "7" || pIsNew == "NEW"){
- body.createChild("xforms:object", "id:"+objNm+"; clsid:{b721f534-d025-466b-8a28-7cf40e700acd}; visibility:hidden; left:100px; top:100px; width:100px; height:100px; ");
-
- if(prtkind == "1") prtkind = 0;
- else if(prtkind == "5") prtkind = 1;
- else if(prtkind == "2") prtkind = 2;
- else if(prtkind == "6") prtkind = 3;
- else if(prtkind == "7") prtkind = 4;
- else if(prtkind == "9") prtkind = 4;
- else if(prtkind == "10") prtkind = 4;
- else if(prtkind == "11") prtkind = 4;
- else prtkind = 9;
-
- if(portnm == "02") portnm = "1";
- else portnm = "2";
-
- eval(objNm + ".setPrt(prtkind, portnm, prtnm, comnum, comset);");
- //objNm.setPrt(prtkind, portnm, prtnm, comnum, comset);
- //PORT.setPrt(3, "LPT");
- }
- else{
- //1.0.0.26
- //{5fe8e390-d882-4ca4-9798-01b1eb10e0f3}
- body.createChild("xforms:object", "id:"+objNm+"; clsid:{5fe8e390-d882-4ca4-9798-01b1eb10e0f3}; visibility:hidden; left:100px; top:100px; width:100px; height:100px; ");
- }
- }
- //오토바코드 object생성
- function lzzfMakeAutoBrcdPrntObj(objNm){
- body.removeChild(objNm);
- //1.0.0.26
- //{5fe8e390-d882-4ca4-9798-01b1eb10e0f3}
- body.createChild("xforms:object", "id:"+objNm+"; clsid:{AE459DE6-EC02-46A5-AD0D-4F028359CC8D}; visibility:hidden; left:100px; top:100px; width:100px; height:100px; ");
- }
- /**
- * @group : commonweb
- * @ver : 2010.01.11 (CMCDEV-0001)
- * @by : 박정은 [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 알파벳, 숫자 Field정의
- *
- * </pre>
- * @param : pX = 시작 가로위치 (in 0.1 mm)
- * @param : pY = 시작 세로위치 (in 0.1 mm)
- * @param : pWs = 가로사이즈 0020 to 0850 (in 0.1 mm)
- * @param : pHs = 세로사이즈 0020 to 0850 (in 0.1 mm)
- * @param : pData = Field Data
- * @param : pReverse = 배경 기준으로 역상으로표시 ( Y:역상으로 )
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_FieldDataA_B472(pX, pY, pWs, pHs, pData, pReverse) {
- var sBuf = "";
- var sReverse="";
- // sSndMsg += "{PV" + "01" + ";" + "0120" + "," + "0020" + "," + "0020" + "," + "0020" + ",B,+000,00,B|}" ;
- // sSndMsg += "{RV" + "01" + ";*"+ bcno +"*|}";
-
- var ppX = pX.toString().getLeftPad(4, "0");
- var ppY = pY.toString().getLeftPad(4, "0");
- var ppWs = pWs.toString().getLeftPad(4, "0");
- var ppHs = pHs.toString().getLeftPad(4, "0");
-
- if (!isNull(pReverse)) { // 역상
- if (pReverse.getTrim() == "Y") {
- sReverse = "W";
- }else{
- sReverse = "B";
- }
- }else{
- sReverse = "B";
- }
- sBuf = "{PV" + "01" + ";" + ppX + "," + ppY + "," + ppWs + "," + ppHs + ",B,+000,00,"+ sReverse +"|}{RV" + "01" + ";"+ pData +"|}" ;
-
- // sBuf += "^FD" + pData + "^FS";
- return sBuf;
- }
- /**
- * @group : commonweb
- * @ver : 2010.01.11 (CMCDEV-0001)
- * @by : 박정은 [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 알파벳, 숫자 Field정의
- *
- * </pre>
- * @param : pX = 시작 가로위치 (in 0.1 mm)
- * @param : pY = 시작 세로위치 (in 0.1 mm)
- * @param : pWs = 가로사이즈 0020 to 0850 (in 0.1 mm)
- * @param : pHs = 세로사이즈 0020 to 0850 (in 0.1 mm)
- * @param : pData = Field Data
- * @param : pReverse = 배경 기준으로 역상으로표시 ( Y:역상으로 )
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_FieldDataG_B472(pX, pY, pData, pReverse) {
- var sBuf = "";
- var sReverse="";
- // sSndMsg += "{PV" + "01" + ";" + "0120" + "," + "0020" + "," + "0020" + "," + "0020" + ",B,+000,00,B|}" ;
- // sSndMsg += "{RV" + "01" + ";*"+ bcno +"*|}";
-
- var ppX = pX.toString().getLeftPad(4, "0");
- var ppY = pY.toString().getLeftPad(4, "0");
- //var ppWs = pWs.toString().getLeftPad(4, "0");
- //var ppHs = pHs.toString().getLeftPad(4, "0");
-
- if (!isNull(pReverse)) { // 역상
- if (pReverse.getTrim() == "Y") {
- sReverse = "W";
- }else{
- sReverse = "B";
- }
- }else{
- sReverse = "B";
- }
- sBuf = "{PC" + "001" + ";" + ppX + "," + ppY + ",1,1,G,-02,00,"+ sReverse +"|}{RC" + "01" + ";"+ pData +"|}" ;
-
- // sBuf += "^FD" + pData + "^FS";
- return sBuf;
- }
- /**
- * @group : commonweb
- * @ver : 2010.01.11 (CMCDEV-0001)
- * @by : 박정은 [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 바코드 정의(Code 39)
- *
- * </pre>
- * @param : pX = 시작 가로위치
- * @param : pY = 시작 세로위치
- * @param : pBW = Wide bar width 01~99
- * @param : pSW = Wide space width 01~99
- * @param : pData = 바코드정보
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_BarCode_Code39_B472(pX, pY, pBW, pSW, pData, pH) {
- var sBuf = "";
- var ppX = pX.toString().getLeftPad(4, "0");
- var ppY = pY.toString().getLeftPad(4, "0");
- var ppBW = pBW.toString().getLeftPad(2, "0");
- var ppSW = pSW.toString().getLeftPad(2, "0");
- var ppHT = pH.toString().getLeftPad(4, "0");
-
- //sSndMsg += "{XB01;0030,0030,3,1,02,02,04,04,02,0,0120,+0000000000,0,00|}"
- //sSndMsg += "{RB01;"+ sBcno +"|}"
-
- sBuf = "{XB01;"+ ppX + "," + ppY +",3,1,02,02,"+ppBW+","+ppSW+",02,0,"+ ppHT +",+0000000000,0,00|}{RB01;" + pData +"|}";
-
- return sBuf;
- }
- /**
- * @group : commonweb
- * @ver : 2010.01.12 (CMCDEV-0001)
- * @by : 박정은 [ACK Co., Ltd.]
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * <pre>
- * 바코드 Format 종료
- *
- * </pre>
- * @param : pCnt = 출력매수
- * @return :
- * @---------------------------------------------------
- */
- function lzzfBP_EndFormat_B472(pCnt) {
- // sSndMsg += "{XS;I,0001,0002C5101|}";
- var vCnt = 1;
-
- if (isNull(pCnt)) {
- vCnt = "0001";
- } else {
- vCnt = pCnt.toString().getLeftPad(4, "0");
- }
- return "{XS;I," + vCnt + ",0002C5101|}";
- }
|