Ga naar inhoud
  • 0

Valuelist in CDML; de ingevulde waarde wordt niet getoond


michiel

Vraag

Via het web kunnen een aantal databases doorzocht worden. Gebruikers kunnen in een databse gegevens wijzigen. Daartoe is een "editpagina" beschikbaar waarop gebruikers dmv een

wijzigingen kunnen doorgeven.

In het´

kunnen gebruikers (o.a.) gegevens invoeren via een vaulelist. Deze valuelist gebruikt waarden uit een andere database dan de database waarin de gegevens worden opgeslagen.

 

Het probleem is nu dat als een gebruiker de editpagina opent, de betreffende valuelist niet de waarde weergeeft die in dat veld al eerder werd ingevuld maar de eerste waarde uit de valuelist. Als de gebruiker nu andere gegevens wijzigt en op submit drukt wordt de eerste waarde uit de valuelist doorgegeven. En dat is natuurlijk niet de bedoeling. De enige oplossing tot nu toe is dat gebruikers bij iedere wijziging ook weer de waarde in de valuelist op de juiste waarde instellen, ook al hadden ze die bij een eerder bezoek al gewijzigd. Als ze dat vergeten worden er onbewust verkeerde waardes ingevuld.

 

Hoe krijg ik het voor elkaar dat de VAluelist (als de editpagina wordt geopend) niet de eerste waarde uit de valuelist toont maar de al eerder ingestelde waarde (die ook afkomstig is uit dezelfde valuelist)?

 

Hieronder is de code opgenomen:

 

[fmp-inlineAction: -db=namen.fp5, -findall]In behandeling door:
Maak een keuze
[FMP-VALUELIST:naam_totaal, LIST=namen2][FMP-VALUELISTITEM][/FMP-VALUELIST]

[/fmp-inlineaction]

 

Ter toelichting: de valuelist staat "in" een inlineaction omdat de valuelist uit een andere database komt (namen.fp5) dan de database waarin gewijzigd wordt.

 

Hulp wordt zeer op prijs gesteld!

 

N.B.: het kan zo zijn dat het WEL de bedoeling is dat een nieuwe waarde wordt ingesteld, dus: de valuelist moet beschikbaar zijn maar ALS al een waarde is ingesteld in het record moet die getoond worden en niet de EERSTE waarde uit de valuelist.

Link naar reactie

2 antwoorden op deze vraag

Aanbevolen berichten

  • 0

Je moet eigenlijk de waarde van je veld vergelijken met de waarde van je valuelist. Maar zover was je wellicht al.

Het probleem dat je hebt is dat je binnen een in-line action zit en de waarde van je veld niet meer kunt opvragen. Je kunt dit omzeilen door je waarde mee te geven met een token.

 

[fmp-inlineAction: -db=namen.fp5, -token={field:behandelaar}, -findall]In behandeling door: 
Maak een keuze 
[FMP-VALUELIST:naam_totaal, LIST=namen2]
[FMP-if:currentoken.eq.valuelistitem]
[FMP-VALUELISTITEM]
[FMP-else]
[FMP-VALUELISTITEM]
[/FMP-if]

[/FMP-VALUELIST]

[/fmp-inlineaction]

 

Koen

nb: laat even weten of het gelukt is, ik heb de code nog niet getest.

Link naar reactie
  • 0

Hoi,

 

Bedankt voor de snelle reactie. Ik kon het echter niet laten om zelf nog iets te experimenteren en ik heb een andere oplossing gevonden.

 

De Inline action stond voor het veld en . Daardoor werd op die plaats info opgevraagd uit de verkeerde database waardoor steed teruggevallen werd op de standaardwaarden uit de valuelist, ipv de al gekozen waarde die in een andere database was opgeslagen!

 

Ik heb de inline nu verplaatst en een [FMP-IF] toegevoegd: als het veld al was ingevuld, wordt het

 

En dan te bedenken dat ik hier al eerder 4 uur op heb zitten ploeteren (razend werd ik ervan) en nu uiteindelijk de oplossing in een half uur heb gevonden...

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