Ga naar inhoud
  • 0

Script trigger op text object


Bruno VDK

Vraag

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 naar reactie

Aanbevolen berichten

  • 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 naar reactie
  • 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 ; “”)

)

aangepast door Gast
Link naar reactie
  • 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 naar reactie
  • 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 naar reactie
  • 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 naar reactie
  • 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 naar reactie
  • 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 naar reactie
  • 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 naar reactie
  • 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 naar reactie

Doe mee aan dit gesprek

Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.

Gast
Beantwoord deze vraag...

×   Geplakt als verrijkte tekst.   Plak in plaats daarvan als platte tekst

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...