× Linguagem de Programação ADVPL

Perguntas Variaveis Documento de Entrada (MATA103)

Mais
11 anos 5 meses atrás #14967 por Rstrozi
Boa noite pessoal,

Estou tentando fazer uma validação utilizando o P.E. MT100TOK para não permitir que o campo 'Tipo CT-e' na aba 'Informações DANFE' seja inserido em branco quando a Espécie do documento for CTE.

Teoricamente é simples de tudo de fazer. Minha dificuldade: qual a variável que corresponde a este campo?

Tentei utilizar SF1->F1_TPCTE , porém o campo não atualiza. Tentei M->F1_TPCTE e diz que a variável não existe. Tentei cTpCTE e também não é.

Alguém tem idéia de como são tratados os campos desta pasta durante a inclusão do documento de entrada?

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 5 meses atrás #14974 por mbrigagao
Rafael,

Acredito que esse campo deva ser um dos elementos do array aNFeDANFE.

Tenho uma customização aqui, no mesmo ponto de entrada, que valida o campo chavenfe da mesma aba .

Segue pedaço do fonte:
If !Empty( aNFeDANFE[13] )
		lRet := .F.
		If !l103Auto
			MsgBox("Espécies de notas fiscais com chave NFe devem ser obrigatoriamente 'SPED' (modelo 55) ou 'CTE' (modelo 57). Corrija a espécie para poder gravar a nota fiscal.", "Atenção, " + cMsg, "ERRO")
		Else
			Conout("Atenção, Espécies de notas fiscais com chave NFe devem ser obrigatoriamente 'SPED' (modelo 55) ou 'CTE' (modelo 57). Corrija a espécie para poder gravar a nota fiscal.")
		EndIf
	EndIf

Boa sorte

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 5 meses atrás #14985 por Rstrozi
Valeu Marcelo!

Segue meu P.E. caso alguém precise:

User Function MT100TOK

Local lRet := .T.
Local cTpCte := Alltrim(aNFeDANFE[18]) //Campo SF1->F1_TPCTE

If Alltrim(cEspecie) == 'CTE' .and. cTpCTE == ''
Alert("A Espécie de Documento = 'CTE' e o campo 'Tipo CT-e' na pasta 'Informações da DANFE' está em branco. Corrija!")
lRet := .F.
EndIf

Return lRet

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 4 meses atrás #15066 por Rstrozi
Marcelo,

No documento de entrada funcionou, porém estou tendo erro na inutilização de NFes: diz que a variavel aNFEDANFE não existe.

Por acaso você já fez um tratamento para isto?

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 4 meses atrás #15115 por mbrigagao
Rafael,

Não tenho nenhum tratamento na rotina de inutilização.

Caso não seja necessario vc tratar essa situação na inutilização, coloque um If mais ou menos assim:
User Function MT100TOK

Local lRet := .T.
Local cTpCte :=  " " 

If FunName() == "MATA100" --> acho que é o nome da rotina de documento de entrada
	cTpCte := Alltrim(aNFeDANFE[18]) //Campo SF1->F1_TPCTE

	If Alltrim(cEspecie) == 'CTE' .and. cTpCTE == ''
		Alert("A Espécie de Documento = 'CTE' e o campo 'Tipo CT-e' na pasta 'Informações da DANFE' está em branco. Corrija!")
		lRet := .F.
	EndIf
EndIf

Return lRet

At.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 4 meses atrás #15219 por Rstrozi
Pô Marcelão, matou a pau!

Estava doido procurando esta função, não especificamente com este nome, mas estava procurando uma função que me retornasse o fonte 'pai'. Aprendi mais uma!


Pra quem interessar, segue o P.E.
#INCLUDE "PROTHEUS.CH"    

User Function MT100TOK

	Local lRet 	:= .T.
	Local cTpCte	:= ""
	
	If FunName() == "MATA103" //Documento de Entrada
		
		cTpCte	:= Alltrim(aNFeDANFE[18]) //SF1->F1_TPCTE

		If Alltrim(cEspecie) == 'CTE' .and. cTpCTE == ''
			Alert("A Espécie de Documento = 'CTE' e o campo 'Tipo CT-e' na pasta 'Informações da DANFE' está em branco. Corrija!")
			lRet	:= .F.
		EndIf                                

	EndIf
	

	
Return lRet

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.112 segundos
Joomla templates by a4joomla