Verwenden von Inline-Ladevorgängen zum Laden von Daten
Geben Sie Daten manuell in ein Skript ein, um eine Inline-Tabelle zu definieren, die in eine App geladen werden kann. Sie können im Dateneditor und im Skript mit Inline-Ladevorgängen arbeiten.
Sie können Inline-Tabellen erstellen, indem Sie Daten manuell in das Skript eingeben, anstatt eine Verbindung zu Dateien und Datenbanken herzustellen. Verwenden Sie die erforderliche Syntax, um anzugeben, dass der Skripttext als Inline-Daten interpretiert werden soll. Daten, die mit Inline-Ladevorgängen hinzugefügt werden, sind in der App enthalten, wenn die App exportiert wird. Inline-Tabellen können im Ladeskript gelesen und bearbeitet werden.
Bei einem grundlegenden Inline-Ladevorgang wird eine Tabelle erstellt, dann werden die Datenfelder und Datensätze eingefügt.
Grundlegende Syntax-Beispiele
Das folgende Skript enthält einen einfachen inline-Ladevorgang.
Inline-Ladevorgänge können in einer Reihe von Anwendungsfällen nützlich sein:
Verwalten und Bearbeiten von Daten ohne Verbindung zu externen Quellen.
Ergänzen vorhandener Daten im Datenmodell. Sie können beispielsweise eine zusätzliche Tabelle zu einem Datenmodell hinzufügen, meist aus Datenbankquellen.
Durch das Hinzufügen von Daten können Sie in der Regel das fortlaufende Laden aus externen Quellen vermeiden. Das spart Zeit, wenn Sie wissen, dass sich die Datenquelle in Zukunft ändern kann, die Datenwerte aber unverändert bleiben.
Einfache Handhabung beim Kopieren und Einfügen von Inhalten in das Skript aus anderen Dateien. Dies gilt beispielsweise für .csv-Dateien oder Tabellen aus Textverarbeitungsdokumenten.
Erstellen von Testskripten, die rasch kopiert und eingefügt werden können.
Syntaxübersicht
Benennen der Tabelle
Sie können der Inline-Tabelle genau wie bei anderen geladenen Tabellen einen Namen hinzufügen. Das Definieren des Tabellennamens ist optional.
Fügen Sie nach dem Namen der Tabelle einen Doppelpunkt ein.
LOAD- und inline-Anweisungen
Eine Inline-Tabelle wird mit der inline-Bedingung geladen, wenn Sie die LOAD-Skriptanweisung verwenden. Die inline-Bedingung gibt an, dass der nachfolgende Text in der Tabelle Daten enthält, die manuell in den Editor eingegeben werden. Wenn Sie nichts anderes angeben, verwendet eine Inline-Tabelle das txt-Format, das der Struktur einer Textdatei mit Trennzeichen folgt.
Weitere Informationen über LOAD-Anweisungen finden Sie unter Load.
Einschlüsse und Dateneingabe
Daten, die durch eine inline-Bedingung eingegeben werden, müssen in bestimmte Zeichen eingeschlossen werden. Folgende Zeichenkombinationen werden für das Einschließen von Daten akzeptiert:
Eckige Klammern: [ und ]
Doppelte Anführungszeichen: " und "
Einfache Anführungszeichen: ' und '
Einfache umgekehrte Anführungszeichen: ` und `
Das Zeichen, das Sie zum Einschließen auswählen, unterstützt Sie beim Laden von Inline-Daten, die konfliktierende Zeichen enthalten. Wenn Ihre Daten beispielsweise Datensätze mit eckigen Klammern enthalten, können Sie diese in Anführungszeichen oder umgekehrte einfache Anführungszeichen einschließen.
Außer wenn Sie ein alternatives Tabellenformat angeben (der Standard ist txt), wird der Text zwischen den Einschließungen genau so wie der Inhalt einer Datei interpretiert. Wenn Sie beispielsweise in einer Textdatei eine neue Zeile einfügen würden, sollten Sie dies auch im Text einer inline-Bedingung tun, indem Sie beim Eingeben des Skripts die Eingabetaste drücken.
Beenden des Inline-Ladevorgangs
Das Ende der Inline-load-Anweisung wird durch einen Strichpunkt gekennzeichnet.
Datenumwandlungen
In einem einfachen Inline-Ladevorgang ohne Umwandlungen wird die Anzahl der Spalten durch die erste Zeile definiert. Im folgenden Beispiel enthält die geladene Tabelle drei Spalten: Product_ID, Supplier_Name und Product_Category.
Sie können auch Umwandlungen durchführen und neue Spalten in der gleichen Inline-Tabelle erstellen. Sie können auch vorangehende load-Befehle verwenden, und mehr als eine LOAD-Anweisung kann zum Laden der gleichen Tabelle eingesetzt werden.
Konfigurieren der Formatspezifikation in einem Inline-Ladevorgang
Wie bei anderen geladenen Tabellen können Sie die Formatspezifikation der Inline-Tabelle ändern, indem Sie Formatspezifikationselemente verwenden. Die Formatspezifikation wird in Klammern hinzugefügt. Sie muss nach den Dateneinschlüssen, aber vor dem Strichpunkt am Ende der LOAD-Anweisung hinzugefügt werden. Einige der Anpassungen, die Sie hinzufügen können, sind:
Um Elemente mit mehreren Formatspezifikationen in der gleichen Tabelle zu verwenden, trennen Sie diese mit Kommas. Hier ein Beispiel: (Delimiter is '|', no labels)
Vollständige Details zur Formatspezifikation finden Sie unter Formatoptionen.
Operatoren und andere Bedingungen
Da ein Inline-Ladevorgang eine LOAD-Anweisung ist, können Sie weitere Argumente für die LOAD-Anweisung im Inline-Ladevorgang kombinieren. Verwenden Sie beispielsweise die Bedingung where oder while, um abhängig vom enthaltenen Text zu definieren, ob eine bestimmte Zeile geladen wird oder nicht.
Entsprechend können Sie auch Operatoren außerhalb des Textinhalts selbst verwenden. Mit Operatoren können sie anpassen, wie Sie die Inline-Daten umwandeln, und auch definieren, wann bestimmte Daten geladen werden oder nicht.
Sie können eckige Klammern, Anführungszeichen oder einfache umgekehrte Anführungszeichen verwenden, um einen Inline-Ladevorgang einzuschließen. In diesem Abschnitt wird ein Beispiel gezeigt. Weitere Informationen finden Sie unter Einschlüsse und Dateneingabe.
Dieses Beispiel zeigt, wie Sie einfache umgekehrte Anführungszeichen zum Einschließen der Inline-Daten verwenden. Die Daten im Beispiel enthalten eckige Klammern, weshalb eckige Klammern zum Einschließen der LOAD-Anweisung nicht kompatibel sind.
Übersicht
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript in eine neue Registerkarte ein.
Das Ändern des Trennzeichens ist nützlich, wenn Daten in der Tabelle Kommas enthalten, die andernfalls den Wechsel zur nächsten Spalte in der Tabelle signalisieren würden.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Vier Tabellen müssen geladen werden. Dies sind:
Table1: Das Trennzeichen ist ein vertikaler Strich. Die Daten in der Spalte Phrase enthalten Kommas.
Table2: Das Trennzeichen ist ein Doppelpunkt.
Table3: Das Trennzeichen ist ein umgekehrter Schrägstrich.
Table4: Trennzeichen in der Tabelle werden durch Drücken der Tabulatortaste auf der Tastatur gesetzt. Diese Option ist nützlich, wenn Sie eine Tabelle aus einem Textverarbeitungsprogramm kopieren und in das Skript einfügen.
Table1 zeigt einen praktischen Anwendungsfall für die Verwendung eines alternativen Trennzeichens. Die anderen Tabellen zeigen weitere Trennzeichenoptionen.
Ladeskript
Table1:
LOAD * INLINE [
ID|Phrase
1 | 'The transaction was complete, but the order has not yet shipped.'
2 | 'We need to confirm the following details: sales rep number, order status, and shipping priority.'
] (Delimiter is '|');
Table2:
LOAD * INLINE [
Num1:Chr1
1:A
2:B ] (Delimiter is ':');
Table3:
LOAD * INLINE [
Num2\Chr2
1\A
2\B ] (Delimiter is \\);
Table4:
LOAD * INLINE [
Num3 Chr3
1 A
2 B ] (Delimiter is '\t');
Ergebnisse
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie vier Tabellen und fügen Sie ihnen wie folgt die Dimensionen hinzu:
Table1: ID, Phrase
Table2: Num1, Chr1
Table3: Num2, Chr2
Table4: Num3, Chr3
Ergebnistabelle: Table1
ID
Phrase
1
The transaction was complete, but the order has not yet shipped.
2
We need to confirm the following details: sales rep number, order status, and shipping priority.
Ergebnistabelle: Table2
Num1
Chr1
1
A
2
B
Ergebnistabelle: Table3
Num2
Chr2
1
A
2
B
Ergebnistabelle: Table4
Num3
Chr3
1
A
2
B
Beispiel – Mischen von Inline-Ladevorgängen und Ladevorgängen aus anderen Datenquellen
Übersicht
Im folgenden Skript wird zuerst eine Reihe von Feldern über einen Konnektor geladen, dann eine Inline-Tabelle mit einem gemeinsamen Feld und einem weiteren Feld. Dieses neue Feld stellt eine andere Eigenschaft über das Zeilenelement bereit, das nicht über die Datenverbindung geladen wurde. Beachten Sie, dass dies nur reibungslos abläuft, wenn ein einzelner gemeinsamer Feldname für die beiden Tabellen vorliegt. Wenn es mehr als einen gemeinsamen Feldnamen gibt, wird ein synthetischer Schlüssel erstellt.
In diesem gekürzten Beispiel wird eine Tabelle mit Bestelldetails über eine Datenverbindung geladen. Dann wird eine Inline-Tabelle verwendet, um das zusätzliche Feld Supplemental Info hinzuzufügen. Dieses Feld kann beispielsweise Einzelheiten zu Kommentaren über bestimmte Bestell-IDs enthalten.
Ladeskript
SET DateFormat='MM/DD/YYYY';
Orders:
LIB CONNECT TO 'My_Generic_Connection';
LOAD PRODUCT_DIVISION_A_ORDER_ID as Order ID,
PRODUCT_DIVISION_A_ORDER_DATE as ISSUE_KEY as Order Date,
PRODUCT_DIVISION_A_TYPE as Product Type,
PRODUCT_DIVISION_A_SALES_MANAGER as Manager,
PRODUCT_DIVISION_A_SHIPPED_STATUS as Shipped Status;
SELECT PRODUCT_DIVISION_A_ORDER_ID,
PRODUCT_DIVISION_A_ORDER_DATE,
PRODUCT_DIVISION_A_TYPE,
PRODUCT_DIVISION_A_SALES_MANAGER,
PRODUCT_DIVISION_A_SHIPPED_STATUS
FROM SourceTable
WITH PROPERTIES (
[...]
);
Orders_Inline_Info:
load * inline [
Order ID,Supplemental Info
PSF-001014,'Bulk order, pending deal with Paracel.'
PSF-001625,'NOTE: Product damaged. Investigation required.'
];
Ergebnisse
Nach dem Laden der Daten fügen wir die folgenden Dimensionen zu einer Tabelle hinzu:
Order ID
Order Date
Product Type
Manager
Shipped Status
Supplemental Info
Das Ergebnisdiagramm sieht in etwa wie folgt aus.
Ergebnistabelle: Orders
Order ID
Order Date
Product Type
Manager
Shipped Status
Supplemental Info
PSF-000998
1/13/2024
Electronics
Amanda Honda
Shipped
-
PSF-000999
1/15/2024
Automotive
Molly McKenzie
Not Shipped
-
PSF-001014
1/17/2024
Home Appliances
Amalia Craig
Undefined
Bulk order, pending deal with Paracel.
PSF-001625
1/21/2024
Electronics
Amanda Honda
Undefined
Product damaged. Investigation required.
Beachten Sie, dass alle Felder aus beiden Tabellen zur gleichen Visualisierung hinzugefügt werden können. Die Tabellen sind einander im Datenmodell zugeordnet.
Beispiel – Auslassen von Spaltenkopfzeilen
Bearbeiten Sie die Formatspezifikation, um eine Inline-Tabelle ohne Definieren von Spaltenkopfzeilen zu laden. Das geschieht mit der labels-Spezifikation (die Sie auf einen Wert von no labels festlegen). Weitere Informationen finden Sie unter Konfigurieren der Formatspezifikation in einem Inline-Ladevorgang.
Wenn Sie eine Tabelle laden, ohne Spaltennamen zu definieren, werden automatisch systemdefinierte Spaltennamen verwendet.
Übersicht
Dieses Beispiel zeigt, wie Sie eine Inline-Tabelle ohne Definieren von Spaltennamen laden können.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript in eine neue Registerkarte ein.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Ein einfacher Inline-Ladevorgang dient zum Definieren der Tabelle T1.
Der Spezifikator Quotes wird (mit dem Wert msq) verwendet, um mehrzeiligen Inhalt zu unterstützen.
Die Längenwerte werden in Fuß und Zoll angegeben.
Das doppelte Anführungszeichen (") gibt das Ende eines mehrzeiligen Eintrags an. In diesem Beispiel wird das gleiche Symbol auch zum Angeben der Zollwerte verwendet. Damit sollen die Syntax und das daraus entstehende Verhalten für den Fall gezeigt werden, dass Sie beide in der gleichen LOAD-Anweisung verwenden müssen. Im Wesentlichen wird durch Eingabe des Symbols " für zwei aufeinanderfolgende Zeichen ("") angegeben, dass der Code als einzelne Textinstanz des Symbols interpretiert werden soll.
Ladeskript
T1:
Load *, recno() as ID inline [
Length
"1' 2""
22' 10"""
14' 8" ] (msq);
Ergebnisse
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:
ID
Length
Um mehrzeiligen Inhalt wie gewünscht anzuzeigen, muss im Eigenschaftsfenster die Einstellung Text in Zellen umbrechen aktiviert werden. Zudem muss die App-Formatvorlage (oder die Visualisierungseinstellung) eine ausreichende Zeilenhöhe (in Linien) zulassen.
Ergebnistabelle
ID
Length
1
1' 2"
22' 10"
2
14' 8"
In der obigen Tabelle enthält der Datensatz mit einem ID-Wert von 1 mehrzeiligen Inhalt.
Beispiele – Inline-Ladevorgänge mit Umwandlungen
Diese Beispiele zeigen, wie Sie Berechnungen für Felder durchführen, die inline geladen werden, um neue Felder im Datenmodell zu erstellen.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript in eine neue Registerkarte ein.
Ladeskript
ORDERS:
Load Original as Updated,
* Inline
[
Original
ProductA
ProductB
ProductC
];
Ergebnisse
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:
Original
Updated
Ergebnistabelle
Original
Updated
ProductA
ProductA
ProductB
ProductB
ProductC
ProductC
Übersicht
Dieses Beispiel zeigt, wie Sie ein berechnetes Feld definieren können, um die ID jeder Datenzeile anzugeben, ohne den ID-Wert manuell eingeben zu müssen.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript in eine neue Registerkarte ein.
Ladeskript
ORDERS:
Load RowNo() as ID,
* Inline
[
ProductName
A
B
C
D
E
];
Ergebnisse
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:
ID
ProductName
Ergebnistabelle
ID
ProductName
1
A
2
B
3
C
4
D
5
E
Übersicht
Dieses Beispiel zeigt verschiedene Möglichkeiten, mit denen eine einfache Umwandlung auf Inline-Daten angewendet werden kann. Sie können eine oder mehrere LOAD-Anweisungen verwenden und die Syntax auf verschiedene Weisen konfigurieren, um zu definieren, ob eine Umwandlung das ursprüngliche Feld ersetzt oder ob sowohl das ursprüngliche als auch neue Felder geladen werden.
Achten Sie insbesondere auf folgende Variationen und darauf, wie diese sich auf die Ausgabe auswirken:
Anzahl der LOAD-Anweisungen innerhalb der Tabelle.
Vorliegen oder Fehlen des *-Symbols (lädt alle nachfolgenden Felder).
Vorliegen oder Fehlen von Kommas (,-Symbol).
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Vier Tabellen, die alle die gleichen Daten referenzieren. Die Feldnamen sind verschieden.
DerivedYears1: Verwendet zwei LOAD-Anweisungen, um eine Inline-Spalte und eine Spalte mit einer Umwandlung der Inline-Spalte zu laden.
DerivedYears2: Verwendet zwei LOAD-Anweisungen. Das Skript lädt eine Inline-Spalte und dann ein berechnetes Feld, das aus der ursprünglichen Spalte umgewandelt wurde. Mit der zweiten LOAD-Anweisung wird die ursprüngliche Spalte nicht in die Tabelle geladen, wodurch das neue Feld das ursprüngliche Feld effektiv ersetzt.
DerivedYears3: Verwendet eine einzelne LOAD-Anweisung, um sowohl die ursprüngliche Inline-Spalte als auch eine umgewandelte Spalte zu laden.
DerivedYears4: Verwendet eine einzelne LOAD-Anweisung, um ein Inline-Feld und eine Umwandlung dieses ursprünglichen Felds zu definieren. Nur das umgewandelte Feld wird in die Tabelle geladen.
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie drei Tabellen und fügen Sie ihnen wie folgt die Dimensionen hinzu:
DerivedYears1: initial_date1, derived_year1
DerivedYears2: initial_date2
DerivedYears3: initial_date3, derived_year3
Ergebnistabelle: DerivedYears1
initial_date1
derived_year1
1/1/2022
2022
1/1/2023
2023
1/1/2024
2024
Ergebnistabelle: DerivedYears2
derived_year2
2022
2023
2024
Ergebnistabelle: DerivedYears3
initial_date3
derived_year3
1/1/2022
2022
1/1/2023
2023
1/1/2024
2024
Ergebnistabelle: DerivedYears4
derived_year4
2022
2023
2024
Übersicht
Angenommen, Sie fügen Informationen aus einer großen Textdatei in den Skript-Editor ein, möchten aber die Dateneinträge im Datensatz noch weiter verarbeiten. Sie möchten beispielsweise bestimmte Zeichen und Präfixe entfernen und jedes Wort groß schreiben.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
In der Inline-Tabelle Transformations wird eine Umwandlung definiert, um den Textinhalt eines Felds zu ändern. Der umgewandelte Text wird danach hinzugefügt.
Zwei LOAD-Anweisungen. Mit der Konfiguration im Beispiel wird nur das abgeleitete Feld ProductName_Trimmed in die Tabelle geladen.
Ladeskript
Transformations:
Load
Capitalize(TextBetween(OrigColumn, '{','}')) as ProductName_Trimmed;
Load * inline [
OrigColumn
Product: {soft drinks and other beverages}
Product: {snack food}
Product: {electronics and video games}
];
Ergebnisse
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie dieses Feld als Dimension hinzu: ProductName_Trimmed.
Ergebnistabelle
ProductName_Trimmed
Soft Drinks And Other Beverages
Snack Food
Electronics And Video Games
Beispiel – Operatoren für Umwandlungen und Bedingungen
Sie können Operatoren verwenden, um Umwandlungen und spezifische Bedingungen in der LOAD-Anweisung zu verwenden. Weitere Informationen finden Sie unter Operatoren und andere Bedingungen.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Ein einfacher Inline-Ladevorgang dient zum Definieren der Tabelle Purchases.
Das berechnete Feld OrderSize wird eingefügt. Dieses Feld ist eine Umwandlung des Felds amount aus dem Inline-Datensatz. Es kategorisiert Käufe als groß oder klein, abhängig davon, ob der Betrag 2.000,00 $ überschreitet oder nicht.
Eine where-Klausel verhindert, das Dateneinträge geladen werden, wenn amount weniger als 0,05 $ beträgt.
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:
ID
amount
OrderSize
Ergebnistabelle
ID
amount
OrderSize
1
2660.39
Large Purchase
2
100.01
Small Purchase
3
500.42
Small Purchase
4
5023.99
Large Purchase
6
2002.39
Large Purchase
7
31034.53
Large Purchase
8
1643.58
Small Purchase
9
3993.65
Large Purchase
10
614.34
Small Purchase
11
675.93
Small Purchase
In der obigen Tabelle wurde die Transaktion mit einer ID von 5 nicht in die Tabelle geladen. Das liegt daran, dass der Wert für amount kleiner als 0,05 $ ist.
Beispiel – Erstellen von Nullwerten in einer Inline-Tabelle
Dieses Beispiel zeigt, wie Sie die Variable NullInterpret verwenden können, um Nullwerte in Ihren Inline-Daten zu erstellen.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
Ein einfacher Inline-Ladevorgang dient zum Definieren der Tabelle T2.
Die Variable NullInterpret wird als zwei einzelne Anführungszeichen interpretiert. Wenn das Skript geladen wird, werden Datensätze, die diesen Wert enthalten, als Nullwerte verarbeitet.
Ladeskript
set nullinterpret = '';
T2:
Load * inline [
Test
''
x ];
Ergebnisse
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie dieses Feld als Dimension hinzu: Test.
Ergebnistabelle
Test
x
In der obigen Tabelle ist der erste Datensatz ein Nullwert. Daher wird er nicht in die Visualisierung eingeschlossen. Nullwerte, die in Tabellen mit weiteren Dimensionen vorhanden sind, werden mit dem Symbol - gekennzeichnet.
Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!