Boa tarde amigos! Tenho um programa que possui um Browser e na trigger DISPLAY, gostaria que fosse mostrado os campos personalizados conforme o usuário que acessa o programa. Por exemplo: Quando o usuário "João" abrir o programa, o browse mostra os campos "UF", "Cidade" e "Bairro". Quando o usuário "Carlos" abrir o programa, mostra os campos "Código Cliente", "Nome Cliente" e "Cidade". Obviamente, na open-query da temp-table possui todos os campos acima citados. Se alguém puder me dar uma luz, agradeço. Obrigado.
as colunas são numerados de 1 até a quantidade de colunas que vc tem no browse, então, basta vc saber qual numero de coluna que deve mostrar pra cada usuario, e dai só ir setando yes ou no pro atributo visible do browse. Código: assign br_grupos:get-browse-column(contador) :visible = yes br_grupos:get-browse-column(contador + 1):visible = yes br_grupos:get-browse-column(contador + 2):visible = yes.
Perfeito Richard, muito obrigado por compartilhar o seu conhecimento. Vou tratar desta forma, muito agradecido! Forte abraço.
Bom dia Richard, Eu já consegui mostrar/ocultar conforme sua orientação, ficou muito bom! Obrigado! Agora... se eu quiser alterar a ordem dos campos de acordo com o usuário. É possível?
Código: repeat contador = 1 to br_resumo:num-column in frame fr_cenario: for each ttChave no-lock where ttChave.mostrar: case ttChave.campo: when 'ANO' then if br_resumo:get-browse-column(contador):name in frame fr_cenario = 'ano' then br_resumo:move-column(contador, ttChave.sequencia) in frame fr_cenario. when 'MES' then if br_resumo:get-browse-column(contador):name in frame fr_cenario = 'mes' then br_resumo:move-column(contador, ttChave.sequencia) in frame fr_cenario. when 'DIA' then if br_resumo:get-browse-column(contador):name in frame fr_cenario = 'dia' then br_resumo:move-column(contador, ttChave.sequencia) in frame fr_cenario. when 'VENDEDOR' then if br_resumo:get-browse-column(contador):name in frame fr_cenario = 'cod_usuario' then br_resumo:move-column(contador, ttChave.sequencia) in frame fr_cenario. when 'REPRESENTANTE' then if br_resumo:get-browse-column(contador):name in frame fr_cenario = 'cod_repres' then br_resumo:move-column(contador, ttChave.sequencia) in frame fr_cenario. when 'CANAL VENDA' then if br_resumo:get-browse-column(contador):name in frame fr_cenario = 'cod_canal_venda' then br_resumo:move-column(contador, ttChave.sequencia) in frame fr_cenario. when 'CLIENTE' then if br_resumo:get-browse-column(contador):name in frame fr_cenario = 'cod_cliente' then br_resumo:move-column(contador, ttChave.sequencia) in frame fr_cenario. when 'PEDIDO' then if br_resumo:get-browse-column(contador):name in frame fr_cenario = 'num_orcamento' then br_resumo:move-column(contador, ttChave.sequencia) in frame fr_cenario. end case. end. end.