Andrew Pollack's Blog

Technology, Family, Entertainment, Politics, and Random Noise

My favorite new(ish) @Functions( )

By Andrew Pollack on 08/10/2004 at 09:28 PM EDT

Well, its sure been a long time since I did a really heavy duty new Lotus Notes Client application with a full blown user interface. I have to admit, I've really had to reach back into that back of tricks from way back when. I've also had to refresh on the newer stuff -- embedded views, action button drop downs, and all those front end LotusScript objects that us back-end developers eschew.

In all this, I was trying really hard to move smoothly from one document to the composition of another in code, and kept looking for a way to call the action buttons with front end objects in LotusScript. This was because the code behind the action buttons was in Formula Language and has @Commands in it. I didn't fancy trying to reproduce all that just as I'm finishing the flow of the application and working on fit and finish.

Of course, it turns out I didn't need to try that hard. Thanks to (mostly) Damien who added huge new features to the @Functions in version 6 before leaving the company formerly known as Iris for a position with Kubisoft, there wasn't any need to go through all the trouble of doing any of that work in LotusScript in the first place. The two things I really needed were already there -- and very powerful at that.

First, loops. Easy as pie with @For( ) -- it works just like a loop in any language. You set an initial state, a logical test, and a state change -- then put your code in. In fact, @For() is more like modern languages than the old BASIC style of For and Next being separated. There's a picture of it in action here.

The other thing that used to drive me nuts, was when you'd compose a new document with @Command([Compose];"Formname"); but then you'd have no context to it. If you tried to follow with @SetField("fieldname"; "Value") you'd find out you were still working on the old document, not the newly composed one. Argh! Well, the way around that is a perfectly simply call to @UpdateFormulaContext. It does just what you expect, and what you thought you were getting when you composed the document.

And for you "@Functions aren't real code" snobs -- and I know you're out there -- let me tell you that there are a lot of times when coding with @Functions produces faster code with less typing that is very well supported on all the Lotus Notes platforms. So get your nose down out of the air before it rains and you drown.

Real programmers use the right tool for the job.

This program has been brought to you by....
@For, @UpdateFormulaContext, Damien, and the letter I.
(Ok, maybe not " I" but I really liked the capitol " I" song when I was a kid)

There are  - loading -  comments....

Well, you have finally snatched the pebble, Grasshopper...By Rock on 08/11/2004 at 12:33 AM EDT
And are ready to walk on your own in the world :)

Welcome to the wonderful world of @functions! Pretty kewl, huh? It is amazing
what you can do with them now, and any developer who doesn't consider them a
vital part of their toolkit is not utilizing all the power of Notes/Domino
available to them.

LOL -- back in the day, Rock...By Andrew Pollack on 08/11/2004 at 07:04 AM EDT
Back in the 3.x days, I remember having 2 printed pages for a single
@Function. Of course I could do it now with about 10 lines.
My own thoughts on this are...By Bob Balaban on 08/11/2004 at 08:48 AM EDT
I really like the W song, myself. "It's not any trouble, you know it's a W when
you hear 'wuh wuh wuh wuh'"

Other Recent Stories...

  1. 01/26/2023Better Running VirtualBox or VMWARE Virtual Machines on Windows 10+ Forgive me, Reader, for I have sinned. I has been nearly 3 years since my last blog entry. The truth is, I haven't had much to say that was worthy of more than a basic social media post -- until today. For my current work, I was assigned a new laptop. It's a real powerhouse machine with 14 processor cores and 64 gigs of ram. It should be perfect for running my development environment in a virtual machine, but it wasn't. VirtualBox was barely starting, and no matter how many features I turned off, it could ...... 
  2. 04/04/2020How many Ventilators for the price of those tanks the Pentagon didn't even want?This goes WAY beyond Trump or Obama. This is decades of poor planning and poor use of funds. Certainly it should have been addressed in the Trump, Obama, Bush, Clinton, Bush, and Reagan administrations -- all of which were well aware of the implications of a pandemic. I want a military prepared to help us, not just hurt other people. As an American I expect that with the ridiculous funding of our military might, we are prepared for damn near everything. Not just killing people and breaking things, but ...... 
  3. 01/28/2020Copyright Troll WarningThere's a copyright troll firm that has automated reverse-image searches and goes around looking for any posted images that they can make a quick copyright claim on. This is not quite a scam because it's technically legal, but it's run very much like a scam. This company works with a few "clients" that have vast repositories of copyrighted images. The trolls do a reverse web search on those images looking for hits. When they find one on a site that looks like someone they can scare, they work it like ...... 
  4. 03/26/2019Undestanding how OAUTH scopes will bring the concept of APPS to your Domino server 
  5. 02/05/2019Toro Yard Equipment - Not really a premium brand as far as I am concerned 
  6. 10/08/2018Will you be at the NYC Launch Event for HCL Domino v10 -- Find me! 
  7. 09/04/2018With two big projects on hold, I suddenly find myself very available for new short and long term projects.  
  8. 07/13/2018Who is HCL and why is it a good thing that they are now the ones behind Notes and Domino? 
  9. 03/21/2018Domino Apps on IOS is a Game Changer. Quit holding back. 
  10. 02/15/2018Andrew’s Proposed Gun Laws 
Click here for more articles.....

pen icon Comment Entry
Your Name
*Your Email
* Your email address is required, but not displayed.
Your thoughts....
Remember Me  

Please wait while your document is saved.