Hi there everybody,
its a long time ago since i wrote here the last time and as always its a pleasure to be right back again.
As you can read out of the 'Subject' of this Thread you should have a clue where's the Problem. If multiple User have Write Permission on a InfoPath SPList.Item, and two or more of them try to edit the Form by opening it with the Full InfoPath Client at the same time, all of them, except the first one, will get the Message:
"This Form cannot be filled out because you do not have adequate permissions, another user has the form open, or the form is open in another program. Do you want to open a read-only copy of the form?"
This is basically a good feature, but i miss the Information about 'WHO' has currently the Document opened.
Mr. Olander has already solved this riddle by creating a workaround: 'try to edit' some Attribute of the Form on the Form Library Page - which will reveal the name of the 'locking' user. (see: http://www.infopathdev.com/forums/p/5922/22095.aspx)
But, to tell the truth, i dont think i can explain our chief executive officer that this is the only way SharePoint in combination with Infopath is capable of doing it. So i am looking currently for a Solution which will display the (and let it be only the Domain Loginname) instead of the error Message above.
So any hints?
If there IS really no way, then i have to life with it, but thats exactly what i want to figure out - with all of you. :)
btw. if this task will be marked as 'Very Very Important' in our Company (and believe me it looks currently like that), and there is really no easier way, it should be possible to create a WebService which will be called by the Form every time someone tries to open it. The WebService will try to edit a Parameter of the InfoPath Form within the Form Library and catch the exception with the Username, and returns it to the InfoPath Form back where i could display the current 'editor' within the Form as Field or as a Message window after the Error above. And yes i know, this is a really 'the last way a Programmer should go'-Solution.