- Fórum
- Protheus/Microsiga/Totvs
- Módulos do Protheus
- Módulo Faturamento
- Impressao de etiqueta de volumes
Perguntas Impressao de etiqueta de volumes
- paulobeto
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 49
- Obrigados Recebidos: 0
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
12 anos 3 meses atrás #3243
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico Re: Impressao de etiqueta de volumes
Cara o ideal é você colocar no menu como tipo 3, outra coisa ela requer parâmetros, vc viu né.
Numero do Pedido, Volumes, Data, Conferente, Qtd de, Qtd ate, ou Numero nota)
Na verdade ela é utilizada em um outro fonte, por isso vc vai precisar adapta-la à suas necessidades.
NESTR21b(_cPedido,_nVolumes,_dData,_cConf,_nEDe,_nEAte,_cNotaFis)
Numero do Pedido, Volumes, Data, Conferente, Qtd de, Qtd ate, ou Numero nota)
Na verdade ela é utilizada em um outro fonte, por isso vc vai precisar adapta-la à suas necessidades.
NESTR21b(_cPedido,_nVolumes,_dData,_cConf,_nEDe,_nEAte,_cNotaFis)
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Por favor Acessar ou Registrar para participar da conversa.
- Lemos
- Autor do Tópico
- Desconectado
- Membro Júnior
Menos
Mais
- Postagens: 20
- Obrigados Recebidos: 0
12 anos 3 meses atrás #3244
por Lemos
Respondido por Lemos no tópico Re: Impressao de etiqueta de volumes
Então para não necessitar colocar já no meu,
Entro em algum modulo Ex. Faturamento >Cadastro de Formulas >Incluir
Digito: Ex. U_ETIQUETA() (No qual ETIQUETA é o nome da função criada pelo usuário).
Eder
Entro em algum modulo Ex. Faturamento >Cadastro de Formulas >Incluir
Digito: Ex. U_ETIQUETA() (No qual ETIQUETA é o nome da função criada pelo usuário).
Eder
Por favor Acessar ou Registrar para participar da conversa.
- Lemos
- Autor do Tópico
- Desconectado
- Membro Júnior
Menos
Mais
- Postagens: 20
- Obrigados Recebidos: 0
- clistenis
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 97
- Obrigados Recebidos: 0
12 anos 3 meses atrás #3334
por clistenis
Respondido por clistenis no tópico Re: Impressao de etiqueta de volumes
Eder boa tarde.
Veja o codigo que tenho aqui.
//Ponto de Entrada MA410MNU.PRW
#Include "PROTHEUS.CH"
#Include "TOPCONN.CH"
/*
Função: MA410MNU
Tipo: Ponto de entrada
Descrição: Adiciona a rotina impressao de etiqueta no menu do pedido de venda
*/
User Function MA410MNU
Local area := GetArea()
Local aBotao := {}
// aadd(aRotina,{'Libera p/ Separação','U_GEVAL001' , 0 , 7,0,NIL})
aadd(aRotina,{'Imprime Etiqueta','U_RACD004("MATA410")' , 0 , 8,0,NIL}) //Chama a rotina de impressão de etiquetas para o pedido posicionado.
ADel(aRotina, 7)
ASize(aRotina, (Len(aRotina)-1))
RestArea(area)
return NIL
//Fonte para impressão da etiqueta de transporte RACD004.prw
#INCLUDE "PROTHEUS.CH"
#INCLUDE "TOPCONN.CH"
USER FUNCTION RACD004(_cRotina)
LOCAL _CPORTA := "LPT1"
LOCAL _AAREA := GETAREA()
local nPos := 1
if _cRotina == "MATA410"
DbSelectArea("SF2")
SF2->(DbSetOrder(1))
if SF2->(DbSeek(xFilial("SF2")+SC5->C5_NOTA+SC5->C5_SERIE))
Else
MSgAlert("Pedido ainda nao faturado!")
Return
Endif
Endif
MSCBPRINTER("ALLEGRO",_CPORTA,,,.F.)//211
MSCBCHKSTATUS(.F.)
//MSCBINFOETI("ALLEGRO","MODELO 1")
DbSelectArea("SA1")
SA1->(DbSetOrder(1))
if SA1->(dBSeek(xFilial("SA1")+ SF2->F2_CLIENTE + SF2->F2_LOJA))
while nPos<=SF2->F2_VOLUME1
MSCBBEGIN(1,3)
MSCBSAY(10,10,"DESTINATARIO:","B","3","1")
MSCBSAY(17,10,SA1->A1_NOME,"B","4","1.4")
MSCBSAY(25,10,SA1->A1_END,"B","3","1")
MSCBSAY(30,10,"CEP: "+SubStr(SA1->A1_CEP,1,5)+"-"+ SubStr(SA1->A1_CEP,6,3) + " - " + alltrim(SA1->A1_MUN) + " - " + alltrim(SA1->A1_EST) + " - (" + alltrim(SA1->A1_DDD) +") "+ Transform(SA1->A1_TEL, "@R 9999-9999"),"B","3","1")
//MSCBLINEH(30,20,75)
MSCBLINEV(35,10,200)
MSCBSAY(50,50,"N.F.:" + alltrim(SF2->F2_DOC) + "/" + alltrim(SF2->F2_SERIE),"B","5","3")
MSCBSAY(65,40,"VOLUME:" + Alltrim(Strzero(nPos,3)) + "/" + Alltrim(Strzero(SF2->F2_VOLUME1,3)),"B","5","3")
MSCBLINEV(75,10,200,25)
MSCBSAY(80,50,"EMBALAGEM DE TRANSPORTE","B","3","2")
MSCBSAY(87,30,"MANTER OS PRODUTOS SEMPRE BEM FECHADOS, AO ABRIGO DA LUZ, CALOR E UMIDADE.","B","3","1")
MSCBLINEV(89,10,200,10)
MSCBSAY(98,10, alltrim(SF2->F2_TRANSP) + " - " + alltrim(Posicione("SA4",1,xFilial("SA4")+SF2->F2_TRANSP,"A4_NOME")),"B","3","0.5")
if _cRotina == "MATA410"
MSCBSAY(98,120,"NUM. PEDIDO. " + alltrim(SC5->C5_NUM),"B","3","0.5")
Else
MSCBSAY(98,120,"NUM. PEDIDO. " + Posicione("SC6",4,xFilial("SC6")+SF2->F2_DOC+SF2->F2_SERIE,"C6_NUM"),"B","3","0.5")
Endif
MSCBEND() //RESTO
Sleep(3000)
nPos++
EndDo
ENDIF
MSCBCLOSEPRINTER()
RESTAREA(_AAREA)
RETURN
Veja o codigo que tenho aqui.
//Ponto de Entrada MA410MNU.PRW
#Include "PROTHEUS.CH"
#Include "TOPCONN.CH"
/*
Função: MA410MNU
Tipo: Ponto de entrada
Descrição: Adiciona a rotina impressao de etiqueta no menu do pedido de venda
*/
User Function MA410MNU
Local area := GetArea()
Local aBotao := {}
// aadd(aRotina,{'Libera p/ Separação','U_GEVAL001' , 0 , 7,0,NIL})
aadd(aRotina,{'Imprime Etiqueta','U_RACD004("MATA410")' , 0 , 8,0,NIL}) //Chama a rotina de impressão de etiquetas para o pedido posicionado.
ADel(aRotina, 7)
ASize(aRotina, (Len(aRotina)-1))
RestArea(area)
return NIL
//Fonte para impressão da etiqueta de transporte RACD004.prw
#INCLUDE "PROTHEUS.CH"
#INCLUDE "TOPCONN.CH"
USER FUNCTION RACD004(_cRotina)
LOCAL _CPORTA := "LPT1"
LOCAL _AAREA := GETAREA()
local nPos := 1
if _cRotina == "MATA410"
DbSelectArea("SF2")
SF2->(DbSetOrder(1))
if SF2->(DbSeek(xFilial("SF2")+SC5->C5_NOTA+SC5->C5_SERIE))
Else
MSgAlert("Pedido ainda nao faturado!")
Return
Endif
Endif
MSCBPRINTER("ALLEGRO",_CPORTA,,,.F.)//211
MSCBCHKSTATUS(.F.)
//MSCBINFOETI("ALLEGRO","MODELO 1")
DbSelectArea("SA1")
SA1->(DbSetOrder(1))
if SA1->(dBSeek(xFilial("SA1")+ SF2->F2_CLIENTE + SF2->F2_LOJA))
while nPos<=SF2->F2_VOLUME1
MSCBBEGIN(1,3)
MSCBSAY(10,10,"DESTINATARIO:","B","3","1")
MSCBSAY(17,10,SA1->A1_NOME,"B","4","1.4")
MSCBSAY(25,10,SA1->A1_END,"B","3","1")
MSCBSAY(30,10,"CEP: "+SubStr(SA1->A1_CEP,1,5)+"-"+ SubStr(SA1->A1_CEP,6,3) + " - " + alltrim(SA1->A1_MUN) + " - " + alltrim(SA1->A1_EST) + " - (" + alltrim(SA1->A1_DDD) +") "+ Transform(SA1->A1_TEL, "@R 9999-9999"),"B","3","1")
//MSCBLINEH(30,20,75)
MSCBLINEV(35,10,200)
MSCBSAY(50,50,"N.F.:" + alltrim(SF2->F2_DOC) + "/" + alltrim(SF2->F2_SERIE),"B","5","3")
MSCBSAY(65,40,"VOLUME:" + Alltrim(Strzero(nPos,3)) + "/" + Alltrim(Strzero(SF2->F2_VOLUME1,3)),"B","5","3")
MSCBLINEV(75,10,200,25)
MSCBSAY(80,50,"EMBALAGEM DE TRANSPORTE","B","3","2")
MSCBSAY(87,30,"MANTER OS PRODUTOS SEMPRE BEM FECHADOS, AO ABRIGO DA LUZ, CALOR E UMIDADE.","B","3","1")
MSCBLINEV(89,10,200,10)
MSCBSAY(98,10, alltrim(SF2->F2_TRANSP) + " - " + alltrim(Posicione("SA4",1,xFilial("SA4")+SF2->F2_TRANSP,"A4_NOME")),"B","3","0.5")
if _cRotina == "MATA410"
MSCBSAY(98,120,"NUM. PEDIDO. " + alltrim(SC5->C5_NUM),"B","3","0.5")
Else
MSCBSAY(98,120,"NUM. PEDIDO. " + Posicione("SC6",4,xFilial("SC6")+SF2->F2_DOC+SF2->F2_SERIE,"C6_NUM"),"B","3","0.5")
Endif
MSCBEND() //RESTO
Sleep(3000)
nPos++
EndDo
ENDIF
MSCBCLOSEPRINTER()
RESTAREA(_AAREA)
RETURN
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- Módulos do Protheus
- Módulo Faturamento
- Impressao de etiqueta de volumes
Tempo para a criação da página:0.103 segundos