Jump to content
  • 0

Conditional auto-enter / random functie


Gido_

Question

Ik had graag een aantal velden met auto-enter gehad, maar enkel wanneer een switch daarvoor op "ja" staat.

 

Ik kan dit wel verwezenlijken door, alvorens een nieuw record te maken, die velden in global fields te zetten en ze van daar dan weer conditioneel in hun nieuwe velden te zetten.

 

Maar kan dit niet veel simpeler?

 

Ik had gehoopt dat het zou werken door in de velddefinitie

- Value from previous record aan te vinken

alsook een calculatie eronder:

- auto-enter="ja"

 

Maar dat was al te optimistisch en blijkt onbetrouwbaar te werken...

 

 

Kan ik eventueel ook een calculatie gebruiken die de toetsencombinatie CTRL + ' gebruikt?

Case (auto-enter="ja"; "CTRL+' " ; "")

 

Welke codes moet ik daarvoor dan gebruiken? (zowel NL als US versie aub)

 

Dank = "ja" :wink:

Edited by Guest
Link to comment

16 answers to this question

Recommended Posts

  • 0

:idea: Ik kan ook al die velden standaard op auto-enter zetten en de switch laten bepalen of die velden terug leeggemaakt moeten worden na New Record :)

Dat idee volstaat eigenlijk wel, maar geniale oplossing voor eerdere vraag is altijd welkom om nieuwe inzichten op te doen :wink:

Link to comment
  • 0

Dit kan heel simpel.

 

Je kan een auto-enter waarde uitstellen door het als resultaat "" te geven.

 

Volgende voorbeeld. Tabel/File bestaande uit 2 velden.

 

1 Message = Auto-enter veld met volgende formulie.

Case(Conditie = 1;"hallo";"")

 

2 Conditie = text veld

 

Wanneer je een nieuw record aanmaakt zet filemaker niks in het veld maar zodra je een 1 in het conditie veld zet wordt alsnog de waarde hallo ingevoerd.

 

Wellicht kan je hiermee uit de voeten.

 

Groet,

 

WJ

Link to comment
  • 0

Normaal gesproken heeft iedere tabel een Primary key deze key is meestal een oplopend nummer auto enter.

 

Bijv.

Klant ID = 1

Klant ID = 2

 

Je kunt een interne relatie leggen. Door van calculatie veld aan te maken waarin je Primary key - 1 als bereking invoert en vervolgens een relatie legt tussen dit nieuwe veld en de primary key heb je een relatie liggen tussen het record en het record daarvoor. (indien er records gewist worden heb je natuurlijk een probleem, op te lossen met set next serial value) Je kunt dan via het deze relatie de waarde van het vorige record halen m.b.v. de formule van het vorige berichte alleen dan hallo vervangen door het veld uit de relatie welke de waarde bevat die je wilt overnemen.

 

Gr,

WJ

Link to comment
  • 0
Bedankt, maar in die formule kan ik toch niets zeggen over de waarde van de previous record? Of wel? 8)

Ik val hier zo maar met de deur in huis, en misschien naast de kwestie, maar last of previous record is niet altijd wat wíj denken: kijk hier maar!

Dat gevoel had ik al intuïtief, maar dat het op avd-ci.be staat maakt het helemaal officieel :wink:

 

En bedankt weer WJ, dat was een eye-opener inzicht dat wel eens van pas zal komen 8)

 

Om even off-topic te gaan (de topic-opener kan mij toch niks maken :lol::wink:)...

 

Ik haal met een random calculatie steeds een (random) beeldje op uit een 2e database. [Het random nr als Key (random x ZZ)+1 tov een aantal uniek opvolgende records van 1 tot ZZ]

 

Dat werkt wel op zich, maar wanneer ik heen en terug door enkele records ga is dat beeldje dikwijls (mss wel altijd) hetzelfde dan het eerst was, terwijl die random calc. toch unstored staat.

Ligt dat aan de randomfunctie die niet écht random is, maar een getallenrijtje afgaat? (ik meen dat eens gelezen te hebben, maar weet niet of het over FM ging).

Maar dan nog lijkt het me wat vreemd...

