How are URLs mapped to Domino forms? - lotus-domino

I have an URL that points to a Lotus Domino database, for example:
http://domino853.example.com/db.nsf/wcms/BEC4D26AD7A56823C1257B4B003427A8?OpenDocument
How is that URL mapped to the Domino form?
My first thought was the UNID is looked up in the database, and that the rest depends on the Form item of that document. But that's not the case. The actual form that gets resolved is neither wcms (like in the URL), nor document (like in document.Form), but it is wcms_createdoc. So where could that come from?

After some research, I found it:
wcms is an alias for another view.
That view has #Text(#DocumentUniqueID) as its first sorted column.
And, to select the proper form, it has a Form Formula set.
So this is how it all happens:
The view wcms is resolved. Since the URL continues after the view name, the rest of the URL is the key into that view.
The first document of the view that matches the key is selected. Obviously, for the DocumentUniqueID there can be only one document.
Since the view has the Form Formula set, it is evaluated and maps to the form wcms_createdoc.
This form is rendered.
References:
http://www.ibm.com/developerworks/lotus/library/ls-Domino_URL_cheat_sheet/

Related

Rendering components are showing up twice when clicked on Add Here button in Sitecore Experience editor

In experience editor, whenever clicking on "Add here" button, getting duplicate entries of renderings.
Below is the image for reference. I am using Sitecore 8.2
Use Rendering id's to see if the both are same or different. Add the two renderings to the item in two different placeholders and then check the raw values in the presentation details of the item.
1.If both are same, Then it is caching issue. just clear the cache.
2.If both are different, then there is rendering available with the same name. If it is a duplicate then copy the rendering id from the presentation details and search it in the sitecore content tree and once you have a hit. delete it.

How to add crawl rule to the SharePoint 2010 fast search

We have one Document Library with some set of columns like Type, Name, Active.
We have already configured the SharePoint Fast Search to search the content in the site.
When I am searching with any particular keyword that showing the result as expected.
We got requirement that need to exclude the content form the doc library when the column “Active” is set to ”No”.
Could you please suggest me how can I add crawl rule for the particular doc library.
You are asking to fulfill this requirement using crawl rule. But crawl rule is generic for the content source and it will effect all the content source which is not recommended(and also not possible) for excluding some result depending on item values. So I like to solve this using scope which is described below.
For excluding that, first of all you need to add new managed property for the column "Active".
For that go to search service application-> Managed Property-> New managed property. Give property name and map it to the field "Active". Also select the type of the field "Active". Tick the box for allow this property to be used in scopes.
Then go to corresponding scope-> new rule-> choose property query
then choose from "Add property restriction" corresponding managed property name(property name given by you during managed property creation) and "=" "No"(please use exact field value of the document library), then choose Exclude and click "ok".
Add this scope in the search page and run full crawl in the central admin.
I hope this will fulfill your requirement.

Adobe LiveCycle Flowed Form page margins

I am using Adobe LiveCycle Designer ES 8.2 to create a PDF for a survey. I've managed to create the form from scratch using Flowed content boxes to allow the fields to dynamically expand so that I can print out the survey later.
The issue I am having right now though is that if a field is expanded and it pushes other fields below it beyond the page range, it will create a new page consisting of what couldn't fit on the previous page. This is fine, but I would also like the form to automatically move the content below the last page up. Basically, anytime a page is moved into a new page there is a lot of white space and id like the next page to be moved up under the newly positioned fields.
Thank you
You will need to configure the pagination of your Subforms using the Object > Pagination palette. You can also use the Keep With Next/Previous option to control the grouping of the objects on page break. Also make sure that your top level subform is set to Flowed.

Setting up recycle bin functionality in Archer GRC

When deleting records within the platform, this action is not reversible via the front end. Is there a way to allow users to remove a record from their view without actually deleting the record?
You can simulate recycle bin functionality within Archer GRC by adding a record permission field that grants read access to "Everyone". If read access is no longer required then an editor of the record can go in and change "Everyone" to a group called "Recycle Bin."
Please note that if there are other record permission fields in the application, users or groups may still have access if they are selected in those fields. Perhaps You can set up a dropdown status field for the user to select "Recycle Bin" and use this condition for automatic record permissions to revoke permission to the record depending on the requirements or workflow of the application.
Solution shared by Igritte might be somewhat confusing for end users.
End user will see greyed out "Delete" button in the top toolbar, but he has to select "Recycle Bin" in the form. This solution was not accepted by my business owner at some point.
As a work around for "Soft delete", I wrote a custom object overriding "Delete" button functionality.
1. User doesn't have delete access to the record, so JavaScript code will make "Delete" button look like active and available.
2. Once the button is clicked, custom object will populate value in the
hidden value list and simulate the click on the "Save" button.
Update: Note that Custom object needs to hide the value list first once the page is loaded. Here you will need to use a JavaScript and do the following: [a] locate the value list DOM object and [b] set display attribute to none. I used jQuery library to do both. This way your value list is not displayed, but you still can use it to control data driven events.
3. With hidden value populated and submitted, record permission will hide this record from the end user.
Note that custom object hides one value list on the layout as well.
If for some reason JavaScript doesn't load properly, user simply will not be able to click on the grayed out "Delete" button.
Update: Hidden value list can be populated by custom object using JavaScript code as well. You need to identify the form tag "input" in HTML code of the page and set attribute "value" to the desired state. I used jQuery library to do this as well.
I have this solution in production working fine with IE11, FF and Chrome.
I can't share the code, but with WC3Schools JavaScript guides and 4 hours you can write and test it yourself with very little JavaScript skills.
Sometimes you have to use custom objects when you want to get a user-friendly solution of not available functionality.
Good luck!

SharePoint 2010 and Editform.aspx

In one of my custom application user wants to keep EditForm.aspx open once list item is created and he can keep saving the same record without redirecting user to DisplayForm.aspx page.So what I'm doing after list item creation I'm loading EditForm.aspx again.
Now the problem is when form is opened in Edit mode and if existing field is modified that doesn't gets updated in the list item but if something new added to the field then it gets saved to the list. I believe it's postback issue but not sure how to pass latest form data upon save.
If this was my task, I would create a new application page that replaces the edit page on that list.
(You can use powershell / object model to set the url of the new / edit / display pages)
Ignoring the ribbon, the edit page is actually pretty simple. It shouldn't be too difficult to create a custom one, that has the submittal behavior you are interested in. Indeed, since you are keeping the exact same field names and input types, you may be able to simply inherit the default form in yours, and simply override the post call.
I suppose it might be possible instead for you to write some javascript to hijack the submit post of the default edit page, but this seems messy to me, and I probably wouldn't go that route.
If you don't need to complete this task today, I've been meaning to push to github some code I wrote a few months ago. That code is a custom aspx edit/new/display page that is extremely easy to customize / implement. I could forward you the link tonight when I get out of work.