GlideExcelParser – Umfang, Global

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 18 Minuten Lesedauer
  • Die GlideExcelParser API analysiert XML-formatierte Excel-Dateien und greift auf Dateidaten in Skripts zu.

    Sie können verwenden GlideExcelParser Methoden in globalen und bereichsbezogenen Skripts. Verwenden Sie sn_impex Namespace-Bezeichner zum Erstellen eines GlideExcelParser-Objekts.

    GlideExcelParser – GlideExcelParser()

    Erstellt eine Instanz von GlideExcelParser.

    Der API-Namensraumbezeichner „sn_impex“ muss beim Erstellen eines GlideExcelParser-Objekts verwendet werden.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine
    var parser = new sn_impex.GlideExcelParser(); 
    var attachment = new GlideSysAttachment();
    // use attachment sys id of an excel file
    var attachmentStream = attachment.getContentStream(<attachment sys id>);
    
    parser.parse(attachmentStream); 
    
    //retrieve the column headers
    var headers = parser.getColumnHeaders();  
    var header1 = headers[0]; 
    var header2 = headers[1]; 
    
    //print headers
    gs.info(header1 + " " + header2); 
    
    while(parser.next()) { 
      var row = parser.getRow(); 
      //print row value for both columns   
      gs.info(row[header1] + ' ' + row[header2]) 
    }

    GlideExcelParser – close()

    Schließen Sie die Verbindung zum Eingabestrom, und geben Sie das Dokument frei.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 3. Rückgaben
    Typ Beschreibung
    Ungültig

    Dieses Beispiel zeigt, wie der Parser geschlossen wird, sobald die gesamte Dokumentverwaltung abgeschlossen ist.

    // iterate over each row in the excel sheet
    var attachment = new GlideSysAttachment();
    var attachmentStream = attachment.getContentStream(<attachment sys id>);
    var parser = new sn_impex.GlideExcelParser();
    parser.parse(attachmentStream);
    while (parser.next()) {
      // do something on each row
      var row = parser.getRow();
      gs.info(JSON.stringify(row));
    }
    parser.close(); // close the stream and release the document

    GlideExcelParser – getColumnHeaders()

    Gibt eine Liste von Spaltenheadern aus dem analysierten Dokument zurück.

    Tabelle : 4. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 5. Rückgaben
    Typ Beschreibung
    Array Ein Array von Zeichenfolgen von Spaltenheadern aus dem analysierten Dokument.

    Das folgende Beispiel zeigt, wie ein Excel-Dateianhang mehrmals analysiert wird, um Spaltenüberschriften und Druckwerte jeder Zeile für jedes Arbeitsblatt abzurufen. Ergebnisse zeigen Spaltenüberschriften und Werte von drei separaten Blättern im Excel-Anhang an.

    var parser = new sn_impex.GlideExcelParser();
    
    var attachment = new GlideSysAttachment();
    
    // Use the attachment sys_id of an Excel file
    var attachmentStream = attachment.getContentStream("<attachment_sys_id>");
    
    // Set the source to be parsed
    parser.setSource(attachmentStream);
    
    // Get the worksheet names to be parsed in the Excel document
    var list_sheet_name = parser.getSheetNames();
    
    gs.info(" Sheet Names " + list_sheet_name.join(", "));
    
    // Iterate over each worksheet in the Excel workbook
    for (var i = 0; i < list_sheet_name.length; i++) {
        gs.info("**************************************************************************************");
        gs.info("Sheet name:    " + list_sheet_name[i]);
    
    // Set the worksheet name to be parsed
        parser.setSheetName(list_sheet_name[i]);
    
    // Parse each worksheet set using setSheetName()
        if (parser.parse()) {
            //retrieve the column headers
            var headers = parser.getColumnHeaders();
            var header1 = headers[0];
            var header2 = headers[1];
            var header3 = headers[2];
    
            //print headers
            gs.info(header1 + "\t||" + header2 + "\t||" + header3);
    
            // Iterate over each row in the worksheet
            while (parser.next()) {
                var row = parser.getRow();
                //print row value for both columns   
                gs.info(row[header1] + '\t|| ' + row[header2] + '\t||' + row[header3])
            }
        } else
            gs.info(parser.getErrorMessage());
    }

    Ausgabe:

    *** Script:  Sheet Names Incident Table, sys_user Table, knowledge Table
    *** Script: **************************************************************************************
    *** Script: Sheet name:    Incident Table
    *** Script: Number	||Opened	||Short description
    *** Script: INC0010112	|| 2019-07-29 11:48:43	||Assessment :  ATF Assessor
    *** Script: INC0010111	|| 2019-07-22 14:04:57	||ATF : Test1
    *** Script: INC0009009	|| 2018-08-30 01:06:16	||Unable to access the shared folder.
    *** Script: **************************************************************************************
    *** Script: Sheet name:    sys_user Table
    *** Script: User ID	||Name	||Email
    *** Script: abel.tuter	|| Abel Tuter	||abel.tuter@example.com
    *** Script: abraham.lincoln	|| Abraham Lincoln	||abraham.lincoln@example.com
    *** Script: adela.cervantsz	|| Adela Cervantsz	||adela.cervantsz@example.com
    *** Script: aileen.mottern	|| Aileen Mottern	||aileen.mottern@example.com
    *** Script: alejandra.prenatt	|| Alejandra Prenatt	||alejandra.prenatt@example.com
    *** Script: **************************************************************************************
    *** Script: Sheet name:    knowledge Table
    *** Script: Number	||Short description	||Author
    *** Script: KB99999999	|| Microsoft Outlook Issues	||System Administrator
    *** Script: KB0000033	|| Eclipse configuration for Android development	||System Administrator
    *** Script: KB0000032	|| Getting Around in Windows	||System Administrator
    *** Script: KB0000031	|| How can I find the MAC address of my Ethernet or
       wireless interface?	||Sam Sorokin

    GlideExcelParser – getErrorMessage()

    Gibt die Fehlermeldung zurück, wenn Analysieren() Methode schlägt fehl.

    Tabelle : 6. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 7. Rückgaben
    Typ Beschreibung
    Zeichenfolge Die Fehlermeldung.

    GlideExcelParser – getRow()

    Ruft die aktuellen Zeilenwerte und Header ab.

    Tabelle : 8. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 9. Rückgaben
    Typ Beschreibung
    Objekt Die Zeilenheader sind Eigenschaftsnamen, und die Zeilenwerte sind Eigenschaftswerte.

    Das folgende Beispiel zeigt, wie ein Excel-Dateianhang mehrmals analysiert wird, um Spaltenüberschriften und Druckwerte jeder Zeile für jedes Arbeitsblatt abzurufen. Ergebnisse zeigen Spaltenüberschriften und Werte von drei separaten Blättern im Excel-Anhang an.

    var parser = new sn_impex.GlideExcelParser();
    
    var attachment = new GlideSysAttachment();
    
    // Use the attachment sys_id of an Excel file
    var attachmentStream = attachment.getContentStream("<attachment_sys_id>");
    
    // Set the source to be parsed
    parser.setSource(attachmentStream);
    
    // Get the worksheet names to be parsed in the Excel document
    var list_sheet_name = parser.getSheetNames();
    
    gs.info(" Sheet Names " + list_sheet_name.join(", "));
    
    // Iterate over each worksheet in the Excel workbook
    for (var i = 0; i < list_sheet_name.length; i++) {
        gs.info("**************************************************************************************");
        gs.info("Sheet name:    " + list_sheet_name[i]);
    
    // Set the worksheet name to be parsed
        parser.setSheetName(list_sheet_name[i]);
    
    // Parse each worksheet set using setSheetName()
        if (parser.parse()) {
            //retrieve the column headers
            var headers = parser.getColumnHeaders();
            var header1 = headers[0];
            var header2 = headers[1];
            var header3 = headers[2];
    
            //print headers
            gs.info(header1 + "\t||" + header2 + "\t||" + header3);
    
            // Iterate over each row in the worksheet
            while (parser.next()) {
                var row = parser.getRow();
                //print row value for both columns   
                gs.info(row[header1] + '\t|| ' + row[header2] + '\t||' + row[header3])
            }
        } else
            gs.info(parser.getErrorMessage());
    }

    Ausgabe:

    *** Script:  Sheet Names Incident Table, sys_user Table, knowledge Table
    *** Script: **************************************************************************************
    *** Script: Sheet name:    Incident Table
    *** Script: Number	||Opened	||Short description
    *** Script: INC0010112	|| 2019-07-29 11:48:43	||Assessment :  ATF Assessor
    *** Script: INC0010111	|| 2019-07-22 14:04:57	||ATF : Test1
    *** Script: INC0009009	|| 2018-08-30 01:06:16	||Unable to access the shared folder.
    *** Script: **************************************************************************************
    *** Script: Sheet name:    sys_user Table
    *** Script: User ID	||Name	||Email
    *** Script: abel.tuter	|| Abel Tuter	||abel.tuter@example.com
    *** Script: abraham.lincoln	|| Abraham Lincoln	||abraham.lincoln@example.com
    *** Script: adela.cervantsz	|| Adela Cervantsz	||adela.cervantsz@example.com
    *** Script: aileen.mottern	|| Aileen Mottern	||aileen.mottern@example.com
    *** Script: alejandra.prenatt	|| Alejandra Prenatt	||alejandra.prenatt@example.com
    *** Script: **************************************************************************************
    *** Script: Sheet name:    knowledge Table
    *** Script: Number	||Short description	||Author
    *** Script: KB99999999	|| Microsoft Outlook Issues	||System Administrator
    *** Script: KB0000033	|| Eclipse configuration for Android development	||System Administrator
    *** Script: KB0000032	|| Getting Around in Windows	||System Administrator
    *** Script: KB0000031	|| How can I find the MAC address of my Ethernet or
       wireless interface?	||Sam Sorokin

    GlideExcelParser – getSheetNames()

    Ruft eine Liste aller Arbeitsblattnamen in einer Excel-Arbeitsmappe ab.

    Tabelle : 10. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 11. Rückgaben
    Typ Beschreibung
    Array Array von Zeichenfolgen als Arbeitsblattnamen, angeordnet von links nach rechts in der Arbeitsmappe. Die Ergebnisse enthalten alle Arbeitsblätter, die als ausgeblendet markiert sind.

    Das folgende Beispiel zeigt, wie ein Excel-Dateianhang mehrmals analysiert wird, um Spaltenüberschriften und Druckwerte jeder Zeile für jedes Arbeitsblatt abzurufen. Ergebnisse zeigen Spaltenüberschriften und Werte von drei separaten Blättern im Excel-Anhang an.

    var parser = new sn_impex.GlideExcelParser();
    
    var attachment = new GlideSysAttachment();
    
    // Use the attachment sys_id of an Excel file
    var attachmentStream = attachment.getContentStream("<attachment_sys_id>");
    
    // Set the source to be parsed
    parser.setSource(attachmentStream);
    
    // Get the worksheet names to be parsed in the Excel document
    var list_sheet_name = parser.getSheetNames();
    
    gs.info(" Sheet Names " + list_sheet_name.join(", "));
    
    // Iterate over each worksheet in the Excel workbook
    for (var i = 0; i < list_sheet_name.length; i++) {
        gs.info("**************************************************************************************");
        gs.info("Sheet name:    " + list_sheet_name[i]);
    
    // Set the worksheet name to be parsed
        parser.setSheetName(list_sheet_name[i]);
    
    // Parse each worksheet set using setSheetName()
        if (parser.parse()) {
            //retrieve the column headers
            var headers = parser.getColumnHeaders();
            var header1 = headers[0];
            var header2 = headers[1];
            var header3 = headers[2];
    
            //print headers
            gs.info(header1 + "\t||" + header2 + "\t||" + header3);
    
            // Iterate over each row in the worksheet
            while (parser.next()) {
                var row = parser.getRow();
                //print row value for both columns   
                gs.info(row[header1] + '\t|| ' + row[header2] + '\t||' + row[header3])
            }
        } else
            gs.info(parser.getErrorMessage());
    }

    Ausgabe:

    *** Script:  Sheet Names Incident Table, sys_user Table, knowledge Table
    *** Script: **************************************************************************************
    *** Script: Sheet name:    Incident Table
    *** Script: Number	||Opened	||Short description
    *** Script: INC0010112	|| 2019-07-29 11:48:43	||Assessment :  ATF Assessor
    *** Script: INC0010111	|| 2019-07-22 14:04:57	||ATF : Test1
    *** Script: INC0009009	|| 2018-08-30 01:06:16	||Unable to access the shared folder.
    *** Script: **************************************************************************************
    *** Script: Sheet name:    sys_user Table
    *** Script: User ID	||Name	||Email
    *** Script: abel.tuter	|| Abel Tuter	||abel.tuter@example.com
    *** Script: abraham.lincoln	|| Abraham Lincoln	||abraham.lincoln@example.com
    *** Script: adela.cervantsz	|| Adela Cervantsz	||adela.cervantsz@example.com
    *** Script: aileen.mottern	|| Aileen Mottern	||aileen.mottern@example.com
    *** Script: alejandra.prenatt	|| Alejandra Prenatt	||alejandra.prenatt@example.com
    *** Script: **************************************************************************************
    *** Script: Sheet name:    knowledge Table
    *** Script: Number	||Short description	||Author
    *** Script: KB99999999	|| Microsoft Outlook Issues	||System Administrator
    *** Script: KB0000033	|| Eclipse configuration for Android development	||System Administrator
    *** Script: KB0000032	|| Getting Around in Windows	||System Administrator
    *** Script: KB0000031	|| How can I find the MAC address of my Ethernet or
       wireless interface?	||Sam Sorokin

    GlideExcelParser – getTableInfo()

    Ruft Tabellenspaltentypen und die maximale Zeichenlänge aus einer Tabelle oder einem CSV-Anhang ab.

    Hinweis:
    Diese Methode ist auf bereichsbezogene Anwendungen beschränkt.
    Tabelle : 12. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 13. Rückgaben
    Typ Beschreibung
    Objekt Gibt Anhangsdaten als Zuordnung zurück, in der der Schlüssel der Spaltenname ist. Werte enthalten den Spaltentyp und die maximale Länge einer Zeichenfolge in der Spalte. Greifen Sie mit auf Rückgabewerte zu GetType() Und GetLength() Methoden.

    Dieses Beispiel zeigt, wie Daten aus einem 7-Spalten-Tabellenkalkulationsanhang einschließlich Zeilendaten wie 1, Meghan, 1/1/85, 1:00, 10,00%, 224-432-8582, ½.

    var attachmentSysId = "<sys_id>";
    var headerRowNumber = 6;
    
    var attachmentStream = new GlideSysAttachment().getContentStream(attachmentSysId);
    var parser = new sn_impex.GlideExcelParser();
    parser.setHeaderRowNumber(headerRowNumber);
    if (!parser.parse(attachmentStream)) {
        throw "Attachment could not be parsed as an Excel Spreadsheet " + attachmentSysId;
    }
    var tableInfo = parser.getTableInfo();
    for (var name in tableInfo) {
    gs.info('Column Name : ' + name + ', Type : ' + tableInfo[name].getType() + ', Max Length : ' + tableInfo[name].getLength());
    }

    Ausgabe:

    ProgressWorker: Attempted to get non-existent sys_progress_
    worker record, inserted 81b0ca5ddb59730090c9ff9dbf9619c4
    sn_appcreator: Column Name : My Number Col, Type : integer,
     Max Length : 1
    sn_appcreator: Column Name : My String Col, Type : string, 
     Max Length : 650
    sn_appcreator: Column Name : My Date Col, Type : glide_date,
     Max Length : 6
    sn_appcreator: Column Name : My DateTime Col, Type : 
     glide_date_time, Max Length : 7
    sn_appcreator: Column Name : My Percent Col, Type : decimal,
     Max Length : 6
    sn_appcreator: Column Name : My Phone Col, Type : string, 
     Max Length : 12
    sn_appcreator: Column Name : My Fraction Col, Type : decimal,
     Max Length : 3

    GlideExcelParser – next()

    Wechselt zur nächsten Zeile.

    Tabelle : 14. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 15. Rückgaben
    Typ Beschreibung
    Boolean Gibt „wahr“ zurück, wenn eine nächste Zeile vorhanden ist. Andernfalls wird „falsch“ zurückgegeben.

    Das folgende Beispiel zeigt, wie ein Excel-Dateianhang mehrmals analysiert wird, um Spaltenüberschriften und Druckwerte jeder Zeile für jedes Arbeitsblatt abzurufen. Ergebnisse zeigen Spaltenüberschriften und Werte von drei separaten Blättern im Excel-Anhang an.

    var parser = new sn_impex.GlideExcelParser();
    
    var attachment = new GlideSysAttachment();
    
    // Use the attachment sys_id of an Excel file
    var attachmentStream = attachment.getContentStream("<attachment_sys_id>");
    
    // Set the source to be parsed
    parser.setSource(attachmentStream);
    
    // Get the worksheet names to be parsed in the Excel document
    var list_sheet_name = parser.getSheetNames();
    
    gs.info(" Sheet Names " + list_sheet_name.join(", "));
    
    // Iterate over each worksheet in the Excel workbook
    for (var i = 0; i < list_sheet_name.length; i++) {
        gs.info("**************************************************************************************");
        gs.info("Sheet name:    " + list_sheet_name[i]);
    
    // Set the worksheet name to be parsed
        parser.setSheetName(list_sheet_name[i]);
    
    // Parse each worksheet set using setSheetName()
        if (parser.parse()) {
            //retrieve the column headers
            var headers = parser.getColumnHeaders();
            var header1 = headers[0];
            var header2 = headers[1];
            var header3 = headers[2];
    
            //print headers
            gs.info(header1 + "\t||" + header2 + "\t||" + header3);
    
            // Iterate over each row in the worksheet
            while (parser.next()) {
                var row = parser.getRow();
                //print row value for both columns   
                gs.info(row[header1] + '\t|| ' + row[header2] + '\t||' + row[header3])
            }
        } else
            gs.info(parser.getErrorMessage());
    }

    Ausgabe:

    *** Script:  Sheet Names Incident Table, sys_user Table, knowledge Table
    *** Script: **************************************************************************************
    *** Script: Sheet name:    Incident Table
    *** Script: Number	||Opened	||Short description
    *** Script: INC0010112	|| 2019-07-29 11:48:43	||Assessment :  ATF Assessor
    *** Script: INC0010111	|| 2019-07-22 14:04:57	||ATF : Test1
    *** Script: INC0009009	|| 2018-08-30 01:06:16	||Unable to access the shared folder.
    *** Script: **************************************************************************************
    *** Script: Sheet name:    sys_user Table
    *** Script: User ID	||Name	||Email
    *** Script: abel.tuter	|| Abel Tuter	||abel.tuter@example.com
    *** Script: abraham.lincoln	|| Abraham Lincoln	||abraham.lincoln@example.com
    *** Script: adela.cervantsz	|| Adela Cervantsz	||adela.cervantsz@example.com
    *** Script: aileen.mottern	|| Aileen Mottern	||aileen.mottern@example.com
    *** Script: alejandra.prenatt	|| Alejandra Prenatt	||alejandra.prenatt@example.com
    *** Script: **************************************************************************************
    *** Script: Sheet name:    knowledge Table
    *** Script: Number	||Short description	||Author
    *** Script: KB99999999	|| Microsoft Outlook Issues	||System Administrator
    *** Script: KB0000033	|| Eclipse configuration for Android development	||System Administrator
    *** Script: KB0000032	|| Getting Around in Windows	||System Administrator
    *** Script: KB0000031	|| How can I find the MAC address of my Ethernet or
       wireless interface?	||Sam Sorokin

    GlideExcelParser – Parse(InputStream inputStream)

    Analysiert ein XLSX-formatiertes Excel-Dokument.

    Tabelle : 16. Parameter
    Name Typ Beschreibung
    Eingabestrom GlideScriptableInputStream Excel Dokument t als Eingabestrom bereitgestellt.
    Hinweis:
    Legen Sie diesen Wert nicht fest, wenn Sie verwenden SetSource() Methode zum mehrfachen Analysieren derselben Quelle.
    Tabelle : 17. Rückgaben
    Typ Beschreibung
    Boolean Kennzeichnung, die angibt, ob die Analyse erfolgreich war.
    Gültige Werte:
    • Wahr: Dokument wurde erfolgreich analysiert.
    • Falsch: Dokument wurde nicht erfolgreich analysiert.

    Beispiel aus einem geskripteten REST-API-Skript, bei dem die Excel-Datei über einen Eingabestrom in der Anforderungsnutzlast gesendet wird.

    var parser = new sn_impex.GlideExcelParser();
    parser.parse(request.body.dataStream); 

    Das folgende Beispiel zeigt, wie ein Excel-Dateianhang mehrmals analysiert wird, um Spaltenüberschriften und Druckwerte jeder Zeile für jedes Arbeitsblatt abzurufen. Ergebnisse zeigen Spaltenüberschriften und Werte von drei separaten Blättern im Excel-Anhang an.

    var parser = new sn_impex.GlideExcelParser();
    
    var attachment = new GlideSysAttachment();
    
    // Use the attachment sys_id of an Excel file
    var attachmentStream = attachment.getContentStream("<attachment_sys_id>");
    
    // Set the source to be parsed
    parser.setSource(attachmentStream);
    
    // Get the worksheet names to be parsed in the Excel document
    var list_sheet_name = parser.getSheetNames();
    
    gs.info(" Sheet Names " + list_sheet_name.join(", "));
    
    // Iterate over each worksheet in the Excel workbook
    for (var i = 0; i < list_sheet_name.length; i++) {
        gs.info("**************************************************************************************");
        gs.info("Sheet name:    " + list_sheet_name[i]);
    
    // Set the worksheet name to be parsed
        parser.setSheetName(list_sheet_name[i]);
    
    // Parse each worksheet set using setSheetName()
        if (parser.parse()) {
            //retrieve the column headers
            var headers = parser.getColumnHeaders();
            var header1 = headers[0];
            var header2 = headers[1];
            var header3 = headers[2];
    
            //print headers
            gs.info(header1 + "\t||" + header2 + "\t||" + header3);
    
            // Iterate over each row in the worksheet
            while (parser.next()) {
                var row = parser.getRow();
                //print row value for both columns   
                gs.info(row[header1] + '\t|| ' + row[header2] + '\t||' + row[header3])
            }
        } else
            gs.info(parser.getErrorMessage());
    }

    Ausgabe:

    *** Script:  Sheet Names Incident Table, sys_user Table, knowledge Table
    *** Script: **************************************************************************************
    *** Script: Sheet name:    Incident Table
    *** Script: Number	||Opened	||Short description
    *** Script: INC0010112	|| 2019-07-29 11:48:43	||Assessment :  ATF Assessor
    *** Script: INC0010111	|| 2019-07-22 14:04:57	||ATF : Test1
    *** Script: INC0009009	|| 2018-08-30 01:06:16	||Unable to access the shared folder.
    *** Script: **************************************************************************************
    *** Script: Sheet name:    sys_user Table
    *** Script: User ID	||Name	||Email
    *** Script: abel.tuter	|| Abel Tuter	||abel.tuter@example.com
    *** Script: abraham.lincoln	|| Abraham Lincoln	||abraham.lincoln@example.com
    *** Script: adela.cervantsz	|| Adela Cervantsz	||adela.cervantsz@example.com
    *** Script: aileen.mottern	|| Aileen Mottern	||aileen.mottern@example.com
    *** Script: alejandra.prenatt	|| Alejandra Prenatt	||alejandra.prenatt@example.com
    *** Script: **************************************************************************************
    *** Script: Sheet name:    knowledge Table
    *** Script: Number	||Short description	||Author
    *** Script: KB99999999	|| Microsoft Outlook Issues	||System Administrator
    *** Script: KB0000033	|| Eclipse configuration for Android development	||System Administrator
    *** Script: KB0000032	|| Getting Around in Windows	||System Administrator
    *** Script: KB0000031	|| How can I find the MAC address of my Ethernet or
       wireless interface?	||Sam Sorokin

    GlideExcelParser – setHeaderRowNumber(number headerRowNumber)

    Legen Sie die Nummer der abzurufenden Headerzeile fest.

    Tabelle : 18. Parameter
    Name Typ Beschreibung
    HeaderRowNumber Nummer Die abzurufende Headerzeile.
    Tabelle : 19. Rückgaben
    Typ Beschreibung
    Ungültig

    GlideExcelParser – setNullToEmpty (boolescher Wert leer)

    Gibt einen leeren Wert anstelle von Null zurück, wenn keine Excel-Zelle vorhanden ist.

    Tabelle : 20. Parameter
    Name Typ Beschreibung
    Leer Boolean Bei „wahr“ geben Zellen, die nicht vorhanden sind, einen leeren Wert zurück. Bei „falsch“ geben Zellen, die nicht vorhanden sind, Null zurück.
    Tabelle : 21. Rückgaben
    Typ Beschreibung
    Ungültig

    GlideExcelParser – setSheetName(Zeichenfolge sheetName)

    Legen Sie den Namen des abzurufenden Blatts fest.

    Wenn beides SetSheetNumber() Und SetSheetName() Sind festgelegt, SetSheetName() Wird verwendet.

    Tabelle : 22. Parameter
    Name Typ Beschreibung
    Blattname Zeichenfolge Der Name des abzurufenden Blatts.
    Tabelle : 23. Rückgaben
    Typ Beschreibung
    Ungültig

    Das folgende Beispiel zeigt, wie ein Excel-Dateianhang mehrmals analysiert wird, um Spaltenüberschriften und Druckwerte jeder Zeile für jedes Arbeitsblatt abzurufen. Ergebnisse zeigen Spaltenüberschriften und Werte von drei separaten Blättern im Excel-Anhang an.

    var parser = new sn_impex.GlideExcelParser();
    
    var attachment = new GlideSysAttachment();
    
    // Use the attachment sys_id of an Excel file
    var attachmentStream = attachment.getContentStream("<attachment_sys_id>");
    
    // Set the source to be parsed
    parser.setSource(attachmentStream);
    
    // Get the worksheet names to be parsed in the Excel document
    var list_sheet_name = parser.getSheetNames();
    
    gs.info(" Sheet Names " + list_sheet_name.join(", "));
    
    // Iterate over each worksheet in the Excel workbook
    for (var i = 0; i < list_sheet_name.length; i++) {
        gs.info("**************************************************************************************");
        gs.info("Sheet name:    " + list_sheet_name[i]);
    
    // Set the worksheet name to be parsed
        parser.setSheetName(list_sheet_name[i]);
    
    // Parse each worksheet set using setSheetName()
        if (parser.parse()) {
            //retrieve the column headers
            var headers = parser.getColumnHeaders();
            var header1 = headers[0];
            var header2 = headers[1];
            var header3 = headers[2];
    
            //print headers
            gs.info(header1 + "\t||" + header2 + "\t||" + header3);
    
            // Iterate over each row in the worksheet
            while (parser.next()) {
                var row = parser.getRow();
                //print row value for both columns   
                gs.info(row[header1] + '\t|| ' + row[header2] + '\t||' + row[header3])
            }
        } else
            gs.info(parser.getErrorMessage());
    }

    Ausgabe:

    *** Script:  Sheet Names Incident Table, sys_user Table, knowledge Table
    *** Script: **************************************************************************************
    *** Script: Sheet name:    Incident Table
    *** Script: Number	||Opened	||Short description
    *** Script: INC0010112	|| 2019-07-29 11:48:43	||Assessment :  ATF Assessor
    *** Script: INC0010111	|| 2019-07-22 14:04:57	||ATF : Test1
    *** Script: INC0009009	|| 2018-08-30 01:06:16	||Unable to access the shared folder.
    *** Script: **************************************************************************************
    *** Script: Sheet name:    sys_user Table
    *** Script: User ID	||Name	||Email
    *** Script: abel.tuter	|| Abel Tuter	||abel.tuter@example.com
    *** Script: abraham.lincoln	|| Abraham Lincoln	||abraham.lincoln@example.com
    *** Script: adela.cervantsz	|| Adela Cervantsz	||adela.cervantsz@example.com
    *** Script: aileen.mottern	|| Aileen Mottern	||aileen.mottern@example.com
    *** Script: alejandra.prenatt	|| Alejandra Prenatt	||alejandra.prenatt@example.com
    *** Script: **************************************************************************************
    *** Script: Sheet name:    knowledge Table
    *** Script: Number	||Short description	||Author
    *** Script: KB99999999	|| Microsoft Outlook Issues	||System Administrator
    *** Script: KB0000033	|| Eclipse configuration for Android development	||System Administrator
    *** Script: KB0000032	|| Getting Around in Windows	||System Administrator
    *** Script: KB0000031	|| How can I find the MAC address of my Ethernet or
       wireless interface?	||Sam Sorokin

    GlideExcelParser – setSheetNumber(Number Sheetnumber)

    Legen Sie die Nummer des abzurufenden Excel-Blatts fest.

    Wenn beides SetSheetNumber() Und SetSheetName() Sind festgelegt, SetSheetNumber() Wird ignoriert.

    Tabelle : 24. Parameter
    Name Typ Beschreibung
    Blattnummer Nummer Die abzurufende Excel-Blattnummer.
    Tabelle : 25. Rückgaben
    Typ Beschreibung
    Ungültig

    Das folgende Beispiel zeigt, wie diese Methode verwendet wird, um die Blattnummer einer angehängten Arbeitsmappe für Arbeitsmappen anzugeben, die gelesen werden soll.

    var parser = new sn_impex.GlideExcelParser(); 
    var attachment = new GlideSysAttachment();
    
    // Use the sys id of an Excel file in the sys_attachment table and copy the sys_id of attachment.
    var attachmentStream = attachment.getContentStream('178e0511138b6300026e32228144b04e');
    
    // Specify the sheet Number to be read, 0 denotes sheet 1, 1 denotes sheet 2, etc.
    parser.setSheetNumber("0");   
    
    parser.parse(attachmentStream);
    
    // retrieve the column headers (tests if on the correct sheet)
    var headers = parser.getColumnHeaders();
    var header1 = headers[0];
    var header2 = headers[1];
    var header3 = headers[2];
    
    // print headers
    gs.info('Header 1 value = ' +header1);
    gs.info('Header 2 value = ' +header2);
    gs.info('Header 3 value = ' +header3);

    Ausgabe:

    Header 1 value = sys_id
    Header 2 value = email
    Header 3 value = undefined

    GlideExcelParser – SetSource (InputStream-InputStream)

    Definiert eine Eingabequelle zum mehrfachen Analysieren oder Analysieren jedes Arbeitsblatts in einer Excel-Datei.

    Tabelle : 26. Parameter
    Name Typ Beschreibung
    Eingabestrom GlideScriptableInputStream Excel-Dokument als Eingabestrom bereitgestellt.
    Tabelle : 27. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Beispiel zeigt, wie ein Excel-Dateianhang mehrmals analysiert wird, um Spaltenüberschriften und Druckwerte jeder Zeile für jedes Arbeitsblatt abzurufen. Ergebnisse zeigen Spaltenüberschriften und Werte von drei separaten Blättern im Excel-Anhang an.

    var parser = new sn_impex.GlideExcelParser();
    
    var attachment = new GlideSysAttachment();
    
    // Use the attachment sys_id of an Excel file
    var attachmentStream = attachment.getContentStream("<attachment_sys_id>");
    
    // Set the source to be parsed
    parser.setSource(attachmentStream);
    
    // Get the worksheet names to be parsed in the Excel document
    var list_sheet_name = parser.getSheetNames();
    
    gs.info(" Sheet Names " + list_sheet_name.join(", "));
    
    // Iterate over each worksheet in the Excel workbook
    for (var i = 0; i < list_sheet_name.length; i++) {
        gs.info("**************************************************************************************");
        gs.info("Sheet name:    " + list_sheet_name[i]);
    
    // Set the worksheet name to be parsed
        parser.setSheetName(list_sheet_name[i]);
    
    // Parse each worksheet set using setSheetName()
        if (parser.parse()) {
            //retrieve the column headers
            var headers = parser.getColumnHeaders();
            var header1 = headers[0];
            var header2 = headers[1];
            var header3 = headers[2];
    
            //print headers
            gs.info(header1 + "\t||" + header2 + "\t||" + header3);
    
            // Iterate over each row in the worksheet
            while (parser.next()) {
                var row = parser.getRow();
                //print row value for both columns   
                gs.info(row[header1] + '\t|| ' + row[header2] + '\t||' + row[header3])
            }
        } else
            gs.info(parser.getErrorMessage());
    }

    Ausgabe:

    *** Script:  Sheet Names Incident Table, sys_user Table, knowledge Table
    *** Script: **************************************************************************************
    *** Script: Sheet name:    Incident Table
    *** Script: Number	||Opened	||Short description
    *** Script: INC0010112	|| 2019-07-29 11:48:43	||Assessment :  ATF Assessor
    *** Script: INC0010111	|| 2019-07-22 14:04:57	||ATF : Test1
    *** Script: INC0009009	|| 2018-08-30 01:06:16	||Unable to access the shared folder.
    *** Script: **************************************************************************************
    *** Script: Sheet name:    sys_user Table
    *** Script: User ID	||Name	||Email
    *** Script: abel.tuter	|| Abel Tuter	||abel.tuter@example.com
    *** Script: abraham.lincoln	|| Abraham Lincoln	||abraham.lincoln@example.com
    *** Script: adela.cervantsz	|| Adela Cervantsz	||adela.cervantsz@example.com
    *** Script: aileen.mottern	|| Aileen Mottern	||aileen.mottern@example.com
    *** Script: alejandra.prenatt	|| Alejandra Prenatt	||alejandra.prenatt@example.com
    *** Script: **************************************************************************************
    *** Script: Sheet name:    knowledge Table
    *** Script: Number	||Short description	||Author
    *** Script: KB99999999	|| Microsoft Outlook Issues	||System Administrator
    *** Script: KB0000033	|| Eclipse configuration for Android development	||System Administrator
    *** Script: KB0000032	|| Getting Around in Windows	||System Administrator
    *** Script: KB0000031	|| How can I find the MAC address of my Ethernet or
       wireless interface?	||Sam Sorokin