Here's the code that prints the label...
******************************************************
Sub Print_Label()
On Error GoTo Error_Handler
gcErrSub$ = "Print_Label"
gnRetry% = 0
Set dbsSQLServer = Workspaces(0).OpenDatabase(gcDbName$, dbDriverNoPrompt, False, gcConnect$)
'This checks if one or two pallets
Do
gnRetry% = gnRetry% + 1
gcTagName$ = "AP_TWOPALLETS_S" + gcPrinter$
gnEdaErr&(0) = eda_get_one_float(gcNode$, gcTagName$, "F_CV", gnOnePallet)
Call Sleep(100) 'Delay .1 second
Loop Until gnRetry% > 5 Or gnEdaErr&(0) = 0
If gnOnePallet < 1 Then
'Log File
strOutput = Now() & " " & gnOnePallet & " : Printing 2 labels"
WriteToLogFile strOutput
Call Read_PLC_Info_Pal_1(1)
Call Read_PalNum_Info(1)
Call Read_PrdEnt_Info(1)
Call Calc_Values(1)
'Log File
strOutput = Now() & " Printing barcode label 1"
WriteToLogFile strOutput
Call Print_Barcode_Label(1)
'Log File
strOutput = Now() & " Printing barcode label 2"
WriteToLogFile strOutput
Call Print_Barcode_Label(1)
Else
'Log File
strOutput = Now() & " " & gnOnePallet & " : Printing 4 labels"
WriteToLogFile strOutput
Call Read_PLC_Info_Pal_1(1)
Call Read_PalNum_Info(1)
Call Read_PrdEnt_Info(1)
Call Calc_Values(1)
Call Read_PLC_Info_Pal_2(2)
Call Read_PalNum_Info(2)
Call Read_PrdEnt_Info(2)
Call Calc_Values(2)
'Log File
strOutput = Now() & " Printing barcode label 1"
WriteToLogFile strOutput
Call Print_Barcode_Label(1)
'Log File
strOutput = Now() & " Printing barcode label 2"
WriteToLogFile strOutput
Call Print_Barcode_Label(2)
'Log File
strOutput = Now() & " Printing barcode label 3"
WriteToLogFile strOutput
Call Print_Barcode_Label(1)
'Log File
strOutput = Now() & " Printing barcode label 4"
WriteToLogFile strOutput
Call Print_Barcode_Label(2)
End If
dbsSQLServer.Close
gcTagName$ = "AP_Print_Tick_S" + gcPrinter$
gnEdaErr&(0) = eda_set_one_ascii(gcNode$, gcTagName$, "A_CV", "0", Pkey)
If gnEdaErr&(0) > 0 Then
gnEdaErr&(0) = eda_set_one_ascii(gcNode$, gcTagName$, "A_CV", "0", Pkey)
End If
Exit Sub
Error_Handler:
gcMsg$ = gcErrSub$ & ": " & Err.number & "--" & Err.Description
Call Event_Log("AutoPal VB Error: " & gcMsg$, "M")
Call Set_Alarm(gcMsg$)
Call Update_List(gcMsg$)
Exit Sub
End Sub
*********************************************************
Sub Print_Barcode_Label(lnPallet%)
Dim PrintStr As String
Dim ComStatus As String
gcSaveSub$ = gcErrSub$
gcErrSub$ = "Print_Barcode_Label"
PrintStr = ""
ComStatus = MSComm1.PortOpen
If ComStatus = False Then
MSComm1.PortOpen = True
End If
'Open "Com2:" For Output As #1
PrintStr = "<STX>R<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>k<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>C0" & vbCrLf
PrintStr = PrintStr & "<SI>g1,424" & vbCrLf
PrintStr = PrintStr & "<SI>T1" & vbCrLf
PrintStr = PrintStr & "<SI>R0<SI>r0" & vbCrLf
PrintStr = PrintStr & "<SI>D0<SI>c0<SI>t1" & vbCrLf
PrintStr = PrintStr & "<SI>l0" & vbCrLf
PrintStr = PrintStr & "<SI>F2" & vbCrLf
PrintStr = PrintStr & "<SI>f10" & vbCrLf
PrintStr = PrintStr & "<SI>L1000" & vbCrLf
PrintStr = PrintStr & "<SI>I5" & vbCrLf
PrintStr = PrintStr & "<SI>i0" & vbCrLf
PrintStr = PrintStr & "<SI>S40" & vbCrLf
PrintStr = PrintStr & "<SI>d0" & vbCrLf
PrintStr = PrintStr & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>E2,1<CAN><ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F4<LF><SUB><SUB>1" & gcBarCode1$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F5<LF><SUB><SUB>1" & gcBarCode2$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F6<LF>" & gcBarCode2$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F7<LF>" & gcBarCode2$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F9<LF>" & gcBCBest$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F10<LF>" & gcLotCode$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F11<LF>" & gcBarCode2$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F12<LF>" & gcBarCode1$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F15<LF>" & gcItmDsc$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F16<LF>" & gcDshPck$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F17<LF>" & Trim(Str(gnLayerCount&(lnPallet%))) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F20<LF>" & Trim(Str(gnTotCaseCnt&(lnPallet%))) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F22<LF>" & gcContents$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><ESC>F24<LF>" & gcUnitNumber$(lnPallet%) & "<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><RS>1<ETX>" & vbCrLf
PrintStr = PrintStr & "<STX><US>1<ETX><STX><ETB><ETX>" & vbCrLf
'Log File
strOutput = PrintStr
WriteToLogFile strOutput
MSComm1.Output = PrintStr
Call Sleep(1000)
'Close #1
MSComm1.PortOpen = False
gcErrSub$ = gcSaveSub$
End Sub
Thanks again