Não nem me recordo mais quantas vezes estava checando tabelas, olhando relacionamentos e explorando tabelas para fazer um script ou fix de backlog e tinha que me contentar com a visualização via “Form” do SN.
Sim, ajuda, mas dependendo da View, tipos de dados, campos podem ser ocultos via Politicas de IU, Client Script entre outros, assim não dá pra confiar 100% que o que voce está vendo na tela, são todos os dados que a tabela possui.
E por ter um background de PHP, senti muita falta daquele milagroso comando “var_dump” no SN.
Pesquisando pela internet, ví um prototipo do que passou a ver minha versão de var_dump. Colocaria a referência do autor, mas isso faz alguns anos e não encontrei mais o link do site original, desculpe 🙁
Segue abaixo a função criada:
function var_dump(gRecSet) { var strOutput = ''; var fields = gRecSet.getFields(); for (var i = 0; i < fields.size(); i++) { var glideElement = fields.get(i); strOutput += '\r\n ' + glideElement.getName() + ' \t\t ' + glideElement; } gs.print(strOutput); }
Desta forma, a partir de um GlideRecord qualquer, após a execução da query, você só precisa passar a variavel de record para a função e terá a saída de todos os campos, preenchidos ou não, na sua tela.
Segue abaixo um exemplo real dele funcionando:
// query na tabela var gr = new GlideRecord('sys_user_group'); gr.addQuery('name', 'BD-ORACLE'); gr.query(); // se encontrar algum registro, imprime na tela if (gr.next()) { var_dump(gr); } function var_dump(gRecSet) { var strOutput = ''; var fields = gRecSet.getFields(); for (var i = 0; i < fields.size(); i++) { var glideElement = fields.get(i); strOutput += '\r\n ' + glideElement.getName() + ' \t\t ' + glideElement; } gs.print(strOutput); }
E a saída gerada é:
*** Script:
parent
roles
description BD-ORACLE
source
sys_updated_on 2016-10-07 19:29:49
type
points 0
sys_updated_by helio.gabrenha
default_assignee
sys_created_on 2016-08-15 00:23:25
email
sys_created_by helio.gabrenha
manager
sys_mod_count 2
active false
average_daily_fte 0
sys_tags
cost_center
hourly_rate 0
name BD-ORACLE
exclude_manager false
include_members false
u_cnpj
Está aí! Todas as colunas do registro, na forma de listagem.
Espero que isso ajude vocês, pois ela me ajuda muito até hoje.
Abraços!