Skriv in data manuellt i ett skript för att definiera en inline-tabell, som kan laddas till en app. Du kan arbeta med inline-laddningar i Skriptredigeraren och Skript.
Du skapar inline-tabeller genom att skriva in data manuellt i skriptet snarare än genom att koppla till filer och databaser. Använd den nödvändiga syntaxen för att ange att skripttexten ska tolkas som inline-data. Data som lagts till med inline-laddningar kommer att finnas i appen om appen exporteras. Inline-tabeller är läsbara och redigerbara i laddningsskriptet.
En grundläggande inline-laddning skapar en tabell och infogar datafälten och posterna.
Grundläggande syntaxexempel
Följande skript innehåller en enkel inline-laddning.
Inline-laddningar kan vara användbara i ett antal olika användningsfall:
Administrera och redigera data utan att behöva ansluta till externa källor.
Komplettera befintliga data i datamodellen. Du kan exempelvis lägga till en extra tabell i en datamodell som huvudsakligen kommer från databaskällor.
Lägga till data som du vill undvika att ladda kontinuerligt från externa källor. Detta kan spara tid om du vet att datakällan kan ändras i framtiden, men datavärdena förblir identiska.
Enkel användning för att kopiera och klistra in innehåll i skriptet från andra filer. Exempelvis .csv-filer eller tabeller från ordbehandlingsdokument.
Skapa testskript som inte kan kopieras och klistras in snabbt.
Översikt över syntax
Ge tabellen ett namn
Du kan lägga till ett namn i inline-tabellen på samma sätt som för andra laddade tabeller. Det är valfritt att definiera tabellnamnet.
Efter namnet på tabellen infogar du ett kolon.
LOAD- och inline-satser
En inline-tabell laddas med inline-satsen när du använder LOAD-skriptsatsen. inline-satsen anger att den efterföljande texten i tabellen innehåller data som skrivs in i redigeraren manuellt. Om du inte anger något annat använder en inline-tabell txt-formatet, som följer strukturen för en avgränsad textfil.
Mer information om att använda LOAD-satser finns i Load .
Omslutningar och datainmatning
Data som matas in med en inline-sats måste inledas och avslutas med specifika tecken. Här följer godkända teckenkombinationer för att omsluta data:
Hakparenteser: [ och ]
Dubbla citattecken: " och "
Enkla citattecken: ' och '
Backticks: ` och `
Det tecken som du väljer för omslutning kan vara till hjälp med att ladda inline-data som innehåller tecken som står i konflikt med varandra. Om dina data exempelvis innehåller poster med hakparenteser kan du omsluta dem med citattecken eller backticks i stället.
Såvida du inte anger ett alternativt tabellformat (txt är standard) tolkas text mellan omslutningarna på samma sätt som innehållet i en fil. Precis som du infogar en ny rad i en textfil bör du göra det även i texten i en inline-sats. Klicka på vanligt sätt på returtangenten när du skriver skriptet.
Avsluta inline-laddningen
Slutet på inline-load-satsen anges med ett semikolon.
Dataomvandlingar
I en enkel inline-laddning utan omvandlingar definieras antalet kolumner av den första raden. Det finns tre kolumner i tabellen som laddas med följande exempel: Product_ID, Supplier_Name och Product_Category.
Du kan också utföra omvandlingar och skapa nya kolumner i samma inline-tabell. Du kan använda föregående loads och fler än en LOAD-sats kan användas för att ladda samma tabell.
Konfigurera formatspecifikationen i en inline-laddning
I likhet med andra laddade tabeller kan du modifiera formatspecifikationen i inline-tabellen med element för formatspecifikation. Formatspecifikationen läggs till i parenteser. Den ska läggas till efter dataomslutningarna, men före semikolonet som avslutar LOAD-satsen. Bland de anpassningar du kan lägga till finns:
För att använda flera formatspecifikationer i samma tabell separerar du dem med kommatecken. Exempel: (Delimiter is '|', no labels)
Den fullständiga informationen om formatspecifikationen finns i Formatspecifikatorer.
Operatorer och andra satser
Eftersom en inline-laddning är en LOAD-sats kan du dessutom kombinera andra argument för LOAD-satsen i inline-laddningen. Använd till exempel where- eller while-satsen för att definiera om en viss rad ska laddas eller inte, baserat på texten i den.
På samma sätt kan du också använda operatorer utanför själva textinnehållet. Med operatorer kan du anpassa hur du omvandlar inline-data och också definiera när vissa data ska laddas eller inte.
Du kan använda hakparenteser, citattecken eller backticks för att omsluta en inline-laddning. I det här avsnittet beskrivs detta med ett exempel. Mer information finns i Omslutningar och datainmatning.
I det här exemplet beskrivs hur du kan använda backticks för att omsluta inline-data. Data i exemplet innehåller hakparentestecken, vilket gör hakparentestecken inkompatibla som omslutningar för LOAD-satsen.
Översikt
Öppna Skriptredigeraren och lägg till följande laddningsskript till en ny flik.
Att byta ut avgränsarna är användbart när data i tabellen innehåller komman, vilket annars signalerar bytet till nästa kolumn i tabellen.
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
Fyra tabeller ska laddas. De är följande:
Table1: ett vertikalt streck (pipe) är avgränsare. Data i Phrase-kolumnen innehåller komman.
Table2: ett kolon är avgränsare.
Table3: ett backstreck är avgränsare.
Table4: tabellen avgränsas genom att trycka på tabb-tangenten på tangentbordet. Det här alternativet är användbart när du kopierar en tabell från en ordbehandlare och klistrar in den i skriptet.
I Table1 visas ett praktiskt användningsfall för att använda en alternativ avgränsare. I de andra alternativen visas fler alternativ för avgränsare.
Laddningsskript
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');
Resultat
Ladda data och öppna ett ark. Skapa fyra tabeller och lägg till dimensioner i dem på följande sätt:
Table1: ID, Phrase
Table2: Num1, Chr1
Table3: Num2, Chr2
Table4: Num3, Chr3
Resultattabell: 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.
Resultattabell: Table2
Num1
Chr1
1
A
2
B
Resultattabell: Table3
Num2
Chr2
1
A
2
B
Resultattabell: Table4
Num3
Chr3
1
A
2
B
Exempel - Blanda inline-laddningar och laddningar från andra datakällor
Översikt
Det följande skriptet laddar först ett antal fält från en koppling och laddar sedan en inline-tabell med ett gemensamt fält och ytterligare ett fält. Detta nya fält ger en annan egenskap om det radobjekt som inte laddades via datakopplingen. Observera att detta bara fungerar smidigt när det finns ett enda gemensamt fältnamn mellan de två tabellerna. Om det finns mer än ett gemensamt fältnamn skapas en syntetisk nyckel.
I det här trunkerade exemplet laddar vi en tabell med orderdetaljer från en datakoppling. Sedan använder vi en inline-tabell för att lägga till ytterligare ett fält, Supplemental Info. Det kan t.ex. innehålla information om särskilda kommentarer om specifika order-ID:n.
Laddningsskript
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.'
];
Resultat
När du har laddat data kan du till exempel lägga till följande dimensioner i en tabell:
Order ID
Order Date
Product Type
Manager
Shipped Status
Supplemental Info
Det resulterande diagrammet ska se ut så här.
Resultattabell: 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.
Observera att alla fält från båda tabellerna kan läggas till i samma visualisering. Tabellerna associeras till varandra i datamodellen.
Exempel - Utelämna kolumnrubriker
Redigera formatspecifikationen för att ladda en inline-tabell utan att definiera kolumnrubriker. Detta görs med labels-specifikationen (som ställs in till värdet no labels). Mer information finns i Konfigurera formatspecifikationen i en inline-laddning.
När du laddar en tabell utan att definiera kolumnnamn används systemdefinierade kolumnnamn automatiskt.
Översikt
I det här exemplet beskrivs hur du kan ladda en inline-tabell utan att definiera kolumnnamn.
Öppna Skriptredigeraren och lägg till följande laddningsskript till en ny flik.
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
En enkel inline-laddning som definierar tabellen T1.
Användning av Quotes-specificeraren (med värdet msq) för att stödja innehåll på flera rader.
Längdvärden anges i fot och tum.
Symbolen med dubbla citattecken (") anger slutet på en flerradig post. I det här exemplet används samma symbol även för att beteckna tumvärdena. Detta görs för att visa syntaxen och hur den fungerar om du behöver använda båda i samma LOAD-sats. Om du anger "-symbolen för två tecken i följd ("") innebär det att koden ska tolkas som en enda textinstans av symbolen.
Laddningsskript
T1:
Load *, recno() as ID inline [
Length
"1' 2""
22' 10"""
14' 8" ] (msq);
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
ID
Length
För att visa innehåll med flera rader på avsett sätt måste inställningen Wrap text in cells (radbryt text i celler) vara aktiverad i egenskapspanelen. Dessutom måste appens tema (eller visualiseringsinställningar) tillåta tillräcklig Radhöjd (i rader).
Resultattabell
ID
Length
1
1' 2"
22' 10"
2
14' 8"
I tabellen ovan innehåller posten med ett ID-värde på 1 innehåll på flera rader.
Exempel - Inline-laddningar med omvandlingar
I de här exemplen framgår hur du kan utföra beräkningar på fält som laddats inline för att skapa nya fält i datamodellen.
Öppna Skriptredigeraren och lägg till följande laddningsskript till en ny flik.
Laddningsskript
ORDERS:
Load Original as Updated,
* Inline
[
Original
ProductA
ProductB
ProductC
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
Original
Updated
Resultattabell
Original
Updated
ProductA
ProductA
ProductB
ProductB
ProductC
ProductC
Översikt
I det här exemplet framgår hur du kan definiera ett beräknat fält för att ange ID för varje datarad utan att manuellt skriva in varje ID-värde.
Öppna Skriptredigeraren och lägg till följande laddningsskript till en ny flik.
Laddningsskript
ORDERS:
Load RowNo() as ID,
* Inline
[
ProductName
A
B
C
D
E
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:
ID
ProductName
Resultattabell
ID
ProductName
1
A
2
B
3
C
4
D
5
E
Översikt
I det här exemplet visas flera sätt att tillämpa en enkel omvandling på inline-data. Du kan använda en eller flera LOAD-satser och konfigurera syntaxen på olika sätt för att definiera om en omvandling ersätter det ursprungliga fältet eller om både ursprungliga och nya fält laddas.
Lägg särskilt märke till variationerna i följande och hur de påverkar resultatet:
Antal LOAD-satser i tabellen.
Förekomst eller avsaknad av *-symbol (laddar alla efterföljande fält).
Förekomst eller avsaknad av kommatecken (,- symbol).
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
Fyra tabeller, som alla refererar till samma data. Fältnamnen är olika.
DerivedYears1: använder två LOAD satser för att ladda en inline-kolumn och en kolumn som innehåller en omvandling av inline-kolumnen.
DerivedYears2: använder två LOAD-satser. Skriptet laddar en inline-kolumn och laddar sedan ett beräknat fält som omvandlats från den ursprungliga kolumnen. Med den andra LOAD-satsen laddas inte originalkolumnen in i tabellen, vilket gör att det nya fältet i praktiken ersätter originalfältet.
DerivedYears3: använder en enda LOAD sats för att ladda både den ursprungliga inline-kolumnen och en omvandlad kolumn.
DerivedYears4: använder en enda LOAD-sats för att definiera ett inline-fält och en omvandling av det ursprungliga fältet. Endast det omvandlade fältet laddas i tabellen.
Ladda data och öppna ett ark. Skapa tre tabeller och lägg till dimensioner i dem på följande sätt:
DerivedYears1: initial_date1, derived_year1
DerivedYears2: initial_date2
DerivedYears3: initial_date3, derived_year3
Resultattabell: DerivedYears1
initial_date1
derived_year1
1/1/2022
2022
1/1/2023
2023
1/1/2024
2024
Resultattabell: DerivedYears2
derived_year2
2022
2023
2024
Resultattabell: DerivedYears3
initial_date3
derived_year3
1/1/2022
2022
1/1/2023
2023
1/1/2024
2024
Resultattabell: DerivedYears4
derived_year4
2022
2023
2024
Översikt
Anta att du klistrar in information från en stor textfil i skriptredigeraren, men att du vill utföra ytterligare bearbetning av posterna i datauppsättningen. Du vill till exempel ta bort vissa tecken och prefix och skriva varje ord med stor bokstav.
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
En inline-tabell, Transformations, i vilken en omvandling definieras för att ändra textinnehållet i ett fält. Texten som omvandlas läggs till efter detta.
Två LOAD -satser. Med konfigurationen i exemplet laddas bara det härledda fältet ProductName_Trimmed till tabellen.
Laddningsskript
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}
];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till det här fältet som en dimension: ProductName_Trimmed.
Resultattabell
ProductName_Trimmed
Soft Drinks And Other Beverages
Snack Food
Electronics And Video Games
Exempel: Operatorer för omvandlingar och satser
Du kan använda operatorer för att definiera omvandlingar och specifika klausuler i LOAD-satsen. Mer information finns i Operatorer och andra satser.
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
En enkel inline-laddning som definierar tabellen Purchases.
Infoga ett beräknat fält, OrderSize. Det här fältet är en omvandling av amount-fältet från inline-datauppsättningen. Det kategoriserar inköp som små eller stora, beroende på om beloppet överstiger $20000,00 eller inte.
En where-sats som förhindrar poster från att laddas när amount är mindre än $0,05.
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
Laddningsskriptet innehåller:
En enkel inline-laddning som definierar tabellen T2.
NullInterpret-variabeln definieras som två enstaka citatmärken. När skriptet laddas innehåller posterna det här värdet som null-värden.
Laddningsskript
set nullinterpret = '';
T2:
Load * inline [
Test
''
x ];
Resultat
Ladda data och öppna ett ark. Skapa en ny tabell och lägg till det här fältet som en dimension: Test.
Resultattabell
Test
x
I tabellen ovan är den första posten ett null-värd. Därför ingår det inte i visualiseringen. Null-värden som finns i tabeller med ytterligare dimensioner anges med en --symbol.
Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!