Jump to content
  • 0

veld mag niet leeg zijn als ander veld data bevat


klaver

Question

Posted

Veld a is een tekstveld dat gelinkt is aan een value list.

Veld b is een tekstveld zonder opties.

Ik zou willen dat er een foutmelding verschijnt vanaf het moment dat er in veld b tekst wordt ingevuld, zonder dat men in veld a een waarde heeft ingevuld, en dit zonder een script te moeten activeren.

Dus wanneer een gebruiker eerst veld a invult en daarna veld b, mag er geen foutmelding komen. Wanneer echter een gebruiker gegevens wil invoeren in veld b, en in veld a nog niets heeft ingevuld, moet er onmiddellijk een foutmelding komen, liefst een foutmelding die ik zelf kan ingeven.

 

Dit zal wellicht met de functie 'Is(Empty Field)' kunnen, met een 'If' constructie, maar ik geraak er niet uit.

 

Dank bij voorbaat

13 answers to this question

Recommended Posts

  • 0
Posted

Je kan bij de validatie van veld b de volgende formule opgeven

If(IsEmpty(b) ; 1;If(IsEmpty(a) ; 0;1))

 

Zorg dat je het aankruisvakje links onderin (validate only if field has been modified) UIT zet.

 

Door de validatie 'strict' te maken kan de gebruiker het record niet uit zonder a in te vullen of b weer leeg te maken.

De melding komt wel achteraf, maar dat lijkt me niet zo'n probleem.

  • 0
Posted

Even uitgetest, maar via deze weg heeft de gebruiker nog de mogelijkheid om 'yes' aan te klikken en aldus verder te werken zonder iets in te vullen in veld a.

Toch bedankt!!

  • 0
Posted

Je kan bij de validatie opties ook aangeven dat de gebruiker de melding niet mag 'overriden'. Dat is het aankruisvak 'strict'. De enige opties die dan overblijven zijn 'ok' en 'revert field', waarbij veld b teruggezet wordt op zijn oorspronkelijke inhoud.

  • 0
Posted

Ik heb ook nog even getest en er zit nog 1 lek:

 

Als je beide hebt ingevuld en het record uit gaat en vervolgens veld a leeg maakt dan krijg je wel een melding, maar 'revert field' zet b terug op zijn oorspronkelijke waarde en laat a leeg.

 

Dit kan je oplossen door dezelfde validatie bij veld a in te voeren.

  • 0
Posted

Voor mij is jouw geleverde oplossing prima zo. Immers veld a moet altijd ingevuld zijn wanneer de gebruiker veld b invult. Dus ook als hij achteraf beslist om veld a te wissen, moet de foutmelding verschijnen.

  • 0
Posted

Klopt, maar de foutmelding is gekoppeld aan het veld waarbij je hem opgeeft. Dat betekent dus dat bij het leeg maken van veld a de melding wel komt, maar 'revert field' betrekking heeft op veld b en dus veld a leeg laat (wat je niet wilt).

 

Probeer maar eens (met alleen een validatie bij veld b):

 

vul in a 1 in

vul in b 2 in

ga naar volgende record

ga naar vorig record

maak veld a leeg

ga naar volgende record

kies 'revert field' bij de foutmelding

ga naar vorig record

 

En veld a is leeg!

  • 0
Posted

Je kan de oorspronkelijke vraagstelling op een eenvoudige manier oplossen, nl. met één enkel (bijkomende) warning-veldje: creëer een calc field met txt als resultaat en volgende formule:

If(IsEmpty(VeldB) and not IsEmpty(VeldA); "Veld B is niet ingevuld! Doe dit meteen!";"").

 

Je zet dit calc field als een merge field met rode (bold) tekst bovenop je Veld B. Vermits het een merge field is, kan het niet aangeklikt worden. De foutmelding verschijnt steeds pal automatisch bovenop je veld. Natuurlijk kan de gebruiker deze foutmelding gewoon negeren (hoewel daar ook oplossingen voor zijn), maar we gaan er wel van uit dat de gebruiker een gebruiker is, en geen saboteur :wink: .

 

De techniek wordt ook uitgelegd op http://www.avd-ci.be/tip020.htm

  • 0
Posted
En als je er voor zorgt dat veld b pas 'zichtbaar' wordt nadat veld a werd ingevuld ?

 

dmv een relatie en een portaaltje ?

Da's natuurlijk dé oplossing! Pure luxe!

 

Enne... meteen een introductie in "tzworder werk" :wink: !

  • 0
Posted

Ik hou jullie niet tegen om het hoofd te breken over deze laatste mogelijke oplossing (ik ga het zelf ook niet doen overigens). Ik ben al erg tevreden met de geleverde mogelijkheden.

Hartelijk dank!

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