Pular para o conteúdo
Início » Advpl MsBar

Advpl MsBar

    Tipo: Impressão
    Função para impressão de código de barras na deskjet HP e laser.
    Sintaxe
    MSBAR(cTypeBar,nRow,nCol,cCode,oPrint,lCheck,Color,lHorz,nWidth,nHeigth,lBanner,cFont,cMode)
    Parâmetros
    nTypeBar – String com o tipo do codigo de barras
    "EAN13","EAN8","UPCA" ,"SUP5" ,"CODE128"
    "INT25","MAT25,"IND25","CODABAR","CODE3_9"
    nRow – Numero da Linha em centimentros
    nCol – Numero da coluna em centimentros
    cCode – String com o conteudo do codigo
    oPrint – Obejcto Printer
    lcheck – Se calcula o digito de controle
    color – Numero da Cor, utilize a "common.ch"
    lHort – Se imprime na Horizontal
    nWidth – Numero do Tamanho da barra em centímetros
    nHeigth -Numero da Altura da barra em milímetros
    lBanner – Se imprime o linha em baixo do codigo
    cFont – String com o tipo de fonte
    cMode – String com o modo do codigo de barras CO
    Retorna
    NIL
    Exemplo
    Function TesteBAR()
    LOCAL wnrel
    LOCAL cDesc1 :="Teste de codigo de barras"
    LOCAL cDesc2 :=""
    LOCAL cDesc3 :=""
    LOCAL cString :="SA1"
    LOCAL aRegistros := {}
    PRIVATE ctitulo := "Cod.Barras"
    PRIVATE ctamanho := "P"
    PRIVATE aReturn := { "Zebrado", 1,"Administracao", 2, 2, 1, "",1 }
    PRIVATE cnomprog := "teste020"
    PRIVATE nLastKey := 0
    wnrel := "Teste020"
    wnrel:=SetPrint(cString,wnrel,nil,@ctitulo,cDesc1,cDesc2,cDesc3,.F.,"",.F.,cTamanho)
    If nLastKey == 27
    Set Filter To
    Return
    Endif
    SetDefault(aReturn,cString)
    If nLastKey == 27
    Set Filter To

    Endif
    RptStatus({|lEnd| TesteImp(@lEnd,wnrel,cString)},cTitulo)
    Return .T.
    Static Function TesteImp(lEnd,wnrel,cString)
    Local oPr
    oPr := ReturnPrtObj()
    @ 1 ,001 PSAY 'Codigo 128 subset A'
    MSBAR("CODE128", 3 , 1 ,"12345678901" ,oPr,NIL,NIL,NIL,NIL,NIL,NIL,NIL,"A")
    oPr := ReturnPrtObj()
    @ 10 ,001 PSAY 'Codigo 128 subset B'
    MSBAR("CODE128", 10 , 1 ,"123456789011010" ,oPr,NIL,NIL,NIL,NIL,NIL,NIL,NIL,NIL)
    oPr := ReturnPrtObj()
    @ 20 ,001 PSAY 'Codigo EAN 13'
    oFont:= TFont():New( "Arial",,nHeight,,lBold,,,,,lUnderLine )
    oPr := ReturnPrtObj()
    MSBAR("EAN13" , 12 , 1 ,"123456789012",oPr,NIL,NIL,NIL,NIL,NIL,NIL,NIL,NIL)
    Set Filter To
    dbSetOrder(1)
    Set device to Screen
    If aReturn[5] == 1
    Set Printer To
    dbCommitAll()
    OurSpool(wnrel)
    Endif
    MS_FLUSH()
    Return .T.