Mostrando uma Mensagem na Tela e Aguardando um Sim ou Não do Usuário com MsgYesNo em ADVPL

Mostrando uma Mensagem na Tela e Aguardando um Sim ou Não do Usuário com MsgYesNo em ADVPL

2 minutos A função MsgYesNo em ADVPL mostra uma mensagem na tela e espera que o usuário decida, por meio dos botões Sim ou Não, qual ação será tomada na tela do TOTVS Protheus.  Ela é uma das funções de Avisos e Alertas em ADVPL.  Sintaxe: MsgYesNo(cMsg,cTitulo) Parâmetro(s): Retorno: – Observações: Essa função permite que se mostre uma mensagem para o usuário com as opções Sim e Não. Esses botões são criados automaticamente pela função e permitem que o usuário decida que caminho o Continue lendo

Retornando a Diferença em Dias Entre duas Datas com DateDiffDay em ADVPL

Retornando a Diferença em Dias Entre duas Datas com DateDiffDay em ADVPL

1 minuto   A função DateDiffDay retorna a diferença em dias entre duas datas informadas nos parâmetros. Essa função recebe duas datas como parâmetros onde o primeiro se refere a data inicial e o segundo a data final. DateDiffDay é uma das funções de manipulação de data e hora em ADVPL. Sintaxe: DateDiffDay(dDataIni,dDataFim)   Parâmetro(s):   Retorno:   Exemplo da função DateDiffDay em ADVPL:   É isso aí, finalizamos mais um post aqui no Blog ProtheusAdvpl, caso tenha ficado alguma dúvida deixe seu comentário ou Continue lendo

Como Restaurar o Menu SIGACFG com FwSysMenuRestore Após Salvar com o Nome de Outro Módulo

Como Restaurar o Menu SIGACFG com FwSysMenuRestore Após Salvar com o Nome de Outro Módulo

2 minutos Olá, no post de hoje iremos aprender como restaurar o menu do Configurador(SIGACFG) com FwSysMenuRestore após salvar o menu com o nome de outro módulo. Imaginemos a seguinte situação. Nós entramos no módulo configurador(SIGACFG) do TOTVS Protheus para dar uma manutenção no menu de um módulo Protheus, como o compras(SIGACOM) por exemplo, após finalizarmos a manutenção por uma pequena desatenção ao invés de salvarmos o menu com o nome de sigacom.xnu acabamos trocando pelo nome de sigacfg.xnu, substituindo assim o menu do Continue lendo

Pesquisando e Substituindo Caracteres em uma String com StrTran em ADVPL

Pesquisando e Substituindo Caracteres em uma String com StrTran em ADVPL

2 minutos A função StrTran em ADVPL é utilizada para pesquisar e substituir um conjunto de caracteres em uma string.  Ela é case sensitive, ou seja, diferencia letras maiúsculas e minúsculas. Também é uma das funções de manipulação de string em ADVPL.    Sintaxe: StrTran(cString,cPesq,cSubst,nInicio,nQtdSub)   Parâmetro(s): Retorno:   Exemplo da função StrTran em ADVPL: No código ADVPL acima utilizamos a função StrTran para pesquisar na string “Projeto Programação no Protheus”(cString= “Projeto Programação no Protheus”) o conteúdo “Pro”(cPesq= “Pro”) e substituir por “@”(cSubst= “@”) a Continue lendo

Mostrando uma Mensagem Informativa na Tela com MsgInfo em ADVPL

Mostrando uma Mensagem Informativa na Tela com MsgInfo em ADVPL

1 minuto A função MsgInfo em ADVPL apresenta uma mensagem de informação na tela do TOTVS Protheus.  Ela é uma das funções de Avisos e Alertas em ADVPL.  Sintaxe: MsgInfo(cMsg,cTitulo) Parâmetro(s): Retorno:     Exemplo da função MsgInfo em ADVPL: É isso aí, finalizamos aqui o post sobre a função MsgInfo em ADVPL. Caso tenha ficado alguma dúvida deixe seu comentário ou nos envie um e-mail para adiliocosta@protheusadvpl.com.br, até um próximo post, grande abraço e fica com Deus. Link(s) de referência(s): https://tdn.totvs.com/display/tec/MsgInfo  

Criando uma Tela de Cadastro Padrão MBrowse(Modelo1) com AxCadastro em ADVPL

Criando uma Tela de Cadastro Padrão MBrowse(Modelo1) com AxCadastro em ADVPL

