GlideElement - Global
A API GlideElement fornece vários métodos de script convenientes para lidar com campos e seus valores. Os métodosGlideElement estão disponíveis para os campos do GlideRecord atual.
GlideElement – canCreate()
Determina se a função do usuário permite a criação de novas entradas no campo associado.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Booliano | Sinalizador que indica se o usuário atual tem permissões para criar novas entradas no campo associado. Valores possíveis:
|
O exemplo a seguir mostra como determinar se o usuário tem permissões para criar entradas para os três registros mais recentes na tabela Problema [problema].
var gr = new GlideRecord('problem');
// Get records in new state in Problem Table
gr.addQuery('state','101');
// Sort records in order of recent to earlier Created Date
gr.orderByDesc('sys_created_on');
// Limit the query to three records
gr.setLimit(3);
gr.query();
while(gr.next()){
if(gr.short_description.canCreate()){ ///check to see if the current user is allowed to create the record
gs.info("I can create new records for the field Problem statement for - " + gr.number);
}
}
Saída:
I can create new records for the field Problem statement for - PRB0000004
I can create new records for the field Problem statement for - PRB0001000
I can create new records for the field Problem statement for - PRB0001001
Equivalente com escopo
Para usar o método canCreate() em uma aplicação com escopo, use o método com escopo correspondente: canCreate().
GlideElement - canRead()
Determina se a função do usuário permite que ele leia o GlideRecord associado.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Booliano | Verdadeiro se o campo puder ser lido, caso contrário, falso. |
O exemplo a seguir mostra como obter uma lista de registros de incidentes ativos com um campo de descrição resumida legível.
var grIncident = new GlideRecord('incident');
grIncident.addEncodedQuery("active=true"); //Query the Incident table for active incidents
grIncident.orderByDesc('number');
grIncident.setLimit(3); // limit to three results for example
grIncident.query();
while (grIncident.next()) {
if (grIncident.short_description.canRead()) { //check to see if the current user is allowed to read the record
gs.info('You have permission to read the short description of: ' + grIncident.number + ' ' + grIncident.short_description);
}
}
Saída:
*** Script: You have permission to read the short description of: INC0009009 Unable to access the shared folder.
*** Script: You have permission to read the short description of: INC0009005 Email server is down.
*** Script: You have permission to read the short description of: INC0009001 Unable to post content on a Wiki page
Equivalente com escopo
Para usar o método canRead() em uma aplicação com escopo, use o método com escopo correspondente: canRead().
GlideElement - canWrite()
Determina se a função do usuário permite que ele grave no GlideRecord associado.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Booliano | Verdadeiro se o usuário puder gravar no campo, caso contrário, falso. |
O exemplo a seguir mostra como obter uma lista de registros de incidentes ativos com um campo Descrição resumida gravável.
var grIncident = new GlideRecord('incident');
grIncident.addEncodedQuery("active=true"); //Query the Incident table for active incidents
grIncident.orderByDesc('number');
grIncident.setLimit(3); // limit to three results for example
grIncident.query();
while (grIncident.next()) {
if (grIncident.short_description.canWrite()) { //check to see if the current user is allowed to write to the record
gs.info('You have permission to write to the short description of: ' + grIncident.number + ' ' + grIncident.short_description);
}
}
Saída:
*** Script: You have permission to write to the short description of: INC0009009 Unable to access the shared folder.
*** Script: You have permission to write to the short description of: INC0009005 Email server is down.
*** Script: You have permission to write to the short description of: INC0009001 Unable to post content on a Wiki page
Equivalente com escopo
Para usar o método canWrite() em uma aplicação com escopo, use o método com escopo correspondente: canWrite().
GlideElement - mudanças ()
Determina se o campo atual foi modificado. Esta funcionalidade está disponível para todos os tipos de dados disponíveis, exceto campos de diário.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Booliano | Verdadeiro se o campo foi alterado, caso contrário, falso. |
O exemplo a seguir de uma regra de negócios mostra como criar um evento na EventQueue se o valor do campo assigned_to for alterado.
if (!current.assigned_to.nil() && current.assigned_to.changes()) {
gs.eventQueue('incident.assigned', current, current.assigned_to.getDisplayValue(), previous.assigned_to.getDisplayValue());
}
Equivalente com escopo
Para usar o método changes() em uma aplicação com escopo, use o método com escopo correspondente: changes().
GlideElement - changesFrom(Object value)
Determina se o valor anterior do campo atual corresponde ao objeto especificado.
| Nome | Tipo | Descrição |
|---|---|---|
| valor | Objeto | Um valor de objeto a ser verificado em relação ao valor anterior do campo atual. |
| Tipo | Descrição |
|---|---|
| Booliano | Verdadeiro se o valor anterior corresponder ao parâmetro, falso se não corresponder. |
if (theState.changesTo(resolvedState)) {
operation = 4; //Resolved
}
else if (theState.changesTo(closedState)) {
operation = 11; //Resolution Accepted
}
else if (theState.changesFrom(resolvedState) || theState.changesFrom(closedState)) {
operation = 10; //Re-open
}
else {
operation = 6; //Update
}
Equivalente com escopo
Para usar o método changesFrom() em uma aplicação com escopo, use o método com escopo correspondente: changesFrom().
GlideElement - changesTo(valor do objeto)
Determina se o novo valor de um campo, após uma mudança, corresponde ao objeto especificado.
| Nome | Tipo | Descrição |
|---|---|---|
| valor | Objeto | Um valor de objeto a ser verificado em relação ao novo valor do campo atual. |
| Tipo | Descrição |
|---|---|
| Booliano | Verdadeiro se o novo valor corresponder ao parâmetro, falso se não corresponder. |
if (theState.changesTo(resolvedState)) {
operation = 4; //Resolved
}
else if (theState.changesTo(closedState)) {
operation = 11; //Resolution Accepted
}
else if (theState.changesFrom(resolvedState) || theState.changesFrom(closedState)) {
operation = 10; //Re-open
}
else {
operation = 6; //Update
}
Equivalente com escopo
Para usar o método changesTo() em uma aplicação com escopo, use o método com escopo correspondente: changesTo().
GlideElement - dateNumericValue()
Retorna o número de milissegundos desde 1º de janeiro de 1970, 00:00:00 GMT para um campo de duração. Não requer a criação de um objeto GlideDateTime porque o campo de duração já é um objeto GlideDateTime.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Número | Número de milissegundos desde 1º de janeiro de 1970, 00:00:00 GMT. |
var inc = new GlideRecord('incident');
inc.get('17c90efb13418700cc36b1422244b05d');
gs.info(inc.calendar_duration.dateNumericValue());
Saída: 98000
Equivalente com escopo
Para usar o método dateNumericValue() em uma aplicação com escopo, use o método com escopo correspondente: dateNumericValue().
GlideElement - depuração (objeto o)
Depura o objeto e adiciona mensagens de depuração usando setError(String).
| Nome | Tipo | Descrição |
|---|---|---|
| o | Objeto | Um objeto a ser depurado. |
| Tipo | Descrição |
|---|---|
| vazio |
GlideElement - getAttribute(cadeia de caracteres "attributeName")
Retorna o valor do atributo especificado do dicionário.
Se o atributo for um atributo booliano, use getBooleanAttribute(String) para obter o valor como booliano em vez de uma cadeia de caracteres.
| Nome | Tipo | Descrição |
|---|---|---|
| attributeName | Cadeia de caracteres | Nome de atributo |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Valor de atributo |
doit();
function doit() {
var now_GR = new GlideRecord('sys_user');
now_GR.query("user_name","admin");
if (now_GR.next()) {
gs.print("we got one");
gs.print(now_GR.location.getAttribute("tree_picker"));
}
}
Equivalente com escopo
Para usar o método getAttribute() em uma aplicação com escopo, use o método com escopo correspondente: getAttribute().
GlideElement – getBaseTableName()
Obtém a tabela base do campo.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Nome da tabela base. Este nome pode ser diferente da tabela em que o campo está definido. Consulte Classes e extensões de tabela na documentação do produto. |
O exemplo a seguir mostra como usar a tabela base para o campo Grupo de atribuição de um registro de incidente.
var gr = new GlideRecord('incident');
//query the Incident Records which have category as Inquiry/Help
gr.addQuery('category','inquiry');
// sort them in the order of earlier to recent created date
gr.orderBy('sys_created_on');
gr.query();
if(gr.next()){ //If at least any one record exists matching this query
//Print the base table for the Assignment Group field
gs.print("The Base Table for the field Assignment Group is - " + gr.assignment_group.getBaseTableName());
};
Saída:
The Base Table for the field Assignment Group is - task
GlideElement - getBooleanAttribute(cadeia de caracteres "attributeName")
Retorna o valor booliano do atributo especificado do dicionário.
Para obter o valor como uma cadeia de caracteres, use getAttribute(string).
| Nome | Tipo | Descrição |
|---|---|---|
| attributeName | Cadeia de caracteres | Nome de atributo |
| Tipo | Descrição |
|---|---|
| Booliano | Valor booliano do atributo. Retorna falso se o atributo não existir. |
O exemplo a seguir mostra como obter valores boolianos do atributo ignore_filter_on_new para dois campos.
var inc = new GlideRecord('incident');
inc.query();
if (inc.next())
{
// opened_by field has attribute "ignore_filter_on_new = true"
gs.info(inc.opened_by.getBooleanAttribute("ignore_filter_on_new"));
// short_description field does not have attribute ignore_filter_on_new
gs.info(inc.short_description.getBooleanAttribute("ignore_filter_on_new"));
}
Saída:
true
false
Equivalente com escopo
Para usar o método getBooleanAttribute() em uma aplicação com escopo, use o método com escopo correspondente: getBooleanAttribute().
GlideElement - getChoices(cadeia de caracteres dependente)
Gera uma lista de seleção para um campo. Retorna os valores de opção somente da tabela base, não da tabela estendida.
| Nome | Tipo | Descrição |
|---|---|---|
| dependente | Cadeia de caracteres | Opcional. Campo no registro associado do qual o campo da lista de seleção depende. |
| Tipo | Descrição |
|---|---|
| lista de matrizes | Os valores de opção para o campo. |
var glideRecord = new GlideRecord('incident');
glideRecord.query('priority','1');
glideRecord.next();
// urgency has choice list: 1 - High, 2 - Medium, 3 - Low, with value: 1, 2, 3
var choices = glideRecord.urgency.getChoices();
Equivalente com escopo
Para usar o método getChoices() em uma aplicação com escopo, use o método com escopo correspondente: getChoices().
GlideElement – getChoiceValue()
Obtém o rótulo de opção para o valor de opção atual.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | O rótulo de opção. |
O exemplo a seguir mostra como obter o rótulo de opção para registros de solicitação de mudança com um valor de prioridade Normal.
var gr = new GlideRecord('change_request');
//query for the change records with change type as "Normal"
gr.addQuery('type','normal');
// sort them in the order of recent to earlier Created Date
gr.orderByDesc('sys_created_on');
// limit the query to 4 records
gr.setLimit(4);
gr.query();
while(gr.next()){
//Printing the choice label for those records
gs.print("The label of the current priority '"+ gr.priority+"' for the change request - " + gr.number + " is - "+ gr.priority.getChoiceValue());
}
Saída:
The label of the current priority '4' for the change request - CHG0000014 is - 4 - Low
The label of the current priority '4' for the change request - CHG0000013 is - 4 - Low
The label of the current priority '4' for the change request - CHG0000012 is - 4 - Low
The label of the current priority '4' for the change request - CHG0000011 is - 4 - Low
Equivalente com escopo
Para usar o método getChoiceValue() em uma aplicação com escopo, use o método com escopo correspondente: getChoiceValue().
GlideElement – getDebugCount()
Obtém o número de mensagens de depuração registradas por debug().
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Número | O número de mensagens de depuração. |
GlideElement – getDependent()
Retorna o campo (elemento) do qual um campo especificado depende.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Nome do campo do qual o campo atual depende. Nulo se não houver dependências. |
O exemplo a seguir mostra como encontrar o campo primário do campo Item de configuração usando o método getDependent().
var inc_gr = new GlideRecord('incident');
inc_gr.get('985f53d82fab301032e8808cf699b6e8'); // Get a particular Incident
var field_element = inc_gr.getElement('cmdb_ci'); // Get the Configuration Item element
var dependent_field = field_element.getDependent(); // Read the dependent field
gs.info("Dependent field: " + dependent_field);
if(dependent_field)
{
var dependent_field_value = inc_gr.getValue(dependent_field);
if(!dependent_field_value)
{
var base_table = field_element.getRefRecord(); // Retrieve the reference record
var dependent_field_value = base_table.getValue(dependent_field); // Read the parent field value
}
inc_gr.setValue(dependent_field, dependent_field_value); // Update the parent field on the Incident
inc_gr.update();
}
Saída:
company
GlideElement – getDependentTable()
Obtém a tabela da qual a tabela atual depende.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | O nome da tabela. |
GlideElement - getDisplayValue(Number maxChar)
Retorna o valor de exibição formatado do campo.
Os valores de exibição são manipulados com base no valor real no banco de dados e nas configurações e preferências do usuário ou do sistema.
- Campos de opção: o valor do banco de dados pode ser um número, mas o valor de exibição será mais descritivo.
- Campos de data: o valor do banco de dados está no formato UTC, enquanto o valor de exibição é baseado no fuso horário do usuário.
- Texto criptografado: o valor do banco de dados é criptografado, enquanto o valor exibido não é criptografado com base no contexto de criptografia do usuário.
- Campos de referência: o valor do banco de dados é sys_id, mas o valor de exibição é um campo de exibição do registro referenciado.
| Nome | Tipo | Descrição |
|---|---|---|
| maxChar | Número | Opcional. Número máximo de caracteres a serem retornados. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Exibir o valor do campo. |
var fields = current.getFields();
for (var i = 0; i < fields.size(); i++) {
var field = fields.get(i);
var name = field.getName();
var value = field.getDisplayValue();
gs.print(i + ". " + name + "=" + value);
}
Equivalente com escopo
Para usar o método getDisplayValue() em uma aplicação com escopo, use o método com escopo correspondente: getDisplayValue().
GlideElement - getDisplayValueExt(Number maxChar, String nullSub)
Retorna o valor de exibição formatado de um campo ou um valor substituto especificado se o valor de exibição for nulo ou vazio.
Os valores de exibição são manipulados com base no valor real no banco de dados e nas configurações e preferências do usuário ou do sistema.
- Campos de opção: o valor do banco de dados pode ser um número, mas o valor de exibição será mais descritivo.
- Campos de data: o valor do banco de dados está no formato UTC, enquanto o valor de exibição é baseado no fuso horário do usuário.
- Texto criptografado: o valor do banco de dados é criptografado, enquanto o valor exibido não é criptografado com base no contexto de criptografia do usuário.
- Campos de referência: o valor do banco de dados é sys_id, mas o valor de exibição é um campo de exibição do registro referenciado.
| Nome | Tipo | Descrição |
|---|---|---|
| maxChar | Número | Opcional. Número máximo de caracteres a serem retornados. Padrão: Todos |
| nullSub | Cadeia de caracteres | Valor a ser retornado se o valor de exibição for nulo ou vazio. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Valor de exibição formatado do campo ou o valor substituto especificado. |
O exemplo a seguir mostra como exibir os dois registros ativos mais recentes na tabela Incidente [incidente].
var gr = new GlideRecord('incident');
gr.addQuery('active', true); // get the active records
gr.orderByDesc('sys_updated_on'); // sort the records from most recent to oldest updated date
gr.setLimit(2); // limit the query to 2 records
gr.query();
while(gr.next()){ // Printing the Display Value of the Configuration Item field.
// If the Display Value is Null/Empty, then it will be substituted with Default value "I with Null/Empty Display Value"
gs.info("The Display Value of the Configuration Item for the incident - "+ gr.number+ " is " + gr.cmdb_ci.getDisplayValueExt(40, " CI with Null/Empty Display Value"));
}
Saída:
The Display Value of the Configuration Item for the incident - INC0007001 is CI with Null/Empty Display Value
The Display Value of the Configuration Item for the incident - INC0000069 is NYC RAC
GlideElement - getDisplayValueLang(cadeia de caracteres "language")
obtém o valor de exibição do campo no idioma passado como um parâmetro.
O resultado só se aplica a tipos de campo traduzíveis, como Opção, Campotraduzido e Texto traduzido. Para outros tipos de campo, o resultado padrão é getDisplayValue().
Você deve ter o plug-in de idioma correspondente para recuperar um valor traduzido. Para obter informações, consulte Activate a language.
Consulte também GlideElement com escopo - getLabelLang(String language).
| Nome | Tipo | Descrição |
|---|---|---|
| idioma | Cadeia de caracteres | Marcador de idioma em conformidade com IETF BCP-47. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Exiba o valor do campo no idioma aprovado. Se uma tradução não estiver disponível, o método recuperará um valor traduzido no idioma do usuário atual. Se uma tradução não estiver disponível, o resultado padrão será o inglês. |
O exemplo a seguir mostra como obter o texto original e o texto traduzido para o alemão do campo de título Aceitar (Exibição da IU).
var uiView = new GlideRecord("sys_ui_view");
uiView.get("fa776f6d97700100f309124eda2975bc");
gs.info("getDisplayValue: " + uiView.getElement("title").getDisplayValue());
gs.info("getDisplayValueLang: " + uiView.getElement("title").getDisplayValueLang("de"));
Saída:
getDisplayValue: Accept
getDisplayValueLang: Akzeptieren
Equivalente com escopo
Para usar o método getDisplayValueLang() em uma aplicação com escopo, use o método com escopo correspondente: getDisplayValueLang().
GlideElement – getED()
Retorna um descritor de elemento, que fornece informações sobre campos específicos, em vez dos dados dentro desses campos.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| ElementDescriptor | O descritor de elemento do campo. |
Este exemplo obtém os campos e os descritores de campo do registro atual.
var fields = current.getFields();
for (i=0; i<fields.size(); i++) {
var field = fields.get(i);
var descriptor = field.getED();
gs.print("type=" + descriptor.getType() +
" internalType=" + descriptor.getInternalType());
}
Equivalente com escopo
Para usar o método getED() em uma aplicação com escopo, use o método com escopo correspondente: getED().
GlideElement - getElementValue(cadeia de caracteres value)
Retorna o valor do elemento especificado.
| Nome | Tipo | Descrição |
|---|---|---|
| valor | Cadeia de caracteres | Elemento cujo valor você deseja retornar. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Valor do elemento. |
var fields = current.getFields();
for (var i = 0; i < fields.size(); i++) {
var field = fields.get(i);
var name = field.getName();
// Returns the unformatted value of the element
var value = field.getElementValue(name);
var disValue = field.getDisplayValue();
gs.print(i + ". " + name + " = " + value + ' display value = ' + disValue);
}
Saída
1. cmdb_ci = 109562a3c611227500a7b7ff98cc0dc7 display value = Storage Area Network 001
2. impact = 2 display value = 2 - Medium
GlideElement – getError()
Retorna qualquer mensagem de erro associada ao elemento especificado.
Use o método setError() para definir um erro em um campo específico (elemento).
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Mensagem de erro definida atualmente para o elemento especificado. |
Este exemplo mostra como definir um erro no elemento short_description e, em seguida, ler o erro de volta.
var incidentGR = new GlideRecord('incident');
incidentGR.setLimit(1);
incidentGR.query();
if (incidentGR.next()) {
incidentGR.short_description.setError('The description is too short.');
gs.info(incidentGR.short_description.getError()); // 'The description is too short.'
}
Saída:
The description is too short.
Este exemplo mostra como usar getError() em uma chamada de função.
// Before query business rule (order = 100)
(function executeRule(current, previous /*null when async*/) {
var shortDescription = current.getValue('short_description');
if (shortDescription.length < 10) {
current.short_description.setError('The description is too short.');
current.setAbortAction(true);
}
})(current, previous);
// Before query business rule (order = 200)
(function executeRule(current, previous /*null when async*/) {
var shortDescriptionErrMsg = current.short_description.getError();
if (shortDescriptionErrMsg) {
// Some error was set in one of the previous business rules.
}
})(current, previous);
GlideElement – getEscapedValue()
Obtém o valor de escape do elemento atual.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | O valor de escape do elemento atual. |
O exemplo a seguir mostra como usar o método getEscapedValue() para exibir o conteúdo de um campo de descrição resumida de incidente com caracteres de escape.
/*** Overview - Update incident short description with escape characters and printing ***/
var inc = new GlideRecord('incident');
inc.query();
inc.next();
inc.short_description = 'Can\'t log into SAP from my laptop today';
inc.update();
gs.info("Short Description: "+inc.getElement('short_description').toString()); //without escape characters
gs.info("Escaped Short Description: "+inc.getElement('short_description').getEscapedValue()); // with escape characters
Saída:
Short Description: Can't log into SAP from my laptop today
Escaped Short Description: Can\'t log into SAP from my laptop today
GlideElement – getFieldStyle()
Obtém o estilo CSS do campo.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | O estilo CSS do campo. |
var fields = current.getFields();
for (var i = 0; i < fields.size(); i++) {
var field = fields.get(i);
var css_style = field.getFieldStyle();
gs.print("CSS style" + "=" + css_style);
}
GlideElement – getGlideObject()
Obtém um objeto glide.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Objeto | Um objeto Glide. |
function calcDateDelta(start, end, calendar) {
var cal = GlideCalendar.getCalendar(calendar);
if (!cal.isValid())
return null;
var realStart = start.getGlideObject();
var realEnd = end.getGlideObject();
var duration = cal.subtract(realStart, realEnd);
return duration;
}
GlideElement – getGlideRecord()
Obtém um registro do glide.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| GlideRecord | Um objeto de registro do glide. |
var grInc = new GlideRecord('incident');
grInc.get('sys_id','ef43c6d40a0a0b5700c77f9bf387afe3');
gs.info("Initial grInc - " + grInc.getDisplayValue());
var caller = grInc.getElement("caller_id");
doit(caller);
function doit(caller) {
var now_GR = caller.getGlideRecord();
gs.info("doit gr is - " + now_GR.getDisplayValue());
}
Saída
*** Script: Initial grInc - INC0000050
*** Script: doit gr is - INC0000050
GlideElement - getHTMLValue(Number maxChars)
Retorna o valor HTML de um campo.
| Nome | Tipo | Descrição |
|---|---|---|
| maxChars | Número | Opcional. Número máximo de caracteres a serem retornados. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Valor HTML do campo. |
O exemplo a seguir mostra como obter o conteúdo HTML de uma anotação de reunião.
/*
getHTMLValueExt() This Function is used to get HTML Value of a field. It accepts 2 Parameters
a. maxChar- Number - The maximum number of characters to return.
b. nullSub - String - The value to return if the HTML value is null or empty.
*/
// get a cab meeting record by its sys_id
var gr = new GlideRecord('cab_meeting');
gr.addQuery('sys_id','7777777b6d2a20100sys70id534330f6');
gr.query();
if(gr.next()){
var substituteString = 'Meeting Notes Unavailable';
var maxLength = 50;
gs.print(gr.meeting_notes.getHTMLValueExt(maxLength, substituteString));
}
Equivalente com escopo
Para usar o método getHTMLValue() em uma aplicação com escopo, use o método com escopo correspondente: getHTMLValue().
GlideElement - getHTMLValueExt(Number maxChar, String nullSub)
Retorna o valor HTML de um campo ou um valor substituto especificado se o valor HTML for nulo ou vazio.
| Nome | Tipo | Descrição |
|---|---|---|
| maxChar | Número | O número máximo de caracteres a serem retornados. |
| nullSub | Cadeia de caracteres | O valor a ser retornado se o valor HTML for nulo ou vazio. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | O valor HTML ou o valor substituto especificado. |
O exemplo a seguir mostra como obter o conteúdo HTML de uma anotação de reunião.
// get a cab meeting record by its sys_id
var gr = new GlideRecord('cab_meeting');
gr.addQuery('sys_id','7777777b6d2a20100sys70id534330f6');
gr.query();
if(gr.next()){
var substituteString = 'Meeting Notes Unavailable';
var maxLength = 50;
gs.print(gr.meeting_notes.getHTMLValueExt(maxLength, substituteString));
}
<p>Meeting note content.</p>GlideElement - getJournalEntry(Number mostRecent)
Retorna a entrada de diário mais recente ou todas as entradas de diário.
| Nome | Tipo | Descrição |
|---|---|---|
| mais recente | Número | Se 1, retorna a entrada mais recente. Se for -1, retornará todas as entradas do registro. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Para a entrada mais recente, retorna uma cadeia de caracteres que contém o rótulo do campo, o carimbo de data/hora e o nome de exibição do usuário da entrada do registro. Para todas as entradas de diário, retorna as mesmas informações para todas as entradas de diário já inseridas como uma única cadeia de caracteres com cada entrada delimitada por "\n\n". |
//gets all journal entries as a string where each entry is delimited by '\n\n'
var notes = current.work_notes.getJournalEntry(-1);
//stores each entry into an array of strings
var na = notes.split("\n\n");
for (var i = 0; i < na.length; i++)
gs.print(na[i]);
Equivalente com escopo
Para usar o método getJournalEntry() em uma aplicação com escopo, use o método com escopo correspondente: getJournalEntry().
GlideElement – getLabel()
Retorna o rótulo do objeto.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Rótulo do objeto |
var now_GR = new GlideRecord("sc_req_item");
now_GR.addQuery("request", current.sysapproval);
now_GR.query();
while(now_GR.next()) {
var nicePrice = now_GR.price.toString();
if (nicePrice != ) {
nicePrice = parseFloat(nicePrice);
nicePrice = nicePrice.toFixed(2);
}
template.print(now_GR.number + ": " + now_GR.quantity + " X " + now_GR.cat_item.getDisplayValue() + " at $" + nicePrice + " each \n");
template.print(" Options:\n");
var variables = now_GR.variables.getElements();
for (var key in variables) {
var now_V = variables[key];
if(now_V.getQuestion().getLabel() != ) {
template.space(4);
template.print(' ' + now_V.getQuestion().getLabel() + " = " + now_V.getDisplayValue() + "\n");
}
}
}
Equivalente com escopo
Para usar o método getLabel() em uma aplicação com escopo, use o método com escopo correspondente: getLabel().
GlideElement - getLabelLang(cadeia de caracteres "language")
Obtém o valor do rótulo do campo no idioma passado como um parâmetro.
Você deve ter o plug-in de idioma correspondente para recuperar um valor traduzido. Para obter informações, consulte Activate a language.
| Nome | Tipo | Descrição |
|---|---|---|
| idioma | Cadeia de caracteres | Marcador de idioma em conformidade com IETF BCP-47. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Valor do rótulo do campo no idioma informado. Se uma tradução não estiver disponível, o método recuperará um valor traduzido no idioma do usuário atual. Se uma tradução não estiver disponível, o resultado padrão será o inglês. |
O exemplo a seguir mostra como obter o texto do rótulo original e sua tradução em alemão do título Aceitar (Exibição da IU).
var uiView = new GlideRecord("sys_ui_view");
uiView.get("fa776f6d97700100f309124eda2975bc");
gs.info("getLabel: " + uiView.getElement("title").getLabel());
gs.info("getLabelLang: " + uiView.getElement("title").getLabelLang("de"));
Saída:
getLabel: Title
getLabelLang: Titel
Equivalente com escopo
Para usar o método getLabelLang() em uma aplicação com escopo, use o método com escopo correspondente: getLabelLang().
GlideElement – getName()
Retorna o nome do campo.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Nome do campo. |
O exemplo a seguir mostra como obter o nome e outros valores de cada campo em um registro sys_user.
var userRec = new GlideRecord("sys_user"); // GlideRecord to sys_user table
userRec.get("5137153cc611227c000bbd1bd8cd2005"); // Sys Id of user: Fred Luddy
var fields = userRec.getFields();
for (var i = 0; i < fields.size(); i++) {
var field = fields.get(i);
var name = field.getName(); // Name of the field
var label = field.getLabel(); // Label of the field
var value = field.getDisplayValue(); // Value of the field
gs.info((Number(i) + 1) + ".\n" + "Field Label: " + label + "\n" + "Field Name: " + name + "\n" + "Field Value: " + value);
};
Saída. Os resultados incluem 62 campos e foram truncados com pontos de reticências (...) para economizar espaço.
*** Script: 1.
Field Label: Country code
Field Name: country
Field Value:
*** Script: 2.
Field Label: Calendar integration
Field Name: calendar_integration
Field Value: Outlook
...
*** Script: 47.
Field Label: First name
Field Name: first_name
Field Value: Fred
...
*** Script: 54.
Field Label: Last name
Field Name: last_name
Field Value: Luddy
...
Equivalente com escopo
Para usar o método getName() em uma aplicação com escopo, use o método com escopo correspondente: getName().
GlideElement – getRefRecord()
Retorna um objeto GlideRecord para um determinado elemento de referência.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| GlideRecord | Um objeto GlideRecord |
var grINC = new GlideRecord('incident');
grINC.notNullQuery('caller_id');
grINC.query();
if (grINC.next()) {
// Get a GlideRecord object for the referenced sys_user record
var grUSER = grINC.caller_id.getRefRecord();
if (grUSER.isValidRecord())
gs.print( grUSER.getValue('name') );
}
Equivalente com escopo
Para usar o método getRefRecord() em uma aplicação com escopo, use o método com escopo correspondente: getRefRecord().
GlideElement – getStyle()
Obtenha o estilo CSS do valor.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | O estilo CSS do valor. |
// Get string of style field from Field Style record
var cssStyle = now_GR.state.getStyle();
GlideElement – getTableName()
Retorna o nome da tabela do campo.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Nome da tabela. Isso pode ser diferente da classe da tabela em que o registro está. Consulte Tabelas e classes na documentação do produto. |
if (current.approver.getTableName() == "sysapproval_approver") {
if (current.approver == email.from_sys_id) {
current.comments = "reply from: " + email.from + "\n\n" + email.body_text;
// if it's been cancelled, it's cancelled.
var doit = true;
if (current.state=='cancelled')
doit = false;
if (email.body.state != undefined)
current.state= email.body.state;
if (doit)
current.update();
} else {
gs.log("Approval for task ("+current.sysapproval.getDisplayValue()+") rejected because user sending
email( "+email.from+") does not match the approver ("+current.approver.getDisplayValue()+")");
}
}
Equivalente com escopo
Para usar o método getTableName() em uma aplicação com escopo, use o método com escopo correspondente: getTableName().
GlideElement – getTextAreaDisplayValue()
Recupera o valor de exibição do campo associado e escapa do HTML.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | HTML do valor de exibição de escape para o campo associado. |
O exemplo a seguir recupera o valor de exibição de um artigo da base de conhecimento.
var grh = new GlideRecord('kb_knowledge');
grh.get('c85cd2519f77230088aebde8132e70c2'); // Knowledge record sys_id
var t = grh.text.getTextAreaDisplayValue(); // Text is HTML type field
var d = GlideXMLUtil.parseHTML(t); // Parse the HTML
var b = d.getDocumentElement().getTextContent().trim();
gs.info(b);
Saída:
This article explains how to use automatic replies in Outlook 2010 for Exchange accounts.
Setting Up Automatic Replies
Click the
File tab.
Click
Automatic Replies.
Select
Send automatic replies.
If desired, select the
Only send during this time range check box to schedule when your out of office replies are active. If you do not specify a start and end time, auto-replies will be sent until you select the
Do not send automatic replies check box.
On the
Inside My Organization tab, type the response that you want to send to colleagues while you are out of the office.
On the
Outside My Organization tab, select the
Auto-reply to people outside my organization check box, and then type the response that you want to send while you are out of the office. Select whether you want replies sent to
My contacts only or to
Anyone outside my organization who sends you messages.
NOTE:
If you select
My Contacts only in step 6, replies will be sent
only to contacts that exist in your Contacts folder.
Using Rules With Automatic Replies
It is also possible to use rules to manage your messages while you are out of office. For example, you can create rules to automatically move or copy messages to other folders, to delete messages, to send custom replies, and so on.
Click the
File tab.
Click
Automatic Replies.
Click
Rules, and then click
Add Rule.
Under
When a message arrives that meets the following conditions, specify the conditions that the message must meet for the rule to be applied. If you want to specify more conditions, click
Advanced, enter or select the options that you want, and then click
OK.
If you want to specify that this rule must be applied last, select the
Do not process subsequent rules check box.
Under
Perform these actions, select the actions that you want. You can select more than one action.
Click
OK three times.
NOTES:
Automatic Replies rules can also be edited by following the above procedure.
To turn Automatic Replies rules on or off, in the Automatic Reply Rules dialog box, select or clear the check box of the rule that you want to turn on or off.
GlideElement – getValue()
Retorna o valor do campo no banco de dados.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | O valor do campo. |
O exemplo a seguir recupera o valor de um campo especificado no banco de dados.
var now_GR = new GlideRecord('incident');
now_GR.get('9c573169c611228700193229fff72400'); //INC0000001
gs.info('Display Values');
gs.info('Opened at ' + now_GR.opened_at.getDisplayValue());
gs.info('Opened by ' + now_GR.opened_by.getDisplayValue());
gs.info('Priority ' + now_GR.priority.getDisplayValue());
gs.info('Values');
gs.info('Opened at ' + now_GR.opened_at.getValue());
gs.info('Opened by ' + now_GR.opened_by.getValue());
gs.info('Priority ' + now_GR.priority.getValue());
Saída:
Display Values
Opened at 2022-02-01 15:09:51
Opened by Joe Employee
Priority 1 - Critical
Values
Opened at 2022-02-01 23:09:51
Opened by 681ccaf9c0a8016400b98a06818d57c7
Priority 1
GlideElement – getXHTMLValue()
Recupera o valor XHTML de um campo.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | O valor XHTML |
GlideElement – getXMLValue()
Obtém o valor XML de um campo como uma cadeia de caracteres.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | O valor XML |
GlideElement - hasAttribute(cadeia de caracteres "attributeName")
Determina se um campo tem um atributo específico.
| Nome | Tipo | Descrição |
|---|---|---|
| attributeName | Cadeia de caracteres | O atributo a ser verificado |
| Tipo | Descrição |
|---|---|
| Booliano | Verdadeiro se o campo tiver o atributo, caso contrário, falso. |
var totalCritical = 0;
var filledCritical = 0; var fields = current.getFields(); gs.print(fields); for (var num = 0; num < fields.size(); num++) {
gs.print("RUNNING ARRAY VALUE " + num);
var ed = fields.get(num).getED();
if(ed.hasAttribute("tiaa_critical")) {
gs.print("CRITICAL FIELD FOUND");
totalCritical ++;
if (!fields.get(num).isNil()) {
filledCritical ++;
}
}
} var answer = 0; gs.print("TOTAL - " + totalCritical); gs.print("FILLED - " + filledCritical); if (filledCritical > 0 && totalCritical > 0){
var pcnt = (filledCritical/totalCritical)*100;
answer = pcnt.toFixed(2);;
} answer;
GlideElement - hasRightsTo(cadeia de caracteres "operationName")
Determina se o usuário tem o direito de executar uma operação específica.
| Nome | Tipo | Descrição |
|---|---|---|
| OperationName | Cadeia de caracteres | Nome da operação a ser verificada |
| Tipo | Descrição |
|---|---|
| Booliano | Verdadeiro se o usuário tiver permissão para executar a operação, caso contrário, falso. Sinalizador que indica se um usuário tem permissão para executar uma operação. Valores válidos:
|
O exemplo a seguir mostra como determinar se um usuário tem direitos para ler uma tabela específica.
// Pass table name and userId to check if user has read access against given table name
checkAccess('incident', 'adela.cervantsz');
function checkAccess(tableName, userID) {
var inc = new GlideRecordSecure(tableName);
inc.get('$[sys_id]');
var secureManager = GlideSecurityManager.get();
//fetch a different user, using user_name field on the target user record
var userObj = gs.getUser().getUserByID(userID);
secureManager.setUser(userObj);
var access = 'record/incident/read';
//check if user has right to access
var canRead = secureManager.hasRightsTo(access, inc);
gs.info('canRead: ' + canRead);
}
Saída:
canRead: false
GlideElement – hasValue()
Determina se o campo tem um valor.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Booliano | Verdadeiro se o campo tiver um valor, caso contrário, falso. |
GlideElement - nil()
Determina se o campo é nulo.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Booliano | Verdadeiro se o campo for nulo ou uma cadeia de caracteres vazia, caso contrário, falso. |
if (current.start_date.changes() || current.end_date.changes() || current.assigned_to.changes()) {
if (!current.start_date.nil() && !current.end_date.nil() && !current.assigned_to.nil()) {
gs.eventQueue("change.calendar.notify", current, current.assigned_to, previous.assigned_to);
}
Equivalente com escopo
Para usar o método nil() em uma aplicação com escopo, use o método com escopo correspondente: nil().
GlideElement - setDateNumericValue(Number milissegundos)
Define o campo de duração como um número de milissegundos desde 1º de janeiro de 1970, 00:00:00 GMT para um campo de duração. Não requer a criação de um objeto GlideDateTime porque o campo de duração já é um objeto GlideDateTime.
| Nome | Tipo | Descrição |
|---|---|---|
| milissegundos | Número | Número de milissegundos estendido pela duração. |
| Tipo | Descrição |
|---|---|
| vazio |
var inc = new GlideRecord('incident');
inc.get('17c90efb13418700cc36b1422244b05d');
var timems = inc.calendar_duration.dateNumericValue();
timems = timems + 11*1000;
inc.calendar_duration.setDateNumericValue(timems)
gs.info(inc.calendar_duration.getValue());
Saída: 1970-01-01 00:01:38
Equivalente com escopo
Para usar o método setDateNumericValue() em uma aplicação com escopo, use o método com escopo correspondente: setDateNumericValue().
GlideElement - setDisplayValue(Object displayValue)
Define o valor de exibição do campo.
| Nome | Tipo | Descrição |
|---|---|---|
| displayValue | Objeto | Valor a ser exibido. |
| Tipo | Descrição |
|---|---|
| vazio |
Equivalente com escopo
Para usar o método setDisplayValue() em uma aplicação com escopo, use o método com escopo correspondente: setDisplayValue().
GlideElement - setError(cadeia de caracteres "mensagem")
Adiciona uma mensagem de erro ao campo associado (elemento).
Você pode recuperar a mensagem de erro usando o método getError().
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Nenhum |
if ((!current.u_date1.nil()) && (!current.u_date2.nil())) {
var start = current.u_date1.getGlideObject().getNumericValue();
var end = current.u_date2.getGlideObject().getNumericValue();
if (start > end) {
gs.addInfoMessage('start must be before end');
current.setAbortAction(true);
current.u_date1.setError('start must be before end');
}
}
Equivalente com escopo
Para usar o método setError() em uma aplicação com escopo, use o método com escopo correspondente: setError().
GlideElement - setInitialValue(Object value)
Define o valor inicial de um campo.
Este método foi descontinuado. Use GlideElement - setValue(Object value) para esta funcionalidade.
| Nome | Tipo | Descrição |
|---|---|---|
| valor | Objeto | Valor inicial do campo. |
| Tipo | Descrição |
|---|---|
| vazio |
GlideElement - setJournalEntry(cadeia de caracteres "entrada", cadeia de caracteres userName)
Adiciona uma entrada de diário e um autor como anotação de trabalho ou campo de comentário.
| Nome | Tipo | Descrição |
|---|---|---|
| entrada | Cadeia de caracteres | Conteúdo da entrada do registro. |
| userName | Cadeia de caracteres | Opcional. O usuário ao qual atribuir a entrada de registro. Não define a entrada de registro criada por campo. |
| Tipo | Descrição |
|---|---|
| Nenhum |
O exemplo a seguir mostra como adicionar uma anotação de trabalho e seu autor a um registro.
var now_GR = new GlideRecord("incident");
now_GR.addQuery("sys_id", "<sys_id_value>");
now_GR.query();
if(now_GR.next()){
now_GR.work_notes.setJournalEntry("Content of the journal entry.", "abel.tuter");
now_GR.update();
}
GlideElement - setValue(Object value)
Define o valor de um campo.
| Nome | Tipo | Descrição |
|---|---|---|
| valor | Objeto | O valor para o qual o campo será definido. |
| Tipo | Descrição |
|---|---|
| vazio |
Defina o valor passando uma cadeia de caracteres.
var glideRecord = new GlideRecord('incident');
glideRecord.query('priority','1');
glideRecord.next();
glideRecord.short_description.setValue('Network failure');
Defina o valor passando um objeto.
var now_GR = new GlideRecord('student');
now_GR.initialize();
now_GR.setValue('first_name', 'Joe');
now_GR.setValue('last_name', 'Smith');
now_GR.insert();
Equivalente com escopo
Para usar o método setValue() em uma aplicação com escopo, use o método com escopo correspondente: setValue().
GlideElement – toString()
Converte o valor do campo em uma cadeia de caracteres.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | O valor do campo como uma cadeia de caracteres. |
doit();
function doit() {
var now_GR = new GlideRecord('sys_user');
now_GR.query();
while (now_GR.next()) {
if ((now_GR().length != now_GR.first_name.toString().trim().length) || (now_GR.last_name.toString().length
!= now_GR.last_name.toString().trim().length)) {
now_GR.first_name = now_GR.first_name.toString().trim();
now_GR.last_name = now_GR.last_name.toString().trim();
now_GR.autoSysFields(false);
now_GR.update();
}
}
}
Equivalente com escopo
Para usar o método toString() em uma aplicação com escopo, use o método com escopo correspondente: toString().