Quando utilizamos uma Dropdown DataWindow (DDDW), geralmente temos pares com chaves e os respectivos valores, que serão exibidos na tela. (Exemplo: DDDW para mostrar os Estados vai ter uma coluna com ID [interno] e o display value contendo o nome dos Estados). Este post mostra como recuperar o valor de exibição do campo DDDW em uma determinada linha.
Vamos partir do seguinte pressuposto: Você quer recuperar o valor de exibição do campo estado, na linha 42.
Para realizar esta operação, será necessário utilizar a função Evaluate da Datawindow.
string ls_campo, ls_desc, ls_resultado long ll_linha ls_campo = "estados" ll_linha = 42 ls_desc = "Evaluate('LookupDisplay(ls_campo)', " + String(ll_linha) + ")" ls_resultado = dw_1.Describe(ls_desc) MessageBox("Sistema!", ls_resultado, Information!)
No exemplo acima, primeiro declaramos as variáveis, depois definimos o nome do campo da Datawindow que tem a DDDW (ls_campo), o número da linha que contém o valor que queremos (ll_linha) e depois definimos a expressão que será utilizada no Evaluate.
O importante deste fonte é a parte do describe com evaluate, pois ela que vai buscar o nome de exibição (display value) do item.
Se esta função for buscar algo dinâmico, é interessante que sejam feitas validações de erros. Não fiz para simplificar o exemplo.
Espero ter ajudado.
Latest posts by Breno RdV (see all)
- O que é Metaclass e como ela funciona. (#python #dev #metaclass) - janeiro 11, 2023
- Entenda a mágica dos Generators. (#python, #dev, #generator, #iterator) - dezembro 28, 2022
- Ordenando um DataFrame por múltiplas colunas. (#python #pandas #jupyter #dev #data) - agosto 3, 2022