Homer Posted November 23, 2005 Posted November 23, 2005 Guys, I gonna be the happiest man on this planet the day FMI will decide to place this 16k of code (I mean the .fmx under Windows) into the core of their products. I don't want to be the scapegoat for the plug-in industry because there is actually great PIs on the market fixing weaknesses that FMI doesn't want to be responsible for. Did you realized that some people out there is making a living of PI development !! So please, be careful when you talk about plug-ins and make the necessary distinctions. If you want to discuss about EventScript, then it is OK but please do not pretend very bad thing based on totally empty allegations. In my country, one calls that: slanders. We are not running a suit of intension here. About your points Jeff, you are right ! It was difficult in the past to maintain and deploy plug-ins over a large network. But now, FMI is providing the PI called 'Auto-update' who is installed by default on every FileMaker Pro and Developer/Advanced. This PI is doing a great job and it makes PI management a real charm. Here's some links to get more details : http://filemaker.com/downloads/pdf/fms7_auto_update.pdf and http://clevelandconsulting.com/support/viewtopic.php?p=959 As I stand before, I'm not speaking for PIs in general but EventScript is a free plug-in so you doesn't have to consider license registrations with ES. You deploy and you start using intelligently, that's it. I have to go to work now. In theory EventScript is supposed to be my hobby !! :
Søren Dyhr Posted November 23, 2005 Posted November 23, 2005 I realise that, by the use of calc fields, I could make the calcs change as the data changed but I need the user to press a button because I need to check that the change that they have just made makes sense. Hi Phil Try to investigate this template, that although it's for a previous version - stille has a lot of bite to it! http://www.filemakerpros.com/MultiValidate.zip Next issue I wish to raise is your clearing of fields, not a particuar script"worthy" task - when you take a look on this: http://www.clevelandconsulting.com/support/viewtopic.php?t=264 ...now the syntax could even bring big lads to tears, so to prevent the backslashing do I usually instead do it like this: Evaluate(Case(0;0);triggerfield) And if you need just one of many fields... Evaluate(Case(0;0);triggerfield1 & triggerfield2 & triggerfield3) The reason for Case(0;0) is that it inserts a NULL value in whatever fieldtype you may wish even time or datefields. --sd
Inky Phil Posted November 23, 2005 Posted November 23, 2005 Thanks Soren, I will go have a look when poss Phil
Søren Dyhr Posted November 23, 2005 Posted November 23, 2005 If you want to discuss about EventScript, then it is OK but please do not pretend very bad thing based on totally empty allegations. In my country, one calls that: slanders. I raised a question of dealing with cascaded and recursive event trigging, which both can lead to loss of focus. You didn't find anything in Ilyse Kazars part that makes you caution potential users of your product ...But there's a great deal to be learned about the shifting of record ownership during the process of scripting: http://www.fmforums.com/forum/showtopic.php?tid/171699/post/183953/hl//#183953 I would say such looping controls is not uncommon in your target market. You should take a look at the way Phil uses your plugin and makes native valiations redundant. I'm not saying that in his case some kind of scripting isn't required, but a lot of the dealings does not require scripts at all! --sd
Homer Posted November 24, 2005 Posted November 24, 2005 (edited) I'm a bit late Phil but here's some comments about the file you proposed to us. Maybe it could be of some interest for you? First, I'm commenting your work only on the triggering-script part. I believe it is a solution that promises to be great but the current matter is not on the scripts, on the graphical look and feel or on the structure of your database. You placed a trigger that hides the calculation results as soon a user is changing the quote's details so I'm commenting this part. : I think every calculation you created to launch the "hiding script" can be simpler. Instead of writing : If ( Get ( ActiveFieldName ) = "GCE_how many out" ; If ( S4HU_EventScript(Get (FileName ); "set invisible on" ; "" ) = ""; GCE_how many out; GCE_how many out) ; GCE_how many out I think you can actually use something shorter like : // Solution 1 If ( Get ( ActiveFieldName ) = "GCE_how many out"; GCE_how many out & S4HU_EventScript(Get (FileName ); "set invisible on" ; "" ); GCE_how many out ) OR another equivalent is : // Solution 2 GCE_how many out & If ( Get ( ActiveFieldName ) = "GCE_how many out"; S4HU_EventScript(Get (FileName ); "set invisible on" ; "" ); "" ) You can choose either one. The idea in an auto-enter option that is used to trigger a script is : 1. Providing to FileMaker the necessary auto-enter value for the current field (here we are using the field itself as the auto-enter result) and 2. to trigger a script by the same opportunity. In your calc, evaluating if EventScript will return an empty value (your second If (...) = ""; statement) is not required nor useful. This condition can be used when you need to know right away if the target script was launched correctly. This is an immediate execution feedback in the calc itself but I don't think you need it here. Another comment is about the fact that changing a value on the quote while the totals are shown then clicking directly (without commiting the record) on your Calculate button will hide these totals. Where I was expecting to see the news totals (refreshed and shown). Of course the user can click twice on the Calculate button but it is a bit strange !? This phenemenon is caused by the priority in the FileMaker execution stack when multiple scripts are running. If this hiding-concern is a real problem, just tell us and we will be able to find an easy fix for this. HTH. Edited November 24, 2005 by Guest
Inky Phil Posted November 24, 2005 Posted November 24, 2005 Hi Homer and thank you for your advice. The double clicking issue is one that I have just not got round to fixing yet but I should be able to sort it. Thanks again Phil
aholtzapfel Posted November 25, 2005 Posted November 25, 2005 (edited) Here is a solution. It does not work with radio buttons but a Pop-Up Menu instead. It uses an invisable button, the optional script parameter, and a script to track entry and changes to a field defined as a pop-up menu. If nothing else, it shows what is possible without the use of a plug-in. Couple of notes: Entry field must not be in tab order and the script must exit the entry field so the value cannont be changed without running the script. Sample.zip Edited November 25, 2005 by Guest
SurferNate Posted December 17, 2005 Posted December 17, 2005 Let's not forget the ubiquity of the internet paradigm. Almost every computer user in the word expects a "search" field to actually "search" instantly when they press the Enter button. Show me how to cause an "intelligent" search to occur in the current active set without resorting to a portal. While portals are very good things, they are not good for some things. Yes you can force a portal to look and feel like a list view but it will not really perform like a list view. And setting up a "search" through a filtered portal is a real effort in development involving multikeys and recursive functions to break down the data in such a way that it will at least act like a good scripted find. Why not just have ONE global "Search" field and ONE triggered script to perform the search anywhere within the solution? Why should a user have to grab the mouse and click on a "GO" button when the enter key is already under their little finger?
Søren Dyhr Posted December 17, 2005 Posted December 17, 2005 Why should a user have to grab the mouse and click on a "GO" button when the enter key is already under their little finger? Perhaps the right response, but havn't landed in the wrong thread? ...wasn't it meant to add perspective to this thread instead?: http://www.fmforums.com/forum/showtopic.php?tid/171496/post/186673/hl//#186673 Well if my assumtion is right, comes remapping of keyboard shortcuts to mind! Otherwise didn't I get your point! --sd
Søren Dyhr Posted December 17, 2005 Posted December 17, 2005 (edited) On second thoughts, it must be the same a Vaughan says here: Mode-ism -- especially modal dialogs -- have fallen quite out of favor recently, but there are times when some kind of modality is needed, though not necessarily through a dialog. This is where the design of a good interface becomes challenging, because it has nothing to do with fancy faux-metallic graphics or colour harmony. It's about process anddata integrity, and it requires a great deal of thought and experimentation and user testing. I wouldn't deny that the post nitendo generation could easily live with a commandline in $bash frame, as long as a girl in her underwear poses at the wallpaper behind frame where the unix geeking goes on. ...Doing all kinds of filtering a.k.a. curl | sed .... making all the relevant data pop up with the speed of lightning just after pressing enter... But is filemaker not more meant to fall into the methaphoric interface cathegory??? Where mySQL and postGreSql probably better suits the "enter" pressers?? --sd Edited December 17, 2005 by Guest
dxl Posted July 3, 2006 Posted July 3, 2006 Would you mind explaining part of your script? Specifically, the Pause followed by a Loop and If statements. My try, ends up in an endless loop.
aholtzapfel Posted July 25, 2006 Posted July 25, 2006 (edited) the pause is required to let the script the user interact with the layout(without the pause it will loop forever) the If statements have to be carefully to check for a change in value in the field or a change in what the active field is (exiting in either case), a pop-up menu will pause the script when open but the loop is required to allow it time to open. Hope this helps (the is very limited solution, but usefull for stuff like causeing the screen to refresh after changing a value in a pop-up menu) Oh, I have tried this with several versions of FM and this behavior is slightly different in each. this example was done in FM8. Edited July 25, 2006 by Guest
Recommended Posts
This topic is 6698 days old. Please don't post here. Open a new topic instead.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now