Start
 

Aldfaer

Hét gratis stamboomprogramma

U bent op pagina StartForumSjablonencode andersom
.

code andersom


  Posten niet toegestaanPage: « < 1 of 1 > »
06 Nov 2008 - 08:185708
code andersom

In mijn sjabloon staat de volgende code

_DEATDATE? _BEGI _SETBEGI(XX) _SETDATE( [:_DIFFDATE( _DEATDATE)[:_Y jaar:]|[:_M maanden:]|[:_D dagen:]:] ) _SETEND &nbsp; _ELSE
_BURIDATE? _BEGI _SETBEGI(XX) _SETDATE( [:_DIFFDATE( _BURIDATE)[:_Y jaar:]|[:_M maanden:]|[:_D dagen:]:] ) _SETEND &nbsp; _ELSE &nbsp; _END _END</td>

Dat berekent de leeftijd van het kind als zijn/haar vader/moeder overlijdt. Hoe kan ik de leeftijd van de ouder berekenen als het kind overlijdt?



06 Nov 2008 - 08:485709

Op dezelfde manier; het hangt ervan af waar je dit aanroept en wat je in de set XX stopt. Op de persoonskaart krijg je toch ook de leeftijd van de betreffende persoon te zien als een kind van hem/haar overlijdt?

Carel.



__________________
Ik gebruik Aldfaer 4.2 op Win/Vista-laptop met IE10+SVG-Viewer en op Win/7-desktop met IE11+SVG-Viewer.
06 Nov 2008 - 10:165712

Thijs, in aanvulling op Carel een sjabloontje uit mijn Handleiding Sjablonen. Misschien brengt je dat iets verder op een idee.
quote:
In het volgende voorbeeld wordt de geboortedatum van de actieve
persoon aan een set toegevoegd. Als die set XX geopend wordt
dan komt de _SETDATE beschikbaar en kan dus vergeleken worden met
andere datums.
Vervolgens, binnen een loop van de vader, kan de _SETDATE door
de Tag _SETEXP opgevraagd worden en weer vergeleken worden met
een andere datum.

_USES(DutchDateFormat)
_SETDEF( XX )
_SETADD( XX,[:Ik, _NAME [:_NAMEPREF :]_SURN, :], _BIRTDATE)
_SETBEGI(XX)
_SETSTRI ben geboren op _SETDATE([:DD-MM-YYYY:]) en dat is _SETDATE([:_DIFFDATE(_CURRDATE)_Y:]) jaar geleden.
_SETEND
_FATH?
_BEGI
_FATHBEGI(_BIOL)
Mijn vader heet _NAME [:_NAMEPREF :]_SURN en toen hij _SETEXP( XX , 1 , _SETDATE ) ([:_DIFFDATE(_BIRTDATE)_Y:]) jaar oud was ben ik geboren.
_RELABEGI(_BIOL)
Hij was toen _SETEXP( XX , 1 , _SETDATE )([:_DIFFDATE(_RELASTAR)[:_Y jaar,:][:_M maanden:][: en _D dagen:]:]) getrouwd met _NAME [:_NAMEPREF :]_SURN.
_RELAEND
_FATHEND
_ELSE Ik heb geen vader, dus neem een ander voorbeeld.
_END
Mijn moeder was toen _MOTHBEGI(_BIOL)[::]_SETEXP( XX , 1 , _SETDATE )([:_DIFFDATE(_BIRTDATE)_Y:]) jaar oud. _MOTHEND



__________________
Han

Last edited by Han Kortekaas (06 Nov 2008 - 12:30)
07 Nov 2008 - 23:085743
_DESC of _ASCE

Ik wil graag een sjabloon maken van ouders die later stierven dan hun kind. Dan is de ouder dus het belangrijkste persoon en zijn/haar geboortedatum wordt de _SETDATE. Die wil ik vergelijken met de geboorte- en sterfdatum van het kind. Ik heb dus de verkeerde info in de set gestopt.