2 minutos A função AxCadastro em ADVPL é utilizada para criar uma tela padrão da MBrowse(modelo 1) no TOTVS Protheus.  Ela é uma das funções de Cadastros em componentes de interface visual em ADVPL.  AxCadastro disponibiliza algumas opções na sua criação, como: Browse padrão para visualização das informações da base de dados, de acordo com asconfigurações do SX3 – Dicionário de Dados (campo browse); Funções de pesquisa, visualização, inclusão, alteração e exclusão padrões paravisualização de registros simples, sem a opção de cabeçalho e itens. Continue lendo

Retornando uma String com uma Quantidade Especificada de Espaços com Space em ADVPL

Retornando uma String com uma Quantidade Especificada de Espaços com Space em ADVPL

1 minuto A função Space retorna uma String com uma quantidade especificada de espaços.  Ela é uma das funções de Manipulação de String em ADVPL.  Sintaxe: Space(nQuant) Parâmetro(s): Retorno: Observações: Caso seja especificado 0 (zero) no parâmetro nQuant, a função retornará uma string nula (“”). Essa função pode ser utilizada, por exemplo, para inicializar uma variável do tipo caractere, antes que a mesma seja associada a um comando Get. Podemos utilizar a função TamSX3 em conjunto com Space; É isso aí, finalizamos aqui o post Continue lendo

Como Executar Queries com os Comandos BeginSQL e EndSQL

Como Executar Queries com os Comandos BeginSQL e EndSQL

2 minutos Olá, no post de hoje iremos ver como executar query Embedded SQL(SQL integrado ou embutido) utilizando o comandos BeginSQL EndSQL no ADVPL.  Muitas vezes como forma de facilitar o desenvolvimento de querys no Protheus utilizamos o que chamamos de Embedded SQL, que são querys SQL embutidas no código ADVPL. Um dos comandos utilizados para isso é o BeginSQL EndSQL conforme veremos. Sintaxe: BeginSQL “SUA_TABELA”   //Comandos SQL   EndSQL    Exemplo básico de BeginSQL e EndSQL: Características dos comandos de instruções acima: Exemplo Continue lendo

Validando se uma Expressão Está Vazia com Empty em ADVPL

Validando se uma Expressão Está Vazia com Empty em ADVPL

3 minutos A função Empty no ADVPL valida se uma expressão ou variável está vazia. Ela é uma das funções de validação em ADVPL.    Sintaxe: Empty(xExp)     Parâmetro(s):   Retorno:   Observações: Os critérios para determinar se o valor será considerado vazio, no parâmetro lRet, dependem do tipo de dado, no parâmetro xExp, e das regras de retorno, conforme a tabela regras de retorno:     A função Empty em ADVPL poderá ser utilizada para as seguintes situações: Determinar se o usuário Continue lendo

Retornando Sempre um Valor Verdadeiro com AllwaysTrue em ADVPL

Retornando Sempre um Valor Verdadeiro com AllwaysTrue em ADVPL

1 minuto A função AllwaysTrue em ADVPL foi criada com o objetivo de compatibilidade, sendo que sempre irá retornar um valor lógico verdadeiro(.T.), facilitando a especificação desta situação nas parametrizações de validações de modelos de interface pré-definidos no sistema. Ela é uma das funções de validação em ADVPL.   Sintaxe: AllwaysTrue( )     Parâmetro(s): – Retorno:     Exemplo da função AllwaysTrue em ADVPL: Bem, finalizamos mais um post aqui no blog. Espero que você tenha entendido, qualquer dúvida nos envie um e-mail para Continue lendo

Verificando se um Registro Existe na Própria Tabela com ExistChav em ADVPL

Verificando se um Registro Existe na Própria Tabela com ExistChav em ADVPL

2 minutos A função ExistChav em ADVPL verifica se um registro existe na própria tabela posicionada. Elá é uma das funções de validação no ADVPL.   Sintaxe: ExistChav(cAlias,cExpr,nInd,cHelp)     Parâmetro(s):   Retorno:   Dica:  As funções ExistChav e ExistCpo tem algumas semelhanças. Porém, enquanto que a função ExistChav verifica uma chave única, ou seja, verifica se um código já existe no próprio arquivo de dados que está sendo manipulado, a função ExistCpo verifica uma chave estrangeira, ou seja, verifica se um código existe em Continue lendo

Verificando se um Conteúdo Pertence a uma Expressão com Pertence em ADVPL

