Skip to main content

Xpages issues and Solutions

Issue List Solution
For opening a '<a href>' in Xpage in new window, pls use this code: docID:=@Text(@DocumentUniqueID); database := @Subset(@DbName; -1); databasename:=@ReplaceSubstring(database;"\\";"/"); server :=@ServerName; servername:=@Name([Abbreviate];server); xspfrm:=@If(form="FormA";"XpageA.xsp"; form="FormB";"XPageB.xsp";"XPageC.xsp"); "<a href='/"+databasename+"/"+xspfrm+"?databaseName="+servername+"!!"+databasename+"&documentId="+docID+"&action=openDocument' target=_new>"+Open Document+"</a>"
Redirecting one Xpage to another Xpage: If Redirecting One Xpage to another Xpage is done by using “redirectToPage” function available in SSJS
@DbColumn in SSJS: var viewHandle:NotesView=database.getView(viewName) return viewHandle.getColumnValues(colNumber-1)
@DBLookup from a different database present in a different server in XPages : var dbName=Server-Name+"!!"+Database-Path result= @DbLookup(dbName,viewName,lookupKey, {lookupField or column no})
Customizing the Application UI layout design Basically, the server style classes get set to the xpage OneUi layout design on preview. To customize it, we can write our styles with server style class and include that stylesheet in the xpage. By doing this, our stylesheet overrides the server styles. For example: lotusContent is a class inherited from server core.css. It has overflow style as hidden. To overcome this, we can add a stylesheet (name it applicationstyeles.css), write overflow as auto for the same class and include it under resources in the xpage/oneUi layout custom control.
@DBlookup from a different database present in XPages : Lookup from foreign db requires path to be mentioned with "\\" as shown below, var dbName = new Array("Home/Personal","Development\\Projects\\Canon\\PMSystem17Aug12.nsf"); var tmp = @DbLookup(dbName,"lkpEEmpDetails","01453",5); return @If(@IsError(tmp),"Errors",tmp)
Authors and readers field type to render using xpage For the authors and readers field type to render using xpage, assign computeWithForm to onLoad under xpage - All properties - data - domino data source. computeWithForm property has three options "onLoad","onSave" and "both". "onSave" and "both" options work only if the computation on the form and xpage syntax are similar. For example: Assume we have three fields in form and we are using xpage for it. Case 1 : a. Author Field - Default value - "[SUPERUSER]" b. Reader Field - Default value - "[SUPERUSER]" c. ChkUnique Field - Default value - @Unique For this case, on asssigning computeWithForm to "onSave" and "both" works fine (Similar syntax). Case 2 : a. Author Field - Default value - "[SUPERUSER]" b. Reader Field - Default value - "[SUPERUSER]" c. ChkUnique Field - Default value - tmpVar:=@DbLookup("":"NoCache";Server:dbPath;"lkupSystemConfiguration";"sysTest";"Test"); For this case, on asssigning computeWithForm to "onSave" and "both" does not work as Xpage DbLookup syntax is different as follows. TmpVar =@DbLookup(@DbName,"lkupSystemConfiguration","sysTest","Test");
To witness constant window/page title across Xpages, mention the below line on the AfterPageLoad event of the oneUILayout custom Control, as it would be embedded in all Xpage. View.setPageTitle("Mention your application name or whatever content you want it displayed as window title")
The prefix "#" and “$” means "compute dynamically” and "compute on page load"
While using tabbed panel with mandatory fields in more than one tab, validation of fields in the tabs other than the tab currently in focusdid not occur. This was because every time, only The fields under the current tab gets loaded and the fields in the hidden tabs donot get loaded. Avoiding the use of XPages tabbed table and using HTML tabbed table will solve the problem

Comments

Popular posts from this blog

"Error in Agent" or "Error loading USE or USELSX" running Out-of-Office agent after upgrading to Domino 6.x

Question After upgrading from one Lotus® Domino® server version to another (for example, 5.0.11 to 6.x), you find that the Out of Office agent does not work and produces errors written to the console and the log (if enabled). The error message in the Domino console is as follows: "Error in Agent ´OutOfOffice OutOfOffice´ calling script library ´Common´: Script library signer ´CN=ServerA/O=Widgets´ does not have proper rights Agent ´OutOfOffice OutOfOffice´ error: Error loading USE or USELSX module: Common AMgr: Agent ´outofoffice´ in ´mail\jdoe.nsf´ completed execution" Maintenance on the database did not resolve the problem, nor did replacing the design or running fixup, updall -r, or compact. Answer Agent security rights in Domino 6.0 were revised to be more robust. This issue occurs when the signer of the script library does not have the correct rights to execute on the Domino server, and/or the script library has not been signed in Notes/Domino 6...

Lotusscript to establish ODBC connection:

The script, when executed from a button, will create a new record in a specified ODBC data source, attempt to save the new record and display a message indicating whether the operation was completed successfully. If the operation is not completed sucessfully, it is likely that either your data source is read-only or your ODBC driver does not permit updates to the data source. Important: Complete each of the four steps below before running the script. 1. Create a new agent and add the following UseLSX command to the Options event: UseLSX "*LSXODBC" 2. Add the following script to the Initialize event of the agent. NOTE: Do not add the 'Sub' and 'End Sub' lines. Dim ui As New NotesUIWorkspace     Dim uidoc As NotesUIDocument     Dim doc As NotesDocument     Dim connection As ODBCConnection     Dim query As ODBCQuery     Dim result As ODBCResultSet         Set uidoc=ui.CurrentDocument ...

"Responses" and "Response to responses"

Lotus Notes has any kind of format of lotus notes document, but what about the “response” and “response to the response.” When you design the form in lotus notes application you can chosen: to create a document with the document format under the primary documents call “response document” or create a document under response documents call “response to the response.” Lotus notes develops can decide whether to provide some structure when you create notes documents. There are many cases that are more relevant documents are clear. Example: a data entry in a document, you can information to employees in the two documents to be attached to the first. Remember that you have entered in the accounting documents of each set a unique ID.  How to tie documents to respond to the main document is to add a field in response documents called $REF. $REF argues that ID is not taken into account. copies of the parent. How “responses” differ from “response to responses”? Do you have a hierarchy of do...