Jump to content
  • 0

ZOEKEN zonder script


DEER

Question

Wie kan me helpen met een oplossing op het volgende probleem ?

 

In een database "Calculatie" voor de berekening van de kosten voor gewerkte uren staat het volgende vermeld:

veld1 = datum

veld1 = ID-nr van de werknemer

veld3 = gewerkte uren

veld4 = gewerkte uren x uurloon

 

In een andere tabel "Tarieven" staan vermeld:

veld1 = ID-nr

veld2 = datum

veld3 = uurloon

veld4 t/m veld28 de maanden in 2009 & 2010

In de tabel "Tarieven" wordt per individuele werknemer het loon aangepast onder de betreffende maand.

 

De bedoeling is dat bij de vrijwel dagelijkse invulling van de database "Calculatie" het programma automatisch, dus zonder script, gaat opzoeken in tabel "Tarieven" welk uurloon van toepassing is op bijvoorbeeld werknemer A (ID-nr xx), die gisteren 6 uur gewerkt heeft bij een externe klus. Met een variatie hierop: als deze klus een paar maand eerder geklaard was dan zou dat mogelijk een ander uurloon opgeleverd hebben als er tussentijds een loonaanpassing heeft plaats gevonden.

Ik kan me voorstellen dat de oplossing gezocht wordt in de richting van een script. Maar dat vraagt weer een extra toetsaanslag die niet vergeten mag worden.

 

Dit is geen excel, maar Filemaker. In excel werd de oplossing gevonden met INDEX en 2 maal een VERGELIJK in één formule.

 

In feite moet je dus in de tabel "Tarieven" eerst vertikaal zoeken naar het exacte ID-nr, en dan horizontaal naar de beste benadering van de maand (veld2) en de ingevoerde datum (veld1).

 

Wie kan de oplossing aandragen ?

 

Bedankt voor de moeite.

mvg., DEER

Link to comment

9 answers to this question

Recommended Posts

  • 0

Hoi,

 

Ik denk dat je iets te veel in een excel file zit te denken.

In de tabel tarieven heb je de tarieven van iedere werknemer.

Als die per maand verschillen dan maak je voor iedere maand een nieuw record.

Bij het invoeren gebruik je een lookup o.i.d. op basis van het jaar (haal je uit de datum) en het werknemer id.

 

Als je alle maanden in één record zet zoals je zelf aangeeft werkt het niet.

 

Groet.

Link to comment
  • 0

op het ogenblik ben ik bezig een bestand te maken om mijn bankmutaties te importeren.

is allemaal aardig gelukt, alleen met de datum heb ik moeite.

de gegevens van de bank komen alle in tekstformaat binnen. ik hou deze in tact f1, f2 ,f3 etc. om alles

bij de volgende importsessie synchroon te laten lopen. van het veld f3 in dit geval de datum, heb ik een copie gemaakt

om deze in het juiste datum formaat om te zetten, zodat deze ook normaal op datum gesorteerd kan worden.

de formule voor het omzetten naar de juiste datum kan ik niet vinden. weet iemand een oplossing. ?

Link to comment
  • 0

even off topic ;-)

 

Denk dat je een nieuw draadje wou beginnen...

 

Hier is iig een calculatie die je kan verder helpen. Werkt enkel als je de datum zo steeds binnenkrijgt natuurlijk.

 

 

Let ( 
[
 _date = "20090330"
; _year = Left ( _date ; 4 )
; _month = Middle ( _date ; 5 ; 2 )
; _day = Right ( _date ; 2 )
]
;

Date ( _month ; _day ; _year )

)

Link to comment
  • 0
even off topic ;-)

 

Denk dat je een nieuw draadje wou beginnen...

 

Hier is iig een calculatie die je kan verder helpen. Werkt enkel als je de datum zo steeds binnenkrijgt natuurlijk.

 

 

Let ( 
[
 _date = "20090330"
; _year = Left ( _date ; 4 )
; _month = Middle ( _date ; 5 ; 2 )
; _day = Right ( _date ; 2 )
]
;

Date ( _month ; _day ; _year )

)

ik wou inderdaad een nieuw draadje beginnen; op de of andere manier is dit misgegaan.

in ieder geval hartelijk dank voor de reactie en de oplossing .

met groet

fred

Link to comment
  • 0

Ik zit meer te denken in de richting van een matrix.

 

Achter onderstaande link staan richtinggevende ideeën hierover. 'k Ben wel tot de ontdekking gekomen dat de creatie van een beetje matrix veel rekentijd vergt.

 

Voor degene die de gewijzigde lonen invoert moet het een eitje zijn om de juiste gegevens op de juiste plaats te zetten. Een matrix (vertikaal de werknemers en horizontaal de lonen in de maand waarin ze gewijzigd zijn).

 

http://www.spf-15.com/fmExamples/

 

Bedankt voor het meedenken.

Link to comment
  • 0
Als je Naam+Maand+Loon in een aparte tabel zet, heb je daar je matrix.

Met een relatie op werknemer+maand haal je daar je data uit middels een lookup.

 

Accoord, maar m'n doelstelling is dat bij de dagelijkse invoer van datum + naam vd werknemer + aantal gewerkte uren, het programma automatisch uit bovengenoemde matrix het meest recente uurloon leest dat bij de betreffende werknemer hoort en dit vervolgens ergens in een berekening meeneemt.

Het automatisch had ik gedacht als een berekening. Niet als resultaat van een of ander script. Of........ weet iemand een methode dat er automatisch een script kan worden gestart na de invoer van een bepaald veld ?

 

Bovengenoemde matrix wordt alleen geupdated als er aanleiding voor is, bijv. een nieuwe werknemer of loonaanpassing.

Link to comment
  • 0

Misschien zoek je het te moeilijk: per werknemer kan er toch maar 1 uurbedrag actueel cq recent zijn?

Elke keer dat dat veranderd wordt de tabel aangepast. Elke keer als je uren invoert wordt die waarde uit de tabel gehaald.

De kans op fouten is dan kleiner dan dat je tabellen met waarden hebt voor verschillende perioden.

 

Als je ineens voor een heel jaar de bedragen wilt vastleggen, zit je naar mijn gevoel toch een de eerder genoemde tabel vast. Dan kun je per periode (week, maand, 4 weken) aangeven wat het uurbedrag is.

Met een relatie en lookup wordt de waarde uit de tabel gehaald in in de berekening gebruikt voor de salarisberekening. Geen script voor nodig, gewoon een calculatieveld.

 

Automatisch een script draaien kan met FM10.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...