Looplex Knowledge Base
Get by key
O tube getByKey é aplicado sobre listas associativas. As listas associativas são listas em que cada elemento possui mais de um valor e cada um desses valores está vinculado a uma chave. Isso permite associar informações entre si dentro de uma lista.
Formato:
<var_list>.getByKey(key)
Parâmetros:
- var_list: Variável do tipo lista
- key: String da chave a ser buscada
Retorno:
String com o valor relativo à chave (key) passada como parâmetro
Exemplos:
Nos exemplos abaixo, utilizaremos duas listas associativas LIST_Advogados
e LIST_EstadosDoSudeste
, que são declaradas da seguinte forma:
list[LIST_EstadosDoSudeste] { name = "Lista associativa de estados do Sudeste" fields = {"Nome", "Sigla", "Preposição"} options = ( {"Espírito Santo", "ES", "de"}, {"Minas Gerais", "MG", "de"}, {"Rio de Janeiro", "RJ", "do"}, {"São Paulo", "SP", "de"} ) type = "String"},list[LIST_Advogados] { name = "Advogados" fields = {"Nome", "Seccional da OAB", "Número OAB"} options = ( {"Alberto da Silva", "SP", "123.456"}, {"Bruna dos Santos", "RJ", "654.321"}, {"Caio Souza", "SP", "321.456"} ) type = "String"},
Perceba que os fields de uma lista associativa correspondem às chaves que serão utilizadas como parâmetro dentro do getByKey. Cada opção da lista contém um valor associado a cada uma das chaves. Atenção à separação de elementos entre {}
e ,
dentro do options.
Na entrevista, a chave que o usuário visualiza para fazer a seleção é sempre a primeira. Dessa forma, nos exemplos acima, o usuário visualizaria uma lista com as opções correspondentes à chave “Nome”.
1. Lista de advogados de um escritório. Ao listar os advogados de um escritório, não queremos saber apenas o nome do advogado, mas também a seccional da OAB em que está inscrito e seu número de inscrição. Assim, cada elemento da lista associativa, isto é, cada advogado, terá um respectivo valor para as chaves de “Nome”, “Seccional da OAB” e “Número OAB”.
declarations { +<advogado> : List[LIST_Advogados] { name = "Advogado" request = "Selecione o advogado que assina a petição" atomic = true }}operations { print "Termos em que," & "\b", print "Pede deferimento." & "\b\b", print <advogado> & " " & <advogado>.getByKey("Número OAB") & " OAB/" & <advogado>.getByKey("Seccional da OAB"),}
2. Lista de Unidades da Federação. Usaremos o getByKey e a lista LIST_EstadosDoSudeste para printar o endereçamento de uma petição. Assim, podemos obter a sigla e a preposição utilizada a partir da seleção do Estado.
declarations { +<uf> : List[LIST_EstadosDoSudeste] { name = "Unidade Federativa" request = "Selecione a UF em que a ação tramita" atomic = true }}operations { print "Excelentíssimo Sr. Juiz do Juizado Especial Cível do Estado " & <uf>.getByKey("Preposição") & " " & <uf> }