| Linha de Produto: | Microsiga Protheus® |
|---|---|
| Segmento: | Backoffice |
| Módulo: | Financeiro |
Exemplo de execução automáticas das operações de inclusão, exclusão e alteração de títulos a pagar.
A função Fa050Inclu() não pode ser usada em customizações por se tratar de um função de menu existem algumas dependências de variáveis privates declaradas no FINA050. |
#INCLUDE "Protheus.ch"
USER FUNCTION FIN050INC()
LOCAL aArray := {}
PRIVATE lMsErroAuto := .F.
//Estrutura para PA ( Pagamento Antecipado )
aArray := { { "E2_PREFIXO" , "PAG" , NIL },;
{ "E2_NUM" , "0001" , NIL },;
{ "E2_TIPO" , "PA" , 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" , "123456" , NIL } }
//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 } }
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
|
#INCLUDE "Protheus.ch"
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
|
#INCLUDE "Protheus.ch"
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
|
#INCLUDE "Protheus.ch"
USER FUNCTION FIN050VA()
LOCAL aArray := {}
LOCAL nOpc := 3 // 3-Inclusão, 4 Alteração
// Dados do valor acessório.
LOCAL aVAAut := {}
LOCAL cValAce1 := "000001" // Código do Va
LOCAL nValAce1 := 200 // Valor do Va
LOCAL cValAce2 := "000012"
LOCAL nValAce2 := 4
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 } }
// Array com valor acessório
aAdd(aVAAut, {cValAce1, nValAce1})
aAdd(aVAAut, {cValAce2, nValAce2})
MsExecAuto( { |a,b,c,d,e,f,g,h,i,j,k,l| FINA050(a, b, c, d, e, f, g, h, i, j, k, l)}, aArray,, nOpc,,,,,,,,, aVAAut)
If lMsErroAuto
MostraErro()
Else
If nOpc == 3
Alert("Título incluido com sucesso!")
Else
Alert("Título alterado com sucesso!")
EndIf
Endif
Return
|
#INCLUDE "Protheus.ch"
USER FUNCTION FIN050INCPA()
LOCAL aArray := {}
PRIVATE lMsErroAuto := .F.
aArray := { { "E2_PREFIXO", "PAG" , NIL },;
{ "E2_NUM" , "0001" , NIL },;
{ "E2_TIPO" , "PA" , 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" , "FIN" , NIL },;
{ "AUTAGENCIA" , "00015" , NIL },;
{ "AUTCONTA" , "0000000001" , NIL },;
{ "AUTMOED" , "1" , NIL },;
{ "AUTCHEQUE" , "124569" , NIL }}
MsExecAuto( { |x,y,z| FINA050(x,y,z)}, aArray,, 3) // 3 - Inclusão
If lMsErroAuto
MostraErro()
Else
Alert("Título incluído com sucesso!")
Endif
Return
|
USER FUNCTION F050IPMS()
Local cPref := "FIN"
Local cNum := "210408001"
Local cPar := "1"
Local cTipo := "NF"
Local cNaturez := "FGRV01"
Local cFornec := "FGRV04"
Local cLoja := "01"
Local nValor := 1000
Local aGrvSe2 := {}
Local aInfProj := {}
Local aInfAFR := {}
PRIVATE lMsErroAuto := .F.
PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "FIN" TABLES "SE2","SE5","SA2","AFR","AF9","AF8"
aAdd(aInfAFR, {"AFR_PROJET", PadR("PMSU000023", TamSX3("AF9_PROJET")[1]), Nil})
aAdd(aInfAFR, {"AFR_TAREFA", "01.02", Nil})
aAdd(aInfAFR, {"AFR_TIPOD", PadR("0004", TamSx3("AFR_TIPOD")[1]), Nil})
aAdd(aInfAFR, {"AFR_VALOR1", nValor, Nil})
aAdd(aInfAFR, {"AFR_REVISA", StrZero(4, TamSX3("AFR_REVISA")[1]), Nil})
aAdd(aInfAFR, {"AFR_PREFIX", cPref, Nil})
aAdd(aInfAFR, {"AFR_NUM", cNum, Nil})
aAdd(aInfAFR, {"AFR_PARCEL", cPar, Nil})
aAdd(aInfAFR, {"AFR_TIPO", cTipo, Nil})
aAdd(aInfAFR, {"AFR_FORNEC", cFornec, Nil})
aAdd(aInfAFR, {"AFR_LOJA", cLoja, Nil})
aAdd(aInfAFR, {"AFR_DATA", Date(), Nil})
aAdd(aInfAFR, {"AFR_VENREA", Date(), Nil})
aAdd(aInfProj, aInfAFR)
aGrvSe2 := { { "E2_PREFIXO" , cPref , NIL },;
{ "E2_NUM" , cNum , NIL },;
{ "E2_TIPO" , cTipo , NIL },;
{ "E2_NATUREZ" , cNaturez , NIL },;
{ "E2_FORNECE" , cFornec , NIL },;
{ "E2_LOJA" , cLoja , NIL },;
{ "E2_EMISSAO" , Date() , NIL },;
{ "E2_VENCTO" , Date() , NIL },;
{ "E2_VENCREA" , Date() , NIL },;
{ "E2_VALOR" , nValor , NIL },;
{ "E2_PROJPMS" , "2" , NIL },;
{ "E2_HIST" , "Inclusão de Projeto" , NIL },;
{"AUTRATAFR" , aInfProj ,Nil } }
MsExecAuto( { |x,y,z| FINA050(x,y,z)}, aGrvSe2,, 3) // 3 - Inclusao, 4 - Alteração, 5 - Exclusão
If lMsErroAuto
MostraErro()
Else
Conout("Título incluído com sucesso!")
Endif
Return
|
Não há.
Documento de referencia FINA050
<style>
div.theme-default .ia-splitter #main {
margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
display: none;
}
#main {
padding-left: 10px;
padding-right: 10px;
overflow-x: hidden;
}
.aui-header-primary .aui-nav, .aui-page-panel {
margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
margin-left: 0px !important;
}
</style>
|