5. Opladen van bestand met eindgebruikers

Auteur

Jan Corthouts

Aanmaak

27 jul 2003 13:27

Aangepast door

Tom De Mey

Aangepast op

2 aug 2016 10:36

Oud BVV nr

2064

5.1. Abstract

Dit document beschrijft de wijze waarop in Brocade een bestand met gegevens over eindgebruikers kan worden opgeladen. Het geeft uitleg over de voorwaarden waaraan het csv-bestand dient te voldoen en geeft een woordje uitleg bij de te volgen oplaadprocedure.

5.2. Bestandsformaat

Het bestand met de gegevens over eindgebruikers dient aan volgende voorwaarden te voldoen:

  • formaat: CSV-formaat

    Voor opladen van gebruikersbestanden gelden volgende afspraken:

    • Excel dialect (zoals geschreven door MS Excel)

    • delimiter (field separator): ;

    • lineterminator: \r\n

    • quotechar: "

    • doublequote: True (Controls how instances of quotechar appearing inside a field should be themselves be quoted. When True, the quotechar character is doubled)

    Note

    The so-called CSV format is the most common import and export format for spreadsheets and databases. There is no CSV standard, so the format is operationally defined by the many applications which read and write it. The lack of a standard means that subtle differences often exist in the data produced and consumed by different applications. These differences can make it annoying to process CSV files from multiple sources. Still, while the delimiters and quoting characters vary, the overall format is similar enough that it is possible to write a single module which can efficiently manipulate such data, hiding the details of reading and writing the data from the programmer.

  • karakterset: ISO-Latin-1

  • Bij het opladen van het bestand zijn twee acties mogelijk: toevoegen of overschrijven. Om te kunnen overschrijven moet het upload-bestand voor elke lezer minstens een unieke identifier bevatten die ook in Brocade is opgenomen. Unieke identifiers worden gegeven in bc1ty/bc1val, bc2ty/bc2val etc .... Er moet dus minstens een van deze koppels bestaan voor elke lezer.

  • Er kunnen maximaal 5 identifiers worden meegegeven.

  • Er kunnen maximaal 3 adressen worden meegegeven

5.3. Veldstructuur

Het CSV bestand moet de volgende veldstructuur hebben:

Kolom

Kolomnaam

Opt/Verpl.

Inhoud

1

key

Optioneel

e-loi van de gebruiker

2

bc1ty

Verplicht

Type van lezersnummer.
Zie Catalografie - Beheersfuncties - Streepjescode types [link] voor een overzicht van geldige barcode types.

3

bc1val

Verplicht

Waarde horend bij bc1ty

4

bc2ty

Optioneel

Type van lezersnummer.
Zie Catalografie - Beheersfuncties - Streepjescode types [link] voor een overzicht van geldige barcode types.

5

bc2val

Optioneel

Waarde horend bij bc2ty

6

bc3ty

Optioneel

Type van lezersnummer.
Zie Catalografie - Beheersfuncties - Streepjescode types [link] voor een overzicht van geldige barcode types.

7

bc3val

Optioneel

Waarde horend bij bc3ty

8

bc4ty

Optioneel

Type van lezersnummer.
Zie Catalografie - Beheersfuncties - Streepjescode types [link] voor een overzicht van geldige barcode types.

9

bc4val

Optioneel

Waarde horend bij bc4ty

10

bc5ty

Optioneel

Type van lezersnummer.
Zie Catalografie - Beheersfuncties - Streepjescode types [link] voor een overzicht van geldige barcode types.

11

bc5val

Optioneel

Waarde horend bij bc5ty

12

fn

Verplicht

Familienaam

13

vn

Optioneel

Voornaam

14

email

Optioneel

E-mail adres

15

wsite

Optioneel

URL persoonlijke homepage

16

id

Optioneel

Userid

17

pw

Optioneel

Wachtwoord

18

class

Verplicht

Geldige Brocade gebruikersklasse.
Zie Eindgebruikers - Beheersfuncties - Gebruikersklassen [link] voor een overzicht van geldige gebruikersklassen.

19

lg

Optioneel

Geldige Brocade taalcode.
Zie Brocade administratie - Talen [link] voor een overzicht van geldige taalcodes.

20

lib

Verplicht

Geldige Brocade basisinstelling.
Zie Eindgebruikers - Beheersfuncties - Basisinstellingen [link] voor een overzicht van basisinstellingen voor de leen.

21

mf

Optioneel

Geslacht (M | F)

22

nee

Optioneel

Datum van geboorte in de vorm DD/MM/YYYY

23

neecity

Optioneel

