/AdvPL

Fontes criados de AdvPL/TL++ para o Terminal de Informação

Primary LanguagexBaseGNU General Public License v3.0GPL-3.0

Saiba mais em - Terminal de Informação

AdvPL e TL++

Fontes desenvolvidos utilizando as linguagens AdvPL e TL++ com intuito de auxiliar e ajudar outros analistas. Todos esses fontes são exemplos disponibilizados no site Terminal de Informação. Abaixo as categorias, explicando um pouco sobre cada fonte.

Exemplos
  1. Dialogs
    • zExempF1.prw: Exemplo de Help (F1) de campo, em Dialog customizada
  2. MVC
    • zMVCMd1.prw: Exemplo de cadastro MVC - Modelo 1
    • zMVCMd3.prw: Exemplo de cadastro MVC - Modelo 3
    • zMVCMdX.prw: Exemplo de cadastro MVC - Modelo X
  3. Outros
    • zMotBaixa.prw: Exemplo de acesso a tabela de Motivos de Baixa do Financeiro
    • zTstChart.prw: Exemplo de criação de gráficos utilizando FWChartBar
    • zTstExcel.prw: Exemplo de criação de arquivos do Excel utilizando FWMsExcel e FWMsExcelEx
    • zTstXML.prw: Exemplo de gravação e leitura de XML (com XMLParser)
  4. Pontos de Entrada
    • MBlkColor.prw: Ponto de entrada MBlkColor, alterando cor de registros bloqueados nas grids
  5. Vídeo Aulas
    • 002 - Conceitos Básicos
      • zCorpo.prw: Exemplo de Corpo de Programa em AdvPL
    • 003 - Variáveis e Constantes
      • zConstantes.prw: Exemplo de utilização de Constantes
      • zVariaveis.prw: Exemplo de utilização de Variáveis
    • 004 - Escopo de Variáveis
      • escopo.png: Exemplificação de escopo de variáveis
      • zEscopo.prw: Fonte demonstrando o escopo de variáveis
    • 005 - Operadores
      • zOperadores.prw: Exemplo de utilização de operadores
    • 006 - Laços e Testes
      • zLacos.prw: Exemplos de laços de repetição
      • zTestes.prw: Exemplos de testes condicionais
    • 007 - Tipos de Funções
      • zTpFuncA.prw: Exemplificação de funções (User, Static, etc)
      • zTpFuncB.prw: Exemplificação de funções (User, Static, etc)
    • 008 - Manipulação de Banco de Dados
      • zBanco.prw: Exemplo de manipulação de Banco de Dados
    • 009 - Utilizando Índices e Posicionamento
      • exemplificação.xlsx: Exemplo de índices utilizando planilha
      • zIndPos.prw: Exemplificação de utilização de Índices e Posicionamentos
    • 010 - Gravação de Registros via RecLock
      • zGravacao.prw: Gravação de registros no Protheus, via RecLock
    • 011 - Gravação de Registros via MsExecAuto
      • exemplo.png: Exemplo do funcionamento de um ExecAuto
      • zExecAuto.prw: Gravação de registros no Protheus, via MsExecAuto (Cadastro de Produtos)
    • 012 - Consultas SQL
      • zEmbedd.prw: Exemplo de Consulta SQL com Embedded
      • zTCQuery.prw: Exemplo de Consulta SQL com TCQuery
    • 013 - Como debugar um fonte no TDS
      • zDebug.prw: Exemplo de Rotina para demonstração do Debug do TDS
    • 015 - Orientação a Objetos
      • zCadPessoa.prw: Exemplo de Rotina instanciando a classe Pessoa
      • zPessoa.prw: Exemplo de Classe em AdvPL
    • 016 - Utilizando Pontos de Entrada
      • A010TOK.prw: Exemplo de Ponto de Entrada no cadastro de Produtos
    • 017 - Conceitos MVC
      • modelo_mvc.png: Exemplo de modelo da estrutura MVC em AdvPL
      • zUpdTab.prw: Fonte para criação de tabelas que serão utilizadas como exemplo
    • 018 - Modelo 1 em MVC
      • zModel1.prw: Exemplo de cadastro Modelo 1 em MVC
    • 019 - Validações em MVC
      • zMod1b.prw: Exemplo de Validações em MVC (bPre, bPos, bCommit e bCancel)
    • 020 - Modelo 3 em MVC
      • zModel3.prw: Exemplo de cadastro Modelo 3 em MVC (estrutura de Pai e Filho)
    • 021 - Modelo X em MVC
      • zModelX.prw: Exemplo de cadastro Modelo X em MVC (estrutura de Pai, Filho e Neto)
    • 022 - MarkBrowse em MVC
      • zMkMVC.prw: Exemplo de MarkBrowse utilizando MVC
    • 023 - Pontos de Entrada em MVC
      • MATA070_pe.prw: Exemplo de ponto de entrada no padrão MVC - Cadastro de Bancos
      • OS010BTN.prw: Exemplo de ponto de entrada em MVC - Cadastro de Tabela de Preço
    • 024 - Rotinas automáticas em MVC
      • zExecView.prw: Exemplo de abertura de uma operação MVC através de outro fonte
      • zRotAuto.prw: Exemplo de ExecAuto em MVC
    • 025 - Modelo 2 em MVC
      • zModel2.prw: Exemplo de Modelo 2 em MVC
      • ASATF04.prw: Exemplo de Modelo 2 em MVC (mais novo - 2020)
    • 026 - Temporária em MVC
      • zTmpCad.prw: Exemplo de Tabela Temporária em MVC
    • 027 - Cópia em MVC
      • zCopMVC.prw: Exemplo de função copiar (com grid) em MVC
    • 028 - Abas em MVC
      • zAba1.prw: Exemplo de criação de folders em MVC (Pai e Filhos)
      • zAba2.prw: Exemplo de criação de folders em MVC (Pai, Filhos e Netos)
