Today we faced with funny problem in LN 6.5.4 (I'm sure the same behavior in any another version of 6.5.X)
We do export of some LN elements and when we import it back we discovered that Input Enabled formula disappear. I checked our DXL file and found that formula was non there. Then I used simple way to check where was the problem, I create simple form, put there 1 field with Input Enabled formula and using Tools\DXL Utilities\Exporter export it to file. There was no Input Enabled formula at all. Funny issues but now we have to rewrite some places.
FYI: This works correct in R7 and ++
Tuesday, June 09, 2009
'Input Enabled' formula does not export in DXL using native exporter
Monday, June 08, 2009
JavaScript libraries and reference sites
Got it from BestPracticesWebAppDevDomino8.pdf
Ajaxian.com
a site dedicated to improving Web development
devguru.com - A another site for Web development information
Dojo
http://www.dojotoolkit.org/
jQuery
http://jquery.com
A fast, concise, JavaScript Library that simplifies working with HTML documents
JSON.org
http://json.org
The home page for JSON information
MooTools
http://mootools.net
A compact, modular, OO JavaScript framework that is designed for the intermediate to advanced JavaScript developer
Prototype
http://www.prototypejs.org/
script.aculo.us
script.aculo.us
Provides an easy-to-use, cross-browser user interface
Yahoo UI
http://developer.yahoo.com/yui
Provides a set of utilities and controls, written in JavaScript
EXT
http://extjs.com
Provides for a cross-browser UI libraries
Some useful links:
Web development tools
http://www.ibm.com/developerworks/wikis/display/dominoappdev/Web+development+tools
Web development resources
http://www.ibm.com/developerworks/wikis/display/dominoappdev/Web+development+resources
Domino resources
http://www.ibm.com/developerworks/wikis/display/dominoappdev/Domino+resources
isNumeric for web
as I think the best approach to check value in web for IsNumeric is:
function IsNumeric(inputVal,sErrorMsg) {I also used such approach, but I don't like it anymore
if (isNaN(parseFloat(inputVal))) {
alert(sErrorMsg)
return false;
}
return true
}
function IsNumeric(expression) {
var nums = "0123456789";
if (expression.length==0)return(false);
for (var n=0; n <>
if(nums.indexOf(expression.charAt(n))==-1)return(false);
}
return(true);
}
Thursday, February 12, 2009
overload of methods/functions in Lotus Script
I make overload for any methods/functions using next approach. It is quite simple and useful from my point of view
Sub new(key As Variant)
Select Case Typename(key)
Case "STRING":
call newForString(key) or do code
Case "NOTESDOCUMENT
call newForNotesDocument(key) or do code
Case "EMPTY
call newForEmpty(key) or do code
End Select
EncryptOnSend, how can we send encrypted email even if "aim-user" does not have a key to read it?
Right now Domino automatically UNencrypt emails for users which do not have a key to read/open them.
From help: EncryptOnSend property
To encrypt a document when mailed, this method looks for the public key of each recipient in the Domino Directory. If it cannot find a recipient's public key, the method sends an unencrypted copy of the document to that recipient. All other recipients receive an encrypted copy of the document.
Wednesday, February 11, 2009
how we can check LIST for empty
Today I was faced with small issue, I realised that I don't know how to check LIST variable for empty. Really, I was so confused. I've done it using next approach, but to be honest I don't like it. If anybody knows better approch, please share it here!
isValid = False
Forall x In myList
isValid = True
Exit Forall
End Forall
...
Wednesday, February 04, 2009
How to disable autorunning SameTime in 8.5
Tuesday, January 20, 2009
Transfer file to WebService and Encode/Decode base64 string
I had a task where I should give opportunity to user send file to WebService written on Java. File always should come as decode base64 string, and in WebService I should decode string to normal (it should be DXL content as result) and then import it in a special database, so I had small problem with decode/encod (dont know why but it was happen). So here this simple exmplae how to do it
public static void main(String[] args) throws IOException {
String str = "my string";
byte[] bytes = new BASE64Decoder().decodeBuffer(s);
String result = new String(bytes, "UTF-8");
System.out.println(result);
}
}
Saturday, December 20, 2008
Debug Lotus Notes applications
I would like to present which approaches I use during debugging LN applications. I would be happy if anybody add new interesting approaches.
[@Formula]
- @Prompt and @StatusBar – the easiest way to debug code written on @Formula
- Field Debug_Fld := value_debug
- @MailSend – for code that runs on server (sch. agents)
- notes.ini - I don't like this approach because of size of variables
Example
strA := "ABC"; strB := "DEF";
strC := strA + strB;
@Prompt([ok]; "strC";"strC = " + strC);
@StatusBar("strC = " + strC);
Field Debug_FieldName := strC;
@MailSend("username";"";""; "debug strC"; ""; "strC = " + strC);
[Lotus Script]
- Lotus Script Debugger as tool for debugging
- Print, MsgBox, NotesLog, Stop, on erorr goto errh
Example
Dim strA As String
Dim strB As String
Dim strC As String
strA = "ABC"
strB = "DEF"
strC = strA & strB
Print "strC = " & strC
Msgbox "strC = " & strC
Stop 'enable debugger require
Dim currentLog As New NotesLog( “debug log 1" )
Call currentLog.OpenFileLog( "c:\log.txt" )
Call currentLog.LogAction( "strC = " & strC)
Call currentLog.Close
[Schedule Agents]
- remote debugger (it is easy to enable it if you read help)
- send an email, msgbox (log.nsf), noteslog
[JavaScript]
- alert(value);
- try – catch();
- Microsoft script debugger \ Mozilla firebug \ Chrom debugger
Lets catch the next simple error
Example
function add(frm){
var i1 = frm.Number1.value;
var i2 = frm.Number2.value;
var fld = frm.total;
fld.value = i1 + i2;
}
when we call function we will see next error:
[Java]
- Java debug console (System.out.println(“text”);
- Try / catch with NotesError and NotesException classes
- Remote java debugging with Eclipse
also I would like to recomend you external LN application openlog.nsf