Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Cross Segmentos - Backoffice Linha Protheus - FINA040 - Exemplo de ExecAuto para alteração de título a receber utilizando em conjunto o ponto de entrada FI040ROT


time.png Tempo aproximado para leitura: 00:05:00 min

Ocorrência
FINA040 - Exemplo de ExecAuto para alteração de título a receber utilizando em conjunto o ponto de entrada FI040ROT

Ambiente
Cross Segmentos - TOTVS Backoffice (Linha Protheus) - TOTVS Protheus Financeiro - Todas as versões

Causa 
FINA040 - Possuir um título a receber sem prefixo, com número 000000001, sem parcela (no exemplo, o tamanho do código da parcela no ambiente é de 4 caracteres).

Neste exemplo, é necessário alterar o campo E1_HIST executando o ExecAuto de dentro do Protheus, em vez de executá-lo pelo VS Code.

Solução
 1 - FINA040  - Incluir um título a receber pelo protheus

 

2 - Compile o ponto de entrada responsável pelos botões. Ele será responsável por chamar a rotina de alteração do título a receber por meio do MSExecAuto.

#Include 'Protheus.ch'
#Include 'FWMVCDEF.ch'
 
Function U_FI040ROT()
     
    Local aArea   := GetArea()
    Local aRotina := Paramixb // Array contendo os botoes padrões da rotina.
 
    // Tratamento no array aRotina para adicionar novos botoes e retorno do novo array.
    Aadd(aRotina, { "MYF040ALT", "U_MYF040ALT", 0, 8, 0,.F.})
     
    RestArea(aArea)
 
Return aRotina
 
 
3 - Compile o ExecAuto de alteração do título a receber.
#INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"

 

Function U_MYF040ALT()
    Local aArea   := GetArea()
    Local aTitulo := {}
    PRIVATE lMsErroAuto := .F.
   
    //PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "FIN"  //<- Caso a chamada seja por fora do protheus (vs-code), é necessário ter esse comando.

 

    aAdd(aTitulo, {"E1_HIST", "TESTE NOVO HISTORICO", Nil})
 
    DbSelectArea("SE1")
    DbSetOrder(1)  //E1_FILIAL+E1_FILIAL+E1_PREFIXO+E1_NUM+E1_PARCELA+E1_TIPO
 
    DbSeek("01" + "   " + "000000001" + "    " +"NF ") // <- minha parcela tem 4 caracteres de tamanho
 
    MsExecAuto( {|a,b,c,d,e,f,g| FINA040(a,b,c,d,e,f,g)},aTitulo, 4 ) // 3 - Inclusao, 4 - Alteração, 5 - Exclusão
    RestArea(aArea)
   
Return

 

 
4 - Clique no botão "MYF040ALT". Ele acionará o ponto de entrada FI040ROT, que, por sua vez, executará o MSExecAuto de alteração MYF040ALT.


 

5 - Verifique que o campo E1_HIST foi alterado para "TESTE NOVO HISTORICO".

 

Saiba mais:

ADVPL - Exemplo de execauto para alteração FINA050

ADVPL - Ponto de entrada FI040ROT

 

 

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Artigo fechado para comentários.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _