Tuesday, September 16, 2008

Shared Actions and Refresh Design

I had an interesting issue with Shared Actions in Notes Views today.

I had built a new application (or more accurately a group of features) for a customer, but due to the customer's requirements I had to retro-fit my new code into and existing .NSF. The existing code was to be retained, with a front page for the user's to choose the new features or the existing features (not my choice in implementation, but beyond my control).

The existing application had over 300 views. It was not part of my brief to do anything about this. A template was delivered to the customer with the combinded code. After testing and implementation the customer discovered that a small sub-set of the old views had the wrong action buttons.

The customer sent me back a copy of the database, taken from the production database. What appeared to have happened was this:

Before the new template was applied:

Shared Actions (as they appeared in the Actions list)
  - Action A
  - Action B
  - Action C

View Actions
  - Action A (shared action)
  - Action B (shared action)
  - Action D (standard action)
  - Action E (standard action(

After the changes were applied (the database was set to inherit from the new template, and 'Refresh Design' was used to update the database)

Shared Actions (as they appear in the list
  - Action 1
  - Action 2
  - Action 3
  - Action A
  - Action B
  - Action C

View Actions
  - Action 1 (shared action)
  - Action 2 (shared action)
  - Action D (standard action)
  - Action E (standard action(

So what seems to have happened is that the view points to the action's offset in the shared actions list, not the action name or some unique identifier.

A further complication was that fixing the views in the template then refreshing the design did NOT fix the production database.

The only solution was to fix the views in the template, then delete the views from the production database then copy and paste them back in directly from the template.

I am not at all comfortable about a solution that involves directly modifying the production database. I also have no idea why this only affected a small group of views, other than these were the only ones that used the shared action that was previously the first action in the list.

Thursday, September 4, 2008

Syncing the iPod Touch calendar

I have an iPod Touch. I was given this as a Christmas present, and at first I wasn't sure how much I would use it as I am not a big music fan. I quickly found myself addicted though - by the apps, video for the kids to watch while travelling, etc. I still don't like iTunes very much, and jail-broke the iPod after about 3 months.

I use Lotus Notes at work and have a Blackberry, and the company runs a BES for Domino. For the last two years I have just taken full sync for granted. I have to say I don't miss the old days of connecting pda / phone to the pc, syncing with the pc, pushing to the server & missing updates to my calendar made by my manager between cycles. The Blackberry has been a fantastic solution for that.

However I use Google for personal mail and calendar. I have been able to sync the mail app on the iPod with Google via WiFi from the start but have not used the Calendar because I couldn't work out how to get the data transferred. iTunes only supports syncing the calendar with Outlook on a PC or iCal on the Mac. I don't use either of these.

So today I installed NemusSync on my iPod touch. link. This is a third-party app (available through Cydia and Installer.app) which allows you to sync your iPod / iPhone calendar directly with your Google Calendar without the need to pull the data down to your desktop.

I had trouble at first. I downloaded the app and set up the Google calendar details. I hit the sync button and went to my calendar - the calendar opened for a few seconds then closed. And again. And Again.

I went back into the NemusSync settings and cleared all the data from the calendar (no loss, I had not entered anything there). Back into the calendar app - same result

Then I cleared all data from NemusSync. The calendar app would then work correctly.

I searched but could not find any reason for this.

So I went back into Nemussync and tried again. This time, I made only one change at a time then tested the Calendar app. I set up the link to the calendar. Tested OK. Set up import only. Tested OK. Synced both ways. Tested OK. Set up default calendar. Tested OK.

So now it is up and running well. Full bi-directional sync. I haven't tried repeating appointments, or meetings with invitations but for my personal calendar I don't need those.

A nice little utility

A new job is in the wind

I have found a new job.

I have been casually looking for a new job for a couple of months now. I have been in my current job for nearly 10 years, and my employers are wonderful people, but I am finding that the amount of travel and the hours involved are just getting too much for me.

I live in Melbourne, Australia, quite close to the CBD and have been driving out to the suburbs for work for many years. And almost all our customers are waaaaaaaay out.

My new job is in town - just 15 minutes from home by public transport. It means that my husband will also have to do all the morning drop-off, but as he is semi-retired now this should work out OK. The work day is slightly shorter - 7.5 hrs instead of 8. So all up I will gain at least an hour a day. This may not sound like much but to a busy working mum it currently sound like luxury.

In addition, my current role has recently involved a much higher proportion of admin support work than ever in the past. The job used to be about 90/10 between dev and admin but has recently been more like 60/40. And the admin work has been support / fix type work rather than infrastructure / planning / upgrade projects. And a lot of the development has been just building something that someone else has spec'ed.

In contrast the new job is all development. I will also be in control of my projects from start to finish - requirements, through to implementation. It is with a very small consulting arm of a mid-sized accounting firm so I will be interested to find out how much interaction my group has with the larger organisation.

Now the hard part is working out my notice for the current employer. I am so ready to move on