Qlik-scriptprocessor
Maakt of transformeert invoer met behulp van Qlik-script.
Met de Qlik-scriptprocessor kunt u Qlik-script rechtstreeks in een teksteditor invoeren om gegevens voor te bereiden, of gegevens laden wanneer deze als invoer worden gebruikt. Dit is gericht op meer gevorderde gebruikers en u kunt profiteren van de hele Qlik-syntaxis als u bepaalde bewerkingen liever handmatig codeert wanneer u tabellen manipuleert.
Gebruik
-
Om de Script-processor in een gegevensstroom te kunnen gebruiken, moet de code die u in de editor toevoegt consistent zijn met het schema van de inkomende gegevens en de voorbereidende acties die tot op dit punt zijn uitgevoerd. Het script moet ook bepaalde regels volgen:
-
Het script moet een resident-instructie bevatten om de tabel te gebruiken die ontstaat door de invoerstroom.
resident tablename
Raadpleeg Laden voor meer informatie.
-
U moet een NoConcatenate-instructie opnemen.
NoConcatenate LOAD A,B
Ga voor meer informatie naar NoConcatenate.
-
Nadat u het script hebt toegevoegd voor de specifieke bewerking die u wilt uitvoeren, moet u aan het einde een drop table-instructie toevoegen om de binnenkomende tabel te verwijderen en alleen de gegenereerde uitvoer te behouden.
drop table tablename
Ga voor meer informatie naar Tabel verwijderen.
- Wanneer u de processor als invoerknooppunt gebruikt, kunt u maximaal twee uitvoerstromen hebben om twee verschillende tabellen te laden.
- Wanneer u de processor als tussenliggend knooppunt gebruikt, kunt u meerdere invoerstromen en maximaal twee uitvoerstromen hebben.
Eigenschappen
Eigenschap | Configuratie |
---|---|
Script |
Voer uw Qlik-script in de teksteditor in met de volgende tijdelijke aanduiding met de vereiste instructies.
De namen van uw invoertabellen staan boven de scripteditor. Ze komen overeen met de invoer die is verbonden met de processor. |
Om de naam van de processor te wijzigen of de beschrijving ervan te bewerken, klikt u op het pictogram Bewerken naast de processornaam in het venster Eigenschappen.
Voorbeelden
-
Meerdere tabellen met hetzelfde schema laden in één invoer voor uw stroom. Dit voorbeeld gebruikt twee .txt-bestanden uit uw catalogus, met de vier dezelfde velden, maar met een verschillende inhoud:
[MyTable_1]: NOCONCATENATE LOAD [id], [firstname], [lastname], [nationality] FROM [lib://DataFiles/MyTable_1.txt] (txt, codepage is 28591, embedded labels, delimiter is ',', msq) //[MyTable_2]: CONCATENATE([MyTable_1]) LOAD [id], [firstname], [lastname], [nationality] FROM [lib://DataFiles/MyTable_2.txt] (txt, codepage is 28591, embedded labels, delimiter is ',', msq) [Union1]: NOCONCATENATE LOAD DISTINCT [id], [firstname], [lastname], [nationality] RESIDENT [MyTable_1];
Ga voor meer informatie naar Aaneenschakelen.
-
Maak een inline-tabel met bewerkbare gegevens als invoer voor uw gegevensstroom:
MyTable: Load * Inline [ Country, Year, Sales Argentina, 2014, 66295.03 Argentina, 2015, 140037.89 Austria, 2014, 54166.09 Austria, 205,182739.87 ];
Voor meer informatie over inline-ladingen, raadpleegt u Inline-ladingen gebruiken om gegevens te laden.
-
Voeg een nieuw veld toe aan uw gegevens:
MyTable: NoConcatenate Load *, 1 as newfield Resident [name of input table]; Drop Table [name of input table];
Voor meer voorbeelden van scriptuitdrukkingen, raadpleegt u Reguliere scriptopdrachten en Script- en diagramfuncties.