Ik heb het al geprobeerd en het ging goed, maar in plaats van de leeftijd van de ouder wanneer het kind overlijdt komt het andersom te staan, dus de leeftijd van het kind wanneer de ouder overlijdt.

Dit heb ik nu staan:

_SETFILL(asc_set,_ASCE, _SELECTIE)
_BIRTDATE?
_BEGI
_DEATDATE([:YYYY:]? _BEGI _VARIN(gebjaar,[:_DEATDATE([:YYYY:]:]) _ELSE _VARIN(gebjaar,0) _END
_DEATDATE([:MM:]? _BEGI _VARIN(gebmaand,[:_DEATDATE([:MM:]:]) _ELSE _VARIN(gebmaand,0) _END
_DEATDATE([:DD:]? _BEGI _VARIN(gebdag,[:_DEATDATE([:DD:]:]) _ELSE _VARIN(gebdag,0) _END
_ELSE
_BAPTDATE?
_BEGI
_BURIDATE([:YYYY:]? _BEGI _VARIN(gebjaar,[:_BURIDATE([:YYYY:]:]) _ELSE _VARIN(gebjaar,0) _END
_BURIDATE([:MM:]? _BEGI _VARIN(gebmaand,[:_BURIDATE([:MM:]:]) _ELSE _VARIN(gebmaand,0) _END
_BURIDATE([:DD:]? _BEGI _VARIN(gebdag,[:_BURIDATE([:DD:]:]) _ELSE _VARIN(gebdag,0) _END
_END
_END
_VARIN(teller,0)
_SETCLR(XX)
_BIRTDATE?
_BEGI
_SETADD( XX,[:_CODEINTE:],_BIRTDATE)
_ELSE
_BAPTDATE?
_BEGI
_SETADD( XX,[:_CODEINTE:],_BAPTDATE)
_END
_END
_SETBEGI(asc_set)
[?_GENENUM ==2?]?

Nu is de geboortedatum van het kind de SETDATE. Ik wil de geboortedatum van de ouder als SETDATE.

Als ik de ouder als belangrijkst persoon wil aanwijzen moet ik _ASCE dus vervangen door _DESC. Dan gaat het fout. Moet ik ergens anders ook nog iets veranderen?

De handleiding Sjablonen heb ik ook gedownload en het is erg goed, ik leer er veel van.



08 Nov 2008 - 10:435747

Thijs,

Mooi dat je ook in de sjabloontaal duikt; je hebt wel meteen een forse uitdaging opgepakt en ik hoop dat je niet hierdoor ontmoedigd wordt...

De _ASCE of _DESC geeft alleen de richting aan van je gegevensverzameling deel (ascending/decending, dus op/aflopend, cq voor/nageslacht van de persoon in het hoofdscherm op het moment dat je de sjabloon start).

Als je van een persoon de ouders wilt 'pakken' dan kan dat via FATHBEGI of MOTHBEGI (opzoeken in de handleiding hoor!).

Dus:
_BITHDATE = geb.datum 'huidige (set-)persoon'
_FATHBEGI
_BITHDATE = geb.datum vader
_FATHEND

Uiteraard moet je eerst testen op aanwezigheid van de vader mbv _FATH? maar hiervan zijn voorbeelden in de handleiding...

Suc6,
Carel.



__________________
Ik gebruik Aldfaer 4.2 op Win/Vista-laptop met IE10+SVG-Viewer en op Win/7-desktop met IE11+SVG-Viewer.

Last edited by cplantagie (08 Nov 2008 - 10:43)
08 Nov 2008 - 12:495749

Carel, Thijs,

Sta me toe even in te breken in deze discussie. Carel, je hebt natuurlijk gelijk dat FATHBEGI en MOTHBEGI de aangewezen tags zijn om gegevens over de ouders op te vragen. Maar het aantrekkelijke van de aanpak van Thijs (gebruik van GENENUM==2) is dat als je dezelfde vraag ook voor de grootouders wilt beantwoorden, je alleen maar de 2 in een 3 hoeft te veranderen. Dus Thijs, ik raad je aan eerst even te bedenken of dat het geval is.

Paul



09 Nov 2008 - 20:265784
Sjabloon

Mijn sjabloon gaat dus over ouders die hun kinderen hebben zien komen en zien gaan.

Daarvoor heb ik het sjabloon dat Paul mij toestuurde een beetje verbouwd. Hieronder de cellen:

td align="center">_NAMENICK|_NAMEFIRS _NAMEPREF _SURN</td>

<td align="center">[:_AGE jaar:]</td>

<td align="center">_SWAPBEGI _NAMENICK|_NAMEFIRS _NAMEPREF _SURN _SWAPEND</td>

<td align="center">_SWAPBEGI [:_AGE jaar:] _SWAPEND &nbsp;</td>

<td align="center">_BIRTDATE? _BEGI _SETBEGI(XX) _SETDATE ([:_DIFFDATE(_BIRTDATE)_Y jaar:]) _SETEND _END
_BAPTDATE? _BEGI _SETBEGI(XX) _SETDATE ([:_DIFFDATE(_BAPTDATE)_Y jaar:]) _SETEND _END</td>

<td align="center">?????</td>

Als ouder en kind allebei nog leven worden ze ook vermeld. Ik wil ze alleen vermelden als de ouder nog in leven is bij het overlijden van het kind.

Van links naar rechts: Naam ouder, leeftijd ouder, naam kind, leeftijd kind, leeftijd ouder bij geb kind, leeftijd ouder bij ovl kind.

De setdate is de geboortedatum van het kind. Kan ik daarmee ook de leeftijd van de ouder berekenen als het kind overlijdt of moet de geb datum van de ouder als setdate ingesteld worden?



10 Nov 2008 - 19:585799

Nu heb ik dit staan:

_BIRTDATE? _BEGI _BIRTDATE ([:_DIFFDATE(_DEATDATE)_Y jaar:]) _END

Dat geeft het verschil tussen de geboortedatum en sterfdatum van de ouder.

_SWAPBEGI _BIRTDATE? _BEGI _BIRTDATE ([:_DIFFDATE(_DEATDATE)_Y jaar:]) _END _SWAPEND

Dit geeft het verschil tussen de geboortedatum en sterfdatum van het kind.

Waar moet ik de SWAPs zetten om de gebdatum van de ouder te vergelijken met de sterfdatum van het kind?



10 Nov 2008 - 22:195801

Thijs,

Het is een beetje lastig te reageren op je vragen als er alleen losse regels uit een sjabloon staan - al is dat zeker geen aanmoediging om nu maar je heel sjabloon hier neer te zetten.
Ik denk dat je een tweede set moet maken, b.v. XX2, waarin je de sterfdatum van het kind zet. Dan kan je die, op soortgelijke wijze als in je vorige bericht, vergelijken met de geboortedatum van een ouder. Daarbij moet je natuurlijk wel checken of het kind echt overleden is, en de ouder nog leefde op het moment van overlijden van het kind.

Paul



12 Nov 2008 - 19:195842
Sorteren

Hoe kan je sorteren op een willekeurige kolom in een tabel? Ik heb een ander sjabloon en dat wil ik graag sorteren op de leeftijd van een kind als een ouder overlijdt.

_DEATDATE? _BEGI _SETBEGI(XX) _SETDATE( [:_DIFFDATE( _DEATDATE)[:_Y jaar:]|[:_M maanden:]|[:_D dagen:]:] ) _SETEND &nbsp; _ELSE
_BURIDATE? _BEGI _SETBEGI(XX) _SETDATE( [:_DIFFDATE( _BURIDATE)[:_Y jaar:]|[:_M maanden:]|[:_D dagen:]:] ) _SETEND &nbsp; _ELSE _END _END</td>

Hiermee bereken ik de leeftijd van het kind als de ouder overlijdt. Wat moet ik invullen bij _SETSORT



13 Nov 2008 - 00:145853
Quote Thijsg:
Wat moet ik invullen bij _SETSORT

Thijs, zoals Paul ook al opmerkte kun je eenvoudigweg niet op een stuk code bepalen wat je moet invullen.

Ik lees dat je de handleiding sjablonen al hebt staan.
Ga eens lezen bij de Aldfaer Codelijst en het onderwerp _SETSORT.
Ongetwijfeld zul je een paar voorbeelden zien van sorteringen.
Als voornaamste hint:
1. als je iets niet kunt sorteren maak dan een printregel met iets ervoor wat je wel kunt sorteren en zet daar een apart teken in. BV leeftijd._fill("0",3)€printregel naam leeftijd
2. sorteer oplopend of aflopend
3 breek de string op het karakter €
4 print het tweede deel van de string.

Een voorbeeld zit in de handleiding



__________________
Han
26 Jan 2009 - 21:557753

Het is inmiddels gelukt. Hoe kan ik levende personen uit de set verwijderen?

Ik heb het volgende staan:

_SETBEGI(iedereen)
[?_DEAT?]? _BEGI _ELSE _SETSUB(iedereen) _END
_SETEND

Dan worden overleden personen met een levend kind wel genoemd. Nu test ik of de hoofdpersoon is overleden, hoe kan ik testen of de tweede persoon is overleden en vervolgens de hoofdpersoon setsubben?



27 Jan 2009 - 00:387758

Om te beginnen kun je bij de _SETFILL van de set "Iedereen" een filter inbouwen ter voorkoming dat je moet subsetten.

Jouw vraag in dit stadium van jouw sjabloon is moeilijk te beantwoorden want de stroom is onbekend.

Blijkbaar subset je op een verkeerd moment omdat later toch nog levende kinderen naar voren komen???

Vervolgens heeft dit draadje niets meer met de oorspronkelijke discussie te maken. Dus waarom maak je niet per probleem een draadje.



__________________
Han
27 Jan 2009 - 07:337759

Welke tag selecteert alleen overledenen bij de Setfill?

Als het kind overleden is, wil ik de ouder opnemen.

In een ander draadje zei Bert het volgende

Quote llbrandt:
Even buiten de discussie.
Voor de duidelijkheid was het mijns inziens beter geweest om dat 'oude/lopend' draadje nieuw leven in te roepen; zodoende hebben ook wij beter inzicht in waar je mee bezig bent, waardoor wij nog beter je kunnen adviseren.
Hoop dat je in het vervolg hier rekening mee wil houden.

Daarom ben ik maar weer hierin begonnen.



27 Jan 2009 - 09:387760

Thijs,
de algemene regel die gehanteerd wordt is 1 discussie conform het onderwerp. Het onderwerp "Code andersom" was afdoende beantwoord.

Ik weet dat je de handleiding sjablonen hebt. Lees daarin eens het hoofdstukje "De verzameling (set)" deel III vullen van een set" en specifiek op de codelijst de tag _SETFILL, waar ook voorbeelden zijn gegeven.

De vraagstelling die je nu hebt m.b.t. het opnemen van de ouder(s) van het kind komt niet overeen met wat je eerder hebt gezegd over subsetten. Daardoor is het moeilijk je goed van dienst te zijn en is het voor overige lezers abacadabra aan het worden.

Uit de voorgaande discussie begrijp ik ook dat Paul je heeft geholpen met het sjabloon waar je mee bezig bent. Als ik een suggestie mag doen, raadpleeg Paul dan weer in de verdere opbouw want hij kent de codeflow en weet dus als sjabloonbouwer waar jouw specifieke probleem ligt en hoe dit op te lossen.



__________________
Han
27 Jan 2009 - 11:307763

Als het kind overleden is, wil ik wel opnemen, als het kind niet overleden is, wil ik niet opnemen.

Inderdaad, het is moeilijk om dit in het forum uit te leggen. Als ik het niet snap, vraag ik het wel aan Paul.



  Posten niet toegestaanPage: « < 1 of 1 > »

© Stichting Aldfaer - ingeschreven bij de KvK Noord-Nederland onder nr. 01096526