- Fórum
- Protheus/Microsiga/Totvs
- Comunicação Eletrônica (SEFAZ/SPED)
- Nfe (Nota Fiscal Eletrônica)
- Ponto de Entrada PE01NFESEFAZ para NFESEFAZ
Perguntas Ponto de Entrada PE01NFESEFAZ para NFESEFAZ
- lalberto
- Autor do Tópico
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
12 anos 3 meses atrás #5577
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Ponto de Entrada PE01NFESEFAZ para NFESEFAZ foi criado por lalberto
Segue Dica cedida pelo nosso amigo Marcio
Como o ponto de entrada PE01NFESefaz, não há mais necessidade de ficar alterando o fonte padrão nfesefaz.prw.
Segue exemplo:
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³ PE01NFESEFAZ ºAutor ³M.Aflitos º Data ³ 14/09/12 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³ PONTO DE ENTRADA PARA MANIPULAR OS DADOS DA NF QUE º±±
±±º ³ ANTES DE GERAR O XML º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ AP º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
ESTE PONTO DE ENTRADA ELIMINA A NECESSIDADE DE SE ALTERAR O FONTE PADRÃO NFESEFAZ.PRW
*/
#include "protheus.ch"
#define aPROD 1 //-> aProd
#define cMENSCLI 2 //-> cMensCli
#define cMENSFIS 3 //-> cMensFis
#define aDEST 4 //-> aDest
#define aNOTA 5 //-> aNota
#define aINFOITEM 6 //-> aInfoItem
#define aDUPL 7 //-> aDupl
#define aTRANSP 8 //-> aTransp
#define aENTREGA 9 //-> aEntrega
#define aRETIRADA 10 //-> aRetirada
#define aVEICULO 11 //-> aVeiculo
#define aREBOQUE 11 //-> aReboque
// aRetorno[1] -> aProd
// aRetorno[2] -> cMensCli
// aRetorno[3] -> cMensFis
// aRetorno[4] -> aDest
// aRetorno[5] -> aNota
// aRetorno[6] -> aInfoItem
// aRetorno[7] -> aDupl
// aRetorno[8] -> aTransp
// aRetorno[9] -> aEntrega
// aRetorno[10] -> aRetirada
// aRetorno[11] -> aVeiculo
// aRetorno[11] -> aReboque
USER FUNCTION PE01NFESEFAZ()
LOCAL aNfe := PARAMIXB
Local cMsg := ""
LOCAL cMensCli:=""
Local nI := 0
LOCAL aAreaSe4 :={}
LOCAL aAreaSa2 :={}
LOCAL bAux
LOCAL lNfEntrada:=.F.
LOCAL lNfSaida:=.F.
LOCAL cCtrlPed:=.T.
LOCAL cEmailAdic:=""
lNfEntrada:=(aNfe[aNOTA,4]=="0")
lNfSaida:=(aNfe[aNOTA,4]=="1")
cMensCli:=aNfe[cMENSCLI]
IF lNfSaida
If !Empty(SF2->F2_REDESP)
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Posiciona o SA4 Para Buscar os dados do Redespacho ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
aAreaSA4 := SA4->(GetArea())
SA4->(DbSelectArea("SA4")) && Cadastro de Transportadoras
SA4->(DbSetOrder(1)) && A4_FILIAL + A4_COD
If SA4->(DbSeek(xFilial("SA4") + SF2->F2_REDESP))
cMensCli += " - REDESPACHO: " + AllTrim(SA4->A4_NOME) + " - " + AllTrim(SA4->A4_END) + ", " + AllTrim(SA4->A4_MUN) + "/" + AllTrim(SA4->A4_EST) + " TEL.: " + AllTrim(SA4->A4_TEL) + space(15) //" FRETE: " + IIf(SC5->C5_ASTPRED=="C","CIF (1)","FOB (2)") + Space(20) //estava Space(1)
EndIf
RestArea(aAreaSA4)
Else
If (aNfe[aNOTA,5] == "D") .OR. (aNfe[aNOTA,5] == "B") //nf de devolucao/remessa->fornecedor
cMensCli += " - Local Entrega: " + AllTrim(SA2->A2_END) + ", " + AllTrim(SA2->A2_MUN) + "/" + AllTrim(SA2->A2_EST) + Space(1)
Else
If !empty(SA1->A1_ENDENT) // Local de Entrega 1
cMensCli += " - Local Entrega: " + AllTrim(SA1->A1_ENDENT) + ", " + AllTrim(SA1->A1_MUNE) + "/" + AllTrim(SA1->A1_ESTE) + Space(1)
EndIf
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Cond. Vendas ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
aAreaSE4 := SA1->(GetArea())
SE4->(DbSelectArea("SE4"))
SE4->(DbSetOrder())
If !Empty(SF2->F2_COND)
If SE4->(DbSeek(xFilial("SE4") + SF2->F2_COND))
cMensCli += " - Cond.Vendas: " + AllTrim(SE4->E4_DESCRI) + Space(1)
EndIf
EndIf
RestArea(aAreaSE4)
lAux := .T.
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ S/ Pedido, N/ Pedido e Vendedor ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
SC5->(OrdSetFocus(1))
bAux:={|msg| cMensCli+=Iif( !(msg$cMensCli),msg,""),At(msg,cMensCli)+Len(msg) } //21/10/11-M.AFLITOS-BLOCO CODIGO TRATA MAIS DE UM NRO.PEDIDO NA NF.O BLOCO DEVOLVE A POSIÇÃO
cCtrlPed:=""
FOR nItem:=1 TO Len(aNfe[aINFOITEM])
IF .NOT. (aNfe[aINFOITEM, nItem, 1] $ cCtrlPed)
cCtrlPed += aNfe[aINFOITEM, nItem, 1]+";"
IF aNfe[aINFOITEM, nItem, 1] <> SC5->C5_NUM
SC5->(DbSeek(xFilial("SC5")+aNfe[aINFOITEM, nItem, 1]))
ENDIF
If !Empty(SC5->C5_NPEDCLI) .AND. !(AllTrim(SC5->C5_NPEDCLI)$cMensCli)
cMensCli := Stuff( cMensCli,Eval(bAux,"- S/Pedido:"),0, AllTrim(SC5->C5_NPEDCLI) + " /")
EndIf
If !Empty(SC5->C5_NUM) .AND. !(AllTrim(SC5->C5_NUM)$cMensCli)
cMensCli := Stuff( cMensCli,Eval(bAux,"- N/Pedido:"),0, AllTrim(SC5->C5_NUM) + " /")
EndIf
If !Empty(SC5->C5_VEND1) .AND. !(AllTrim(SC5->C5_VEND1) $ cMensCli)
cMensCli := Stuff( cMensCli,Eval(bAux,"- Vendedor:"),0, AllTrim(SC5->C5_VEND1) + " /")
EndIf
// Mensagens Pedido
If !AllTrim(SC5->C5_DADOS01) $ cMensCli
cMensCli += AllTrim(SC5->C5_DADOS01) + Space(1)
EndIf
If !AllTrim(SC5->C5_DADOS02) $ cMensCli
cMensCli += AllTrim(SC5->C5_DADOS02) + Space(1)
EndIf
If !AllTrim(SC5->C5_DADOS03) $ cMensCli
cMensCli += AllTrim(SC5->C5_DADOS03) + Space(1)
EndIf
If !AllTrim(SC5->C5_DADOS04) $ cMensCli
cMensCli += AllTrim(SC5->C5_DADOS04) + Space(1)
EndIf
If !AllTrim(SC5->C5_DADOS05) $ cMensCli
cMensCli += AllTrim(SC5->C5_DADOS05) + Space(1)
EndIf
ENDIF
NEXT
IF "ZONA FRANCA"$ aNfe[cMENSCLI]
//TRATAR A MENSAGEM DA ZONA FRANCA
cMensZF:=aRef[cMENSCLI]
EndIF
ENDIF
IF lNfEntrada
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Busca conteudo do campo personalizado a ser impresso nos Dados Adicion ³
//³ ais ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
If !AllTrim(SF1->F1_DADOS01) $ cMensCli
cMensCli += AllTrim(SF1->F1_DADOS01) + Space(1)
EndIf
If !AllTrim(SF1->F1_DADOS02) $ cMensCli
cMensCli += AllTrim(SF1->F1_DADOS02) + Space(1)
EndIf
If !AllTrim(SF1->F1_DADOS03) $ cMensCli
cMensCli += AllTrim(SF1->F1_DADOS03) + Space(1)
EndIf
If !AllTrim(SF1->F1_DADOS04) $ cMensCli
cMensCli += AllTrim(SF1->F1_DADOS04) + Space(1)
EndIf
ENDIF
aNfe[cMENSCLI]:=cMenscli
//TRATAR EMAIL
cEmailAdic:=Alltrim(SuperGetMV("MV_EMAILNF",.F.,""))
aNfe[aDEST,16]:=AllTrim(aNfe[aDEST,16])+";"+cEmailAdic
RETURN aNfe
Como o ponto de entrada PE01NFESefaz, não há mais necessidade de ficar alterando o fonte padrão nfesefaz.prw.
Segue exemplo:
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³ PE01NFESEFAZ ºAutor ³M.Aflitos º Data ³ 14/09/12 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³ PONTO DE ENTRADA PARA MANIPULAR OS DADOS DA NF QUE º±±
±±º ³ ANTES DE GERAR O XML º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ AP º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
ESTE PONTO DE ENTRADA ELIMINA A NECESSIDADE DE SE ALTERAR O FONTE PADRÃO NFESEFAZ.PRW
*/
#include "protheus.ch"
#define aPROD 1 //-> aProd
#define cMENSCLI 2 //-> cMensCli
#define cMENSFIS 3 //-> cMensFis
#define aDEST 4 //-> aDest
#define aNOTA 5 //-> aNota
#define aINFOITEM 6 //-> aInfoItem
#define aDUPL 7 //-> aDupl
#define aTRANSP 8 //-> aTransp
#define aENTREGA 9 //-> aEntrega
#define aRETIRADA 10 //-> aRetirada
#define aVEICULO 11 //-> aVeiculo
#define aREBOQUE 11 //-> aReboque
// aRetorno[1] -> aProd
// aRetorno[2] -> cMensCli
// aRetorno[3] -> cMensFis
// aRetorno[4] -> aDest
// aRetorno[5] -> aNota
// aRetorno[6] -> aInfoItem
// aRetorno[7] -> aDupl
// aRetorno[8] -> aTransp
// aRetorno[9] -> aEntrega
// aRetorno[10] -> aRetirada
// aRetorno[11] -> aVeiculo
// aRetorno[11] -> aReboque
USER FUNCTION PE01NFESEFAZ()
LOCAL aNfe := PARAMIXB
Local cMsg := ""
LOCAL cMensCli:=""
Local nI := 0
LOCAL aAreaSe4 :={}
LOCAL aAreaSa2 :={}
LOCAL bAux
LOCAL lNfEntrada:=.F.
LOCAL lNfSaida:=.F.
LOCAL cCtrlPed:=.T.
LOCAL cEmailAdic:=""
lNfEntrada:=(aNfe[aNOTA,4]=="0")
lNfSaida:=(aNfe[aNOTA,4]=="1")
cMensCli:=aNfe[cMENSCLI]
IF lNfSaida
If !Empty(SF2->F2_REDESP)
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Posiciona o SA4 Para Buscar os dados do Redespacho ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
aAreaSA4 := SA4->(GetArea())
SA4->(DbSelectArea("SA4")) && Cadastro de Transportadoras
SA4->(DbSetOrder(1)) && A4_FILIAL + A4_COD
If SA4->(DbSeek(xFilial("SA4") + SF2->F2_REDESP))
cMensCli += " - REDESPACHO: " + AllTrim(SA4->A4_NOME) + " - " + AllTrim(SA4->A4_END) + ", " + AllTrim(SA4->A4_MUN) + "/" + AllTrim(SA4->A4_EST) + " TEL.: " + AllTrim(SA4->A4_TEL) + space(15) //" FRETE: " + IIf(SC5->C5_ASTPRED=="C","CIF (1)","FOB (2)") + Space(20) //estava Space(1)
EndIf
RestArea(aAreaSA4)
Else
If (aNfe[aNOTA,5] == "D") .OR. (aNfe[aNOTA,5] == "B") //nf de devolucao/remessa->fornecedor
cMensCli += " - Local Entrega: " + AllTrim(SA2->A2_END) + ", " + AllTrim(SA2->A2_MUN) + "/" + AllTrim(SA2->A2_EST) + Space(1)
Else
If !empty(SA1->A1_ENDENT) // Local de Entrega 1
cMensCli += " - Local Entrega: " + AllTrim(SA1->A1_ENDENT) + ", " + AllTrim(SA1->A1_MUNE) + "/" + AllTrim(SA1->A1_ESTE) + Space(1)
EndIf
EndIf
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Cond. Vendas ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
aAreaSE4 := SA1->(GetArea())
SE4->(DbSelectArea("SE4"))
SE4->(DbSetOrder())
If !Empty(SF2->F2_COND)
If SE4->(DbSeek(xFilial("SE4") + SF2->F2_COND))
cMensCli += " - Cond.Vendas: " + AllTrim(SE4->E4_DESCRI) + Space(1)
EndIf
EndIf
RestArea(aAreaSE4)
lAux := .T.
EndIf
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ S/ Pedido, N/ Pedido e Vendedor ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
SC5->(OrdSetFocus(1))
bAux:={|msg| cMensCli+=Iif( !(msg$cMensCli),msg,""),At(msg,cMensCli)+Len(msg) } //21/10/11-M.AFLITOS-BLOCO CODIGO TRATA MAIS DE UM NRO.PEDIDO NA NF.O BLOCO DEVOLVE A POSIÇÃO
cCtrlPed:=""
FOR nItem:=1 TO Len(aNfe[aINFOITEM])
IF .NOT. (aNfe[aINFOITEM, nItem, 1] $ cCtrlPed)
cCtrlPed += aNfe[aINFOITEM, nItem, 1]+";"
IF aNfe[aINFOITEM, nItem, 1] <> SC5->C5_NUM
SC5->(DbSeek(xFilial("SC5")+aNfe[aINFOITEM, nItem, 1]))
ENDIF
If !Empty(SC5->C5_NPEDCLI) .AND. !(AllTrim(SC5->C5_NPEDCLI)$cMensCli)
cMensCli := Stuff( cMensCli,Eval(bAux,"- S/Pedido:"),0, AllTrim(SC5->C5_NPEDCLI) + " /")
EndIf
If !Empty(SC5->C5_NUM) .AND. !(AllTrim(SC5->C5_NUM)$cMensCli)
cMensCli := Stuff( cMensCli,Eval(bAux,"- N/Pedido:"),0, AllTrim(SC5->C5_NUM) + " /")
EndIf
If !Empty(SC5->C5_VEND1) .AND. !(AllTrim(SC5->C5_VEND1) $ cMensCli)
cMensCli := Stuff( cMensCli,Eval(bAux,"- Vendedor:"),0, AllTrim(SC5->C5_VEND1) + " /")
EndIf
// Mensagens Pedido
If !AllTrim(SC5->C5_DADOS01) $ cMensCli
cMensCli += AllTrim(SC5->C5_DADOS01) + Space(1)
EndIf
If !AllTrim(SC5->C5_DADOS02) $ cMensCli
cMensCli += AllTrim(SC5->C5_DADOS02) + Space(1)
EndIf
If !AllTrim(SC5->C5_DADOS03) $ cMensCli
cMensCli += AllTrim(SC5->C5_DADOS03) + Space(1)
EndIf
If !AllTrim(SC5->C5_DADOS04) $ cMensCli
cMensCli += AllTrim(SC5->C5_DADOS04) + Space(1)
EndIf
If !AllTrim(SC5->C5_DADOS05) $ cMensCli
cMensCli += AllTrim(SC5->C5_DADOS05) + Space(1)
EndIf
ENDIF
NEXT
IF "ZONA FRANCA"$ aNfe[cMENSCLI]
//TRATAR A MENSAGEM DA ZONA FRANCA
cMensZF:=aRef[cMENSCLI]
EndIF
ENDIF
IF lNfEntrada
//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Busca conteudo do campo personalizado a ser impresso nos Dados Adicion ³
//³ ais ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
If !AllTrim(SF1->F1_DADOS01) $ cMensCli
cMensCli += AllTrim(SF1->F1_DADOS01) + Space(1)
EndIf
If !AllTrim(SF1->F1_DADOS02) $ cMensCli
cMensCli += AllTrim(SF1->F1_DADOS02) + Space(1)
EndIf
If !AllTrim(SF1->F1_DADOS03) $ cMensCli
cMensCli += AllTrim(SF1->F1_DADOS03) + Space(1)
EndIf
If !AllTrim(SF1->F1_DADOS04) $ cMensCli
cMensCli += AllTrim(SF1->F1_DADOS04) + Space(1)
EndIf
ENDIF
aNfe[cMENSCLI]:=cMenscli
//TRATAR EMAIL
cEmailAdic:=Alltrim(SuperGetMV("MV_EMAILNF",.F.,""))
aNfe[aDEST,16]:=AllTrim(aNfe[aDEST,16])+";"+cEmailAdic
RETURN aNfe
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.
- colangelo1982
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 3
- Obrigados Recebidos: 0
9 anos 5 meses atrás #28491
por colangelo1982
Respondido por colangelo1982 no tópico Ponto de Entrada PE01NFESEFAZ para NFESEFAZ
Olá Luiz....
Estou tentando usar esse ponto de entrada más não estou conseguindo....
Eu tenho q alterar na danfe a data entrada/saida diferente da data de emissão.
Já alterei o parametro para deixar em branco essa data, mas não estou conseguindo fazer ela aparecer na danfe...
Será q vc pode me ajudar?
Obrigado
Estou tentando usar esse ponto de entrada más não estou conseguindo....
Eu tenho q alterar na danfe a data entrada/saida diferente da data de emissão.
Já alterei o parametro para deixar em branco essa data, mas não estou conseguindo fazer ela aparecer na danfe...
Será q vc pode me ajudar?
Obrigado
Por favor Acessar ou Registrar para participar da conversa.
- lalberto
- Autor do Tópico
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
9 anos 5 meses atrás #28492
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 Ponto de Entrada PE01NFESEFAZ para NFESEFAZ
Carinha me explica o que vc precisa fazer, deixar em branco ? é isso ? vc mexeu aqui ?
aadd(aNota,SF2->F2_EMISSAO) ??
aadd(aNota,SF2->F2_EMISSAO) ??
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.
- lalberto
- Autor do Tópico
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
9 anos 5 meses atrás #28493
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 Ponto de Entrada PE01NFESEFAZ para NFESEFAZ
o Vetor aNota[03] é a data da emissao F2_EMISSAO, senão me engano vc ñão pode mandar vazia.
//Nota Técnica 2013/005 - Data e Hora no formato UTC
If cVeramb >= "3.10"
cString += '<dhEmi>'+ConvType(aNota[03])+"T"+Iif(Len(aNota[06]) > 5,ConvType(aNota[06]),ConvType(aNota[06])+":00")+'</dhEmi>'
cString += NfeTag('<dhSaiEnt>',Iif(lDSaiEnt,"",ConvType(aNota[03])+"T"+Iif(Len(aNota[06]) > 5,ConvType(aNota[06]),ConvType(aNota[06])+":00")))
Else
cString += '<dEmi>'+ConvType(aNota[03])+'</dEmi>'
cString += NfeTag('<dSaiEnt>',Iif(lDSaiEnt, "", ConvType(aNota[03])))
If !lDSaiEnt .And. !Empty(aNota[06])
if len(aNota[06]) > 5
cString += '<hSaiEnt>'+ConvType(aNota[06])+'</hSaiEnt>'
else
cString += '<hSaiEnt>'+ConvType(aNota[06])+":00"+'</hSaiEnt>'
endif
Endif
EndIf
//Nota Técnica 2013/005 - Data e Hora no formato UTC
If cVeramb >= "3.10"
cString += '<dhEmi>'+ConvType(aNota[03])+"T"+Iif(Len(aNota[06]) > 5,ConvType(aNota[06]),ConvType(aNota[06])+":00")+'</dhEmi>'
cString += NfeTag('<dhSaiEnt>',Iif(lDSaiEnt,"",ConvType(aNota[03])+"T"+Iif(Len(aNota[06]) > 5,ConvType(aNota[06]),ConvType(aNota[06])+":00")))
Else
cString += '<dEmi>'+ConvType(aNota[03])+'</dEmi>'
cString += NfeTag('<dSaiEnt>',Iif(lDSaiEnt, "", ConvType(aNota[03])))
If !lDSaiEnt .And. !Empty(aNota[06])
if len(aNota[06]) > 5
cString += '<hSaiEnt>'+ConvType(aNota[06])+'</hSaiEnt>'
else
cString += '<hSaiEnt>'+ConvType(aNota[06])+":00"+'</hSaiEnt>'
endif
Endif
EndIf
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.
- lalberto
- Autor do Tópico
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
9 anos 5 meses atrás #28494
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 Ponto de Entrada PE01NFESEFAZ para NFESEFAZ
Ou é só na danfe que vc deseja que saia em branco ?
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.
- lalberto
- Autor do Tópico
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
9 anos 5 meses atrás #28495
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 Ponto de Entrada PE01NFESEFAZ para NFESEFAZ
Se For apenas na danfe que deseja que saia em branco, mexe aqui neste bloco dentro do fonte DANFEii.PRW
aDest := {cEndDest,;
NoChar(oDestino:_EnderDest:_XBairro:Text,lConverte),;
IIF(Type("oDestino:_EnderDest:_Cep")=="U","",Transform(oDestino:_EnderDest:_Cep:Text,"@r 99999-999")),;
IIF(oNF:_INFNFE:_VERSAO:TEXT >= "3.10",IIF(Type("oIdent:_DHSaiEnt")=="U","",oIdent:_DHSaiEnt:Text),IIF(Type("oIdent:_DSaiEnt")=="U","",oIdent:_DSaiEnt:Text)),;
oDestino:_EnderDest:_XMun:Text,;
IIF(Type("oDestino:_EnderDest:_fone")=="U","",oDestino:_EnderDest:_fone:Text),;
oDestino:_EnderDest:_UF:Text,;
IIF(Type("oDestino:_IE")=="U","",oDestino:_IE:Text),;
""}
Deixa assim:
aDest := {cEndDest,;
NoChar(oDestino:_EnderDest:_XBairro:Text,lConverte),;
IIF(Type("oDestino:_EnderDest:_Cep")=="U","",Transform(oDestino:_EnderDest:_Cep:Text,"@r 99999-999")),;
"",;
oDestino:_EnderDest:_XMun:Text,;
IIF(Type("oDestino:_EnderDest:_fone")=="U","",oDestino:_EnderDest:_fone:Text),;
oDestino:_EnderDest:_UF:Text,;
IIF(Type("oDestino:_IE")=="U","",oDestino:_IE:Text),;
""}
aDest := {cEndDest,;
NoChar(oDestino:_EnderDest:_XBairro:Text,lConverte),;
IIF(Type("oDestino:_EnderDest:_Cep")=="U","",Transform(oDestino:_EnderDest:_Cep:Text,"@r 99999-999")),;
IIF(oNF:_INFNFE:_VERSAO:TEXT >= "3.10",IIF(Type("oIdent:_DHSaiEnt")=="U","",oIdent:_DHSaiEnt:Text),IIF(Type("oIdent:_DSaiEnt")=="U","",oIdent:_DSaiEnt:Text)),;
oDestino:_EnderDest:_XMun:Text,;
IIF(Type("oDestino:_EnderDest:_fone")=="U","",oDestino:_EnderDest:_fone:Text),;
oDestino:_EnderDest:_UF:Text,;
IIF(Type("oDestino:_IE")=="U","",oDestino:_IE:Text),;
""}
Deixa assim:
aDest := {cEndDest,;
NoChar(oDestino:_EnderDest:_XBairro:Text,lConverte),;
IIF(Type("oDestino:_EnderDest:_Cep")=="U","",Transform(oDestino:_EnderDest:_Cep:Text,"@r 99999-999")),;
"",;
oDestino:_EnderDest:_XMun:Text,;
IIF(Type("oDestino:_EnderDest:_fone")=="U","",oDestino:_EnderDest:_fone:Text),;
oDestino:_EnderDest:_UF:Text,;
IIF(Type("oDestino:_IE")=="U","",oDestino:_IE:Text),;
""}
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.
- Fórum
- Protheus/Microsiga/Totvs
- Comunicação Eletrônica (SEFAZ/SPED)
- Nfe (Nota Fiscal Eletrônica)
- Ponto de Entrada PE01NFESEFAZ para NFESEFAZ
Tempo para a criação da página:0.136 segundos