Como ter inúmeras opções em um campo Combo no Protheus?

Hoje vou mostrar como ter inúmeras opções em um campo Combo no Protheus via AdvPL.

Algumas vezes precisamos criar um campo do tipo Combo Box no Protheus, porém no Configurador, a lista de opções (campo X3_CBOX) tem um pouco mais de 100 caracteres.

Portanto, se você precisar criar inúmeras opções, você terá um espaço limitado. Mas como resolveríamos isso?

O Protheus tem um recurso nativo, que ele pode chamar funções para carregar nas opções do combo. Para isso, basta começar com o caractere # (cerquilha). Por exemplo, colocar na lista de opções #u_zOpcoes() .

E sua função, teria o seguinte conteúdo:

//Bibliotecas
#Include "Protheus.ch"

/*/{Protheus.doc} zOpcoes
Função para retornar uma lista de opções em um campo combo
@author Atilio
@since 29/10/2018
@version 1.0
@type function
/*/

User Function zOpcoes()
Local aArea   := GetArea()
Local cOpcoes := ""

//Montando as opções de retorno
cOpcoes += "1=Opção 1;"
cOpcoes += "2=Opção 2;"
cOpcoes += "3=Opção 3;"
cOpcoes += "4=Opção 4;"
cOpcoes += "5=Opção 5;"
cOpcoes += "6=Opção 6;"
cOpcoes += "7=Opção 7;"
cOpcoes += "8=Opção 8;"
cOpcoes += "9=Opção 9;"
cOpcoes += "0=Opção 0;"
cOpcoes += "A=Opção A;"
cOpcoes += "B=Opção B;"
cOpcoes += "C=Opção C;"
cOpcoes += "D=Opção D;"
cOpcoes += "E=Opção E;"
cOpcoes += "F=Opção F;"
cOpcoes += "G=Opção G;"

RestArea(aArea)
Return cOpcoes

Bom pessoal, por hoje é só.

Abraços e até a próxima.

Dan_Atilio
Analista e desenvolvedor de sistemas. Técnico em Informática pelo CTI da Unesp. Graduado em Banco de Dados pela Fatec Bauru. Entusiasta de soluções Open Source e blogueiro nas horas vagas.

Deixe uma resposta