Á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
titleExemplo de rotina automatica
#INCLUDE "Protheus.ch"

//------------------------
// Inclusão
//------------------------ 
USER FUNCTION FIN050INC()
	LOCAL aArray := {}
	 
	PRIVATE lMsErroAuto := .F.
	 
	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 },; }

				{ "AUTBANCO"    , "001"             , NIL },;
				{ "AUTAGENCIA"  , "1234"            , NIL },;
				{ "AUTCONTA"    , "12345"			, NIL } }//Se E2_TIPO for igual a PA (Pagamento Antecipado) Adicionar ao array os campos: "AUTBANCO", "AUTAGENCIA" e "AUTCONTA" com número, agência e conta bancária.
	 
	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

//------------------------
// Alteração
//------------------------ 
USER FUNCTION FIN050ALT()
	LOCAL aArray := {}
	 
	PRIVATE lMsErroAuto := .F.

	aArray := { { "E2_PREFIXO"  , "PAG"             , NIL },;
				{ "E2_NUM"      , "0001"            , NIL },;
				{ "E2_VALOR"    , 2000              , NIL } }  

	DbSelectArea("SE2") 
	DbSetOrder(1)
	DbSeek(xFilial("SE2")+"PAG"+"0001     "+" "+"NF") //Alteração deve ter o registro SE2 posicionado
			 
	MsExecAuto( { |x,y,z| FINA050(x,y,z)}, aArray,, 4)  // 3 - Inclusao, 4 - Alteração, 5 - Exclusão

	If lMsErroAuto
		MostraErro()
	Else
		Alert("Título alterado com sucesso!")
	Endif

Return
                     
//------------------------
// Exclusão
//------------------------ 
USER FUNCTION FIN050EXC()
	LOCAL aArray := {}
	 
	PRIVATE lMsErroAuto := .F.
	 
	DbSelectArea("SE2") 
	DbSetOrder(1)
	DbSeek(xFilial("SE2")+"PAG"+"0001     "+" "+"NF") //Exclusão deve ter o registro SE2 posicionado
									
	aArray := { { "E2_PREFIXO" , SE2->E2_PREFIXO , NIL },;
					{ "E2_NUM"     , SE2->E2_NUM     , NIL } }
	 
	MsExecAuto( { |x,y,z| FINA050(x,y,z)}, aArray,, 5)  // 3 - Inclusao, 4 - Alteração, 5 - Exclusão
	 
	If lMsErroAuto
		MostraErro()
	Else
		Alert("Exclusão do Título com sucesso!")
	Endif
 
Return

...