Ga naar inhoud


Expressie probleem sql


newbier

Aanbevolen berichten

Hoi,

 

ik probeer een expressie aan te passen maar het lukt me niet. Ik heb ook niet veel kaas gegeten van expressies maar misschien heef iemand een idee.

 

Dit is de expressie:

 

IF(VERHUURKOP.CUSTOMBOOL3='J','Uw bagage zal op '+ REFORMATDATE(qryVerhuurReg.VERWACHTTEAFHAALDATUM,'dd-mm-yy') + ' worden gebracht naar uw vaktieverbijf '+qryVakantieadres.ZTOMSCHRIJVING+'. Op '+ REFORMATDATE(qryVerhuurReg.VERWACHTTERETOURDATUM,'dd-mm-yy') +' wordt uw bagage weer vervoerd van '+qryVakantieadres.ZTOMSCHRIJVING+' naar de boot. Als u aankomt kunt u een afspraak met de chauffeur maken wanneer de bagage weer opgehaald moet worden.', ' ' )

 

Nu wil ik er het volgende aan toevoegen.

 

Ik schrijf het maar even in "gewone taal"" :

 

Als er in het veld qryVerhuurReg.DATABAGAGE1 een andere datum staat als in

qryVerhuurReg.VERWACHTTEAFHAALDATUM moet hij de datum invullen die ingevuld is in qryVerhuurReg.DATABAGAGE1. In alle andere gevallen de qryVerhuurReg.VERWACHTTEAFHAALDATUM.

 

Als er in het veld qryVerhuurReg.DATABAGAGE2 een andere datum staat als in qryVerhuurReg.VERWACHTTERETOURDATUM moet hij de datum invullen die ingevuld is in qryVerhuurReg.DATABAGAGE1

 

Iemand die me hiermee kan helpen?

 

Gr Newbier

 

Link naar reactie
Delen op andere sites


Nou gokje dan maar. SQL is ook niet mijn hobby.

 

Je hebt hier een IF...THEN...ELSE constructie waarbij de ELSE tak leeg blijft, als ik het zo bekijk. Dus als CUSTOMBOOL3 iets anders dan J.

 

Nu moet je deze expressie uitbreiden met een tweetal extra IF THEN ELSE constructies.

 

Dus je vervangt REFORMATDATE(qryVerhuurReg.VERWACHTTEAFHAALDATUM,'dd-mm-yy') door

 

IF(qryVerhuurReg.DATABAGAGE1<>qryVerhuurReg.VERWACHTTEAFHAALDATUM , REFORMATDATE(qryVerhuurReg.DATABAGAGE1,'dd-mm-yy'), REFORMATDATE(qryVerhuurReg.VERWACHTTEAFHAALDATUM,'dd-mm-yy'))

 

Maar je ziet dat deze query onleesbaar wordt.

Kan je niet gewoon met variabelen werken?

 

Dus je vult eerst een paar variabelen met de juiste datum en vervolgens gebruik je de variabelen in de expressie.

  • Resistance is futile you will be assimilated
  • Those who would give up essential liberty, to purchase a little temporary safety, deserve neither liberty nor safety. Benjamin Franklin (1706-1790)
  • Mijn vrijheid eindigt niet waar jouw angst begint!

 

 

Link naar reactie
Delen op andere sites

Ik dacht aan PL/SQL en daar kan je heel wat meer mee dan alleen SQL.

 

Maar het zou ook PHP kunnen zijn.

 

Maar hoe dan ook, is mijn verhaal nog steeds geldig.

  • Resistance is futile you will be assimilated
  • Those who would give up essential liberty, to purchase a little temporary safety, deserve neither liberty nor safety. Benjamin Franklin (1706-1790)
  • Mijn vrijheid eindigt niet waar jouw angst begint!

 

 

Link naar reactie
Delen op andere sites

Origineel bericht van: Psychosammie
Ik dacht aan PL/SQL en daar kan je heel wat meer mee dan alleen SQL.

Maar het zou ook PHP kunnen zijn.

Maar hoe dan ook, is mijn verhaal nog steeds geldig.


Dat is geen php, maar wat het is weet ik ook niet??

php zou er als volgt uitzien

<?php
if(VERHUURKOP.CUSTOMBOOL3 == 'J'){
echo 'Uw bagage zal op '. date('d-m-y', $qryVerhuurReg.VERWACHTTEAFHAALDATUM) . ' worden gebracht naar uw vaktieverbijf '. $qryVakantieadres.ZTOMSCHRIJVING . '. Op ' . date('d-m-y', $qryVerhuurReg.VERWACHTTERETOURDATUM). ' wordt uw bagage weer vervoerd van ' . $qryVakantieadres.ZTOMSCHRIJVING . ' naar de boot. Als u aankomt kunt u een afspraak met de chauffeur maken wanneer de bagage weer opgehaald moet worden.';
}
?>

iMac 27" macOS Sierra
iPhone 5s iOS 10

Link naar reactie
Delen op andere sites

Maak een account aan of log in om te reageren

Je moet een lid zijn om een reactie te kunnen achterlaten

Account aanmaken

Registreer voor een nieuwe account in onze community. Het is erg gemakkelijk!

Registreer een nieuwe account

Inloggen

Heb je reeds een account? Log hier in.

Nu inloggen
  • Wie is er online   0 leden

    • Er zijn geen geregistreerde gebruikers deze pagina aan het bekijken
×
×
  • Nieuwe aanmaken...