Tuesday, June 21, 2011

Tip for those working with Database events in 8.5.x designer

If you're working with Open/Close events, it's quite cumbersome when you want to test your code. You have to close the app in both Domino Designer and Notes. I used to close the designer every time I wanted to test modified code.

During a chat, Tim Tripcony mentioned that you could close the apps in Designer from the Package Explorer. In Package Explorer, each app is shown as a project. To release the app from Designer, simply right click the project, and select close project. No need to remove the app from Designer or close Designer to release the app from memory.

Share and enjoy! :)

Creating your own keyboard shortcuts in Domino Designer

File -> Preferences --> General -> Keys

I currently have two custom keyboard shortcuts, Alt + b to build a single project, and Alt + c to close a project in Package Explorer.

Friday, June 17, 2011

One editable area can be used multiple times in a Custom Control

Not sure how many now this, but an editable area (xp:callback) can be used multiple times inside a custom control.

If you have an editable area with fields, you can put the field several places in the custom control (same facetName). I'm currently working on a custom control that lets the user edit/add documents. Inside a repeat control, I show the existing documents. Below that, the user can add documents.

E.g.
..
<xp:repeat>
..
<!-- View and edit existing fields -->
<xp:callback facetName="fields" disableTheme="true" />
..
</xp:repeat>
..
<!-- Create new document -->
<xp:callback facetName="fields" disableTheme="true" />
..
I also discovered that currentDocument seems to point to the "closest" document data source.

Monday, June 13, 2011

Simple API tester - SSJS bugs remain

A couple of years ago I blogged about bugs in Array.splice, String.match with global modifier, and String.replace with function as parameter.

I did a little test on the current beta of 8.5.3. Guess what. Two years later, the bugs still haven't been fixed.

I made a small API tester utility that you can set up tests for the API/expected result. In the demoapp, there are tests for the bugs that I'm aware of. I also added a couple of tests for inconsistencies in the @-functions api.

It's quite simple to set up for JS/ECMAScript tests. Do the test in Firebug or a similar JS console. Copy/paste the expression, and the result into the fields in the XPage. Run test to see if the result is what should be expected. Note that SSJS follows ECMA-262 Edition 3. Firefox also follows this standard, but has features from JavaScript 1.8.x (according to wikipedia) that SSJS doesn't have.

>> Download API Tester

Disclaimer:
This is beta software from IBM and does not represent a commitment, promise or legal obligation by IBM to deliver, in a future release of Notes/Domino or Lotus Notes Traveler, any material, code or functionality described/shown in this presentation.

Friday, June 10, 2011

Another release of the API Inspector

Changes
* Possibility to select XPage to inspect
* No longer a custom control - One XPage to inspect them all!
* Links to the XPages API for XPages classes


You can download the latest release from OpenNTF

Screenshots


Thursday, June 9, 2011

New release of the XPages API Inspector

You can download it from OpenNTF.

Changes:
* Tweaked the user interface
* Now requires 8.5.2 or higher (Process data without validation)
* Removed dijit.form.Textarea from the expression area, and made a simple resize function instead (due to refresh issues)
* Previous expressions are stored/can be selected from a combo box
* SSJS Code and CSS moved into a library/stylesheet for easier maintenance

Screenshots