Ga naar inhoud
  • 0

Relatie op basis van veranderlijke


Dirty May

Vraag

Ik slaag er maar niet in om een relatie te creëren op basis van een veranderlijke.

Voorbeeld van een van de twee vergelijkingsvelden : If ( Datum Transactie ≥ Date ( Month ( Vandaag ) ; 1 ; Year ( Vandaag ) - 1 ) and Datum Transactie < Date ( Month ( Vandaag ) ; 1 ; Year ( Vandaag ) ) ; "x" ; "" )

( Bedoeling is iedere maand opnieuw het voorgaande lopende jaar te bundelen - tot en met het einde van de vorige maand, en beginnend net een jaar eerder. )

 

Waarbij 'Vandaag' uiteraard dagelijks verandert.

 

Het probleem is dat je dergelijk veld omwille van zijn dynamiek niet kan laten indexeren.

Wat evenwel noodzakelijk is om een valabel vergelijkingsveld te hebben.

 

Mis ík iets ?

Of ontbreekt er een steentje in de blokkendoos van FM ? ( Hoe durf ik ... )

Link naar reactie

11 antwoorden op deze vraag

Aanbevolen berichten

  • 0

ExecuteSQL is mij onbekend.

Snap niet wat je bedoelt met 'Selectie'.

Mijn wetenschap reikt tot het selecteren binnen in een veld.

 

"Ofwel, benader het probleem niet vanuit 'vandaag' maar vanuit de 'transactiedatum'." :

Er is een relatie van nature die steeds verandert, aangezien 'Vandaag' iedere dag opschuift,

en de transactiedatum van een welbepaald record in principe dezelfde blijft.

 

Maar ik probeer je andere voorstellen te begrijpen en desgevallend toe te passen.

 

By the way, het indexeren van de transactiedatum is niet de bobbel, wel de voorschrijdende 'vandaag',

of zeg maar de tijd in het algemeen.

Link naar reactie
  • 0

Een kleine bijdrage van mij misschien.....ik zit op de lijn van Felix en Pjotter en ik heb in een applicatie een soortgelijk probleem opgelost.

 

Om een overzicht te maken van records die bijvoorbeeld binnen de laatste week vallen:

- maak in de basistabel 2 globale datumvelden aan; 1 waar de huidige datum in komt te staan en 1 waar de huidige datum - 7 dagen in komt te staan (is vorige week).

- stel bij het opstarten van je programma de globale velden in met de datum van vandaag en datum vandaag -7 dagen. Zo schuift de datum vandaag dus vanzelf op. Dit kan makkelijk met een script dat je tijdens het opstarten laat lopen.

- maak een relatie waarbij globaalveld 1( = datum vandaag) >= datum gekoppelde records EN globaalveld 2 (= datum vandaag -7 dagen) <= datum gekoppelde records.

 

Het resultaat is de records met een datum in de range van vandaag tot een week geleden zijn gekoppeld. Deze kun je vervolgens weergeven in een portaal, selecteren, exporteren...wat jij wilt.

Link naar reactie
  • 0

Op deze manier kun je via een script veel soorten overzichten te laten zien. Door goed alle vragen door te nemen kun je al heel veel terug vinden. Deze vraag /antwoord over een overzicht is pas langs gekomen waarbij men een saldo overzicht wilde zien. Stel je wilt een overzicht van 2012 dan zet je de globalen via een script op 01-01-2012 voor veld 1 en 31-12-2012 voor veld 2. enz enz. Ik voeg het voorbeeld even bij waarin meerdere scripts staan. Nogmaals er staan vele voorbeelden met uitwerking. Staat het niet onder FM12 dan onder 11, 10 of? succes

Saldo.fmp12

Link naar reactie
  • 0

With a lot of help from my Masters !

 

Heren Pjotter, Frederik en Willem, van harte bedankt voor jullie adequate hulp en advies.

Mijn probleem is opgelost.

 

Eerder had ik mij al uit de nood geholpen door middel van scripts,

maar ik bleef steeds de mening toegedaan dat dat geen 'zuivere' wijze

van werken was, maar een methode die onhandige kleuters toepassen.

 

Nu uit jullie interventie blijkt dat ook de pro's die sideway moeten gebruiken, is mijn

schroom ongegrond gebleken, en kan ik voluit gaan voor de scripts, wanneer nodig.

 

Wat ik tevens aan jullie wil danken is het inzicht om op een efficiëntere

en meer doordachte wijze met globaalvelden en relaties om te gaan.

 

Dus, nogmaals mijn waardering.

 

Marc ,

Link naar reactie

Doe mee aan dit gesprek

Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.

Gast
Beantwoord deze vraag...

×   Geplakt als verrijkte tekst.   Plak in plaats daarvan als platte tekst

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...