GlideRecordUtil - Global
A inclusão de script GlideRecordUtil é uma classe de utilitário para trabalhar com GlideRecords.
Esta inclusão de script está disponível em scripts do lado do servidor. Para casos de uso, consulte Como usar inclusões de script de descoberta.
GlideRecordUtil – getCIGR(cadeia de caracteres sys_id)
Retorna o objeto GlideRecord para o item de configuração (IC) especificado usando apenas o sys_id do IC.
Use este método para obter rapidamente um IC específico sem conhecer sua classe/tabela associada.
| Nome | Tipo | Descrição |
|---|---|---|
| sys_id | Cadeia de caracteres | Sys_id do IC desejado. |
| Tipo | Descrição |
|---|---|
| GlideRecord | Objeto GlideRecord do IC especificado. |
O exemplo a seguir retorna o objeto GlideRecord para o IC especificado usando apenas o sys_id do IC.
var now_GR = new GlideRecordUtil().getCIGR("2dfd7c8437201000deeabfc8bcbe5d56");
GlideRecordUtil – getFields(GlideRecord gr)
Retorna uma matriz de todos os campos no GlideRecord especificado.
| Nome | Tipo | Descrição |
|---|---|---|
| gr | GlideRecord | Instância de GlideRecord posicionada para um registro válido. |
| Tipo | Descrição |
|---|---|
| Matriz | Nomes de campo para o GlideRecord especificado. |
var queryString = "priority=1^ORpriority=2";
var now_GR = new GlideRecord('incident');
now_GR.addEncodedQuery(queryString);
now_GR.query();
now_GR.next();
var gRU = new GlideRecordUtil();
var fieldList = gRU.getFields(now_GR);
gs.info(fieldList);
sys_id,skills,closed_by,assigned_to,contract,category,escalation,state,reassignment_count,location,
time_worked,order,due_date,number,upon_approval,sys_tags,sla_due,follow_up,reopen_count,notify,business_stc,
caused_by,rejection_goto,assignment_group,comments_and_work_notes,incident_state,opened_at,parent_incident,
business_service,wf_activity,calendar_duration,group_list,caller_id,comments,priority,sys_updated_by,
variables,delivery_task,resolved_at,sys_updated_on,parent,active,opened_by,expected_start,watch_list,
company,upon_reject,work_notes,sys_created_by,additional_assignee_list,approval_set,cmdb_ci,user_input,
sys_created_on,close_code,contact_type,resolved_by,rfc,approval_history,activity_due,severity,child_incidents,
,subcategory,work_end,closed_at,close_notes,variables,business_duration,knowledge,approval,sys_domain_path,
sys_mod_count,problem_id,calendar_stc,work_start,sys_domain,correlation_id,sys_class_name,short_description,
impact,description,correlation_display,urgency,made_sla,delivery_plan,work_notes_listGlideRecordUtil – getGR(cadeia de caracteres baseTable, cadeia de caracteres sys_id)
Retorna uma instância de GlideRecord para a tabela fornecida, posicionada no sys_id fornecido e da classe correta (tabela).
Este método é útil quando você precisa carregar um GlideRecord de um sys_id, mas não sabe qual é a tabela real (porque ela pode ser estendida da tabela base). Este método sempre retorna um GlideRecord do tipo correto base_table: o nome da tabela base em que o sys_id especificado está.
| Nome | Tipo | Descrição |
|---|---|---|
| baseTable | Cadeia de caracteres | O nome da tabela base que contém o sys_id. |
| sys_id | Cadeia de caracteres | O sys_id do registro desejado. |
| Tipo | Descrição |
|---|---|
| GlideRecord | O GlideRecord para o sys_id especificado. |
var now_GR = new GlideRecordUtil().getGR("cmdb_ci_computer", "2dfd7c8437201000deeabfc8bcbe5d56");
GlideRecordUtil – getTables(cadeia de caracteres "tableName")
Retorna um Java ArrayList dos ancestrais do nome da tabela especificada.
Por exemplo, dado cmdb_ci_linux_server, isso retornaria cmdb_ci_linux_server, cmdb_ci_server, cmdb_ci_computer, cmdb_ci_hardware, cmdb_ci e cmdbr.
| Nome | Tipo | Descrição |
|---|---|---|
| tableName | Cadeia de caracteres | Nome da tabela. |
| Tipo | Descrição |
|---|---|
| ArrayList | Lista de ancestrais da tabela especificada. |
O exemplo a seguir mostra os ancestrais da tabela cmdb_ci_linux_server.
var tables = new GlideRecordUtil().getTables("cmdb_ci_linux_server");
gs.info("Tables returned: " + tables);
Saída:
Tables returned: [cmdb_ci_linux_server, cmdb_ci_server, cmdb_ci_computer, cmdb_ci_hardware, cmdb_ci, cmdb]
GlideRecordUtil - mergeToGR (objeto hashMap, GlideRecord now_GR, objeto ignorar)
Define os campos no GlideRecord especificado com os valores de campos contidos no mapa de hash especificado, a menos que o nome do campo esteja no hashmap de ignorar.
| Nome | Tipo | Descrição |
|---|---|---|
| hashMap | Objeto | Uma instância de objeto (sendo usada como um hashmap), com propriedades nomeadas para campos e contendo o valor dos campos. |
| GlideRecord | GR | A instância de GlideRecord para receber os valores de campo. |
| ignorar | Objeto | Um hashmap opcional de nomes de campo a serem ignorados. |
| Tipo | Descrição |
|---|---|
| vazio |
Este exemplo atualiza os campos de nome e sistema operacional de um registro de computador, mas não atualiza o campo sys_created_by:
var now_GR = new GlideRecordUtil().getGR("cmdb_ci_computer", "2dfd7c8437201000deeabfc8bcbe5d56");
var obj = {"name": "xyz", "os": "windows 2000", "sys_created_by", "aleck.lin"};
var ignore = {"sys_created_by": true};
new GlideRecordUtil().mergeToGR(obj, now_GR, ignore);
now_GR.update();
GlideRecordUtil - populateFromGR(Object hashMap, GlideRecord now_GR, Object ignore)
Preenche o hashmap fornecido da instância GlideRecord fornecida. Cada campo no GlideRecord se torna uma propriedade no hashmap.
| Nome | Tipo | Descrição |
|---|---|---|
| hashMap | Objeto | Um objeto sendo usado como um hashmap. |
| now_GR | GlideRecord | Uma instância de GlideRecord posicionada em um registro válido. |
| ignorar | Objeto | Um hashmap opcional de nomes de arquivo a não ser preenchido. |
| Tipo | Descrição |
|---|---|
| vazio |
var objectToPopulate = {};
var now_GR = new GlideRecordUtil().getGR("cmdb_ci_computer", "2dfd7c8437201000deeabfc8bcbe5d56");
var ignore = {"sys_created_on": true, "sys_updated_by": true};
new GlideRecordUtil().populateFromGR(objectToPopulate, now_GR, ignore);
// Now the objectToPopulate contains field/value pairs from the computer GlideRecord