Plaats van geboorte

24

neecountry

Optioneel

Land van geboorte.
Zie Aanwinsten - Beheersfuncties - Landencodes (ISO 3166) [link] voor een overzicht van geldige landencodes.

25

sc

Verplicht

Geldige Brocade statistische code.
Zie Eindgebruikers - Beheersfuncties - Statistische codes [link] voor een overzicht van geldige statistische codes. Je mag meer dan 1 statistische code toevoegen. In dat geval de codes scheiden door een underscore _.

26

note

Optioneel

Noot voor de lezer

27

next

Optioneel

Geldigheidsdatum van de lenerskaart.
Indien niets wordt ingegeven wordt de geldigheidsdatum van de kaart automatisch berekend op basis van de gebruikersklasse.

28

type

Optioneel

Type gebruiker.
Zie Eindgebruikers - Beheersfuncties - Types eindgebruikers [link] voor een overzicht van geldige eindgebruikers types. Meestal zal dit de waarde human zijn.

29

update

Optioneel

Updatingsmechanisme.
Zie Eindgebruikers - Beheersfuncties - Updatingsmechanismen [link] voor een overzicht van geldige updatingsmechanismen.

30

ad1type

Verplicht

Adrestype voor het eerste adres.
Zie Eindgebruikers - Beheersfuncties - Adrestypes [link] voor een overzicht van geldige adrestypes.

31

ad1street

Optioneel

Straatnaam eerste adres

32

ad1nr

Optioneel

Huisnummer eerste adres

33

ad1bus

Optioneel

Busnummer eerste adres

34

ad1zip

Optioneel

Postcode eerste adres

35

ad1city

Optioneel

Gemeentenaam eerste adres

36

ad1country

Optioneel

Landencode eerste adres.
Zie Aanwinsten - Beheersfuncties - Landencodes (ISO 3166) [link] voor een overzicht van geldige landencodes.

37

ad1phone

Optioneel

Telefoon eerste adres

38

ad2type

Optioneel

Adrestype voor het tweede adres.
Zie Eindgebruikers - Beheersfuncties - Adrestypes [link] voor een overzicht van geldige adrestypes.

39

ad2street

Optioneel

Straatnaam tweede adres

40

ad2nr

Optioneel

Huisnummer tweede adres

41

ad2bus

Optioneel

Busnummer tweede adres

42

ad2zip

Optioneel

Postcode tweede adres

43

ad2city

Optioneel

Gemeentenaam tweede adres

44

ad2country

Optioneel

Landencode tweede adres.
Zie Aanwinsten - Beheersfuncties - Landencodes (ISO 3166) [link] voor een overzicht van geldige landencodes.

45

ad2phone

Optioneel

Telefoon tweede adres

46

ad3type

Optioneel

Adrestype voor het derde adres.
Zie Eindgebruikers - Beheersfuncties - Adrestypes [link] voor een overzicht van geldige adrestypes.

47

ad3street

Optioneel

Straatnaam derde adres

48

ad3nr

Optioneel

Huisnummer derde adres

49

ad3bus

Optioneel

Busnummer derde adres

50

ad3zip

Optioneel

Postcode derde adres

51

ad3city

Optioneel

Gemeentenaam derde adres

52

ad3country

Optioneel

Landencode derde adres.
Zie Aanwinsten - Beheersfuncties - Landencodes (ISO 3166) [link] voor een overzicht van geldige landencodes.

53

ad3phone

Optioneel

Telefoon derde adres

54

mobil

Optioneel

Gsm nummer

55

irvgs1

Optioneel

Identificatie eerste vakgroep

56

irvgs2

Optioneel

Identificatie tweede vakgroep

57

irvgs3

Optioneel

Identificatie derde vakgroep

58

child1

Optioneel

Identificatie van de gebruiker, die beheerd wordt.
Vorm: c-loi of lezersnummer.

59

child2

Optioneel

Identificatie van de gebruiker, die beheerd wordt.
Vorm: c-loi of lezersnummer.

60

...

61

child5

Optioneel

Identificatie van de gebruiker, die beheerd wordt.
Vorm: c-loi of lezersnummer.

62

accredits

Optioneel

kredietcode
Wanneer meer dan 1 kredietcode van toepassing: geef beide codes in gescheiden door _; wanneer aangeboden in de csv, zal de kredietcode steeds overschreven worden.

63

end

Verplicht

Deze kolom bevat het woord end.
Deze kolom wordt als laatste kolom gegeven zodat bij download vanuit Excel in CSV formaat elk record evenveel kolommen bevat. Bij testen is gebleken dat Excel de laatste kolommen niet (altijd) opneemt met ; als scheidingsteken, indien de laatste kolommen leeg zijn.

