Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
languagejava
themeMidnight
titleCódigo de retenção de títulos a pagar
collapsetrue
#INCLUDE "Protheus.ch"

/*	Quando houver qualquer tipo de operação que envolva a inserção de valor no campo
	E2_CODRET, é necessário utilizar a função SetFuName("FINA050") antes de executar a MSExecAuto(),
	pois existe uma validação no X3_VALID -(EXISTCPO("SX5","37"+M->E2_CODRET) .AND. Iif(FUNNAME() $ "FINA050|FINA750",FA050Natur(),.T.))
	deste campo que garante que o calculo do imposto ocorra corretamentepor codigo de retenção somente se o FunName() estiver contido em "FINA050".	*/

USER FUNCTION F050CODRET()
	LOCAL aArray := {}
	 
	PRIVATE lMsErroAuto := .F.
	
	//Estrutura para demais títulos
	aArray := { { "E2_PREFIXO"  , "PAG"             , NIL },;
				{ "E2_NUM"      , "0001"            , NIL },;
				{ "E2_TIPO"     , "NF"              , NIL },;
				{ "E2_NATUREZ"  , "001"             , NIL },;
				{ "E2_FORNECE"  , "0001"            , NIL },;
				{ "E2_EMISSAO"  , CtoD("17/02/2012"), NIL },;
				{ "E2_VENCTO"   , CtoD("17/02/2012"), NIL },;
				{ "E2_VENCREA"  , CtoD("17/02/2012"), NIL },;
				{ "E2_VALOR"    , 5000              , NIL },;
 				{ "E2_DIRF"     , "1"				, NIL },;
				{ "E2_CODRET"   , "3208"            , NIL }}
	
	SetFunName("FINA050") 
	MsExecAuto( { |x,y,z| FINA050(x,y,z)}, aArray,, 3)  // 3 - Inclusao, 4 - Alteração, 5 - Exclusão
	 
	 
	If lMsErroAuto
		MostraErro()
	Else
		Alert("Título incluído com sucesso!")
	Endif
	 
Return

...