Before I begin this tip I would like to mention that trick was developed by Ashwin Satyamoorthi and myself. Ashwin developed the AlertForm.
The first step is to create a form and call it "AlertForm" (you can change the name of the form ... of course).
Write the following code in the OnLoad event of the form:
I'll explain what this code does in sometime.
The next step is to put some fields on your form. The following fields are required on the form:
Field name:- Query_String_Decoded Type:- editable Default value:- Field name :- reqd_query Type:- computed value :- @Left(@RightBack(Query_String_Decoded ; "openform&") ; "redpath") Field name :- addl_query_redirect Type :- Computed value :- @Trim(@RightBack(Query_String_Decoded ; "redpath"))
The next step is to include an error handler in your script that you want to debug on the Web.
On error goto errHandler your code goes here errHandler: Print "[/" + currDoc.hdatabase_webTX(0) + "/AlertForm?openform&"+Error$ +".redpath]" Exit Sub
currDoc.hdatabase_webTX(0) is a field on the form from which this script was called, the field stores the value of the Web path of the database and has the following formula :- @ReplaceSubstring(@Trim(@Subset(@DbName;-1)); ""; "/")
If a calling form is not available then you can use the filepath property of the notesdatabase to generate the path in the print statement of the error handler.
explanation of the print statement:- the print statement basically opens the AlertForm and populates the value of querystring with the text of the error message. The text is got from the Error$ in the print statement. The next option in the statement is "redpath" if you include a URL after this text the alert form will take you to this URL if there is no text after redpath then after the alert message is displayed then the script will take you back to from where the script was triggered if the script was triggered from a form then the user will be taken back to the form.
You can modify the print statement to also include the line number to make debugging easier.
Explanation of the fields on the AlertForm :- Query_String_Decoded needs no explanation I guess.
reqd_query picks up the error message to be displayed from the Query_String_Decoded field
addl_query_redirect picks up the redirect path if any.
Sub Initialize On Error Goto errHandler Dim session As New NotesSession Dim currDB as NotesDatabase Dim currDoc as NotesDocument Dim x as integer ' initialise variables Set currDB=session.CurrentDatabase Set currDoc=session.DocumentContext x=129/0 Print cstr(x) Exit Sub errHandler: Print "[/" + currDoc.hdatabase_webTX(0) + "/alert?openform&"+Error$ +".redpath]" Exit Sub End Sub