ARIS Community - We Love BPM

What are the limitations of Aris Designer Macro Interface ?

zizzap's picture
by Paride Zizzari in Reports & Macros posted on 2018-02-06

Good afternoon,

I am using Aris Architect/Designer 98.7.

I have written a macro script that automatically generated 1'500 models based on an Excel input file. The models are of type Constants.MT_INFO_FLW_DGM  and Constants.MT_PRG_STRCT_CHRT with tens of connected objects.

Unfortunately the macro stops after a few hundred models despite increasing the memory of the abs_m modeling component. I was wandering if you could provide any figure with respect to the limitations of the Designer Component Interface. The only reference I have found in the documentation states that :

For example, processing capacities are exceeded if models and diagrams transcend the size of the modeling area or an extremely high number of processing operations is started simultaneously. Physical limits may be exceeded if the memory available is not sufficient for the execution of operations or the storage of data.

Thank you for your support.

Best regards.

 

464 Views
0 Likes
3 Comments
Sorry there are no tags
There are no attachments
Frank Weyand posted on 2018-02-06

Hi,

how does the macro stops? Maybe it is an error on client side? As you know, macros are executed on client side, whereas reports are created on server side. So, depending on how you wrote your macro, maybe client memory is too low?

Bye,

Frank

Paride Zizzari posted on 2018-02-06

Hello Frank,

The macro stop at :

Exception in file Generate bottom-up application flow diagrams, line 248:

        var newModel = Explorer.createModel(technicalFlowPath, modelName, TECHNICAL_FLOW_MODEL_TYPE) ;

com.aris.modeling.client.common.macro.AMacroException:

com.aris.modeling.client.components.explorer.macro.ArisExplorerMacroInterface.createModel(ArisExplorerMacroInterface.java:110)

sun.reflect.GeneratedMethodAccessor93.invoke(Unknown Source)

sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

java.lang.reflect.Method.invoke(Unknown Source)

org.mozilla.javascript.MemberBox.invoke(MemberBox.java:126)

org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:225)

org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1479)

org.mozilla.javascript.Interpreter.interpret(Interpreter.java:815)

org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:109)

org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:393)

com.idsscheer.report.execution.javascript.AScriptContextFactory.doTopCall(AScriptContextFactory.java:298)

com.idsscheer.report.execution.javascript.ADelegatingContextFactory.doTopCall(ADelegatingContextFactory.java:191)

org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3282)

org.mozilla.javascript.InterpretedFunction.exec(InterpretedFunction.java:120)

com.idsscheer.report.execution.debugger.backend.AScriptDebugger.startScript(AScriptDebugger.java:187)

com.idsscheer.report.execution.debugger.backend.AScriptDebugger$2.run(AScriptDebugger.java:288)

java.lang.Thread.run(Unknown Source)

 

My workstation has 16Gb of RAM and a CPU i7-6700@ 3.4Ghz.

The JAVA SE binary (32bit) runs at between 35% - 65% CPU and a stable 828 MB of memory.

Frank Weyand posted on 2018-02-07

Hi,

maybe client log files would show more, but currently, my expectations are that you are creating those models in a script on client side, and the macro loads all those models, which forces the client to break.

The memory on you local machine is not relevant, since the memory available is limited.

I recommend to write a report instead a macro, and especially, do not collect all the models in your code.

Bye,

Frank