Fontes
  • ASOPM01.prw: Função com exemplo de integração com a SOPHUS
  • wTransporte.prw: Exemplo de WebService em REST usando paginação
  • zAbreArq.prw: Função que abre arquivo, conforme sistema operacional (por exemplo, abrir um .txt pelo notepad)
  • zAltPar.prw: Função para modificação de parâmetros (SX6)
  • zAltSC5.prw: Função para alteração de pedido de venda já liberado / faturado
  • zAppend.prw: Função para "appendar" várias tabelas de uma base para outra
  • zArrToTxt.prw: Função recursiva, que transforma array em texto
  • zAtuPerg.prw: Função que atualiza o conteúdo de uma pergunta
  • zBxMail.prw: Função que acessa uma caixa de e-Mail e faz o download de anexos
  • zBrw2Exc.prw: Função que exporta os dados de um FWBrowse para Excel
  • zCarEspec.prw: Função que remove caracteres especiais de um campo
  • zChooseFile.prw: Função para escolher o arquivo através do Windows
  • zCliFor.prw: Função que cria fornecedor a partir de cliente
  • zCmbDesc.prw: Função que retorna a descrição de uma opção de um campo COMBO
  • zCnvSoma1.prw: Função para converter o Soma1 (9A, 9B, 9C, etc)
  • zCodAno.prw: Função sequencial de código / ano
  • zCompacta.prw: Função para compactação de arquivos rar / zip
  • zCompara.prw: Função que gera relatório comparando Dicionário com SQL Server
  • zComplMsg.prw: Função para complementar mensagens na DANFE
  • zCompX3XG.prw: Relatório que compara grupo de campos (SXG) e campos do dicionário (SX3)
  • zConOut.prw: Função para substituir o ConOut padrão usando FWLogMsg
  • zConsArr.prw: Consulta Específica (F3), com dados de Array
  • zConsEsp.prw: Consulta Específica (F3), com dados de SQL e opção de LIKE, enviando dados em Array
  • zConsMark.prw: Consulta Específica (F3), com marcação de dados
  • zConsSQL.prw: Consulta Específica (F3), com dados SQL e opção de LIKE
  • zConta.prw: Função que conta a repetição de caracteres em uma string
  • zCpyReg.prw: Função que copia um registro de uma filial para outra com opção de mudança de código
  • zCriaLog.prw: Função para gravar log de registro na base
  • zCriaCEsp.prw: Função para criar consultas específicas via código fonte
  • zCxArren.prw: Função que monta um box / quadro com borda arredondada para usar em relatórios com FWMSPrinter
  • zDbTree.prw: Função de cadastro utilizando o componente DbTree
  • zDiasUteis.prw: Função que retorna os dias úteis entre duas datas
  • zDelDoc.prw: Função para excluir documento de entrada e pré nota
  • zDtExtenso.prw: Função que transforma uma variável data, na forma extensa (por exemplo, 27 de Setembro de 2015)
  • zEditTmp.prw: Função que edita uma tabela temporária (com opção de incluir, alterar e excluir)
  • zElemAlt.prw: Função que altera a posição de um elemento do array
  • zEnvMail.prw: Função para disparo de e-Mail com vários anexos
  • zErro.prw: Função que força um Error Log para analisar a pilha de chamadas
  • zExcel2DBF.prw: Função de conversão de arquivos XLS para DBF
  • zExpMail.prw: Função para exportar uma lista de emails para importar na Locaweb
  • zExpPars.prw: Função que exporta parâmetros do Protheus para HTML (1 único arquivo)
  • zExpTabs.prw: Função que exporta tabelas do Protheus para HTML (1 único arquivo)
  • zExpTab2.prw: Função que exporta tabelas do Protheus para HTML (vários arquivos)
  • zFecPSS.prw: Função para fechar o arquivo de senhas para recuperar a senha de admin
  • zFilCNPJ.prw: Função que retorna a filial conforme CNPJ informado
  • zFindProd.prw: Função para pesquisar produto em uma grid dentro do Pedido de Venda / Pedido de Compra
  • zFTPEnv.prw: Função que envia arquivo para um servidor FTP
  • zFunTit.prw: Função que retorna o título da rotina atual
  • zGerDanfe.prw: Função para gerar DANFE em um diretório junto com XML
  • zGeraB9.prw: Função que gera Saldo Inicial dos Produtos
  • zGrupCod.prw: Função que muda a inicialização do produto buscando do grupo para compor o código
  • zHr2Val.prw: Função que converte hora para valor
  • zImpAux.prw: Função que imprime o TMSPrinter em sequência diferente
  • zImpDoc.prw: Função que importa documentos para o Banco de Conhecimento do Protheus
  • zImpSB6.prw: Importação de dados de Saldos de/em Terceiros
  • zInicio.prw: Função executada no programa inicial
  • zIsLock.prw: Função que verifica se o registro está travado
  • zIsMDI.prw: Função que verifica se esta utilizando o SIGAMDI
  • zIsMVC.prw: Função que verifica se a rotina executada é em MVC
  • zJotTst.prw: Exemplo de integração com JotForms
  • zLastPerg.prw: Função que retorna a última pergunta da memória
  • zLeBalanca.prw: Função para ler o peso da balança
  • zLeIXBLog.prw: Função que faz a leitura de um arquivo IXBLog e retorna apenas os ExecBlock executados
  • zLibPed.prw: Função para liberar pedidos de venda - testes
  • zLog2Excel.prw: Função que converte um arquivo IXBLOG para Excel
  • zLogin.prw: Função que carrega uma tela de login
  • zMataTudo.prw: Função que mata todas as conexões ativas no serviço do Protheus
  • zMemoToA.prw: Função que converte campo Memo para Array para impressão
  • zMiniForm.prw: Execução de fórmulas de forma compacta
  • zMsgLog.prw: Função que mostra uma mensagem ao usuário com opção de salvar
  • zMsgPopup.prw: Função que mostra uma mensagem na área de notificação no Windows
  • zNameFile.prw: Função que verifica se o nome do arquivo é válido
  • zOutlook.prw: Função para abertura do Outlook com uma nova mensagem via AdvPL
  • zParComma.prw: Função para editar um parâmetro com separações (como ponto e vírgula)
  • zParUsr.prw: Função que serve para verificar usuários dentro de um parâmetro, e editar o parâmetro
  • zPegaMac.prw: Função que pega o MAC Address de máquinas com Windows instalado
  • zPrettyXML.prw: Função que transforma uma string XML indentando o conteúdo e as linhas
  • zPutSX1.prw: Função que cria um grupo de perguntas (mesmo no Protheus 12)
  • zQry2Excel.prw: Função que gera um arquivo do Excel através de uma query SQL
  • zQuinto.prw: Função que retorna o quinto dia útil
  • zRecurDir.prw: Função recursiva para buscar vários arquivos em diretórios e sub diretórios
  • zRepSX3.prw: Função que atualiza o conteúdo da SX3 conforme arquivo dbf / dtc
  • zSalvaProc.prw: Função que salva a lista da pilha de Chamadas
  • zSB1Compl.prw: Função que cria o complemento de todos os produtos (cria SB5 através da SB1)
  • zSearch.prw: Função que pesquisa campos no Protheus
  • zSemanas.prw: Função que retorna as semanas entre duas datas
  • zSlider.prw: Função de slideshow de imagens
  • zSM0CNPJ.prw: Função que busca o código da filial, conforme o CNPJ
  • zTamImg.prw: Função que retorna o tamanho de uma imagem em pixels
  • zTelEstr.prw: Função que cria uma Dialog e mostra a estrutura de produtos
  • zTotPag.prw: Função para totalizar páginas em AdvPL
  • zTotPed.prw: Função que retorna o total do pedido de venda com Impostos
  • zTransNum.prw: Função que transforma uma variável numérica em texto (para exportação de arquivos)
  • zTransp.prw: Função que abre uma tela com integração com Transportadoras
  • zTransPdf.prw: Função que transforma imagens em pdf
  • zTstEmp.prw: Função que cria as tabelas percorrendo conforme filiais / empresas
  • zUltNum.prw: Função que retorna o último número (código) da tabela
  • zUsrFil.prw: Função que valida se o usuário tem acesso a filial
  • zUsrSrv.prw: Função que verifica usuários locais nos servidores
  • zVal2Soma1.prw: Função que converte valor numérico para o valor do Soma1
  • zVal2Hora.prw: Função que converte valor numérico para hora (por exemplo, 1.50 -> 1h30)
  • zVazio.prw: Função que verifica se um Array está vazio
  • zVerTrans.prw: Função que verifica se um pedido já foi transmitido na filial
  • zVldGrid.prw: Função que executa as validações da grid
  • zX3ToArr.prw: Função que exporta a SX3 adicionando uma linha no array
  • zWsCliente.prw: WebService de exemplo que traz dados de clientes
