Ejemplo de ejecución automática de las operaciones de inclusión, borrado y modificación de títulos por
Exemplo de execução automáticas das operações de inclusão, exclusão e alteração de títulos a pagar.
Aviso | ||
---|---|---|
| ||
A função La función 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. |
...
no puede utilizarse en personalizaciones, por tratarse de una función de menú existen algunas dependencias de variables privates declaradas en FINA050. |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE "Protheus.ch" USER FUNCTION FIN050INC() LOCAL aArray := {} PRIVATE lMsErroAuto := .F. //EstruturaEstructura para PA ( PagamentoPago Antecipadoanticipado ) 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 } } //EstruturaEstructura para demaisotros 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 - InclusaoInclusión, 4 - AlteraçãoModificación, 5 - ExclusãoBorrado If lMsErroAuto MostraErro() Else Alert("Título¡Título incluídoincluido comcon sucessoéxito!") Endif Return |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#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çãoModificación devedebe tertener oel registro SE2 posicionadomarcado MsExecAuto( { |x,y,z| FINA050(x,y,z)}, aArray,, 4) // 3 - InclusaoInclusión, 4 - AlteraçãoModificación, 5 - ExclusãoBorrado If lMsErroAuto MostraErro() Else Alert("Título¡Título alteradomodificado comcon sucessoéxito!") Endif Return |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE "Protheus.ch" USER FUNCTION FIN050EXC() LOCAL aArray := {} PRIVATE lMsErroAuto := .F. DbSelectArea("SE2") DbSetOrder(1) DbSeek(xFilial("SE2")+"PAG"+"0001 "+" "+"NF") //ExclusãoBorrado devedebe tertener oel registro SE2 posicionadomarcado aArray := { { "E2_PREFIXO" , SE2->E2_PREFIXO , NIL },; { "E2_NUM" , SE2->E2_NUM , NIL } } MsExecAuto( { |x,y,z| FINA050(x,y,z)}, aArray,, 5) // 3 - InclusaoInclusión, 4 - AlteraçãoModificación, 5 - ExclusãoBorrado If lMsErroAuto MostraErro() Else Alert("Exclusão¡Borrado dodel Títulotítulo comcon sucessoéxito!") Endif Return |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE "Protheus.ch" USER FUNCTION FIN050VA() LOCAL aArray := {} LOCAL nOpc := 3 // 3-InclusãoInclusión, 4 AlteraçãoModificación // DadosDatos dodel valor acessórioadicional. LOCAL aVAAut := {} LOCAL cValAce1 := "000001" // Código dodel Va LOCAL nValAce1 := 200 // Valor dodel 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 comcon valor acessórioadicional 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¡Título incluido comcon sucessoéxito!") Else Alert("Título¡Título alteradomodificado comcon sucessoéxito!") EndIf Endif Return |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#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ãoInclusión If lMsErroAuto MostraErro() Else Alert("Título¡Título incluídoincluido comcon sucessoéxito!") Endif Return |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
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ãoInclusión de Projetoproyecto" , NIL },; {"AUTRATAFR" , aInfProj ,Nil } } MsExecAuto( { |x,y,z| FINA050(x,y,z)}, aGrvSe2,, 3) // 3 - InclusaoInclusión, 4 - AlteraçãoModificación, 5 - ExclusãoBorrado If lMsErroAuto MostraErro() Else Conout("Título¡Título incluídoincluido comcon sucessoéxito!") Endif Return |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE "Protheus.ch" /* QuandoSi houverhubiera qualquercualquier tipo de operaçãooperación que envolvainvolucre ala inserçãoinclusión de valor en noel campo E2_CODRET, ées necessárionecesario utilizar ala funçãofunción SetFuName("FINA050") antes de executar aejecutar MSExecAuto(), poispues existe umauna validaçãovalidación noen X3_VALID -(EXISTCPO("SX5","37"+M->E2_CODRET) .AND. Iif(FUNNAME() $ "FINA050|FINA750",FA050Natur(),.T.)) destede este campo que sosolamente irarealizará realizarel ocálculo calculodel do impostoimpuesto por código de retençãoretención se osi FunName() estiverestuviera contidocontenido emen "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 |
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE "Protheus.ch" /* Exemplo: Inclusão de título a pagar com cálculo de IR, preenchendo a natureza de rendimento (FKF_NATREN) no complemento do título (FKF). */ User Function A050Inc1() Local aArray := {} Local aFKF := {} Local cNatRen := "13002" PRIVATE lMsErroAuto := .F. //Dados da SE2 aArray := { { "E2_PREFIXO" , "BOL" , NIL },; { "E2_NUM" , "BOL00110" , NIL },; { "E2_TIPO" , "BOL" , NIL },; { "E2_NATUREZ" , "RNF000002" , NIL },; { "E2_FORNECE" , "RNF017" , NIL },; { "E2_LOJA" , "01" , NIL },; { "E2_EMISSAO" , CtoD("09/02/2023") , NIL },; { "E2_VENCTO" , CtoD("09/02/2023") , NIL },; { "E2_VENCREA" , CtoD("09/02/2023") , NIL },; { "E2_VALOR" , 5000 , NIL }} //Dados da FKF - Complemento do titulo aFKF := { { "FKF_NATREN", cNatRen , NIL }} aAdd(aArray, {"AUTCMTIT", aFKF, Nil}) MsExecAuto( { |x,y,z| FINA050(x,y,z)}, aArray,, 3) // 3 - Inclusao, 4 - Alteração, 5 - Exclusão If lMsErroAuto MostraErro() Else Conout("Titulo incluso com sucesso!") Endif Return |
Não há.
Documento de referencia FINA050
...