Code voor het maken van gezinsbladen op basis van een CVS bestand. Home

tekst in blauw geeft links aan naar onderliggende bladzijden


#    Eerst moet het bestand geopend worden waarin de gegevens staan.
#    Dit bestand heeft per regel alle gegevens die bij een gezin horen.
#    Ieder gegeven is van een ander gegeven gescheiden via een zelfde teken, bijv. een comma [naam1,naam2,naam3,],
#    is een gegeven niet bekend staan op de regel twee comma's na elkaar   [naam1,,naam3,]  maw het aantal comma's per regel is gelijk.
 
#    voorbeeld naam is Helden_1700_1750.csv
#         instructie:     open(BASIS, "Helden_1700_1750.csv") or die "problemen met openen inlees bestand";
#    Hierna moeten de gegevens uit een regel gesplist worden en aan een variabele worden toegekend.
#         instructie: while (<BASIS>)    {@_ = split (/\;/,$_); $gegeven1 = @_[0]; $gegeven2 = @_[1]; $gegeven3 = @_[2]; }
#    Het is raadzaam om in plaats van gegeven1 ed zinvolle en begrijpelijke namen te kiezen als a_naam_man etc.

#    We hebben nu alle gegevens van een gezin in aparte variabelen staan en kunnen nu deze gaan manupuleren.

#    We maken nu de naam voor het bestand waaronder we het gezinsblad willen opslaan bestaande uit plaats van huwelijk,
#    achternaam man en vrouw en jaar van sluiting.

#        instructie:     $filenaam = "$hplaats\_$man\_$vrouw\_$hjaar.htm";    

#    Verder kunnen we een lijst maken met referentie naar de gezinsbladen die we in een bestand opslaan voor latere bewerking.
#    hiervoor moeten we eerst een bestand maken en openenen waar we de gegevens in kwijt kunnen. bijv: d:/perl/genealogie/gezinnen_helden.htm

#        instructie:    open(REFLIST, ">>d:/perl/genealogie/gezinnen_helden.htm") or die "problemen met openen referentie bestand";

#    Om een gezinsblad te kunnen vullen moeten we er eerst een bestand hiervoor maken met een logische naam en deze ook openen.

#        instructie:    open(GBLAD, ">d:/perl/genealogie/gezinnenHelden/$filenaam") or die "problemen met openen gezinsbladen";

#    Samengevat hebben we nu een file waaruit we de gegevens kunnen lezen voor verdere bewerking, een file waar
#    we referentie naar gezinsbladen kunnen opslaan en de mogelijkheid om gezinsbladbestanden te geneneren.
 
#    Om de gezinsbladen in de browser er gelijkvormig te laten uitzien en het vormgeven niet iedere keer te hoeven opbouwen neem ik een
#    basis bladzijde waarbij ik de invulvelden vervang door de gegevens uit het commagescheidenbestand. Deze basisbladzijde is in frontpage gemaakt
#    en heeft als naam basisgezinsblad.htm. Hiervoor moet dit voorbeeld bestand geopend worden, de waarden vervangen worden en opgeslagen
#    worden onder de gewenste naam.

#        instructie:            open(VOORBEELD, "basisgezinsblad.htm") or die "problemen met openen basisgezinsblad";

#        dan invullen   :    while (<VOORBEELD>) {s/_MAN_/$man/; s/_VROUW_/$vrouw/; s/_takte_/BS $takte #tjaar/; print GBLAD $_}

#        files sluiten:        close(GBLAD); close(VOORBEELD);

#    Als dit gedaan is willen we dit gezin ook in de referentie lijst plaatsen en een link naar het gezinsblad maken.

#        instructie:        print REFLIST " \<dt\>$jaar\&nbsp;\&nbsp;\&nbsp;\<a href=\"Gezinsbladen\%20Helden\/$filename\"
#                               style=\"text-decoration\: none\; \"\>$man\<\/a\>, $mana met $vrouws\<\/dt\>";

#    Daar er nu ook vaak een transcriptie is van een huwelijk is het handig als een link hiernaar automatisch in te voeren.

#    deel instructie:    <a href=\"transhuw\%20Helden\/$transfile\"  style=\"text-decoration\: none\; \"\>$transref\<\/a\>

Voorbeeld file gezinsbladen: link