Maratona de Exemplos

Dentro dessa pasta, terá um arquivo em Excel com uma lista de links úteis, e 552 códigos fontes com exemplos de funções, classes, comandos e operadores da nossa série Maratona de Exemplos no YouTube.

NETiZAP - Integração com WhatsApp
  • zZapDanfe.prw: Funções para notificar o cliente quando um novo pedido é feito, emitido a NF e enviar a DANFE
  • zZapEmoji.prw: Exemplo de envio de mensagens com emoji
  • zZapMenu.prw: Exemplo de chatbot no WhatsApp com respostas pelo Protheus
  • zZapNew.prw: Exemplos de mensagens de boas vindas no WhatsApp para clientes, fornecedores e vendedores
  • zZapSend.prw: Função de envio de mensagens para o WhatsApp
  • zZapTest.prw: Função para testar o envio de mensagens para o WhatsApp
Projetos
  1. Dicionário de Dados
    • zCadSX5.prw: Função para cadastro de tabelas genéricas (SX5), similar ao AxCadastro e mBrowse (em MVC)
    • zCadSX6.prw: Função para cadastro de parâmetros (SX6), similar ao AxCadastro e mBrowse
    • zCpySX1.prw: Função para cópia de grupo de perguntas
    • zCriaGat.prw: Função que cria gatilhos "a quente" via código fonte
    • zCriaPar.prw: Função que cria parâmetros "a quente" via código fonte
    • zCriaGen.prw: Função que cria tabelas genéricas (SX5) "a quente" via código fonte
    • zCriaPasta.prw: Função que cria abas / pastas "a quente" via código fonte
    • zCriaTab.prw: Função que cria tabelas "a quente" via código fonte
    • zTstDicio.prw: Função de testes das funções do dicionário de dados
  2. Integração com WebCam
    • escapi.dll: DLL utilizada para integração com WebCam
    • imageload2.dll: DLL utilizada para integração com WebCam
    • zPegaWeb.prw: Função responsável por fazer a integração do Protheus com WebCam
    • zTstWeb.prw: Função que testa a utilização da rotina de WebCam no cadastro de clientes pelo Ações Relacionadas
  3. ProtheusDOC
    • PDoc_Ti.rar: Arquivo compactado com a base do Protheus Doc
