Importprofiel met niveaus Importprofiel met niveaus

Importprofiel met niveaus

Marel Maathuis Marel Maathuis

Binnen het importprofiel heb je regelmatig niveaus nodig. Denk aan bijvoorbeeld verschillende informatie soorten in dezelfde kolom. Stel je hebt een bestand waarin de plaatsing en de gewerkte data in dezelfde kolom staan. Om hierin onderscheid te maken, heb je niveaus nodig om zo te kunnen inrichten dat het importprofiel eerst de plaatsing bijvoorbeeld uitleest en vervolgens op het volgende niveau de data. Onthoud hierbij dat de importmodule maar eenmaal een regel kan uitlezen.


We gaan een importprofiel maken op basis van een excelbestand waarin de informatie als volgt vermeldt staat:



Om te starten volg je eerst de 4 regels waar de gegevens staan. Hier zie je dat in kolom A zowel de plaatsing als de datum staat. Hoe moet je dit uitlezen? Daarnaast is er sprake van een begin- en eindtijd en ook een totaal. In dit artikel gaan we tijdspecifiek inlezen. Dit is bijvoorbeeld ook veelvuldig vereist voor de CAO ontrafeling, waarbij vaak gewerkt wordt met tijdsintervallen.


Om zowel de plaatsing als de datum uit te lezen uit kolom A, starten we met het inrichten van het eerste component (na Globaal) welke uitsluitend de plaatsing gaat uitlezen. Om dit succesvol te doen en uitsluitend alleen deze regel uit te laten lezen, gebruiken we een patroon (met reguliere expressie) op een cel die uniek is in deze regel. Hier kiezen we voor kolom B, omdat in kolom B juist niets staat naast de naam van de flexkracht. Ook de naam van de flexkracht is geheel uit te lezen met een reguliere expressie, maar een van de standaard opties zoals alleen achternaam zal ook werken.


Het eerste component, let op het niveau moet hier 1 zijn:


De volledige naam van de flexkracht lees je uit door te kiezen voor de reguliere expressie lName,\sfName te gebruiken. Voordeel van deze reguliere expressie is dat de gehele informatie wordt uitgelezen en sneller automatisch wordt gematched.


Door het patroon op kolom B, kun je met de reguliere expressie /^$/ te gebruiken, aangeven dat de cel leeg moet zijn. Alleen dan, zal het importprofiel kolom A uitlezen. 


Het tweede component, let op het niveau moet hier 2 zijn:


De datum in het bestand heeft een bijzonder formaat. Door gebruik te maken van het vrije formaat kun je inrichten dat het importprofiel ziet dat de datum puntsgewijs gescheiden is. Daarnaast is het ook voor het tweede component belangrijk in te richten wanneer de cellen moeten worden uitgelezen, opnieuw een unieke cel te kiezen die altijd is ingevuld. In dit voorbeeld kiezen we voor kolom F. Deze wordt niet standaard uitgelezen, maar is wel altijd gevuld. Hiervoor gebruiken we de reguliere expressie /^.+$/ wat betekent dat er altijd iets in deze cel moet staan om de rest van de regel uit te lezen.


Het resultaat in een urenbriefje:



Meer basis informatie over reguliere expressies kun je hier vinden, een uitgebreide uitleg over de werking en opbouw van reguliere expressies is te vinden op het internet.


Meer informatie over importprofielen kun je vinden in onze kennisbank, hier staan verschillende voorbeeldprofielen.