Useful report hints

Use Context.setProperty(“model-as-emf”, true) once (before writing model graphics to the report)

Open other databases using ArisData.openDatabase()

Save memory by using Database.clearCaches()

Use it where it makes sense (after using many objects that are not needed any more afterwards).

Clean up after an error! especially

Always use try/catch for error handling. You can report detailed error logs to the user using the following code

try {

your code which might throw exceptions

}

catch(ex) {

var line = ex.lineNumber

var message = ex.message

var filename = ex.fileName

var exJava = ex.javaException

if(exJava!=null) {

var aStackTrace = exJava.getStackTrace()

for(var iST=0; iST<aStackTrace.length; iST++) {

message = message + “\n” + aStackTrace[iST].toString()

}

}

Dialogs.MsgBox(“Exception in file “+filename+”, line “+line+”:\n”+message )

}