woensdag 23 september 2015

Friesland: oude grafzerken in de kerk van Wolsum weer tevoorschijn

Kerk van Wolsum

De huidige kerk van Wolsum is gebouwd in 1867. De kerk is de vervanger van een middeleeuws exemplaar. Van deze middeleeuwse kerk is een tekening uit het jaar 1703 bewaard gebleven.


Uit deze oude kerk is een aantal eeuwenoude grafzerken overgebleven. In 1962 zijn er door Harmen de Vries foto's genomen van deze oude zerken. De teksten van deze zerken zijn om onbekende reden nooit eerder gepubliceerd. Nu ligt de vloer opnieuw open; het interieur van de kerk wordt momenteel gerestaureerd.

Op 23 september 2015 zijn een aantal leden van de grêfskriftekommisje in de kerk geweest om de huidige stand van de zerken te inventariseren. Dit heeft het volgende opgeleverd.

De familie Remstra

1. Een grote steen van de familie Remstra, genoemd naar het gehucht Remswert.

Foto Melle Koopmans

Op deze steen de volgende teksten:

Mary Sybrens huisvrouw van Lieuwe Uijlkes leit hier begraven

Dese vier graven naest malkander die zullen niet mogen geopent worden voor het iaer 1812

Anno 1712 den 20 iannawary is in den heere gerust den eersame ionghling Lieuwe Uijlkes Remstra out int eenentwintigste iaer en leit alhier begraven

Anno 1680 den 25 december is in den heere gerust de eersame Bauke Lieuwes out ontrent 20 iaer en leit alhier begraven

Onduidelijk is welke vier graven er precies bedoeld zijn. De eerstgenoemde Lieuwe Uijlkes was in 1640 eigenaar van stem 10 te Oudega. De jongeling Lieuwe Uilkes is de zoon van het echtpaar van grafzerk 2 en 3 en hun enige kind. Mary Sybrens hertrouwt in 1655 met Gerben Wygers. Onduidelijk is van wie Bauke Lieuwes een zoon is; in 1660 was Lieuwe Uijlkes al overleden.

2. Grafzerk Uilke Lieuwes Remstra, zoon van Lieuwe Uijlkes en Mary Sybrens

Foto: Maikel Galama

Anno 1713 den 23 december is seer christelijk in den heere ontslapen den eersamen Uijlke Lieuwes Remstra out int 76 iaer en leit alhier begraven

3. Grafzerk Trijntje Siemens Hiddema, vrouw van Uilke Lieuwes

Foto: Maikel Galama

Anno 1731 den 4 septemb is seer christelijck in den heere ontslapen de eerbare Trintie Symens Hiddema huisvrouw van de eersame Uijlke Lieuwes Remstra out 75 iaer en leit alhier begraven

Dese 7 graven zullen nooit mogen geopent worden als no 1 no 2 no 3 no 4 no 5 no 6 en 7

Deze zeven graven hebben we nu niet meer aangetroffen. Van bovengenoemd echtpaar is ook een zilveren wierookvat, geschenk aan de katholieke kerk, bekend met de tekst:

Uiltje Lieuwes Reemstra en Trintie Simons Hiddema syn wyf 1725

Duidelijk is nu dat de echtgenoot toen al overleden was. Uijlke Lieuwes was volgens de stemkohieren van 1698 (mede-)eigenaar van vijf boerderijen.

Stem 14 in Nijland voor 1/5
Stem 16 in Nijland voor 1/4
Stem 10 in Oudega voor 2/3
Stem 18 in Oudega
Stem 5 in Wolsum

Hij is gebruiker of meier van stem 18 te Wolsum.

Het echtpaar overleed zonder kinderen. Er schijnt een hele juridische strijd te zijn gevoerd over de erfenis.

De familie Bangma

4. Grafzerk van Eelke Okkes, zijn kinderen gebruiken de naam Bangma van zijn vrouw

Foto Melle Koopmans

Aoo 1763 den 12de april [is in] den heere gerust de eersame Eelke Okkes in leven [ontfanger] en [kerckvoogd] van den dorpe Wolsum en ... van de ... en van ... oud in het twee en seeventigste jaar en leit hier begraaven

De tekst is deels weggekapt. Een klein deel van het weggekapte is nog wel te ontcijferen.

5. Grafzerk Grietje Johannes Bangma, vrouw van Eelke Okkes

Foto Melle Koopmans