Note

Een bestand kan dus, afhankelijk van het aantal kinderen een verschillend aantal kolommen hebben. Dit aantal kolommen moet voor het gehele bestand wel gelijk zijn. Voor het lezersnummer worden er altijd 10 kolommen voorzien (5 lezersnummers x 2 op te geven variabelen, zijnde type en waarde). Voor het adres worden er altijd 24 kolommen voorzien (3 adressen x 8 op te geven variabelen, zijnde type, straat, nr, bus, postcode, gemeente, land en telefoon).

5.4. Voorbeeld van csv file

key;bc1ty;bc1val;bc2ty;bc2val;bc3ty;bc3val;bc4ty;bc4val;bc5ty;bc5val;fn;vn;email;wsite;id;pw;class;lg;lib;mf;nee;neecity;neecountry;sc;note;next;type;update;ad1type;ad1street;ad1nr;ad1bus;ad1zip;ad1city;ad1country;ad1phone;ad2type;ad2street;ad2nr;ad2bus;ad2zip;ad2city;ad2country;ad2phone;ad3type;ad3street;ad3nr;ad3bus;ad3zip;ad3city;ad3country;ad3phone;mobil;end
;KDG-L;9961012;ADM;342245;;;;;;;Van Steen;Karen;karenvsteen@yahoo.com;;;;KDG-S;;KDG-DLO;F;4/03/1981;;;KDG-X;;;human;batchkdg;thuis;Hugo Verrieststraat;39;;2530;Boechout;BE;(03)289 94 49;kot;Braziliëstraat;17;;2000;ANTWERPEN;BE;(0486)45 05 92;;;;;;;;;(0486)45 05 92;end
;KDG-L;9961026;;;;;;;;;Maurits;Belinde;belinde@hotmail.com;;;;KDG-S;;KDG-DLO;F;23/03/1980;;;KDG-X;;;human;batchkdg;thuis;Brasschaatsteenweg;134;;2920;Kalmthout;BE;(03)666 32 26;;;;;;;;(0476)69 57 70;;;;;;;;;;end
;KDG-L;9961055;;;;;;;;;Vennekens;Elisabeth;fightgirl_2001@hotmail.com;;;;KDG-S;;KDG-DLO;F;20/12/1981;;;KDG-X;;;human;batchkdg;thuis;Stokerijstraat;112;;2110;Wijnegem;BE;(03)353 01 07;;;;;;;;(0476)95 44 06;;;;;;;;;;end
;KDG-L;9962042;;;;;;;;;Verstraete;Sarah;sarah_verstraete@hotmail.com;;;;KDG-S;;KDG-DLO;F;15/07/1981;;;KDG-X;;;human;batchkdg;thuis;Sparrenlaan;6;;2960;Brecht;BE;(03)636 33 34;;;;;;;;(0478)95 06 49;;;;;;;;;;end
;KDG-L;9962061;ADM;887645;;;;;;;De Rauw;Guy;guy_de_rauw@hotmail.com;;;;KDG-S;;KDG-DLO;M;9/10/1981;;;KDG-X;;;human;batchkdg;thuis;Neerheide;1;;2870;Puurs;BE;(03)889 07 62;;;;;;;;(0479)91 03 55;;;;;;;;;;end
;KDG-L;9962074;;;;;;;;;Schroyens;Stien;;;;;KDG-S;;KDG-DLO;F;16/05/1981;;;KDG-X;;;human;batchkdg;thuis;Engelselei;15;;2950;Kapellen (Antw.);BE;(03)664 88 39;;;;;;;;(0485)91 48 43;;;;;;;;;;end
;KDG-L;9963003;;;;;;;;;Bouzouita;Karim;;;;;KDG-S;;KDG-DLO-NP;M;3/01/1981;;;KDG-X;;;human;batchkdg;thuis;Pauwstraat;10;;2170;Merksem (Antwerpen);BE;(03)293 86 04;;;;;;;;;;;;;;;;;;end
;KDG-L;9963018;;;;;;;;;Vercoutere;Koen;koenimoenie@hotmail.com;;;;KDG-S;;KDG-DLO-NP;M;31/03/1981;;;KDG-X;;;human;batchkdg;thuis;Multatuliplein;2;;2050;Antwerpen 5;BE;(03)219 25 78;kot;Steenbergstraat;38;;2000;Antwerpen;BE;(0486)58 16 64;;;;;;;;;;end
;KDG-L;9963046;;;;;;;;;Billiard;Eva;evabilliard@hotmail.com;;;;KDG-S;;KDG-DLO-NP;F;5/10/1980;;;KDG-X;;;human;batchkdg;thuis;Glasgowstraat;4;;2030;Antwerpen 3;BE;(03)541 25 34;;;;;;;;;;;;;;;;;;end
;KDG-L;9963067;;;;;;;;;Baeten;Nik;;;;;KDG-S;;KDG-DLO-NP;M;25/08/1981;;;KDG-X;;;human;batchkdg;thuis;Groene-Swaenlaan;22;;2940;Stabroek;BE;(03)568 88 53;;;;;;;;;;;;;;;;;;end
;KDG-L;9963068;;;;;;;;;Janssens;Willem;willemjanssens@hotmail.com;;;;KDG-S;;KDG-DLO-NP;M;18/08/1980;;;KDG-X;;;human;batchkdg;thuis;De Parre;11;;2310;Rijkevorsel;BE;(03)311 76 80;kot;Sint-Vincentiusstraat;73;;2000;Antwerpen;BE;(0486)06 68 52;;;;;;;;;;end
;KDG-L;9963163;;;;;;;;;Stals;Veerle;;;;;KDG-S;;KDG-DLO-NP;F;21/05/1980;;;KDG-X;;;human;batchkdg;thuis;Augustijnendreef;29;;2920;Kalmthout;BE;(03)666 80 34;;;;;;;;(0472)69 84 14;;;;;;;;;;end
;KDG-L;9963254;;;;;;;;;Moons;Nick;nick.moons@tijd.com;;;;KDG-S;;KDG-DLO-NP;M;23/03/1980;;;KDG-X;;;human;batchkdg;thuis;Nieuwstraat;72;;2200;Herentals;BE;(014)21 36 76;;;;;;;;(0476)75 57 36;;;;;;;;;;end
;KDG-L;161115;;;;;;;;;Peeters;Katrijn;gvg_kp@hotmail.be;;;;KDG-S;;KDG-DLO;F;13/06/1976;;;KDG-X;;;human;batchkdg;thuis;Turfvaartlaan;10;;2920;Kalmthout;BE;;;;;;;;;(0473)94 27 78;;;;;;;;;;end
;KDG-L;244549;;;;;;;;;Faid;Mohammed;;;;;KDG-S;;KDG-IWT;M;6/10/1972;;;KDG-X;;;human;batchkdg;thuis;Golfstraat;39;;2660;ANTWERPEN;BE;;;;;;;;;(0479/78 15 84;;;;;;;;;;end
;KDG-L;161037;;;;;;;;;Goetschalckx;Jill;;;;;KDG-S;;KDG-DLO;F;29/03/1983;;;KDG-X;;;human;batchkdg;thuis;Potterstraat;65;;9170;Sint-Pauwels;BE;(03)777 27 10;;;;;;;;;;;;;;;;;;end
;KDG-L;263254;;;;;;;;;Anthierens;Hans;anthierens.hans@excite.com;;;;KDG-S;;KDG-DLO-NP;M;21/06/1968;;;KDG-X;;;human;batchkdg;thuis;Koning Leopold III-laan;175;;8200;BRUGGE;BE;(050)38 20 96;;;;;;;;;;;;;;;;;;end
;KDG-L;263253;;;;;;;;;Moors;Anke;;;;;KDG-S;;KDG-DLO-NP;F;11/05/1984;;;KDG-X;;;human;batchkdg;thuis;Hofakker;10;;2990;WUUSTWEZEL;BE;(03)669 88 81;;;;;;;;(0476)58 70 74;;;;;;;;;;end
;KDG-L;222465;;;;;;;;;Callant;Tom;;;;;KDG-S;;KDG-HB;M;16/06/1978;;;KDG-X;;;human;batchkdg;thuis;Destelbergenstraat;91;;9040;GENT;BE;(09)228 20 25;;;;;;;;(0496)86 25 85;;;;;;;;;;end
;KDG-L;222479;;;;;;;;;Manshoven;Frank;;;;;KDG-S;;KDG-HB;M;10/02/1961;;;KDG-X;;;human;batchkdg;thuis;Ringlaan;42;;3560;LUMMEN;BE;(013)53 27 73;;;;;;;;(0473)97 67 93;;;;;;;;;;end
;KDG-L;262230;;;;;;;;;De Cnodder;Kirsten;;;;;KDG-S;;KDG-DLO;F;1/10/1983;;;KDG-X;;;human;batchkdg;thuis;Groeneweg;8;;2275;LILLE;BE;(014)88 18 16;kot;Kloosterstraat;59;57;2018;ANTWERPEN;BE;(0472)47 31 09;;;;;;;;;;end
;KDG-L;262230;;;;;;;;;De Cnodder;Kirsten;kirstendecnodder@hotmail.com;;;;KDG-S;;KDG-DLO;F;1/10/1983;;;KDG-X;;;human;batchkdg;thuis;Groeneweg;8;;2275;LILLE;BE;(014)88 18 16;kot;Kloosterstraat;59;57;2018;ANTWERPEN;BE;(0472)47 31 09;;;;;;;;;;end

5.5. Manuele verwerking van een bestand in Brocade

Via de toepassing Eindgebruikers - Beheersfuncties - Import van eindgebruikersgegevens [link] is het mogelijk om het bestand met gegevens over lezers op te laden in Brocade.

De software werkt in 3 fasen:

5.5.1. Opladen van eingebruikersgegevens in CSV-formaat

Selecteer hiervoor het bestand ter hoogte van het veld Op te laden bestand en klik Registreer. Bij het opladen van het bestand worden de nodige testen gedaan ten aanzien van het formaat.

5.5.2. Testen van de gegevens

Selecteer vervolgens een importprofiel en start het gebruikersproces een eerste keer op in test-modus. Kies hiervoor bij acties de optie Geen updates in de databank. Op deze manier kan je nagaan of het csv-bestand voldoet aan de voorwaarden ten aanzien van de veldstructuur. Check hiervoor de lijsten die na de eerste run aangemaakt worden in uw persoonlijke lijstbeheer.

Via de lijsten warns en errors krijg je inzicht in de correctheid van de aangeboden metadata.

errors
de lijst met fouten
Dit zijn fouten tegenover het eindgebruikerssysteem: vb. de gebruikersklasse bestaat niet.
warnings
de lijst met waarschuwingen
vb. de geboortedatum ontbreekt

Via de aantallen van de lijsten de lijsten duplicates en eloinew kan je inschattten of de import het huidige eindgebruikersbestand zal beïnvloeden op een manier die je verwacht. Aantal nieuw aangemaakte eindgebruikers vs aantal eindgebruikers die mogelijk reeds in het eindgebruikersbestand zitten (gecheckt op basis van gelijkenis achternaam - voornaam). Dit zijn slechts aantallen. Op dit moment zijn er nog geen nieuwe eindgebruikers aangemaakt of bestaande gegevens aangepast.

Van zodra goedgekeurd, kan u de gegevens in de databank effectief aanpassen.

5.5.3. Opladen van de gegevens

Start voor de update het gebruikersproces een tweede keer op. Kies hiervoor bij Actie voor de optie Update de databank.

De opgeladen gegevens worden vergeleken met de gegevens in het lenersbestand, zoals vastgelegd in de meta-informatie van het importprofiel en het lenersbestand wordt aangepast. Als resultaat van deze bewerking komen er in het lijstbeheer nu 4 lijsten:

De records die geen errors vertonen, worden geïntegreerd in de databank met eindgebruikers. Er worden, behalve de fouten en waarschuwingen, 3 extra lijsten aangemaakt:

duplicates

de lijst met eindgebruikers die mogelijk reeds in het eindgebruikersbestand zitten (gecheckt op basis van gelijkenis achternaam - voornaam). Manueel na te kijken of het effectief over dezelfde persoon gaat (via adres / geboortedatum / ... ).

eloinew

de lijst met nieuwe eindgebruikers met hun gekregen recordnummer

touched

de lijst met geraakte eindgebruikers

untouched

de lijst met lenersrecords die onaangeroerd bleven

5.6. Dagelijkse automatische updating van lenersbestand

Vanaf release 3.00 is het mogelijk om lenersbestanden in csv-formaat dagelijks te verwerken. Werkwijze is dan als volgt:

  • Definieer een proces dat dagelijks loopt en het bronbestand op een FTP server ophaalt.

  • Definieer een proces dat de csv-file in Brocade importeert. Voorbeeld:

    r4_bindir/mutil -csvin /library/process/euserua/out/euserua.csv ZEUSERUA euser
    r4_bindir/mutil -csvin /library/process/euserua/out/nopayed.csv ZEUSERUA nopayed
    r4_bindir/mutil -exe 'd %Nopayed^zmoseus("UA","jcort")'
    r4_bindir/euserimport -test exec /library/process/euserua/out/euserua.csv 1014 UA jcort
    r4_bindir/euserimport -import 1014 duplicates=no renew=yes keepnrs=yes keepadr=yes wait=yes