Jump to content
  • 0

Script trigger op text object


Bruno VDK

Question

Ik heb een bestand in gebruik gemaakt in FM7, waar een tekstveld op een layout met conditional formatting gelinkt is aan de plugin Zipscript.

Dat werkt prima.

 

Ik zou het gebruik van Zipscript willen uitschakelen en verangen door een script trigger die hetzelfde script aanroept als Zipscript.

 

Echter, op het tekstveld in kwestie kan geen script trigger gezet worden....

Link to comment

Recommended Posts

  • 0

Beschrijf ons dat tekstveld iets uitgebreider, zodat wij kunnen vaststellen wat er aan de hand is en waarom er geen ScriptTrigger op gezet kan worden. Zo uitgebreid mogelijk zou ik zeggen, misschien een screenshot erbij ...

 

Edit: ik zie nu aan de titel dat je waarschijnlijk een text object bedoelt, dus geen veld. In dat geval heeft het ook weinig zin om er een scripttrigger aan te koppelen, want met text objecten gebeurt (gewoonlijk) niets.

Link to comment
  • 0

Een simpele conditional formatting die refereert naar een formule in een Let(), met default Evaluate (Self).

 

Dat triggert de Zipscript en voert het gekoppelde script uit.

 

Niks nieuws. We gebruiken dat sinds FM 7, nog voor de native script trigger era.

 

 Let ( [

$$RUN = 0 ; 
xfile = Get ( FileName ) ;
xscript = "Set Differential"];

CallScriptImmediately( xfile ; xscript ; “”)

)

Edited by Guest
Link to comment
  • 0

Getriggerd door de conditional formatting, die de variable RUN toggled.

 

(typo removed in code)

 

Het geheel werkt met Zip script. Over die functionaliteit hebben we het dus niet.

Ik zou enkel het gebruik van een plugin willen vermijden.

Dus moet er een script trigger, die overigens hetzelfde script als de Zip script gaat triggeren, in de plaats komen.

Link to comment
  • 0

Bedankt Hiker,

 

Ik wil net Zipscript er van tussen halen en vervangen door een native FM script trigger. Zipscript is oud en kan niet meer gedownload worden.

 

Ofwel moet ik 360 Works ScriptMaster gebruiken.

Maar ik wil net van al die oude plugins af geraken, en die niet noodzakelijk vervangen door nieuwe.

 

De conditional formatting op het tekst object werkt, dat triggert CallScriptImmediately.

Ik moet een manier/combinatie/berekening vinden om een FM script trigger te activeren ipv CallScriptImmediately.

 

Geen enkele enkelvoudige script trigger schijnt het te doen, dus zoek ik een mogelijke combinatie.

Link to comment
  • 0

Had ik het denk ik goed begrepen.

Maar ik vraag mij af of een tekstobject een FM script kan activeren.

Vandaar mijn vraag: datgene (veld of berekening) die zorgt voor de conditionele formatering van het tekstobject, kan dat niet het script activeren? Los daarvan kan het tekstobject geformateerd worden.

Link to comment
  • 0
De conditional formatting op het tekst object werkt, dat triggert CallScriptImmediately.

Ik moet een manier/combinatie/berekening vinden om een FM script trigger te activeren ipv CallScriptImmediately.

 

De vraag is dus uiteindelijk wat triggert dan die conditional formatting? Gebeurt dat door gegevens die op dat record worden gewijzigd of door iets dat extern optreedt en als dat extern optreedt, is dat dan de gebruiker zelf die iets in een andere tabel oid wijzigt of kan dat zelfs een andere gebruiker zijn? Filemaker heeft namelijk geen scripttriggers aan boord die kunnen worden getriggerd zónder actie van de gebruiker en ik krijg een beetje de indruk dat dat nu wél zo is. Klopt dat?

Link to comment
  • 0

Als ik het goed begrijp heb je dus:

Een text-object,

Op dit text-object heb je een conditional formatting,

In deze conditional formatting wordt een plugin-script aangeroepen.

 

Dit roept bij mij een aantal vragen op:

Het lijkt alsof je een conditional misbruikt als script-trigger.

Waarom zou je zoiets gebruiken op een statisch text-object ?

Wat zorgt er dan voor dat die conditional ge-triggerd wordt ?

(want dat kan dus enkel als je zelf het statisch text-object wijzigt)

Kun je dan niet beter dat alles in een layout::onRecordCommit-script zetten bvb ?

 

Ik vermoed dat dit niet het onderwerp ter discussie is, maar dat je vraag eerder is:

"wat zou ik als alternatief voor CallScriptImmediately kunnen gebuiken?"

Gelieve te verduidelijken wat je precies bedoeld...

Link to comment
  • 0

De regex stuurt alles aan.

 

Characters, classes, anchors, bounderies, alternations, quantifiers, etc.

 

Die stuurt de global variable in het tekstobject met de conditional formatting.

 

Hierdoor wordt een verikale portal paging aangestuurd. Die staat standaard op 15, kan door de gebruiker ingesteld worden, en kan max tot 25 gaan.

 

Naargelang de parameters die de regex doorgeeft hebben we ook een horizontale paging nodig die default op 3 staat.

Die wordt aangestuurd door de custom function.

 

Om van de plugin af te geraken laten we de horizontale paging via een tekst veld lopen die aangestuurd wordt door een custom function.

En nu zit alles netjes in native FileMaker.

Link to comment
  • 0
via tekst veld lopen die aangestuurd wordt door een custom function.

En nu zit alles netjes in native FileMaker.

 

Maar dit geeft nu eindelijk antwoord op datgene wat hbrendel in de eerste reactie al gaf en waar ik later ook naar vroeg.

Er is dus een custom functie die het tekstveld aanstuurt. Waarom kan de custom functie niet direct het script triggeren? Dus zonder tussenkomst van het tekstveld (en dus geen textobject).

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