Ti Responde
  • AfterLogin.prw: Canivete Suíço de Atalhos Úteis
  • GP010AGRV: Ponto de entrada após gravar na rotina de cadastro de funcionários (Disparo de e-Mail na admissão e demissão de funcionários)
  • GPEM040_PE: Ponto de entrada ao demitir o funcionário (Disparo de e-Mail na admissão e demissão de funcionários)
  • zExporta: Função que realiza a exportação das tabelas para arquivos txt dentro da Protheus Data (Como usar BI com TCloud)
  • zImporta: Função que realiza a importação dos arquivos da Protheus Data para a Base Local (Como usar BI com TCloud)
  • zLogGeneric.prw: Exemplo de Classe para gerar arquivos de log
  • zPDFSize: Função que diminui o tamanho de um pdf para enviar por e-Mail
  • zVid0001.prw: Exemplo para demonstrar a utilização de legendas no Protheus
  • zVid0002.prw: Exemplo de como adicionar opções no Outras Ações quando a rotina não tem ponto de entrada
  • zVid0004.prw: Realçar a informação de empresa e filial no cabeçalho do Protheus
  • zVid0005.prw: Validar o tamanho de um arquivo em AdvPL
  • zVid0008.prw: Validar se campo existe com FieldPos
  • zVid0011.prw: Copiar vários arquivos de uma pasta a outra
  • zVid0012.prw: Como usar a função SoftLock
  • zVid0013.prw: Importação de pré nota de entrada (via csv ou txt)
  • zVid0014.prw: Visualização Pedidos x Itens x Liberações SC5 x SC6 x SC9 (Duas Grids para um Cabeçalho em MVC)
  • zVid0017.prw: Como percorrer uma grid em MVC
  • zVid0018.prw: Comprimir um arquivo PDF via AdvPL
  • zVid0019.prw: O que é mensagem vazia em validações MVC
  • zVid0020.prw: Tela com vários componentes gráficos, usando FWLayer
  • zVid0021.prw: Alterando o rodapé de um TReport
  • zVid0022.prw: Temporária em MVC com FWTemporaryTable
  • zVldData: Função para validar a data digitada nos campos
  • zVid0024.prw: Copiar Linha Em Msnewgetdados
  • zVid0025.prw: Criacao De Gatilho Que Gera Campo Sequencial
  • zVid0026.prw: Criando Funcao De Duplo Clique Numa Grid
  • zVid0027.prw: Executando Validacao De Campo E Gatilho Via Advpl
  • zVid0028.prw: Configurar Uma Pasta De Impressoras Automaticamente
  • zVid0029.prw: Transformando String Em Objeto Json
  • zVid0030.prw: Excluir Vinculos De Uma Tabela Atraves De Um P E
  • zVid0031.prw: Acionar A Posicao Do Cliente Em Uma Customizacao
  • zVid0032.prw: Fazer Um Combo Filtrar Outro Combo
  • zVid0034.prw: Bloquear O Colar Ou Ctrlv Em Tgets E Campos
  • zVid0035.prw: Validar Se Uma String Tem Apenas Numeros
  • zVid0036.prw: Acionar O F4 Do Produto Em Uma Customizacao
  • zVid0038.prw: Inicializar Grid Temporaria Em Mvc
  • zVid0042.prw: Aspas A Mais Em Variavel Caractere
  • zVid0043.prw: Como Fazer Um Tget Que Posiciona Nele Mesmo
  • zVid0045.prw: Incluir Registros Em Uma Tela Sem Execauto Sem Reclock E Sem Ser Mvc
  • zVid0046.prw: Criando Pesquisa Em Uma Fwmarkbrowse
  • zVid0047.prw: Extrair Imagens Do Cadastro De Produtos
  • zVid0048.prw: Preencher O Acols De Uma Tela Padrao
  • zVid0049.prw: Quais Produtos Estao Sem Saldo No Help Ma240negat
  • zVid0050.prw: Deixar A Enchoice Nao Editavel Em Mvc
  • zVid0051.prw: Qual A Diferenca Entre Count To E Reccount
  • zVid0052.prw: Gerar Treport Em Pdf
  • zVid0053.prw: Pegar O Valor De Um Campo Totalizador Mvc
  • zVid0054.prw: Incrementar Minutos Em Uma Variavel De Hora
  • zVid0055.prw: Seek Nao Encontra Registro Mesmo Existindo No Sql
  • zVid0056.prw: Alterar Titulo De Um Campo Em Mvc
  • zVid0057.prw: Filtrar Dados De Uma Grid Mvc
  • zVid0058.prw: Procurando Linhas Em Mvc Com Seekline
  • zVid0059.prw: Execauto De Estorno Na Mata241
  • zVid0060.prw: Criar Ordenacao Em Clique De Colunas Com Fwbrowse
  • zVid0061.prw: Adicionar Legenda Numa Tela Sem Pe
  • zVid0062.prw: Fazer Uma Condicao Em Um Trfunction
  • zVid0063.prw: Posicionar Em Coordenadas E Clicar Via Advpl
  • zVid0064.prw: Deixar Um Campo Obrigatorio Via Customizacao
  • zVid0067.prw: Baixar Arquivo De Webservice Com Base64
  • zVid0068.prw: F3 Customizado Em Mvc
  • zVid0069.prw: Como Fazer Copiar Em Mvc
  • zVid0070.prw: Como Atualizar Um Browse Ao Alternar De Linha De Outro Browse
  • zVid0071.prw: Como Bloquear Remover Uma Opcao Do Menu Via Ponto De Entrada
  • zVid0072.prw: Como Extrair Todas As Imagens Do Rpo Em Uma Pasta
  • zVid0073.prw: Como fazer relatório FWMSPrinter em Paisagem e Retrato
  • zVid0074.prw: Itens diferentes em um ComboBox dependendo se é Inclusão ou Alteração
  • zVid0075.prw: Como fazer uma tela mobile usando apenas AdvPL
  • zVid0076.prw: Como testar uma query antes de executar em AdvPL
  • zVid0077.prw: Como ver quais são os atalhos em memória
  • zVid0080.prw: Como colocar título em uma coluna de legenda em um FWmBrowse
  • zVid0081.prw: Como gerar um excel com a FWPrinterXLSX
  • zVid0082.prw: Como imprimir um texto manualmente em um TReport
  • zVid0083.prw: Como usar TSystemTray com SIGAMDI
  • zVid0085.prw: ExecAuto do Retornar do Pedido de Vendas
  • zVid0086.prw: Filtrar um browse através de atalho via AdvPL
  • zVid0087.prw: Gerar TReport em Excel e enviar por eMail
  • zVid0088.prw: Gravando campos customizados na SC9 através do M440SC9I
  • zVid0089.prw: MarkBrowse com coluna editável
  • zVid0090.prw: Atualizar o browse conforme KeyPress em um Get
  • zVid0091.prw: Percorrer um array dentro de outro em MVC
  • zVid0092.prw: Exemplo de códigos de barra em um FWMSPrinter
  • zVid0093.prw: Posicionar em uma determinada linha e coluna num FWBrowse
  • zVid0094.prw: Abrir arquivo CTREE
  • zVid0095.prw: Grid Opcional em MVC