Perguntas Campo C6_CLASFIS - Pedido de Venda

Mais
11 anos 3 meses atrás - 11 anos 3 meses atrás #16867 por maiara_
Galera, estamos com uma situação, no campo C6_CLASFIS, no momento do pedido de venda, quando informamos a Tes, esse campo é preenchido correto, mas se por ventura temos de editar algum campo do pedido, o campo C6_CLASFIS, é alterado novamente.

Não existe gatilho, apenas a função MAFISGET("IT_CLASFIS") padrão.



em anexo

Arquivo Anexo:

Nome do Arquivo: Cst.rar
Tamanho do Arquivo:3,186 KB
Anexos:
Ultima edição: 11 anos 3 meses atrás por maiara_. Razão: anexo

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 3 meses atrás #16922 por Rstrozi
Respondido por Rstrozi no tópico Campo C6_CLASFIS - Pedido de Venda
Boa tarde Maiara,

Verifico a CST e a CFOP usando o P.E. M410LIOK. Reforço a validação no MT410TOK.
#INCLUDE "rwmake.ch"

/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma  ³M410LIOK	   ºAutor  ³Rafael Strozi     º Data ³  28/12/11  º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc.     ³ P.E. para validação das linhas do pedido					  º±±
±±º          ³ 					                                          º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso       ³ AP                                                         º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/                                                        


User Function M410LIOK()

	Local nPPrUnit   := aScan(aHeader,{|x| AllTrim(x[2]) == "C6_PRUNIT"})
	Local nTES		 := aScan(aHeader,{|x| AllTrim(x[2]) == "C6_TES"})  
	Local nCST		 := aScan(aHeader,{|x| AllTrim(x[2]) == "C6_CLASFIS"}) 
	Local nCFOP		 := aScan(aHeader,{|x| AllTrim(x[2]) == "C6_CF"})
    Local nProd		 := aScan(aHeader,{|x| AllTrim(x[2]) == "C6_PRODUTO"})	
	Local cCFOP		 := Posicione("SF4",1,xFilial("SF4")+aCols[n][nTES],"F4_CF")
	Local cCST		 := Posicione("SB1",1,xFilial("SB1")+aCols[n][nProd],"B1_ORIGEM")+Posicione("SF4",1,xFilial("SF4")+aCols[n][nTES],"F4_SITTRIB")
	Local cEstado	 := GetMV("MV_ESTADO")
	Local cCliente	 := M->C5_CLIENTE
	Local cLoja		 := M->C5_LOJACLI
	Local cTpPed	 := M->C5_TIPO
	Local cUF		 := IIf(!cTpPed $ '#D#B#',Posicione("SA1",1,xFilial("SA1")+cCliente+cLoja,"A1_EST"),Posicione("SA2",1,xFilial("SA2")+cCliente+cLoja,"A2_EST"))
	Local lRetorno   := .T.
  
    If !IsBlind()
		If aCols[n,Len(aHeader)+1] == .F. 
		
			If aCols[n][nPPrUnit] == 0 .and. SF4->F4_PODER3 == 'N'
				Aviso("Atenção","Solicitar o preenchimento da tabela de preço para este produto!",{"Ok"})
				lRetorno := .F.
			EndIf  	  	
	    
		    If aCols[n][nCST] <> cCST
	    		Aviso("Atenção","Campo 'Sit. Tribut.' incompativel com a TES! Dê <ENTER> no campo 'TES' para corrigir!",{"Ok"})
				lRetorno := .F.
			EndIf
		
		
			If cUF <> cEstado .and. cUF <> 'EX'
				cCFOP := '6'+Substr(cCFOP,2,3)
			ElseIf cUF <> cEstado .and. cUF == 'EX'
		        cCFOP := '7'+Substr(cCFOP,2,3)
		 	EndIf
			
			If aCols[n][nCFOP] <> cCFOP
		    	Aviso("Atenção","Campo 'Cod. Fiscal' incompativel com a TES! Dê <ENTER> no campo 'TES' para corrigir!",{"Ok"})
				lRetorno := .F.
			EndIf
		    	
		EndIf

	 EndIf

Return(lRetorno)

Por favor Acessar ou Registrar para participar da conversa.

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