Author Topic: How does the Entourage ID know which record to access in a multi user environmen  (Read 3475 times)

UKfmpman

  • Member
  • *
  • Posts: 2
I am trying to implement Entourage Manipulator in a multi user environment.
It seems that the Entourage ID returned to each FM calendar record is just a sequential number. I assume that each Entourage user will have the same sequential numbering in their database, and it therefore follows that the numbers in a multi user environment will not be unique to individual copies of Entourage.
How can you ensure that the right Entourage record is updated in each individual users Calendar, and how can you store the Entourage ID's for each user.
If the users send the records to different copies of entourage then the returned Entourage ID will undoubtably change depending on which user updates the record. It also follows that if this is so, then the wrong records could be updated as there is no unique identifier to the entourage record.

Chris

  • God
  • Member
  • *****
  • Posts: 83
Try creating a join table with at least 3 fields.  One field for the FileMaker record ID, one for the user Id, and one for the entourage record id.  For each FM record the join table will have an entry for each user of the system.  When it comes time to update the record for a particular user look up the entourage id for the record in the join table.

UKfmpman

  • Member
  • *
  • Posts: 2
Thanks Chris

I had kind of worked this one out before I posted the message, and it is nice to have my thoughts confirmed.

Just wondered if there was an easier way - but since posting the message I can't think of any other way of retaining individual users Entourage ID and resetting it against the users record when they view the stored Entourage record.

How does the GUID fit into all this - I only get an !ERROR! returned in my fields when I run any of the update/add scripts, so I haven't seen a value yet.
Would it be worth storing this against the user records (when it works)

Thanks again - have tables ready, now must make them work  8)

Chris

  • God
  • Member
  • *****
  • Posts: 83
I am not aware of an easier way...but the proposed method is not too difficult to implement.

I am not sure why the GUID is failing to return an accurate response nor am I certain as to which value it should return.  Perhaps try using the PCEM_GetLastError function immediately after GUID returns error (or when any function retruns !!ERROR!! for that matter )

I don't think it is necessary to store anything but the record IDs in the new join table.  What you will need to be weary of is users accessing FileMaker from other machines.  For instance if a user accesses FileMaker from more than one machine then FileMaker will need to know which of the join records contain the appropriate Entourage ID for the user operating from a specific machine.

Chris