GlideSysAttachment : Global
Die GlideSysAttachment -API bietet Methoden für die Verarbeitung von Anhängen.
Inhalt wird als GlideScriptableInputStream-Objekt zurückgegeben, wenn getContentStream() aufgerufen wird. GlideScriptableInputStream enthält die tatsächlichen Bytes, die nicht in eine Zeichenfolge konvertiert wurden.
GlideSysAttachment: GlideSysAttachment()
Erstellt eine Instanz der GlideSysAttachment-Klasse.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
GlideSysAttachment – kopieren (Zeichenfolgen-sourceTable, Zeichenfolgen-sourceID, Zeichenfolgen-targetTable, Zeichenfolgen-targetID)
Kopiert Anhänge aus dem Quelldatensatz in den Zieldatensatz.
| Name | Typ | Beschreibung |
|---|---|---|
| sourceTable | Zeichenfolge | Name der Tabelle mit den Anhängen, die kopiert werden sollen. |
| sourceID | Zeichenfolge | sys_id der Quelltabelle. |
| targetTable | Zeichenfolge | Name der Tabelle, in der die Anhänge hinzugefügt werden sollen. |
| targetID | Zeichenfolge | sys_id der Zieltabelle. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Array von sys_ids der Anhänge, die kopiert wurden. |
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);
Ausgabe:
Copied attachments: 6e4621df1bc420501363ff37dc4bcbb0,a87769531b0820501363ff37dc4bcba2
GlideSysAttachment - deleteAttachment(String AttachmentID)
Löscht den angegebenen Anhang.
| Name | Typ | Beschreibung |
|---|---|---|
| attachmentID | Zeichenfolge | sys_id des Anhangs |
| Typ | Beschreibung |
|---|---|
| void |
var attachment = new GlideSysAttachment();
var attachmentSysID = 'a87769531b0820501363ff37dc4bcba2';
attachment.deleteAttachment(attachmentSysID);
GlideSysAttachment - getAttachments(String tableName, String sys_id)
Gibt einen GlideRecord zurück, der die übereinstimmenden Anhangsmetadaten wie Name, Typ oder Größe enthält.
| Name | Typ | Beschreibung |
|---|---|---|
| tableName | Zeichenfolge | Name der Tabelle, zu der der Anhang gehört; Beispiel: Incident. |
| sys_id | Zeichenfolge | Sys_id des Datensatzes, zu dem der Anhang gehört. |
| Typ | Beschreibung |
|---|---|
| GlideRecord | GlideRecord-Objekt mit den entsprechenden Anhangmetadaten wie Name, Typ oder Größe. |
Das folgende Skript listet Anhangdateinamen für einen Datensatz mit zwei Anhängen auf.
var attachment = new GlideSysAttachment();
var agr = attachment.getAttachments('<table_name>', '<record_sys_id>');
while(agr.next())
gs.info(agr.getValue('file_name'));
Ausgabe:
*** Script: filename1.txt
*** Script: filename2.txt
GlideSysAttachment – getContentStream(String sysID)
Gibt ein GlideScriptableInputStream-Objekt anhand der sys_id eines Anhangs zurück.
Sie können die GlideTextReader -API verwenden, um den Inhaltsstream zu lesen.
| Name | Typ | Beschreibung |
|---|---|---|
| sysID | Zeichenfolge | sys_id des Anhangs |
| Typ | Beschreibung |
|---|---|
| GlideScriptableInputStream | Stream, der den Inhalt des Anhangs enthält. |
var attachment = new GlideSysAttachment();
var attachmentSysID = '6e4621df1bc420501363ff37dc4bcbb0';
var attachmentContentStream = attachment.getContentStream(attachmentSysID);
gs.info('Attachment content stream: ' + attachmentContentStream);
Ausgabe:
Attachment content stream: com.glide.communications.GlideScriptableInputStream@14bd299
GlideSysAttachment - write(GlideRecord-Datensatz, Zeichenfolge fileName, Zeichenfolgeninhaltstyp, Zeichenfolgeninhalt)
Hängt dem angegebenen Datensatz einen angegebenen Anhang an.
| Name | Typ | Beschreibung |
|---|---|---|
| Datensatz | GlideRecord | Datensatz, an den der Anhang angehängt werden soll. |
| fileName | Zeichenfolge | Dateiname des Anhangs. |
| contentType | Zeichenfolge | MIME-Typ des Anhangs, z. B. image/png. Befindet sich in der Tabelle „Anhang“ [sys_attachment] im Feld Inhaltstyp. |
| Content | Zeichenfolge | Inhalt des Anhangs. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | sys_id des Anhangs Gibt NULL zurück, wenn der Anhang nicht hinzugefügt wurde. |
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);
Ausgabe:
The attachment sys_id is: 01271e4317c13311e0ef563dbb9abe34
GlideSysAttachment – writeContentStream(GlideRecord now_GR, String fileName, String contentType, GlideScriptableInputStream inputStream)
Fügt einen Anhang mit dem Eingabe-Stream ein.
| Name | Typ | Beschreibung |
|---|---|---|
| now_GR | GlideRecord | Datensatz, an den der Anhang angehängt werden soll. |
| fileName | Zeichenfolge | Dateiname des Anhangs. |
| contentType | Zeichenfolge | MIME-Typ des Anhangs, z. B. image/png. Befindet sich in der Tabelle „Anhang“ [sys_attachment] im Feld Inhaltstyp. |
| Content | GlideScriptableInputStream | Inhalt des Anhangs. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Sys_id des erstellten Anhangs. |
Hängt einen Inhaltsstream aus der Tabelle „sys_attachment“ an einen test_table-Datensatz an.
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");
}