Pular para o conteúdo principal

Criando Listbox no Protheus

Se você precisa criar uma list box, o ADVPL possui a classe tComboBox. O exemplo abaixo mostra seu funcionamento.

Não esqueça de incluir a chamada da função em seu menu (na imagem).


Segue o código:

#include "rwmake.ch"

user function fComboCli()
  local aCodCli:={},;
  cQuery,;
  oCombo, oFont := tfont():new("lucida console",,-11,.t.), oDiag1

  cQuery := "SELECT A1_COD FROM SA1010 WHERE A1_NOME LIKE 'JOAO%'"
  cQuery := changequery(cQuery)

  dbusearea(.t., "TOPCONN", tcgenqry(,,cQuery), "SA1TMP", .f., .t.)

  if .not. SA1TMP->(eof())
     SA1TMP->(dbgotop())
     do while .not. SA1TMP->(eof())
        aadd(aCodCli, SA1TMP->A1_COD)
        SA1TMP->(dbskip())
     enddo
  else
     msgalert("Nenhum cliente encontrado para o criterio informado.")
     return nil
  endif

  SA1TMP->(dbclosearea())

  @ 200, 1 to 350, 400 dialog oDiag1 title "COMBO CLIENTES"
  cCombo := aCodCli[1]
  oCombo := tComboBox():new(4, 53, {uif(pcount()>0, cCombo:=u, cCombo )}, aCodCli, 40, 20, oDiag1,,,,,,.t.,oFont,,,,,,,,"cCombo" )
  @ 50,5 button "Sair" size 30,10 action close(oDiag1)
  activate dialog oDiag1 centered

  // O CODIGO ESCOLHIDO NA tComboBox() FICA GUARDADO NA VARIAVEL cCombo
return nil



Quem viu este post, também viu :  Barras de progresso

Comentários

Postagens mais visitadas deste blog

Status das tabelas: SPED050 e SPED052

STATUS DA TABELA SPED050: Status NFe (campo STATUS) :  1 = NFe Recebida.  2  =  NFe Assinada.  3  =  NFe com falha no schema XML.  4  =  NFe transmitida.  5  =  NFe com problemas.  6  =  NFe autorizada.  7  =  Cancelamento. Status Cancelamento/inutilização (campo STATUSCANC) :  1  =  NFe Recebida.  2  =  NFe Cancelada.  3  =  NFe com falha de cancelamento/inutilização. Status Mail (campo STATUSMAIL) :  1  =  A transmitir.  2  =  Transmitido.  3  =  Bloqueio de transmissão – cancelamento/inutilização. STATUS DO SPED052:  1  =  Lote transmitido.  2  =  Lote recebido com sucesso.  3  =  Lote com erro.

Variáveis públicas do Protheus

Variáveis Públicas Disponíveis no Protheus: Nome Tipo Tamanho Descrição aEmpresas (A) Array contendo tantos elementos quanto forem as empresas e filiais cadastradas no sistema sendo que cada elemento se encontra no formato “EEFF” (Empresa + Filial) Ex.: “5501”. cAcesso (C, 128) Permissões de Acesso do Usuário. cEmpAnt (C, 2) Número da Empresa que está em uso no momento. Ex.: "55". cModulo (C, 3) Sigla do Módulo que está em uso no momento. Ex.: "EST" para o Módulo de Estoque. cNivel (N, 1) Nível de Acesso do Usuário podendo variar de 0 a 9 sendo que 9 indica um Administrador. cNumEmp (C, 4) Número da Empresa + Filial que está em uso no momento. Ex.: "9901". cSenha (C, 6) Senha do Usuário. cUserName (C, 15) Nome do Usuário sem brancos a direita. cUsuario (C, 533) Informações do usuário:de 001 a 006 – Senha do Usuário (6 dígitos)de 007 a 021 – Nome do Usuário (15 dígitos)de 022 a 533 – Permissões de Acesso (512 dígitos) dDataBa...

Teclas de Atalhos TOTVS Developer Studio (Eclipse)

Seguem os atalhos para o TOTVS Developer Studio  (Eclipse)  : CTRL+H Localizar vários locais CTRL+F Localizar / substituir CTRL+K Localizar proximo resultado abaixo CTRL+SHIFT+K Localizar proximo resultado acima F11 Depurar F5 Percorre linha F6 Pula linha CTRL+F8 Trocar perspectiva CTRL+F7 Mudar visualização CTRL+F6 Navegar entre os fontes abertos CTRL+M Maximiza / miniminiza fonte CTRL+N Novo (wizard) CTRL+L Ir para linha CTRL+D Deleta toda linha CTRL+ALT+DOWN Duplica linha para baixo CTRL+ALT+UP Duplica linha para cima CTRL+SHIFT+L Apresenta lista de atalhos ALT+UP Move linha para cima ALT+DOWN Move linha para baixo CTRL+SHIFT+I Indenta o fonte CTRL+F9 Compilar CTRL+ESPAÇO...