Anno 1752 den 29 augustus is in de heere gerust de eerbaare Grietie Johannus Bangma in leven eghte huisvrouw van de [ontfanger] Eelke Ockes tot Wolsum oud 65 jaar en leid alhier begraven

6. Grafzerk van hun zoon Lolke Eelkes

Foto Melle Koopmans

Anno 1727 den 2 november is seer schierlijk in den heere gerust Lolke Eelkes de soen van de [ontfanger] Eelcke Ockes en Grietie Iohannes Bangma out 8 iaar en 9 dagen en leit alhier begraven

Drie andere kinderen van dit echtpaar steken in de barre winter van 1740 met paard en slee de toenmalige Zuiderzee over. We weten dit omdat er zilveren lepels bewaard zijn gebleven met de volgende teksten:

Johannes Eelties 25 febr. 1740 's morgens van Wolsum met peerd en slee over de zee naar Enckhuijsen gereden 's avonds weer thuis

Gerbrig Eelties 25 febr. 1740 's morgens van Wolsum met peerd en slee over de zee naar Enckhuijsen gereden 's avonds weer thuis

1740 den 27 feb. 
Ocke Eelties  
s'morgens van Wolsum wij reeden 
na Enkhuzen met peerd en sleeden 
Over de zee met groot gedruis 
en kwamen ook s avonds thuis

De predikanten in de toren

In de toren liggen drie grafzerken van predikanten die ooit in Wolsum gestaan hebben. Deze grafzerken waren al bekend. We willen ze hier tocht meennemen.

7. Grafzerk Cornelius Johannes

Foto Melle Koopmans

Hier leit begraven de eerwaerdige godtsalige ende welgeleerde Cornelius Iohannes dienaer des goddelicken woorts van de gemeente tot Wolsem out 82 iaeren in den heere gerust den 12 september anno 1640

8. Grafzerk Suffridus Rodenhuis

Foto Melle Koopmans

Ao 1714 den 20en martij is seer christelijk in den heere ontslapen den eerwaerden en godtsaligen dnus Suffridus Rodenhuis in leven bedienaer des goddelijken woords in de dorpen Wolsum en Westhem nadat hij tot Gaastmer twee en alhier vijftien iaeren sijn i...nts getrouw hadde waargenomen oldt int 42 iaer ende leit alhier begraven

9. Grafzerk van Hugenoot Izaak Cahais

Foto Melle Koopmans

Ao 1785 den 13 augustus stierv de weleerw: [heer] Isaac Cahai in den ouderdom van ruim 64 jaaren nadat zijn eerw: den tijd van ruim 40 jaaren deze gemeente in leere en wandel getrouw hadde voorgeligt, zijn sterflijk deel ligt hier begraven, wagtende eene zalige opstandinge

Verdwenen grafzerken?

Volgens de foto's uit het archief van Tresoar (1962?) hadden we nog drie grafzerken verwacht.

10. Grafzerk Gerben Wygers




Anno 1660 den 22 februaris is in de heere gerust den eersamen G[er]ben Wygers olt ontrent 44 iaer ende leit hier begraven

Deze Gerben Wygers was de tweede echtgenoot van Mary Sybrens op de eerste grafzerk.

11. Grafzerk Gerck Ha... dochter




Anno [16].. Den 29 juli is [in den heere] gerust Gerck Ha… dochter huisfrouwe Cornelij Johan[nes]  predecant tot Wolsum ende is hir begraven oldt 86 iare

Zij was dus getrouwd met predikant Cornelis Johannes van grafzerk nummer 7. We hebben haar volledige naam nog niet kunnen achterhalen. Wel dat dit echtpaar in 1592 te Sneek een dochter liet dopen met de naam Aleyt.

12. Tweede grafzerk Mary Sybbrens




Foto Melle Koopmans


Het brokstuk dat we in de kerk gevonden hebben, blijkt te passen bij deze zerk. De volledige tekst wordt dan:

Anno 1680 den 7 aprilis is in de heere gerust de eerbaere Mary Sybbrens dochter die wedue van Lieuwe Ulckes out ontrent 65 iaer ende leit alhier begraeven

Opmerkelijk is dat Mary Sybbrens op twee grafzerken als begravene voorkomt: grafzerk 1 en 12.

Mogelijk komen de laatste zerken, waar we nu alleen de foto's van hebben, alsnog tevoorschijn.

vrijdag 18 september 2015

Access: Smart Object Names Combined With Smart VBA Functions

Introduction

When I create object in Access I try to be as consistent as possible. For instance, when I create a table containing customers, I create names like this:

