GlideSysAttachment - Global
. GlideSysAttachment A API fornece métodos para lidar com anexos.
O conteúdo é retornado como um objeto GlideScriptableInputStream quando GetContentStream() é chamado. GlideScriptableInputStream contém os bytes reais não convertidos em uma cadeia de caracteres.
GlideSysAttachment - GlideSysAttachment ()
Cria uma instância da classe GlideSysAttachment.
| Nome | Tipo | Descrição |
|---|---|---|
| IdAttachmentAttributes | Cadeia de caracteres | Sys_id de um anexo com atributos. Para determinar se um anexo tem atributos, use GlideSysAttachment - fetchAllAttributes(). Tabela: Anexos [sys_attachment] |
O script a seguir lista os nomes de arquivo de anexo para um registro com dois anexos.
var attachment = new GlideSysAttachment();
var agr = attachment.getAttachments('<table_name>', '<record_sys_id>');
while(agr.next())
gs.info(agr.getValue('file_name'));
Saída:
*** Script: filename1.txt
*** Script: filename2.txt
O exemplo a seguir mostra como obter todos os atributos atribuídos a um anexo especificado.
var attach = new GlideSysAttachment("04f48541083e2e50f877df7a115e31f3");
var result = attach.fetchAllAttributes();
while(result.next()) {
gs.info("Key: " + result.getValue('key') + ", Value: " + result.getValue('value'));
}
Saída:
Key: title, Value: Add multiple attributes to an attachment
Key: author, Value: Abel Tuter
Key: category, Value: KB
Key: length, Value: 5000
GlideSysAttachment - addAttribute(cadeia de caracteres attrKey, cadeia de caracteres attrValue)
Adiciona um único atributo a um registro de anexo existente.
- AddMultipleAttributes()
- DeleteAllAtributos()
- DeleteAttribute()
- FetchAllAtributos()
- FetchAttribute()
- UpdateAllAtributos()
- UpdateAttribute()
| Nome | Tipo | Descrição |
|---|---|---|
| AttrKey | Cadeia de caracteres | Parte de chave de um par de chave-valor para um atributo de anexo. |
| Attribute | Cadeia de caracteres | Parte de valor de um par de chave-valor para um atributo de anexo. |
| Tipo | Descrição |
|---|---|
| Nenhum(a) |
O exemplo a seguir mostra como adicionar um atributo a um anexo especificado com a chave autor e valor Dirigido por Fred Luddy . Os resultados podem ser exibidos na tabela Atributos de anexo [sys_attachment_attribute].
var attach = new GlideSysAttachment("04f48541083e2e50f877df7a115e31f3");
attach.addAttribute("author", "Fred Luddy");
var result = attach.fetchAttribute("author");
while(result.next()) {
gs.info("Key: " + result.getValue('key') + " \nValue: " + result.getValue('value'));
}
Saída:
Key: author
Value: Fred Luddy
GlideSysAttachment - addMultipleAttributes(Object attrsKeyValuePair)
Adiciona vários atributos a um registro de anexo.
- AddAttribute()
- DeleteAllAtributos()
- DeleteAttribute()
- FetchAllAtributos()
- FetchAttribute()
- UpdateAllAtributos()
- UpdateAttribute()
| Nome | Tipo | Descrição |
|---|---|---|
| AttrsKeyValuePair | Objeto | Atributos de anexo em um conjunto de pares de chave-valor. Cada chave de atributo e seu valor devem ser fornecidos como uma cadeia de caracteres. Por exemplo: |
| Tipo | Descrição |
|---|---|
| Nenhum(a) |
O exemplo a seguir mostra como adicionar atributos a um anexo especificado. Os resultados também podem ser verificados na tabela Atributos de anexo [sys_attachment_attribute].
var attach = new GlideSysAttachment("04f48541083e2e50f877df7a115e31f3");
var attrsKeyValuePair = { };
attrsKeyValuePair["title"] = "Add multiple attributes to an attachment";
attrsKeyValuePair["category"] = "KB";
attrsKeyValuePair["length"] = "5000";
attach.addMultipleAttributes(attrsKeyValuePair);
var result = attach.fetchAllAttributes();
while(result.next()) {
gs.info("Key: " + result.getValue('key') + ", Value: " + result.getValue('value'));
}
Saída:
Key: title, Value: Add multiple attributes to an attachment
Key: author, Value: Abel Tuter
Key: category, Value: KB
Key: length, Value: 5000
GlideSysAttachment - cópia (cadeia de caracteres sourceTable, cadeia de caracteres sourceID, cadeia de caracteres targetTable, cadeia de caracteres targetID)
Copia anexos do registro de origem para o registro de destino.
| Nome | Tipo | Descrição |
|---|---|---|
| sourceTable | Cadeia de caracteres | Nome da tabela com os anexos a serem copiados. |
| SourceID | Cadeia de caracteres | Sys_id da tabela de origem. |
| targetTable | Cadeia de caracteres | Nome da tabela na qual os anexos serão adicionados. |
| TargetId | Cadeia de caracteres | Sys_id da tabela de destino. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Matriz de sys_ids dos anexos que foram copiados. |
var attachment = new GlideSysAttachment();
var incidentSysID = 'ab1b30031b04ec101363ff37dc4bcbfc';
var incGR = new GlideRecord('incident');
incGR.get(incidentSysID);
var copiedAttachments = attachment.copy('incident', incidentSysID, 'problem', incGR.getValue('problem_id'));
gs.info('Copied attachments: ' + copiedAttachments);
Saída:
Copied attachments: 6e4621df1bc420501363ff37dc4bcbb0,a87769531b0820501363ff37dc4bcba2
GlideSysAttachment - deleteAllAttributes()
Exclui todos os atributos de um registro de anexo existente.
- AddAttribute()
- AddMultipleAttributes()
- DeleteAttribute()
- FetchAllAtributos()
- FetchAttribute()
- UpdateAllAtributos()
- UpdateAttribute()
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Booliano | Sinalizador que indica se os atributos foram excluídos com sucesso. Valores válidos:
|
O exemplo a seguir mostra como excluir todos os atributos atribuídos a um anexo especificado. Os resultados também podem ser verificados na tabela Atributos de anexo [sys_attachment_attribute].
var attach = new GlideSysAttachment("04f48541083e2e50f877df7a115e31f3");
attach.deleteAllAttributes();
var result = attach.fetchAllAttributes();
while(result.next()) {
gs.info("Key: " + result.getValue('key') + ", Value: " + result.getValue('value'));
}
Saída:
Attribute "null" not found for attachment "04f48541083e2e50f877df7a115e31f3"
GlideSysAttachment - deleteAttachment(cadeia de caracteres attachmentID)
Exclui o anexo indicado.
| Nome | Tipo | Descrição |
|---|---|---|
| AnexoID | Cadeia de caracteres | Sys_id do anexo. |
| Tipo | Descrição |
|---|---|
| vazio |
var attachment = new GlideSysAttachment();
var attachmentSysID = 'a87769531b0820501363ff37dc4bcba2';
attachment.deleteAttachment(attachmentSysID);
GlideSysAttachment - deleteAttribute(cadeia de caracteres attrKey)
Exclui um atributo especificado do registro de anexo.
- AddAttribute()
- AddMultipleAttributes()
- DeleteAllAtributos()
- FetchAllAtributos()
- FetchAttribute()
- UpdateAllAtributos()
- UpdateAttribute()
| Nome | Tipo | Descrição |
|---|---|---|
| AttrKey | Cadeia de caracteres | Parte de chave de um par de chave-valor para um atributo de anexo. |
| Tipo | Descrição |
|---|---|
| Booliano | Sinalizador que indica se o atributo de anexo foi excluído com sucesso. Valores válidos:
|
O exemplo a seguir mostra como excluir um atributo atribuído a um anexo especificado com a chave autor . Os resultados também podem ser verificados na tabela Atributos de anexo [sys_attachment_attribute].
var attach = new GlideSysAttachment("04f48541083e2e50f877df7a115e31f3v");
attach.deleteAttribute("author");
var result = attach.fetchAttribute("author");
while(result.next()) {
gs.info("Key: " + result.getValue('key') + " \nValue: " + result.getValue('value'));
}
Saída:
Attribute "author" not found for attachment "04f48541083e2e50f877df7a115e31f3"
GlideSysAttachment - fetchAllAttributes()
Busca todos os atributos de um registro de anexo especificado.
- AddAttribute()
- AddMultipleAttributes()
- DeleteAllAtributos()
- DeleteAttribute()
- FetchAttribute()
- UpdateAllAtributos()
- UpdateAttribute()
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| GlideRecord | O registro do anexo e todos os seus atributos. |
O exemplo a seguir mostra como obter todos os atributos atribuídos a um anexo especificado.
var attach = new GlideSysAttachment("04f48541083e2e50f877df7a115e31f3");
var result = attach.fetchAllAttributes();
while(result.next()) {
gs.info("Key: " + result.getValue('key') + ", Value: " + result.getValue('value'));
}
Saída:
Key: title, Value: Add multiple attributes to an attachment
Key: author, Value: Abel Tuter
Key: category, Value: KB
Key: length, Value: 5000
GlideSysAttachment - fetchAttribute(cadeia de caracteres attrKey)
Busca um atributo especificado de um registro de anexo.
- AddAttribute()
- AddMultipleAttributes()
- DeleteAllAtributos()
- DeleteAttribute()
- FetchAllAtributos()
- UpdateAllAtributos()
- UpdateAttribute()
| Nome | Tipo | Descrição |
|---|---|---|
| AttrKey | Cadeia de caracteres | Parte de chave de um par de chave-valor para um atributo de anexo. |
| Tipo | Descrição |
|---|---|
| GlideRecord | GlideRecord do anexo e o atributo especificado. |
O exemplo a seguir mostra como obter um atributo de anexo com a chave autor .
var attach = new GlideSysAttachment("04f48541083e2e50f877df7a115e31f3");
var result = attach.fetchAttribute("author");
while(result.next()) {
gs.info("Key: " + result.getValue('key') + " \nValue: " + result.getValue('value'));
}
Saída:
Key: author
Value: Abel Tuter
GlideSysAttachment - getAttachments(cadeia de caracteres tablename, cadeia de caracteres sys_id)
Retorna um GlideRecord que contém os metadados de anexo correspondentes, como nome, tipo ou tamanho.
| Nome | Tipo | Descrição |
|---|---|---|
| tableName | Cadeia de caracteres | Nome da tabela à qual o anexo pertence; por exemplo, incidente. |
| sys_id | Cadeia de caracteres | Sys_id do registro ao qual o anexo pertence. |
| Tipo | Descrição |
|---|---|
| GlideRecord | Objeto GlideRecord que contém os metadados de anexo correspondentes, como nome, tipo ou tamanho. |
O script a seguir lista os nomes de arquivo de anexo para um registro com dois anexos.
var attachment = new GlideSysAttachment();
var agr = attachment.getAttachments('<table_name>', '<record_sys_id>');
while(agr.next())
gs.info(agr.getValue('file_name'));
Saída:
*** Script: filename1.txt
*** Script: filename2.txt
GlideSysAttachment - getContentStream (SYSID de cadeia de caracteres)
Retorna um objeto GlideScriptableInputStream dado o sys_id de um anexo.
Você pode usar GlideTextReader API para ler o fluxo de conteúdo.
| Nome | Tipo | Descrição |
|---|---|---|
| sysID | Cadeia de caracteres | Sys_id do anexo. |
| Tipo | Descrição |
|---|---|
| GlideScriptableInputStream | Fluxo que contém o conteúdo do anexo. |
var attachment = new GlideSysAttachment();
var attachmentSysID = '6e4621df1bc420501363ff37dc4bcbb0';
var attachmentContentStream = attachment.getContentStream(attachmentSysID);
gs.info('Attachment content stream: ' + attachmentContentStream);
Saída:
Attachment content stream: com.glide.communications.GlideScriptableInputStream@14bd299
GlideSysAttachment - updateAllAttributes(Object attrsKeyValuePair)
Atualiza todos os atributos de um registro de anexo existente.
- AddAttribute()
- AddMultipleAttributes()
- DeleteAllAtributos()
- DeleteAttribute()
- FetchAllAtributos()
- FetchAttribute()
- UpdateAttribute()
| Nome | Tipo | Descrição |
|---|---|---|
| AttrsKeyValuePair | Objeto | Atributos de anexo em um conjunto de pares de chave-valor. Cada chave de atributo e seu valor devem ser fornecidos como uma cadeia de caracteres. Por exemplo: |
| Tipo | Descrição |
|---|---|
| Nenhum(a) |
O exemplo a seguir mostra como atualizar cada atributo de um anexo especificado. Os resultados também podem ser verificados na tabela Atributos de anexo [sys_attachment_attribute].
var attach = new GlideSysAttachment("04f48541083e2e50f877df7a115e31f3");
var attachmentAttributes = {
"category" : "Training",
"title" : "Updating attachment attributes",
"author" : "Abraham Lincoln",
"length" : "6000"
}
attach.updateAllAttributes(attachmentAttributes);
var result = attach.fetchAllAttributes();
while(result.next()) {
gs.info("Key: " + result.getValue('key') + ", Value: " + result.getValue('value'));
}
Saída:
Key: title, Value: Updating attachment attributes
Key: author, Value: Abraham Lincoln
Key: category, Value: Training
Key: length, Value: 6000
GlideSysAttachment - updateAttribute(cadeia de caracteres attrKey, cadeia de caracteres attrValue)
Atualiza um único atributo para um registro de anexo existente.
- AddAttribute()
- AddMultipleAttributes()
- DeleteAllAtributos()
- DeleteAttribute()
- FetchAllAtributos()
- FetchAttribute()
- UpdateAllAtributos()
| Nome | Tipo | Descrição |
|---|---|---|
| AttrKey | Cadeia de caracteres | Parte de chave de um par de chave-valor para um atributo de anexo. |
| Attribute | Cadeia de caracteres | Parte de valor de um par de chave-valor para um atributo de anexo. |
| Tipo | Descrição |
|---|---|
| Nenhum(a) |
O exemplo a seguir mostra como atualizar um atributo atribuído a um anexo especificado com a chave autor E muda o valor para Abel Tuter. Os resultados também podem ser verificados na tabela Atributos de anexo [sys_attachment_attribute].
var attach = new GlideSysAttachment("04f48541083e2e50f877df7a115e31f3");
var originalVal = attach.fetchAttribute("author");
while(originalVal.next()) {
gs.info("Original attribute value: " + originalVal.getValue('value') + "\n");
}
attach.updateAttribute("author", "Abel Tuter");
var updatedVal = attach.fetchAttribute("author");
while(updatedVal.next()) {
gs.info("Updated attribute value: " + updatedVal.getValue('value'));
}
Saída:
Original attribute value: Fred Luddy
Updated attribute value: Abel Tuter
GlideSysAttachment - write (registro GlideRecord, cadeia de caracteres do nome do arquivo, cadeia de caracteres contentType, cadeia de caracteres do conteúdo)
Anexa um anexo especificado ao registro especificado.
| Nome | Tipo | Descrição |
|---|---|---|
| registro | GlideRecord | Registro ao qual anexar o anexo. |
| nomeArquivo | Cadeia de caracteres | Nome do arquivo do anexo. |
| tipoConteúdo | Cadeia de caracteres | Tipo MIME do anexo, como imagem/png . Localizado na tabela Anexo [sys_attachment] em Tipo de conteúdo campo. |
| conteúdo | Cadeia de caracteres | Conteúdo do anexo. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Sys_id do anexo. Retorna nulo se o anexo não foi adicionado. |
var attachment = new GlideSysAttachment();
//set up inputs
var rec = new GlideRecord('incident');
rec.get('78271e1347c12200e0ef563dbb9a7109');
var fileName = 'example.txt';
var contentType = 'text/csv';
var content = 'The text that is stored inside my file';
var agr = attachment.write(rec, fileName, contentType, content);
gs.info('The attachment sys_id is: ' + agr);
Saída:
The attachment sys_id is: 01271e4317c13311e0ef563dbb9abe34
GlideSysAttachment - writeContentStream(GlideRecord Now_GR, String filename, String contentType, GlideScriptableInputStream)
Insere um anexo usando o fluxo de entrada.
| Nome | Tipo | Descrição |
|---|---|---|
| Now_GR | GlideRecord | Registro ao qual anexar o anexo. |
| nomeArquivo | Cadeia de caracteres | Nome do arquivo do anexo. |
| tipoConteúdo | Cadeia de caracteres | Tipo MIME do anexo, como imagem/png . Localizado na tabela Anexo [sys_attachment] em Tipo de conteúdo campo. |
| conteúdo | GlideScriptableInputStream | Conteúdo do anexo. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Sys_id do anexo criado. |
Anexa um fluxo de conteúdo da tabela sys_attachment a um registro test_table.
function copyAttachmentToGlideRecord(conceptSysId) {
// Get record from test_table using sys_id
var targetGlideRecord = new GlideRecord("test_table");
if (!targetGlideRecord.get(conceptSysId)) {
throw ("Cannot find record created by test with sys_id: " + conceptSysId);
}
// Get record from sys_attachment table
var sourceAttachmentGlideRecord = new GlideRecord('sys_attachment');
sourceAttachmentGlideRecord.query();
sourceAttachmentGlideRecord.next();
// Get field values from retrieved sys_attachment record
var fileName = sourceAttachmentGlideRecord.getValue('file_name');
var contentType = sourceAttachmentGlideRecord.getValue('content_type');
var sourceAttachmentSysId = sourceAttachmentGlideRecord.getValue('sys_id');
// Attach sys_attachment record content stream to test_table record
var gsa = new GlideSysAttachment();
gsa.writeContentStream(
targetGlideRecord,
fileName,
contentType,
gsa.getContentStream(sourceAttachmentSysId));
gs.info("Attachment created");
}