I have a document library in sharepoint storing a word document.
If I click on the link to the document I get a dialog box with “you want to open this file in readonly or editmode etc” and can open it in edit mode, change it, save it directly in word an the changes are saved in the document library.
The link to the file in the document library looks like this:
<a onfocus="OnLink(this)"
href="/test/DocLib2/wordtest.docx"
onmousedown="return VerifyHref(this,event,'1','SharePoint.OpenDocuments','')"
onclick="return DispEx(this,event,'TRUE','FALSE','FALSE',
'SharePoint.OpenDocuments.3','1', 'SharePoint.OpenDocuments',
'','','','1','0','0','0x7fffffffffffffff','','')"
>wordtest</a>
How do I create this link in my own web part where I have the name of the file and document library? Without just copying the above code, that wouldn’t be a good idea…
Is there some “official” method to achieve this?
Unfortunately it doesn’t seem like there is a better option. But at least you can sort of figure out what the function definition is. The DispEx function is defined in the core.js file (but it’s easier to read in the core.debug.js). Both are in 14\Templates\Layouts\1033 directory.
Here is the function definition:
Here is my guess on what they mean. Please feel free to add comments to correct any mistakes or omissions:
There are clearly some inconsistencies in terms of using strings and integers to represent boolean values. It’s also strange that your code has 17 parameters but I can only find a function definition with 15 parameters, so I’m not sure what those last two empty strings are for. Some of that is the nature of JavaScript, but it also just looks sloppy on the part of Microsoft.
This doesn’t really answer the question, hopefully it helps you or someone else.