Jump to content
  • 0

(opgelost) met case naar een lay-out, kan dat?


Dick Verschuur

Question

Hallo allemaal,

 

is het mogelijk om, met case in een script, een bepaalde lay-out te kiezen?

 

Concreet:

Ik roep met een script een volgende lay-out op (blad 2a, 2b of 2c). De keuze van a, b of c is afhankelijk van de inhoud van een veld op blad 1.

 

inhoud veld = a > ga naar lay-out a

inhoud veld = b > ga naar lay-out b

inhoud veld = c > ga naar lay-out c

 

 

Of vraag ik nu iets heel eenvoudigs?

 

Dick

Edited by Guest
Link to comment

Recommended Posts

  • 0

:oops:

 

Nou... dat is nog niet zo eenvoudig als ik het uitgeschreven blijk te hebben.

 

Ik kom niet verder dan:

 

Case (

Tabel::Veldnaam = "A" ;

 

dus:

als in de tabel::veldnaam een A staat dan...

 

en dan loop ik al vast

 

want als resultaat wil ik naar layout A

en daar kan ik un de functielijst geen functie voor vinden.

 

Of zoek ik op de verkeerde plek?

 

Dick

Link to comment
  • 0

zit je wel in de scriptmaker? (sorry als dit een overbodige vraag is)

 

Nee...

Ik zit niet in scriptmaker. :oops:

(want daar zie ik de functie Case niet)

 

Ik ben in Scriptmaker begonnen

daar koos ik de functie Script uitvoeren

vervolgens kom ik via Script opgeven

en Optionele Scriptparameter

in het functiekeuzemenu

 

 

dat is dus niet goed begrijp ik

 

Hoe moet het wel?

Link to comment
  • 0

Nogal nodeloos moeilijk maken.

 

Rony gaf je al de te volgen eenvoudige weg.

 

Go to Layout (Get(ScriptParameter)

 

Zet je Case() binnen de parameter.

 

Je kunt zelfs van je 'inhoud veld' veld een knop maken waarbij je de keuze hebt om de data in het veld zo te laten of te veranderen en het script brengt je wel naar de juiste layout. :roll:

Link to comment
  • 0

je moet toch ook "get (scriptparameter)" invullen?

 

Neen, FileMaker vult dat wel in vanuit de knopverbinding.

Het is daar dat je de Case() plaatst.

 

Je script heeft enkel Go to Layout (Get(ScriptParameter), dat is alles.

 

Bij iedere knopverbinding van dit script vul je in als optional parameter wat je nodig hebt.

Je hebt dus één enkelregelige script die je doorheen de hele toepassing kunt gebruiken.

Link to comment
  • 0

@ JeanWM:

 

Ik heb er vandaag nog eens een uurtje naar gekeken, maar ik zie nog niet hoe dat met een enkele knopverwijzing op te lossen is.

 

In de bladermodus wil ik (op pagina 2) met een buttonklik naar:

- het volgende (reeds bestaande) record

Plus dat bij dat record ook nog de juiste lay-out gekozen moet worden.

 

zoals dat nu gaat (via een script) werkt het

 

Wanneer ik dat rechtstreeks (via een knopopdracht) wil oplossen dan kan ik òf naar het volgende record

óf naar een volgende layout (o.b.v. berekening)

 

 

- Ga naar record/verzoek/pagina [Volgende]

- Ga naar layout Case

(

bestand::veld = "A" ; "Pagina 2a" ;

bestand::veld = "B" ; "Pagina 2b" ;

bestand::veld = "C" ; "Pagina 2c"

)

 

 

of zie ik iets over het hoofd misschien?

 

Dick

bestand.fp7

Link to comment
  • 0

Zal 'ga naar volgend record' altijd de 'ga naar layout' voorafgaan ?

 

Dick,

 

vraag van de aangewezen vrijwilligster:

 

kun je wat meer uitleg geven over de bedoeling van je navigatie ?

 

Nu blader je gewoon door een bestaande found set.

 

Daar waar je initiele vraag enkel navigatie naar een layout was....

Link to comment
  • 0

Hallo Jean

 

De bedoeling van de navigatie is als volgt:

 

Er is een inventarisatiemodule die bestaat uit 2 pagina's

Na het invullen van de persoonsgegevens op pagina 1 en een enkele keuze (a, b of c) klikt de inventarisator op een button om naar pagina 2 te gaan.

 

Die pagina; pagina 2, heeft 3 verschillende lay-outs (omdat de informatie wezenlijk verschillend is). Dus: pagina 2a, pagina 2b, pagina 2c

 

Die worden verder ingevuld.

Klaar.

 

Het bladeren door de gegevens (in een later stadium) gaat niet via de rolodex maar via twee buttons (vorige, volgende). Daarbij is het de bedoeling dat bij de verschillende records de juiste lay-out gekozen wordt.

Dus:

in record 1 staat een A, daarbij hoort lay-out 2A

in record 2 staat ook een A, daarbij hoort lay-out 2A

in record 3 staat een B, daarbij hoort lay-out 2B

in record 4 staat weer een A, daarbij hoort lay-out 2A

in record 5 staat een C, daarbij hoort lay-out 2C

enzovoorts.

 

Op deze manier werkt het prima.

 

Maar wanneer het slimmer kan is het mij ook goed.

Persoonlijk ben ik al helemaal tevreden met de oplossing die Kjoe gegeven heeft.

 

Ik heb overigens nog wel een paar andere vragen hoor...

 

 

Dick

Link to comment
  • 0

""Maar wanneer het slimmer kan is het mij ook goed.

Persoonlijk ben ik al helemaal tevreden met de oplossing die Kjoe gegeven heeft.""

 

@ Dick

Nou niet terug krabbelen hé - ben veel te benieuwd naar de gestelde oplossing. Heb zelf ook al gezocht doch de oplossing niet gevonden die Jeanwm suggereerd.

Link to comment
  • 0
Die pagina; pagina 2, heeft 3 verschillende lay-outs (omdat de informatie wezenlijk verschillend is)

 

als de informatie wezenlijk verschillend is, bijvoorbeeld contact info en catalogus info, ik noem maar een dwarsstraat, dan is het beter om verschillende tabellen te hebben. Dan gaat je navigatie vraag niet zozeer over hoe je van record naar record stapt en een andere layout erbij selecteert, maar over hoe je van record naar al dan niet gerelateerde record in een andere tabel stapt - en daarbij vanzelf een andere (te selecteren) layout te zien krijgt.

 

maar dan hebben we het eerst over je database structuur en nog niet zozeer over de betrekkelijke details van de go to layout [ ] script stap hoe boeiend ook 8)

 

PS de vraag is dus, wat staat er op 2a, 2b en 2c en hoe verhoudt zich dat tot 1.

Link to comment
  • 0

Jongens toch...

 

we gaan er hier veel te diep op in

 

Het is precies zo simpel als in mijn voorbeeldbestandje.

Je staat op pagina 1

gaat naar 2

en daar blader je door 2 heen en weer

de layout van die pagina wijzigt iets (maar niet zo veel)

 

 

Ik beloof dat ik vanavond een nieuwe vraag post en wanneer jullie daar net zo hartstochtelijk naar de juiste oplossing zoeken (en die vinden) dan trakteer ik op bier op de volgende confituursessie!

 

dick

Edited by Guest
Link to comment
  • 0

't Is maar dat we willen helpen Dick.

 

Je vraag ging eerst over naar een layout gaan.

 

Maarten gaf je een werkend antwoord daarop.

 

Mijn kids zagen het iets anders als oplossing, dus dat werd ook even doorgegeven.

 

Nu we je bestand gezien hebben en de bijkomende navigatie, schijnt er iet mank te zijn met de structuur ervan.

 

Het hangt er inderdaad vanaf welke informatie er op de pagina's terecht komt.

Je hebt wel een navigatie, maar, om maar iets te zeggen, hoe vind je de informatie gemakkelijk terug ?

Als je eerst zelf naar een bepaalde layout moet gaan en dan daar naar een bepaald record, is heel de zoekfunctie bijna overbodig....

 

Op het eerste zicht heb je verschillende entiteiten in 1 table gezet.

Elke keer ik iets zie als XX1, XX2, XX3, of het nu om layouts or veldbenamingen gaat, weet ik dat er een designflaw is.

 

Maar los daarvan, blijf je vragen stellen.

 

@Stamper.

 

Ons voorstel ging enkel over de navigatie van 1 layout naar verschillende, afhankelijk van 1 variabele in 1 veld.

Als je daar nu nog recordnavigatie gaat bijnemen, lukt het niet meer omdat je met 2 variabelen zit.

Het is dan OF je zit in 1 set van layouts en daar ga je door records bladeren, OF je zit in 1 set van records en daar ga je door layouts bladeren.

 

Het kan wel, maar dan ga je een kanonsbal gebruiken om een structuurvlieg klein te krijgen.

 

Vandaar dat wij zeggen:

Dar síntomas erróneos, resulta en soluciónes erróneas.

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