Verificando se um Conteúdo Pertence a uma Expressão com Pertence em ADVPL

2 minutos A função Pertence em ADVPL verifica se o conteúdo de um campo ou variável pertence a uma expressão informada como parâmetro. Ela é uma das funções de validação em ADVPL.   Sintaxe: Pertence(cExpr)   Parâmetro(s):   Retorno:   Utilização Essa função normalmente é utilizada em campos que possuem a opção de combo. Ou seja, várias opções disponíveis dentro de uma lista pré-determinada.   Exemplo da função Pertence em ADVPL: Nesse exemplo, o conteúdo da variável não pode ser diferente de “0”, “1”, Continue lendo

Como Executar Stored Procedure com TCSPExec no ADVPL

Como Executar Stored Procedure com TCSPExec no ADVPL

1 minuto Olá, no post de hoje iremos aprender como executar stored procedure com TCSPExec no ADVPL. Stored procedure são um conjunto de comandos SQL que podemos criar e armazenar no banco de dados para serem executadas a qualquer momento por programas externos. Em um exemplo mais objetivo, stored procedure são funções que criamos que contém comandos SQL e assim podemos chamar essas funções para execução desses comandos SQL. No nosso exemplo nesse post a função TCSPExec em ADVPL executa uma stored procedure definida. Continue lendo

Exit

Exit

1 minuto Olá, no post de hoje iremos falar de um dos comandos ADVPL, o comando Exit.  O comando Exit em ADVPL causa a saída de um ciclo de repetição While … EndDo ou For … Next, transferindo o fluxo de execução do programa para a primeira linha de instrução imediatamente seguinte ao EndDo ou Next.   Sintaxe: Exit   Parâmetro(s): Nenhum   Utilização: Utiliza-se o comando Exit para forçar a finalização de uma estrutura de repetição While … EndDo ou For … Next, Continue lendo

Obtendo um Determinado Número de Caracteres à Direita de uma String com Right em ADVPL

Obtendo um Determinado Número de Caracteres à Direita de uma String com Right em ADVPL

1 minuto A função Right em ADVPL retorna um determinado número da caracteres à direita de uma string passada como parâmetro. Ela é uma das funções de manipulação de string em ADVPL.    Sintaxe: Left(cTexto,nNumCar)   Parâmetro(s): Retorno: Observações: Caso o parâmetro nNumCar seja maior que o tamanho da string, será retornada a própria string informada no parâmetro; Caso o parâmetro nNumCar seja menor ou igual a 0 (zero), a função retornará uma string vazia; Caso o parâmetro nNumCar seja menor que 0 (zero), a Continue lendo

Obtendo o Conteúdo de um Parâmetro do Sistema(SX6) com GetMV em ADVPL

Obtendo o Conteúdo de um Parâmetro do Sistema(SX6) com GetMV em ADVPL

1 minuto A função GetMV, em ADVPL obtém o conteúdo de um parâmetro do sistema(SX6) informado. Ela é uma das Funções de Parâmetros do Sistema(SX6) em ADVPL.   Sintaxe: GetMV(cParam)   Parâmetro(s):   Retorno:   Exemplo da função GetMV em ADVPL: Bem, finalizamos mais um post aqui do blog, espero que tenha entendido o conteúdo sobre a função GetMV. Qualquer dúvida deixe seu comentário abaixo ou nos envie um e-mail para adiliocosta@protheusadvpl.com.br. Nos ajude compartilhando esse conteúdo nos grupos de Protheus e ADVPL/TL++ que Continue lendo

Deixando Maiúsculas as Iniciais de uma String e o Restante Minúsculas com Capital em ADVPL

Deixando Maiúsculas as Iniciais de uma String e o Restante Minúsculas com Capital em ADVPL

1 minuto A função Capital  em ADVPL transforma as letras iniciais de uma string em maiúsculas e as demais letras em minúsculas.  A função Capital é uma das funções de manipulação de string em ADVPL.  Sintaxe: Capital(cTexto) Parâmetro(s): Retorno:     Exemplo da função Capital em ADVPL: É isso aí, finalizamos aqui o post sobre a função Capital em ADVPL. Caso tenha ficado alguma dúvida deixe seu comentário ou nos envie um e-mail para adiliocosta@protheusadvpl.com.br, até um próximo post, grande abraço e fica com Continue lendo

Obtendo um Determinado Número de Caracteres à Esquerda de uma String com Left em ADVPL

