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