Link to comment
  • 0

Ja, ik bedoelde niet dat het "in wezen" niet werkt en zo gebruik ik het dus ook, maar op zijn simpelst.

 

Dat randomcalculatieveld (random*20)+1 is mijn Key in een relatie met een database van beeldjes, in een Keyveld genummerd van 1 tot 20.

Wanneer ik nu van record verander komt er een random beeldje binnen, maar wanneer ik ter controle v/d randomfunctie voor en achteruit blader, merk ik dat dit dezelfde beeldjes zijn ipv een nieuw random beeldje. Is dat niet vreemd?

 

Een calculatie mag toch een keyveld zijn, hoop ik? Ik hoor hem althans niet protesteren :lol:

Link to comment
  • 0

[EDIT: hier stond een niet verdedigbare interpretatie van het woord "number" :oops: ]

Description

 

Returns a random number between zero and one. FileMaker Pro generates a new random number when you:

 

· insert the Random function into a formula

· cause a formula containing Random to be reevaluated (by changing data in any of the fields the formula uses)

· display or access a calculation field defined to have an unstored result

 

Copyright © 1994 - 2002 FileMaker, Inc. All Rights Reserved.

 

[En hier dus ook] Of zie ik iets over het hoofd?

[AutoAnswer without calculation: YES! YES!]

Edited by Guest
Link to comment
  • 0

Ik denk dat je iets over 't hoofd ziet. Het moet waarden geven tussen 0 en 1 (between), anders zou het hier niet werken :D

 

Ik ben toevallig op iets gestoten waardoor hij het wel doet zoals altijd zou moeten. Wanneer ik een cursor in een veld zet, kan ik heen en weer tussen 2 records gaan en altijd verschillende beeldjes zien. Als ik de record exit, gebeurt dat niet, ttz ik zie versch. beeldjes, maar als ik terugflip (en weer terug) zijn dat dezelfde, alsof hij van een ge-storede waarde gebruik maakt. Spijtig, maar in de praktijk niet echt merkbaar, tenzij je't weet :lol:

Link to comment
  • 0

Gido_,

 

Jouw Random-functie is juist, André ziet inderdaad iets over het hoofd. Een random waarde is een reëel getal tussen 0 en 1, niet een gehele waarde tussen 0 en 1.

 

(de tip waar AvD naar verwijst kan daarom ook als int(random*100) + 1

gebruikt worden om een random waarde te verkijgen tussen 1 en 100)

 

Wat jij over het hoofd zit, is dat Filemaker geen calculaties uitvoert wanneer je "bladert" in records. Bijgevolg kan je ook geen "nieuw" random-beeld krijgen, enkel en alleen door te bladeren.

Link to comment
  • 0
Wat jij over het hoofd zit, is dat Filemaker geen calculaties uitvoert wanneer je "bladert" in records. Bijgevolg kan je ook geen "nieuw" random-beeld krijgen, enkel en alleen door te bladeren.

"Ja en nee." Want als ik met een cursor in een veld blader, met toetsen-shortcuts, doet ie het wel. Maar ik denk te begrijpen wat je bedoelt, want als je erop doordenkt is het ook niet onlogisch. Valt dan alleen op te lossen met script-navigatie, lijkt het. Maar zo'n probleem is het niet.

Link to comment
  • 0
Wat jij over het hoofd zit, is dat Filemaker geen calculaties uitvoert wanneer je "bladert" in records. Bijgevolg kan je ook geen "nieuw" random-beeld krijgen, enkel en alleen door te bladeren.

"Ja en nee." Want als ik met een cursor in een veld blader, met toetsen-shortcuts, doet ie het wel.

 

Ik bedoelde met bladeren echt "bladeren", dus vooruit en/of achteruit scrollen. Daarbij niet eerst het record "editen" door er met de cursor in te gaan staan. Want op die manier sluit Filemaker het record af bij het bladeren naar een volgend record. En dan worden de calculaties natuurlijk wel uitgevoerd.

 

Maar inderdaad, met scripting sluit je het hele zaakje kort. (wel ook even de statusbalk verbergen dan en de totale navigatie overnemen)

Link to comment

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