Obtendo um Determinado Número de Caracteres à Esquerda de uma String com Left em ADVPL

1 minuto A função Left em ADVPL retorna um determinado número da caracteres à esquerda de uma string passada como parâmetro. Ela é uma das funções de manipulação de string em ADVPL.    Sintaxe: Left(cTexto,nNumCar)   Parâmetro(s): Retorno:   Observações: Caso o parâmetro nNumCar seja maior que o tamanho da string, será retornada a própria string informada no parâmetro; Caso o parâmetro nNumCar seja menor ou igual a 0 (zero), a função retornará uma string vazia.   Exemplo da função Left em ADVPL: No código Continue lendo

Retornando Sempre um Valor Falso com AllwaysFalse em ADVPL

Retornando Sempre um Valor Falso com AllwaysFalse em ADVPL

1 minuto A função AllwaysFalse em ADVPL foi criada com o objetivo de compatibilidade, sendo que sempre irá retornar um valor lógico falso(.F.), facilitando a especificação desta situação nas parametrizações de validações de modelos de interface pré-definidos no sistema. . Ela é uma das funções de validação em ADVPL.   Sintaxe: AllwaysFalse( )   Parâmetro(s): – Retorno:     Exemplo da função AllwaysFalse em ADVPL:   Bem, finalizamos mais um post aqui no blog. Espero que você tenha entendido, qualquer dúvida nos envie um e-mail Continue lendo

Executando um Bloco de Código com Eval em ADVPL

Executando um Bloco de Código com Eval em ADVPL

2 minutos   A função Eval em ADVPL executa um bloco de código passado como parâmetro. Ela é uma das funções de manipulação de bloco de códigos em ADVPL. Sintaxe: Eval(bBloco,xExp)   Parâmetro(s):   Retorno:     Exemplo da função Eval em ADVPL:  No código ADVPL acima nós criamos um bloco código chamado bSoma que recebe como parâmetro nVal depois iremos somar o conteúdo de nVal com 12 e atribuir o resultado a Y, ao final multiplicamos o conteúdo de Y por nVal e Continue lendo

Como Corrigir o Erro Duplicated function GETMUNSIAF (FOUND in FISA022.PRW)

Como Corrigir o Erro Duplicated function GETMUNSIAF (FOUND in FISA022.PRW)

menos de 1 minuto Olá, no post de hoje iremos falar do erro Duplicated function GETMUNSIAF (FOUND in FISA022.PRW). Esse erro é ocasionado quando tentamos aplicar um patch do TSS no RPO do Protheus ou também o contrário, quando tentamos aplicar um patch do Protheus no RPO do TSS. Nesse caso precisa ser validado o patch e saber qual o RPO deverá ser aplicado a atualização.   Bem, finalizamos mais um post aqui do blog. Qualquer dúvida deixe seu comentário ou envio um e-mail Continue lendo

Centralizando o Conteúdo de uma Variável Adicionando Caracteres de Preenchimento à Direita e à Esquerda com PadC em ADVPL

Centralizando o Conteúdo de uma Variável Adicionando Caracteres de Preenchimento à Direita e à Esquerda com PadC em ADVPL

2 minutos A função PadC centraliza o conteúdo de uma variável adicionando caracteres de preenchimento à direita e à esquerda. Ela é a junção de PadR e PadL. Ela é uma das funções de manipulação de string em ADVPL.    Sintaxe: PadC(xExp,nTam,cChar)   Parâmetro(s): Retorno: Observações: PadC transforma o valor apontado por xExp em string (igual ao comportamento da função cValToChar), e adiciona o caractere definido em cChar à esquerda e à direita do valor de xExp até que o comprimento especificado em nTam seja atingido; Caso o comprimento de xExp convertido para Continue lendo

ConfirmSX8

ConfirmSX8

1 minuto   Sintaxe: ConfirmSX8()   Parâmetro(s): –   Retorno: –   Exemplo da função ConfirmSX8 em ADVPL: Bem, finalizamos mais um post aqui do blog, espero que tenha entendido. Qualquer dúvida deixe seu comentário abaixo ou nos envie um e-mail para adiliocosta@protheusadvpl.com.br. Nos ajude compartilhando esse conteúdo nos grupos de Protheus e ADVPL/TL++ que participa. Grande abraço e fica com Deus.

Obtendo o Próximo Número Sequencial de um Alias/Tabela com GetSXENum em ADVPL

Obtendo o Próximo Número Sequencial de um Alias/Tabela com GetSXENum em ADVPL

