Jump to content
  • 0

Zoeken naar verkeerd ingevulde datums


Stardust

Question

Posted

Ik heb een database met heel veel records (ca 30.000). De meerderheid van deze records zijn geïmporteerd uit andere bestanden waardoor er een X aantal records met verkeerde datum zijn. Men dient hier te denken aan bvb. alleen het jaartal, verkeerd invoermasker, verkeerde notitie van de datum bvb. 30/02/1952, enz...

 

Al deze records zou ik willen vinden en een bepaalde controlewaarde geven d.m.v. de Set Field script stap. Daartoe bedacht ik het volgende script:

 

°Set Error Capture [On]

°Go to Record/Request/Page[First]

°Loop

° If("Status( CurrentError) = 500")

° Set Field ["Date_Control","Date(01;01;1830)"]

° Else

° Set Field ["Date_Control","Date_Exam"]

° End If

° Go to Record/Request/Page[Exit after last,Next]

°End Loop

 

Na het lopen van dit script, blijkt dat alle records waarvan de datum invoer correct is in het veld Date_Control de waarde van het veld Date_Exam bevatten wat geheel in overeenstemming is met m'n bescheiden wensen.

 

Wat de andere records betreft, dus deze waarvan de datum niet goed of niet ingevuld werd bevat het veld Date_Control evenveel als mijn portemonnaie, niets dus :roll:

 

Op zich geen probleem en kan ik verder met eventuele een ander script waarbij ik de waarde van de lege velden Date_Control vervang door bvb de waarde 01/01/1830 o.i.d. maar helaas, betweter dat ik ben, ik wil weten waarom deze waarde niet automatisch geplaatst werd door het bovenstaande script :?

 

Weerom doe ik beroep op alle jullie wijsheid teneinde dit dilemma (voor mij toch) opgelost te krijgen, waarvoor mijn eindeloze dank bij voorbaat.

 

Met de beste groeten vanuit een grijs en grauw Brussel,

 

Danny

2 answers to this question

Recommended Posts

  • 0
Posted

Danny, het is een ferm script, maar je kan de records met een "invalid date" simpelweg vinden door te zoeken op een "?" in het datum veld.

 

De reden dat in de bewuste probleemrecords niet werd weggeschreven is omdat FileMaker opnieuw de zaken valideert. Het veld "Date_Exam" is niet geldig, dus kan je ook niets veranderen aan het record zonder dat je eerst dat probleem oplost.

 

Omdat je error capture aanstaat, merk je daar natuurlijk niks van.

 

Tijdens een import valideert FileMaker die datums niet, dus een kopie van je datum veld maken kan je doen door dat veld te exporteren en terug te importeren in een backup veldje.

  • 0
Posted

Peter,

 

Bedankt, nu begrijp ik er toch iets meer van.

 

Om het met de woorden van een bekende 'televisiekok' te zeggen, wat heb ik geleerd, ik herhaal de stappen:

 

1) Om invalide data te vinden volstaat het om het vraagteken te gebruiken;

2) Bij het importeren wordt de veldinhoud niet gecontroleerd door FM;

3) invalide data moet eerst gecorrigeerd worden alvorens FM de veldinhoud kan 'bewerken'.

 

Weer iets bijgeleerd :o

 

Waarvoor mijn welgemeende dank !

 

Danny

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...