Jump to content
  • 0

Meerdere waarden in een veld, lastig in een calculatie


Roger

Question

Posted

In een veld (MWV) van tabel A staan meerdere waarden, door een harde return gescheiden. Het zijn de record ID's van tabel B. Tabel A en B zijn aan elkaar gerelateerd via dit Multi-Waarde-veld in A en Record_ID in B.

In mijn portal worden keurig alle gerelateerde records getoond, hoewel MWV niet gelijk is aan de waarden in het veld Record_ID in tabel B. Immers, in laatst genoemd veld bevindt zich slechts 1 waarde en in MWV bevinden zich meerdere waarden. Maar de relatie staat toe dat alle records van tabel B getoond worden waarvan het Record_ID voorkomt in MWV.

In een berekeningsveld wordt hier anders mee omgegaan. Zodra MWV meerdere waarden krijgt is er geen sprake meer van dat de waarden in de beide velden gelijk zijn en wordt de uitkomst ONWAAR. Mijn vraag is nu, kun je in een berekeningsveld stellen: Als één der waarden in MWV gelijk is aan Record_ID, dan is de uitkomst WAAR en anders ONWAAR ?

Beetje lastig formuleren, deze vraag, hopelijk is toch duidelijk wat ik bedoel. 

 

6 answers to this question

Recommended Posts

  • 0
Posted (edited)
Position ( A::MWV ; B::Record_ID ; 1 ; 1 ) <> 0

Dit als berekend veld in tabel A.

Let er wel op dat het een ongeïndexeerd veld wordt, omdat het rekent met gerelateerde waarden. Dat kan bij zoeken voor vertraging zorgen.

Zie ook hier

 

rmw

Edited by rmw
  • 0
Posted

Ben al iets verder gekomen met de functie GetValue maar omdat geen gelijkenis wordt gezocht met 1 specifieke waarde maar met alle voorkomende waarden lost dit nog niet mijn hele probleem op.

  • 0
Posted

Heel smooth! Dank! Ik heb de functie nodig in de formule van voorwaardelijke opmaak, dus geen problemen met ongeïndexeerde velden. Maar zou je nog een toelichting kunnen geven hoe dit werkt, wat deze functie nu precies doet? Vooral het deel <> 0. 

  • 0
Posted (edited)

Ik weet niet precies wat je wil bereiken, maar ik zou ook even de functies patterncount() en filtervalues() bestuderen.

Ik neem aan dat de mwv een lijstje is dat als foreign key functioneert en het record_id een primary key. Ik zou in dat geval wel altijd voor tekstvelden kiezen en niet voor getallen, anders zijn de resultaten van de koppeling niet voorspelbaar.

Edited by hans erik
  • 0
Posted
Op 26-3-2018 om 17:17 zei Roger:

Heel smooth! Dank! Ik heb de functie nodig in de formule van voorwaardelijke opmaak, dus geen problemen met ongeïndexeerde velden. Maar zou je nog een toelichting kunnen geven hoe dit werkt, wat deze functie nu precies doet? Vooral het deel <> 0. 

Position geeft een getal terug. De positie waar FM B::Record_ID vindt in A::MWV. Als het niet wordt gevonden is dat nul.

De berekening moet waar of niet waar teruggeven, dus vandaar Position() <> 0.

rmw

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