2 minutos A função GetSXENum em ADVPL obtém o próximo número  disponível ou sequencial de um alias/tabela informado no parâmetro, através da referência aos arquivos de sistema SXE/SXF ou ao servidor de numeração(TOTVS License Server Virtual), quando esta configuração está habilitada no ambiente TOTVS Protheus.  Essa função é muito útil quando desejamos obter o próximo número disponível de uma tabela para ser usado na inclusão via rotinas automáticas em ADVPL como Execauto. A função GetSXENum trabalha em conjunto com a função ConfirmeSX8, que auxilia Continue lendo

Desfazendo a Numeração Gerada por GetSXENUM com RollBackSX8 em ADVPL

Desfazendo a Numeração Gerada por GetSXENUM com RollBackSX8 em ADVPL

2 minutos A função RollBackSX8 em ADVPL tem por objetivo desfazer a numeração sequencial gerada pela função GetSXENum. Ela é utilizada em situações em que ocorre algum erro, por exemplo, em processos de rotinas automáticas executadas via execauto, onde é gerado um número sequencial para ser utilizado na inclusão do registro e caso ocorra erros utilizamos ela para desfazer a numeração sequencial gerada e assim não perder o número e utilizá-lo em numa nova inclusão. Ela é uma das Funções de Controle de Numeração(SXE) Continue lendo

Verificando se uma Função Está na Pilha de Chamada de Funções com FWIsInCallStack em ADVPL

Verificando se uma Função Está na Pilha de Chamada de Funções com FWIsInCallStack em ADVPL

1 minuto A função FWIsInCallStack, em ADVPL verifica se uma função passada como parâmetro está na pilha de chamadas de funções. Ela é uma das funções de controle de processamento em ADVPL. Essa função é muito útil em situações onde precisamos sabe se um processamento dentro do Protheus começou de uma determinada função e assim podermos efetuar uma condição no programa.   Sintaxe: FWIsInCallStack(<cNomeFunc>)   Parâmetro(s):   Retorno:     Exemplo em da função FWIsInCallStack em ADVPL: Bem, finalizamos mais um post aqui no Continue lendo

Executando Instruções SQL Direto no Banco de Dados com TCSQLExec em ADVPL

Executando Instruções SQL Direto no Banco de Dados com TCSQLExec em ADVPL

2 minutos   A função TCSQLExec em ADVPL é usada para executar instruções SQL diretas (como SELECT, INSERT, UPDATE, DELETE) em bancos de dados compatíveis com o TopConnect (como SQL Server, Oracle, PostgreSQL, etc.). Ela é uma das funções de acesso e manipulação de banco de dados no Protheus e tem por objetivo executar uma instrução de sintaxe SQL(Structured Query Language) diretamente no banco de dados em que está conectado.   Sintaxe: TCSQLExec(<cQuery>)   Parâmetro(s):   Retorno:     Exemplo da função TCSQLExec em Continue lendo

UsrRetName

UsrRetName

1 minuto A função UsrRetName retorna o nome do usuário do TOTVS Protheus conforme o código passado como parâmetro. Ela é uma das Funções de Manipulação de Usuários do Protheus. Sintaxe: UsrRetName(cCodUsr)   Parâmetro(s):   Retorno:   Exemplo da função UsrRetName em ADVPL:   Bem, finalizamos mais um post aqui no blog. Espero que tenha entendido, se tiver ficado alguma dúvida deixe seu comentário ou nos mandar um e-mail para adiliocosta@protheusadvpl.com.br. Grande abraço e fica com Deus.   Links de referência: https://www.blogadvpl.com/funcoes-uteis-de-usuario/#page-content  

Obtendo o Código de Usuário Logado no Protheus com RetCodUsr em ADVPL

Obtendo o Código de Usuário Logado no Protheus com RetCodUsr em ADVPL

1 minuto A função RetCodUsr em ADVPL obtém o código de usuário logado no Protheus, ou seja, do usuário que está executando uma determinada rotina do Protheus.   Sintaxe: RetCodUsr( )   Retorno:     Exemplo da função RetCodUsr em ADVPL: Bem, finalizamos mais um post aqui no blog. Espero que tenha entendido, se tiver ficado alguma dúvida deixe seu comentário ou nos mandar um e-mail para adiliocosta@protheusadvpl.com.br. Grande abraço e fica com Deus.   Links de referência: https://tdn.totvs.com/display/public/PROT/RetCodUsr