Object
Name
Table
tblCustomers
Form
frmCustomers
Query
qryCustomers
Command button
cmdCustomers

It is not just that I like the Hungarion Notation (invented by Simonyi K√°roly from Hungary), it also enables me to use smart functions while programming VBA.

Smart Functions

For instance when I create a command button which should lead me to the form frmCustomers, I call the command button cmdCustomers. After that I attach a function to the On Click event:


Because it refers to the active control, it will automatically transfer the name of the command (cmdCustomers) tot the function cmdCommandClick.

The VBA of the function cmdCommandClick looks like this:

Public Function cmdCommandClick(strFrmName As String)
     DoCmd.OpenForm "frm" & Mid(strFrmName, 4)
End Function

So, now I can easily copy such a command button, change the name and it will automatically go to the right form.

I created another function, FormOpenSource, to automatically attach the right Record Source to the form. This function is attached to the On Load event:


The VBA of the function FormOpenSource looks like this:

Public Function FormOpenSource(objFrm As Form)
    Dim tblName As String
    tblName = "qry" & Mid(objFrm.Name, 4)
    
    'use the query if there is one, otherwise the table
    If DCount("[Name]", "MSysObjects", "[Name] = '" & tblName & "'") = 1 Then
        objFrm.RecordSource = "qry" & Mid(objFrm.Name, 4)
    Else
        objFrm.RecordSource = "tbl" & Mid(objFrm.Name, 4)
    End If
End Function

In this case the function would look for a query qryCustomers and if it does not exist, it will look for tblCustomers.

Just a couple of examples to make programming Access VBA easier and faster.

dinsdag 8 september 2015

Access: Overcoming The Max Length (64) of DoCmd.TransferText

The Problem

The other day I ran into a problem with DoCmd.TransferText: it will not accept text files having longer names that 64 characters. Possibly, because 64 characters is the maximum length of an object name in Access.

You will get an error message:



So I tried to find a work around.

My Work Around

First, I created a table in Access to store information about the text files, in this particular case, CSV files.

The I created a VBA script which actually store the information in the table

strMapCSV = CurrentProject.Path & "\"

Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(strMapCSV)

For Each f1 In f.files
 If Right(f1.Name, 3) = "csv" And Left(f1.Name, 4) <> "file" Then
   strSQL = "insert into tblCSVfiles (CSVname, CSVsize,CSVdate,CSValias) "
   strSQL = strSQL & " VALUES ('" & Replace(f1.Name, "'", "`") & "'," & f1.Size & ", #" & f1.DateLastModified & "#,'" & "file" & intCounter & ".csv')"
   db.Execute (strSQL)
   intCounter = intCounter + 1
 End If
Next

So, in the table tblCSVfiles all CSV files got an alias like file1.csv etc.

Every time the script is rerun, which is actually done autamatically in this case, the script removes the existing aliasses:

'remove aliasses
Set f = fs.GetFolder(strMapCSV)
 For Each f1 In f.files
   If Left(f1.Name, 4) = "file" Then
     Set f = fs.getfile(strMapCSV & f1.Name)
     f.Delete
  End If
Next

The script also empties the table tblCSVfiles:

db.Execute ("delete from tblcsvfiles")

After that I let the script copy the existing CSV files to their aliasses file1.csv etc.

 'copy CSV's
 intCounter = 1
 Set f = fs.GetFolder(strMapCSV)
  For Each f2 In f.files
    If Right(f2.Name, 3) = "csv" Then
      Set f = fs.getfile(strMapCSV & f2.Name)
      f.copy strMapCSV & "bestand" & intCounter & ".csv"
      intCounter = intCounter + 1
    End If
 Next

After that, I can pick any file from the table tblCSVfiles and use the alias to refer to the shorter named CSV version.

Problem solved.

An Even Better Work Around

As I posted my solution, I received an even better idea from Jack Stockton: the FileSystemObject has both a ShortPath and ShortName.

The much shorter code looks like this:

strMapCSV = CurrentProject.Path & "\"

Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(strMapCSV)
    
For Each f1 In f.files
 If f1.Name = "NOVIBAT_14454_20150615_030440-1234567890_1234567890_1234567890_1234567890_1234567890_1234567890_1234567890.csv"  Then
   strFile = f1.ShortName
 End If
Next

DoCmd.TransferText transfertype:=acImportDelim, _
SpecificationName:="glans", _
tablename:="tblGlans", _
FileName:=strMapCSV & strFile, _
hasfieldnames:=False