Typ gegevens handmatig in een script om een inline-tabel te definiëren, die in een app geladen kan worden. U kunt werken met inline-ladingen in de Editor voor laden van gegevens.
U maakt inline-tabellen door gegevens handmatig te typen in het script, in plaats van verbinding te maken met bestanden en databases. Gebruik de vereiste syntaxis om aan te geven dat de scripttekst als inline-gegevens geïnterpreteerd moet worden. Gegevens die zijn toegevoegd met inline-ladingen worden opgenomen in de app als de app wordt geëxporteerd. Inline-tabellen zijn leesbaar en bewerkbaar binnen het load-script.
Met een standaard inline-lading wordt een tabel aangemaakt en worden de gegevensvelden en records ingevoegd.
Voorbeeld van basissyntaxis
Het volgende script bevat een eenvoudige inline load.
Inline-ladingen kunnen bij een aantal usecases handig zijn:
Gegevens beheren en bewerken zonder verbinding te hoeven maken met externe bronnen.
Bestaande gegevens in het gegevensmodel aanvullen. U kunt bijvoorbeeld een extra tabel toevoegen aan een gegevensmodel dat voornamelijk is gebaseerd op databasebronnen.
Gegevens toevoegen waarbij u niet wilt dat ze voortdurend vanuit externe bronnen laden. Dit kan tijd besparen als u weet dat de gegevensbron mogelijk in de toekomst wordt gewijzigd, maar de gegevenswaarden hetzelfde blijven.
Gebruiksgemak bij het kopiëren en plakken van inhoud in het script vanuit andere bestanden. Bijvoorbeeld .csv-bestanden of -tabellen van tekstverwerkerdocumenten.
Testscripts maken die snel gekopieerd en geplakt kunnen worden.
Overzicht syntaxis
De tabel een naam geven
U geeft de inline-tabel op dezelfde manier een naam als andere geladen tabellen. De tabelnaam definiëren is optioneel.
Voeg na de naam van de tabel een dubbele punt toe.
De LOAD- en inline-instructies
Een inline-tabel wordt geladen met de inline-clausule als u de LOAD scriptinstructie gebruikt. De inline-clausule geeft aan dat de navolgende tekst in de tabel gegevens bevat die handmatig in de editor is getypt. Tenzij u iets anders aangeeft, gebruikt de inline-tabel de txt-indeling, die de structuur van een tekstbestand met scheidingstekens volgt.
Voor meer informatie over de LOAD-instructie, raadpleegt u Laden.
Insluitingen en gegevensinvoer
Gegevens die u invoert met een inline-clausule moeten tussen specifieke tekens worden geplaatst. De volgende tekencombinaties zijn mogelijk voor het insluiten van de gegevens:
Vierkante haakjes: [ en ]
Dubbele aanhalingstekens: " en "
Enkele aanhalingstekens: ' en '
Backticks: ` en `
Het teken dat u kiest voor het insluiten kan u helpen om inline-gegevens te laden die conflicterende tekens bevatten. Als uw gegevens bijvoorbeeld records bevatten met vierkante haakjes, kunt u deze insluiten met aanhalingstekens of backtiks.
Tenzij u een alternatieve tabelindeling opgeeft (standaard is txt), wordt tekst tussen de insluiting hetzelfde geïnterpreteerd als de inhoud van een bestand. Waar u bijvoorbeeld een nieuwe regel in een tekstbestand zou invoegen, moet u dat ook doen in de tekst van een inline-clausule. U drukt dus op Enter bij het typen van het script.
De inline-lading eindigen
Het einde van de inline-LOAD-instructie wordt aangegeven met een puntkomma.
Gegevenstransformaties
In een simpele inline-lading zonder transformaties wordt het aantal kolommen bepaald door de eerste regel. In het volgende voorbeeld worden drie kolommen in de tabel geladen: Product_ID, Supplier_Name en Product_Category.
U kunt ook transformaties uitvoeren en nieuwe kolommen maken binnen dezelfde inline-tabel. U kunt ook eerdere ladingen gebruiken en u kunt meer dan één LOAD-instructie gebruiken om dezelfde tabel te laden.
De indelingsspecificatie in een inline-lading configureren
Net als bij andere geladen tabellen, kunt u de indelingsspecificatie van de inline-tabel aanpassen met behulp van indelingsspecificatie-items. De indelingsspecificatie wordt tussen haakjes toegevoegd. Dit moet na het insluiten van de gegevens worden toegevoegd, maar voorafgaand aan de puntkomma waarmee de LOAD-instructie wordt afgesloten. Enkele aanpassingen die u kunt opnemen:
Om meerdere indelingsspecificatie-items in dezelfde tabel te gebruiken, moet u ze scheiden met komma's. Bijvoorbeeld: (Delimiter is '|', no labels)
Voor meer informatie over de indelingsspecificatie gaat u naar Opmaakspecificaties.
Operatoren en andere clausules
Aangezien een inline-lading een LOAD-instructie is, kunt u andere argumenten voor de LOAD-instructie combineren in de inline-lading. Gebruik bijvoorbeeld de where- of while-clausule om te definiëren of een specifieke rij moet worden geladen op basis van de tekst die de regel bevat.
U kunt ook operatoren buiten de tekstinhoud gebruiken. Met operatoren kunt u instellen hoe u de inline-gegevens wilt transformeren en ook definiëren wanneer bepaalde gegevens geladen moeten worden.
Voorbeeld - alternatieve insluitmethoden voor gegevens
U kunt vierkante haakjes, aanhalingstekens of backticks gebruiken om een inline-lading in te sluiten. In deze sectie wordt dit door middel van een voorbeeld getoond. Ga voor meer informatie naar Insluitingen en gegevensinvoer.
In dit voorbeeld wordt getoond hoe u backticks kunt gebruiken om de inline-gegevens in te sluiten. De gegevens in het voorbeeld bevatten vierkante haakjes, waardoor de vierkante haakjes niet te gebruiken zijn als insluiting voor de LOAD-instructie.
Overzicht
Open de Editor voor laden van gegevens en voeg het volgende load-script toe aan een nieuw tabblad.
Het wijzigen van het scheidingsteken is handig als de gegevens in de tabel komma's bevatten, wat anders een teken zou zijn om over te schakelen naar de volgende kolom in de tabel.
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Er moeten vier tabellen worden geladen. Het gaat om de volgende tabellen:
Table1: scheidingsteken is een verticaal streepje (sluisteken). De gegevens in de kolom Phrase bevatten komma's.
Table2: het scheidingsteken is een dubbele punt.
Table3: het scheidingsteken is een backslash.
Table4: de tabel wordt gescheiden door op de Tab-toets op het toetsenbord te drukken. Deze optie is handig als u een tabel kopieert van een tekstverwerker en in het script plakt.
Table1 toont een praktische usecase voor het gebruik van een alternatief scheidingsteken. De andere tabellen tonen meer scheidingsopties.
Load-script
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');
Resultaten
Laad de gegevens en open een werkblad. Maak vier tabellen en voeg de dimensies als volgt toe:
Table1: ID, Phrase
Table2: Num1, Chr1
Table3: Num2, Chr2
Table4: Num3, Chr3
Resultatentabel: 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.
Resultatentabel: Table2
Num1
Chr1
1
A
2
B
Resultatentabel: Table3
Num2
Chr2
1
A
2
B
Resultatentabel: Table4
Num3
Chr3
1
A
2
B
Voorbeeld - het combineren van inline-ladingen en ladingen van andere gegevensbronnen
Overzicht
Het volgende script laadt eerst een reeks velden van een connector en laadt vervolgens een inline-tabel met een algemeen veld en een extra veld. Het nieuwe veld biedt een andere eigenschap over het rij-item dat niet via de gegevensverbinding is geladen. Dit werkt alleen goed als de twee afzonderlijke tabellen een overeenkomende afzonderlijke veldnaam hebben. Als er meer dan één overeenkomende veldnaam is, wordt een synthetische sleutel geproduceerd.
In dit afgekapte voorbeeld laden we een tabel met ordergegevens vanuit een gegevensverbinding Vervolgens gebruiken we een inline-tabel om een extra veld Supplemental Info toe te voegen. Dit kan bijvoorbeeld gegevens bevatten over speciale opmerkingen over specifieke order-id's.
Load-script
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.'
];
Resultaten
Na het laden van de gegevens, voegen we de volgende dimensies toe aan een tabel:
Order ID
Order Date
Product Type
Manager
Shipped Status
Supplemental Info
Het resulterende diagram ziet er mogelijk als volgt uit.
Resultatentabel: 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.
Merk op hoe alle velden van beide tabellen aan dezelfde visualisatie kunnen worden toegevoegd. De tabellen worden in het gegevensmodel aan elkaar gekoppeld.
Voorbeeld - kolomkoppen weglaten
Bewerk de indelingsspecificatie om een inline-tabel te laden zonder kolomkoppen te definiëren. Dit doet u met de labels-specificatie (door dit in te stellen op de waarde no labels). Ga voor meer informatie naar De indelingsspecificatie in een inline-lading configureren.
Als u een tabel laadt zonder kolomnamen te definiëren, worden automatisch door het systeem gedefinieerde namen gebruikt.
Overzicht
In dit voorbeeld wordt getoond hoe u een inline-tabel kunt laden zonder kolomnamen te definiëren.
Open de Editor voor laden van gegevens en voeg het volgende load-script toe aan een nieuw tabblad.
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Een simpele inline-lading om de tabel T1 te definiëren.
Gebruik van de Quotes-specificatie (met de waarde msq) ter ondersteuning van inhoud op meerdere regels.
Lengtewaarden worden opgegeven in voet en inch.
Dubbele aanhalingstekens (") geven het einde van meerregelige invoer aan. In dit voorbeeld wordt hetzelfde symbool ook gebruikt om de inch-waarde aan te geven. Dit wordt gedaan om de syntaxis en het resulterende gedrag te tonen als u beide in dezelfde LOAD-instructie moet gebruiken. In feite geeft het invoeren van het " symbool voor twee opvolgende tekens ("") aan dat de code als afzonderlijke tekstvermelding van het symbool moet worden geïnterpreteerd.
Load-script
T1:
Load *, recno() as ID inline [
Length
"1' 2""
22' 10"""
14' 8" ] (msq);
Resultaten
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:
ID
Length
Om meerregelige inhoud zoals bedoeld te bekijken, moet de instelling Tekstterugloop in cellen zijn ingeschakeld in het eigenschappenvenster. Daarnaast moet het app-thema (of visualisatie-instellingen) de juiste Rijhoogte (in regels) toestaan.
Resultatentabel
ID
Length
1
1' 2"
22' 10"
2
14' 8"
In de bovenstaande tabel bevat een record met een ID-waarde van 1 meerregelige inhoud.
Voorbeeld - inline-ladingen met transformaties
In deze voorbeelden wordt getoond hoe u berekeningen kunt uitvoeren op velden die inline zijn geladen om nieuwe velden in het gegevensmodel te maken.
Open de Editor voor laden van gegevens en voeg het volgende load-script toe aan een nieuw tabblad.
Load-script
ORDERS:
Load Original as Updated,
* Inline
[
Original
ProductA
ProductB
ProductC
];
Resultaten
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:
Original
Updated
Resultatentabel
Original
Updated
ProductA
ProductA
ProductB
ProductB
ProductC
ProductC
Overzicht
In dit voorbeeld wordt getoond hoe u een berekend veld kunt definiëren om de id van elke gegevensrij aan te geven, zonder elke id-waarde handmatig te hoeven typen.
Open de Editor voor laden van gegevens en voeg het volgende load-script toe aan een nieuw tabblad.
Load-script
ORDERS:
Load RowNo() as ID,
* Inline
[
ProductName
A
B
C
D
E
];
Resultaten
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:
ID
ProductName
Resultatentabel
ID
ProductName
1
A
2
B
3
C
4
D
5
E
Overzicht
In dit voorbeeld worden verschillende manieren getoond waarop een eenvoudige transformatie op inline-gegevens kan worden toegepast. U kunt één of meerdere LOAD-instructies gebruiken en de syntaxis op verschillende manieren configureren om te definiëren of een transformatie het originele veld vervangt of dat zowel het origineel als nieuwe velden worden geladen.
Let vooral op de variaties in het volgende voorbeeld en hoe die de uitvoer beïnvloeden:
Aantal LOAD-instructies in de tabel.
Aanwezigheid of afwezigheid van het * symbool (laadt alle opvolgende velden).
Aanwezigheid of afwezigheid van komma's (, symbool).
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Vier tabellen, die allemaal naar dezelfde gegevens verwijzen. De veldnamen zijn verschillend.
DerivedYears1: gebruikt LOAD-instructies om een inline-kolom en een kolom met een transformatie van de inline-kolom te laden.
DerivedYears2: gebruikt twee LOAD-instructies. Het script laadt een inline-kolom en laadt vervolgens een berekend veld dat is getransformeerd op basis van de originele kolom. In het geval van de tweede LOAD-instructie wordt de originele kolom niet geladen in de tabel, waardoor het nieuwe veld in feite een vervanging van het originele veld is.
DerivedYears3: gebruikt een afzonderlijke LOAD-instructie om zowel de originele inline-kolom als de getransformeerde kolom te laden.
DerivedYears4: gebruikt een afzonderlijke LOAD-instructie om een inline-veld en een transformatie van dat originele veld te definiëren. Alleen het getransformeerde veld wordt in de tabel geladen.
Laad de gegevens en open een werkblad. Maak drie tabellen en voeg de dimensies als volgt toe:
DerivedYears1: initial_date1, derived_year1
DerivedYears2: initial_date2
DerivedYears3: initial_date3, derived_year3
Resultatentabel: DerivedYears1
initial_date1
derived_year1
1/1/2022
2022
1/1/2023
2023
1/1/2024
2024
Resultatentabel: DerivedYears2
derived_year2
2022
2023
2024
Resultatentabel: DerivedYears3
initial_date3
derived_year3
1/1/2022
2022
1/1/2023
2023
1/1/2024
2024
Resultatentabel: DerivedYears4
derived_year4
2022
2023
2024
Overzicht
Stel dat u gegevens van een groot tekstbestand in de Scripteditor plakt, maar de records in de gegevensverzameling daarna nog wilt verwerken. U wilt bijvoorbeeld bepaalde tekens en prefixen verwijderen en elk woord laten beginnen met een hoofdletter.
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Een inline-tabel, Transformations, waarin een transformatie is gedefinieerd om tekstinhoud van een veld te wijzigen. De tekst die wordt getransformeerd wordt hierna toegevoegd.
Twee LOAD-instructies In het geval van de configuratie in het voorbeeld, wordt alleen het afgeleide veld ProductName_Trimmed in de tabel geladen.
Load-script
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}
];
Resultaten
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg dit veld toe als dimensie: ProductName_Trimmed.
Resultatentabel
ProductName_Trimmed
Soft Drinks And Other Beverages
Snack Food
Electronics And Video Games
Voorbeeld - operatoren voor transformaties en clausules
U kunt operatoren gebruiken om transformaties en specifieke clausules te definiëren in de LOAD-instructie. Ga voor meer informatie naar Operatoren en andere clausules.
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Een simpele inline-lading om de tabel Purchases te definiëren.
Een berekend veld, OrderSize, wordt ingevoegd. Dit veld is een transformatie van het veld amount van de inline-gegevensverzameling Het categoriseert aankopen als klein of groot, afhankelijk van of het bedrag hoger is dan $2000.00.
Een where-clausule die voorkomt dat records worden geladen als amount lager is dan $0.05.
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Een simpele inline-lading om de tabel T2 te definiëren.
De variabele NullInterpret is gedefinieerd als twee enkele aanhalingstekens. Als het script is geladen, worden records die deze waarde bevatten als null-waarden verwerkt.
Load-script
set nullinterpret = '';
T2:
Load * inline [
Test
''
x ];
Resultaten
Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg dit veld toe als dimensie: Test.
Resultatentabel
Test
x
In de bovenstaande tabel is het eerste record een null-waarde. Daarom wordt het niet in de visualisatie opgenomen. Null-waarden die aanwezig zijn in tabellen met aanvullende dimensies worden aangegeven met een - symbool.
Als u problemen ervaart op deze pagina of de inhoud onjuist is – een typfout, een ontbrekende stap of een technische fout – laat het ons weten zodat we dit kunnen verbeteren!