Step Type when executing mapping

Hi am a newbee here. I would like to know what are step types when we execute the mapping and if I have a simple map then which one would be the best option?
We have many options (Row Based, Set Based..etc)
Thanks,
Kriti

Ok... it all depends on what your mapping is doing.
Set based provides better performance. In the other hand, there's some operators that won't work in set based mode, so you'll have to alter this property to row based. The "Target Only" tag means it will run in the selected mode only in the target database.
For further info, refer to Oracle Warehouse Builder User's Guide 10g Release 2 (10.2), chapter 15 - Understanding Performance and Advanced ETL Concepts.
Look for the Set Based Versus Row Based Operating Modes section.
Regards
Marcos

Similar Messages

  • Error when executing Maps Updater

    Hi,
    I installed Nokia Maps Updater version 1.0.12 but I'm not able to use it. It opens and reaches the window where is shows "Checking for Updates" but then I get this error:
    "Error
    Cannot get enough information about the phone [3].
    Unspecified error [1]."
    Does anyone what is causing this? Was Nokia already informed about this issue?
    Thanks.
    _sm
    Attachments:
    error.JPG ‏15 KB

    I forgot to mention the model. This happens with a N78. I didn't try any other model.

  • Need to assign Role into step type mail in recipent type

    Hi Experts,
      I need to assign role to  for step type send mail recipent type . but in drop down there is not any role option to assign . to achive this i created organization  then position and assing job to that position then assigne to role under that job . after all in recipent type i assigned  with job . but when i execute workflow i am getting error . even i dirctally assign role to position and then assigne that position to recipent type. when executing my workflow i am getting error .
    but if a assigne user to position or job my workflow working properlay.  is there any proble to assing Role to Job or position.
    please let me know is there any  extra thing i need to take care when i assign  Role to position or Job .
    point will rewarded for right answer.

    Hello,
    Get the users assigned to the role into a container element in the previous step of 'SendMail' step and use the same as the recipient of the Sendmail step.
    This would be a better and easy option as Arghadip said.
    Hope this will help.
    Regards,
    Samson

  • VLD-1111 Unknown step type

    Hi,
    I'm getting the following error:
    VLD-1111: Mapping cannot be generated due to unknown step type.","This mapping contains conflicting components and there is no compatible step type to generate the mapping. Please modify the mapping and remove conflicting components.
    I'm not sure what I'm doing wrong. I have to join two sets of records from different sources. So I've create a SET object and a function to generate null values, in order to expresion for calcs like '(value1 * value2 ) + value3', joins objects to merge attributes, etc. My sources are tables from database.
    TIA

    Javier,
    Could it be that you first use the match-merge operator and then try to use the set operator?
    If that is the case... then use a table in between to stage the result.
    Thanks,
    Mark.

  • Why do I get error -17500 when calling a batch file using the call executable step type?

    I am calling a batch file using the call executable step type. If the path to the batch file contains a space I get error -17500 and a message stating there was an error in "Post". For example the path to the batch file is "c:\TestWin\Test Files\...\Program.bat" When I run this I get the above mentioned error, however if I change my directory structure so the path is now "c:\TestWin\TestFiles\...\Program.bat" it runs fine. I use the browse feature to find my batch file so it is not me typing in a path incorrectly. I have removed the batch file and I get a different error stating that it couldn't find the file so it appears that for my error it can find the file but can't run it. I am
    sure that this has something to do with the fact that batch files are written in DOS but really don't want to resort to changing my directory structure on all my test stations. Is there any way to fix this problem so I can leave a space in my path?

    It appears I have figured it out. This was on another computer so I was unaware of how they used their computer. I like you got it to work in the temp directory and in fact got the program.bat file to work as long as I put it under the temp directory, but when I switched out to my TestWin directory it wouldn't work, so I removed everything from the directory except the batch file it self and it work. What I found out after adding files in one at a time is that the person had a file called "Test" with no file extension in there "c:\TestWin\" directory. Removing this file made it work. Putting the file back broke it. So it appeares that when teststand was running it followed the path saw a space and attempted to grab the "Test" file instead of bro
    wsing into the "Test Files" directory. If you create a file in your temp directory called "temp" with no file extension you will see the same problem. Thank you for your help.

  • When i run a sequence with ivi step types in simulation mode i get the error code number BFFA0015 - Types do not match.

    When i run the sequence with ivi step types in simulation mode i get the error Types do not mathc. The step that generates this error is an IviScope step type and is configured as a measurement. Th weird thing is that in real mode is working perfectly. I have three measure steps and i get the error in all of them. The exact error message is:
    UUT Result: Error, Error executing substep 'Post'. An exception occurred calling 'RunStep' in 'ISubstep' of 'TestStand Ivi Step Types 1.0 Type Library' An error occurred while executing the step. Component Works IVI Control Error: The IVI Read operation failed on channel '1' for logical name 'SampleScope'. Details: (1
    ) Types do not match. [IVI Error Code: BFFA0015] Source: TSIviStepTypes [Error Code: -30721, User-defined error code.]
    Can someone tell me how to fix this problem?. It seems to me that the simulation generates a diferent type of measurement of that generated in real mode.

    Update:
    The simulation driver appears to be raising the error. By switching to specific driver simulation the error does not occur. This may be a problem in either the class simulation driver or the specific driver.
    Scott Richardson
    National Instruments

  • Process flow failes when executing a mapping by error ......

    hi all,
    When we executes a mapping through owb normally it works fine.
    But the same when executes throgh a process flow it get falies with the f/w error.
    *"Set based mode not supported ORA-06512"*
    The operating mode is "set based fali over to row based"
    In the mapping we are doing some transforamtion and putting the data in a flat file.
    Please help in this reagrd.
    Regards
    ashok

    Hi,
    change in processflow configuration property OPERATING_MODE for this mapping to ROW_BASED or ROW_BASED_TARGET_ONLY
    Hope this helps!

  • RuntimeException when executing application mapping program

    Dear Friends
    I am trying to send an Idoc from R3 system to an SCMTM system.
    I have imported the idoc, message mapping is preconfigured from SAP and requisite  configurations in ID have been completed.
    I am getting this error in test of Interface mapping (operation mapping).
    RuntimeException when executing application mapping program com/sap/xi/tf/_DESADVDELVRY03_to_ShipmentRequestRequest_; Details: com.sap.aii.mappingtool.tf7.IllegalInstanceException; Cannot create target element /ns0:ShipmentRequestRequest. Values missing in queue context. Target XSD requires a value for this element, but the target-field mapping does not create one. Check whether the XML instance is valid for the source XSD, and whether the target-field mapping fulfils the requirement of the target XSD.
    Please help.
    Thank You
    Warm Regards
    Arjun Ghose

    Hi,
    it seems that per your XSD the element "/ns0:ShipmentRequestRequest" needs to be created and filled with a value (occurance min 1). But appearently within your mapping you do not create or fill this element. So the validation of the XML against the XSD fails.
    Please check your mapping regarding the element "/ns0:ShipmentRequestRequest".
    Reagrds,
    Kai

  • SWDD abends when dragging a step type into existing template

    Hello,
    The following steps cause an abend.  Has anyone seen this and found a fix?
    - Start transaction SWWD
    - drag a new step type into an existing workflow template
    - at the cursor a plus sign displays
    - upon releasing the mouse button the program abends
    I created an incident report in OSS.  While awaiting their response I thought I would ask the community.
    The abend listing is included in an attachment.
    Thanks
    Bruce

    Hi Bruce
    Solution: Note 1783103 - Short dump or system hanging during drag and drop in the workflow builder - Same abend message and steps. This note asks to Apply note 1769371 to solve the issue. Please note that the correction comes with SAP GUI 7.30 patch 2 ...  Ronen Weisz is correct in saying that the SAP GUI is the culprit here ;-)
    regards,
    modak

  • Got 17300 error when execute IVI step in TestStand

    Hi all
    This is a PCBA test platform,, a 4072 card is used for two sockets, I locked the DMM blocks in order to have just a socket access it at same time.
    but the DMM read step type still often has 17300 error, value invalid or out of range, if run only one socket, did not see same problem.
    Confused on this.
    *The best Chinese farmer*
    Attachments:
    dmmerror.JPG ‏153 KB

    Hi Farmer
    The DMM is configed to immediately trigger mode, see attachment, according to the help, immediate means DMM dose not wait for any trigger signal, just read it as soon as the "Read DMM" running.
    帖子被paulbin在09-12-2007 10:17 PM时编辑过了
    帖子被paulbin在09-12-2007 10:27 PM时编辑过了
    *The best Chinese farmer*
    Attachments:
    DMMConfigWindow.PNG ‏55 KB

  • Random error when executing a workflow (urgent!!)

    We are sometimes getting the following error message when a workflow is executed:
    "com.waveset.util.WavesetException: Can't call method getObject on class com.waveset.server.InternalSession com.waveset.util.InternalError: ID not passed to ObjectCache.getObject"
    This error occurs randomly (sometimes happens and sometimes don't, even when repeating the same test) when executing the create user and update user workflows.
    The problem is that in spite of this error, the user is successfully created and provisioned to all resources (when executing the create workflow) and all changes made user to the user are also successfully provisioned (when executing the update user workflow), so we are not quite sure what is causing it.
    So far, we've checked across our code to make sure that every time the getObject method is called we are passing to it the following code as context:
    <invoke name='getObject'>
    <select>
    <ref>context</ref>
    <ref>:display.session</ref>
    <invoke name='getLighthouseContext'>
    <ref>WF_CONTEXT</ref>
    </invoke>
    </select>
    But this made no difference.
    Any comments on this issue would be much appreciated!
    Here are 2 different examples of this error from the logs:
    1)
    Walking case 'Create User'
    Walking case 'Approval'
    Processing steps in 'Approval'
    Step pass 1
    Check completion 'Approve'
    Processing work item results from 'testuseradmin'
    Step complete 'Approve'
    Step pass 2
    Resolved reference WF_ACTION_TIMEOUT = null
    Step inactive 'Approve'
    Step executing 'Check Status'
    Action
    Evaluating XPRESS
    Resolved reference APPROVAL = true
    Resolved reference APPROVAL = true
    Assigning approved = true
    Resolved reference ACTUAL_APPROVER = testuseradmin
    Resolved reference ACTUAL_APPROVER = testuseradmin
    Assigning actualApprover = testuseradmin
    XPRESS returned =
    <WavesetResult>
    <ResultItem type='error' status='error'>
    <ResultError>
    <Message>
    <Text>XPRESS <invoke> exception:</Text>
    </Message>
    </ResultError>
    </ResultItem>
    <ResultItem type='error' status='error'>
    <ResultError throwable='com.waveset.util.WavesetException'>
    <Message>
    <Text>Can't call method getObject on class com.waveset.server.InternalSession</Text>
    </Message>
    <StackTrace>com.waveset.util.WavesetException: Can't call method getObject on class com.waveset.server.InternalSession&#xA;==> com.waveset.util.InternalError: ID not passed to ObjectCache.getObject&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.checkBreakpoint(WavesetException.java:513)&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.<init>(WavesetException.java:229)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:908)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:846)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:171)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.getBinding(ExState.java:893)&#xD;&#xA;&#x9;at com.waveset.expression.ExReference.evalInternal(ExReference.java:252)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:130)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.getBinding(ExState.java:893)&#xD;&#xA;&#x9;at com.waveset.expression.ExReference.evalInternal(ExReference.java:252)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExGet.evalInternal(ExGet.java:114)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.getBinding(ExState.java:893)&#xD;&#xA;&#x9;at com.waveset.expression.ExReference.evalInternal(ExReference.java:252)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_notnull.evalInternal(ExFunction.java:950)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_and.evalInternal(ExFunction.java:606)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_cond.evalInternal(ExFunction.java:3448)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_append.evalInternal(ExFunction.java:2656)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExBlock.evalInternal(ExBlock.java:182)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExBlock.eval(ExBlock.java:148)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.object.Rule.eval(Rule.java:955)&#xD;&#xA;&#x9;at com.waveset.workflow.ExpressionState.resolveRule(ExpressionState.java:233)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.externalRule(ExState.java:565)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule.evalInternal(ExRule.java:184)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.evaluate(WorkflowEngine.java:1463)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.initVariables(WorkflowEngine.java:2017)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:3312)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.makeTransition(WorkflowEngine.java:2863)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkExplicitTransitions(WorkflowEngine.java:2754)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkTransitions(WorkflowEngine.java:2540)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.processSteps(WorkflowEngine.java:1945)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1797)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1705)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:843)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:505)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowExecutor.execute(WorkflowExecutor.java:236)&#xD;&#xA;&#x9;at com.waveset.task.Scheduler.execute(Scheduler.java:2612)&#xD;&#xA;&#x9;at com.waveset.task.Scheduler.launchTask(Scheduler.java:1701)&#xD;&#xA;&#x9;at com.waveset.task.Scheduler.launchTask(Scheduler.java:1376)&#xD;&#xA;&#x9;at com.waveset.task.TaskManager.launchTask(TaskManager.java:267)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.runTask(InternalSession.java:3373)&#xD;&#xA;&#x9;at com.waveset.server.ViewMaster.runTask(ViewMaster.java:931)&#xD;&#xA;&#x9;at com.waveset.view.UserViewer.launchUpdate(UserViewer.java:3336)&#xD;&#xA;&#x9;at com.waveset.view.UserViewer.checkinView(UserViewer.java:1322)&#xD;&#xA;&#x9;at com.waveset.object.ViewMaster.checkinView(ViewMaster.java:747)&#xD;&#xA;&#x9;at com.waveset.session.LocalSession.checkinView(LocalSession.java:611)&#xD;&#xA;&#x9;at com.waveset.ui.util.GenericViewSource.checkinView(GenericViewSource.java:522)&#xD;&#xA;&#x9;at com.waveset.ui.util.GenericEditForm.process(GenericEditForm.java:613)&#xD;&#xA;&#x9;at org.apache.jsp.account.modify_jsp._jspService(modify_jsp.java:413)&#xD;&#xA;&#x9;at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)&#xD;&#xA;&#x9;at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)&#xD;&#xA;&#x9;at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)&#xD;&#xA;&#x9;at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)&#xD;&#xA;&#x9;at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)&#xD;&#xA;&#x9;at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)&#xD;&#xA;&#x9;at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)&#xD;&#xA;&#x9;at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)&#xD;&#xA;&#x9;at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)&#xD;&#xA;&#x9;at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)&#xD;&#xA;&#x9;at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)&#xD;&#xA;&#x9;at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)&#xD;&#xA;&#x9;at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)&#xD;&#xA;&#x9;at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)&#xD;&#xA;&#x9;at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)&#xD;&#xA;&#x9;at java.lang.Thread.run(Thread.java:595)&#xD;&#xA;Caused by: com.waveset.util.InternalError: ID not passed to ObjectCache.getObject&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.checkBreakpoint(WavesetException.java:513)&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.<init>(WavesetException.java:114)&#xD;&#xA;&#x9;at com.waveset.util.InternalError.<init>(InternalError.java:75)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:527)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:480)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:478)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:497)&#xD;&#xA;&#x9;at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)&#xD;&#xA;&#x9;at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)&#xD;&#xA;&#x9;at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)&#xD;&#xA;&#x9;at java.lang.reflect.Method.invoke(Method.java:585)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:885)&#xD;&#xA;&#x9;... 85 more&#xD;&#xA;Wrapped exception:&#xD;&#xA;com.waveset.util.InternalError: ID not passed to ObjectCache.getObject&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.checkBreakpoint(WavesetException.java:513)&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.<init>(WavesetException.java:114)&#xD;&#xA;&#x9;at com.waveset.util.InternalError.<init>(InternalError.java:75)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:527)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:480)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:478)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:497)&#xD;&#xA;&#x9;at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)&#xD;&#xA;&#x9;at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)&#xD;&#xA;&#x9;at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)&#xD;&#xA;&#x9;at java.lang.reflect.Method.invoke(Method.java:585)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:885)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:846)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:171)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.getBinding(ExState.java:893)&#xD;&#xA;&#x9;at com.waveset.expression.ExReference.evalInternal(ExReference.java:252)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:130)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.getBinding(ExState.java:893)&#xD;&#xA;&#x9;at com.waveset.expression.ExReference.evalInternal(ExReference.java:252)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExGet.evalInternal(ExGet.java:114)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.getBinding(ExState.java:893)&#xD;&#xA;&#x9;at com.waveset.expression.ExReference.evalInternal(ExReference.java:252)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_notnull.evalInternal(ExFunction.java:950)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_and.evalInternal(ExFunction.java:606)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_cond.evalInternal(ExFunction.java:3448)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_append.evalInternal(ExFunction.java:2656)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExBlock.evalInternal(ExBlock.java:182)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExBlock.eval(ExBlock.java:148)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.object.Rule.eval(Rule.java:955)&#xD;&#xA;&#x9;at com.waveset.workflow.ExpressionState.resolveRule(ExpressionState.java:233)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.externalRule(ExState.java:565)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule.evalInternal(ExRule.java:184)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.evaluate(WorkflowEngine.java:1463)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.initVariables(WorkflowEngine.java:2017)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:3312)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.makeTransition(WorkflowEngine.java:2863)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkExplicitTransitions(WorkflowEngine.java:2754)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkTransitions(WorkflowEngine.java:2540)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.processSteps(WorkflowEngine.java:1945)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1797)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1705)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:843)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:505)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowExecutor.execute(WorkflowExecutor.java:236)&#xD;&#xA;&#x9;at com.waveset.task.Scheduler.execute(Scheduler.java:2612)&#xD;&#xA;&#x9;at com.waveset.task.Scheduler.launchTask(Scheduler.java:1701)&#xD;&#xA;&#x9;at com.waveset.task.Scheduler.launchTask(Scheduler.java:1376)&#xD;&#xA;&#x9;at com.waveset.task.TaskManager.launchTask(TaskManager.java:267)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.runTask(InternalSession.java:3373)&#xD;&#xA;&#x9;at com.waveset.server.ViewMaster.runTask(ViewMaster.java:931)&#xD;&#xA;&#x9;at com.waveset.view.UserViewer.launchUpdate(UserViewer.java:3336)&#xD;&#xA;&#x9;at com.waveset.view.UserViewer.checkinView(UserViewer.java:1322)&#xD;&#xA;&#x9;at com.waveset.object.ViewMaster.checkinView(ViewMaster.java:747)&#xD;&#xA;&#x9;at com.waveset.session.LocalSession.checkinView(LocalSession.java:611)&#xD;&#xA;&#x9;at com.waveset.ui.util.GenericViewSource.checkinView(GenericViewSource.java:522)&#xD;&#xA;&#x9;at com.waveset.ui.util.GenericEditForm.process(GenericEditForm.java:613)&#xD;&#xA;&#x9;at org.apache.jsp.account.modify_jsp._jspService(modify_jsp.java:413)&#xD;&#xA;&#x9;at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)&#xD;&#xA;&#x9;at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)&#xD;&#xA;&#x9;at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)&#xD;&#xA;&#x9;at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)&#xD;&#xA;&#x9;at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)&#xD;&#xA;&#x9;at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)&#xD;&#xA;&#x9;at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)&#xD;&#xA;&#x9;at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)&#xD;&#xA;&#x9;at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)&#xD;&#xA;&#x9;at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)&#xD;&#xA;&#x9;at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)&#xD;&#xA;&#x9;at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)&#xD;&#xA;&#x9;at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)&#xD;&#xA;&#x9;at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)&#xD;&#xA;&#x9;at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)&#xD;&#xA;&#x9;at java.lang.Thread.run(Thread.java:595)&#xD;&#xA;</StackTrace>
    <ResultError throwable='com.waveset.util.InternalError'>
    <Message id='OBJECT_CACHE_NO_ID'>
    </Message>
    <StackTrace>com.waveset.util.InternalError: ID not passed to ObjectCache.getObject&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.checkBreakpoint(WavesetException.java:513)&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.<init>(WavesetException.java:114)&#xD;&#xA;&#x9;at com.waveset.util.InternalError.<init>(InternalError.java:75)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:527)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:480)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:478)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:497)&#xD;&#xA;&#x9;at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)&#xD;&#xA;&#x9;at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)&#xD;&#xA;&#x9;at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)&#xD;&#xA;&#x9;at java.lang.reflect.Method.invoke(Method.java:585)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:885)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:846)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:171)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.getBinding(ExState.java:893)&#xD;&#xA;&#x9;at com.waveset.expression.ExReference.evalInternal(ExReference.java:252)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:130)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.getBinding(ExState.java:893)&#xD;&#xA;&#x9;at com.waveset.expression.ExReference.evalInternal(ExReference.java:252)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExGet.evalInternal(ExGet.java:114)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.getBinding(ExState.java:893)&#xD;&#xA;&#x9;at com.waveset.expression.ExReference.evalInternal(ExReference.java:252)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_notnull.evalInternal(ExFunction.java:950)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_and.evalInternal(ExFunction.java:606)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_cond.evalInternal(ExFunction.java:3448)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExFunction$f_append.evalInternal(ExFunction.java:2656)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExBlock.evalInternal(ExBlock.java:182)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExBlock.eval(ExBlock.java:148)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.object.Rule.eval(Rule.java:955)&#xD;&#xA;&#x9;at com.waveset.workflow.ExpressionState.resolveRule(ExpressionState.java:233)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.externalRule(ExState.java:565)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule.evalInternal(ExRule.java:184)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.evaluate(WorkflowEngine.java:1463)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.initVariables(WorkflowEngine.java:2017)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:3312)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.makeTransition(WorkflowEngine.java:2863)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkExplicitTransitions(WorkflowEngine.java:2754)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkTransitions(WorkflowEngine.java:2540)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.processSteps(WorkflowEngine.java:1945)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1797)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1705)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:843)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:505)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowExecutor.execute(WorkflowExecutor.java:236)&#xD;&#xA;&#x9;at com.waveset.task.Scheduler.execute(Scheduler.java:2612)&#xD;&#xA;&#x9;at com.waveset.task.Scheduler.launchTask(Scheduler.java:1701)&#xD;&#xA;&#x9;at com.waveset.task.Scheduler.launchTask(Scheduler.java:1376)&#xD;&#xA;&#x9;at com.waveset.task.TaskManager.launchTask(TaskManager.java:267)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.runTask(InternalSession.java:3373)&#xD;&#xA;&#x9;at com.waveset.server.ViewMaster.runTask(ViewMaster.java:931)&#xD;&#xA;&#x9;at com.waveset.view.UserViewer.launchUpdate(UserViewer.java:3336)&#xD;&#xA;&#x9;at com.waveset.view.UserViewer.checkinView(UserViewer.java:1322)&#xD;&#xA;&#x9;at com.waveset.object.ViewMaster.checkinView(ViewMaster.java:747)&#xD;&#xA;&#x9;at com.waveset.session.LocalSession.checkinView(LocalSession.java:611)&#xD;&#xA;&#x9;at com.waveset.ui.util.GenericViewSource.checkinView(GenericViewSource.java:522)&#xD;&#xA;&#x9;at com.waveset.ui.util.GenericEditForm.process(GenericEditForm.java:613)&#xD;&#xA;&#x9;at org.apache.jsp.account.modify_jsp._jspService(modify_jsp.java:413)&#xD;&#xA;&#x9;at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)&#xD;&#xA;&#x9;at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)&#xD;&#xA;&#x9;at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)&#xD;&#xA;&#x9;at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)&#xD;&#xA;&#x9;at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)&#xD;&#xA;&#x9;at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)&#xD;&#xA;&#x9;at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)&#xD;&#xA;&#x9;at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)&#xD;&#xA;&#x9;at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)&#xD;&#xA;&#x9;at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)&#xD;&#xA;&#x9;at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)&#xD;&#xA;&#x9;at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)&#xD;&#xA;&#x9;at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)&#xD;&#xA;&#x9;at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)&#xD;&#xA;&#x9;at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)&#xD;&#xA;&#x9;at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)&#xD;&#xA;&#x9;at java.lang.Thread.run(Thread.java:595)&#xD;&#xA;</StackTrace>
    </ResultError>
    </ResultError>
    </ResultItem>
    <ResultItem type='error' status='error'>
    <ResultError>
    <Message>
    <Text>XPRESS <invoke> exception:</Text>
    </Message>
    </ResultError>
    </ResultItem>
    <ResultItem type='error' status='error'>
    <ResultError throwable='com.waveset.util.WavesetException'>
    <Message>
    <Text>Can't call method getObject on class com.waveset.server.InternalSession</Text>
    </Message>
    <StackTrace>com.waveset.util.WavesetException: Can't call method getObject on class com.waveset.server.InternalSession&#xA;==> com.waveset.util.InternalError: ID not passed to ObjectCache.getObject&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.checkBreakpoint(WavesetException.java:513)&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.<init>(WavesetException.java:229)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:908)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:846)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:171)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.getBinding(ExState.java:893)&#xD;&#xA;&#x9;at com.waveset.expression.ExReference.evalInternal(ExReference.java:252)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:130)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExDefvar.call(ExDefvar.java:257)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.ge

    Mandar_S: Thank you very much for your reply.
    Indeed we are using the inbuilt Approval process in all of our workflows. We call that process from our approval activity and we pass to it the "approver" variable as an argument as follows:
    <Activity id='8' name='Manager Approval'>
       <Variable name='manager' value='$(user.accounts[Lighthouse].idmManager)'/>
       <Action id='0' process='Approval'>
       <Argument name='user' value='$(user)'/>
       <Argument name='approvalTemplate' value='AIO - New User Approval'/>
       <Argument name='approvalForm' value='AIO - Approval Form'/>
            <Argument name='approver'>
                 <ref>manager</ref>
            </Argument>
            .......... As far as I could investigate, the "approver" variable is passed to the "Approval" process, and this is seen in the logs:
    Walking case 'Create User'
      Walking case 'Approval'
        Processing steps in 'Approval'
        Step pass 1
          Check completion 'Approve'
            Processing work item results from 'testuseradmin'
            Step complete 'Approve'
        Step pass 2
          Resolved reference WF_ACTION_TIMEOUT = null
          Step inactive 'Approve'
          Step executing 'Check Status'
            Action
              Evaluating XPRESS
              Resolved reference APPROVAL = true
              Resolved reference APPROVAL = true
              Assigning approved = true
              Resolved reference ACTUAL_APPROVER = testuseradmin
              Resolved reference ACTUAL_APPROVER = testuseradmin
              Assigning actualApprover = testuseradmin
              XPRESS returned =
                <WavesetResult>
                  <ResultItem type='error' status='error'>
                    <ResultError>
                      <Message>
                        <Text>XPRESS <invoke> exception:</Text>
                      </Message>
                    </ResultError>
                  </ResultItem>
                  <ResultItem type='error' status='error'>
                    <ResultError throwable='com.waveset.util.WavesetException'>
                      <Message>
                        <Text>Can't call method getObject on class com.waveset.server.InternalSession</Text>
                      </Message>
                      <StackTrace>com.waveset.util.WavesetException: Can't call method getObject on class
    com.waveset.server.InternalSession&#xA;==> com.waveset.util.InternalError: ID not passed to ObjectCache.getObject&#xD;&#xA;&#x9;at
    org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)&#xD;&#xA;&#x9;at java.lang.Thread.run(Thread.java:595)&#xD;&#xA;</StackTrace>
                      </ResultError>
                    </ResultError>
                  </ResultItem>
                </WavesetResult>
              Assimilating last application result into task result
            Step complete 'Check Status'
          Step inactive 'Approve'
        Step pass 3
          Resolved reference useSignedApprovals = false
          Resolved reference approved = true
          Step inactive 'Check Status'
          Step executing 'Approved'
            Action
              Argument op = audit        
              Argument action = Approve
              Resolved reference actualApprover = testuseradmin
              Argument subject = testuseradmin
              Argument approver = testuseradmin
              Argument type = ObjectGroup
              Argument name = Top:Bill Payment:Shared Services
              Argument accountId = mcontrol1
              Argument fullname = Marcelo Control
              Argument email = [email protected]
              Resolved reference delegator = njefe
              Resolved reference approver = testuseradmin
              Resolved reference actualApprover = testuseradmin
              Resolved reference delegator = njefe
              Argument error = Delegated by njefe
              Resolved reference comments = null
              Argument attributes = {Comments=null}
              Resolved reference WF_TRANSACTION_SIGNATURE = null
              Calling application 'com.waveset.session.WorkflowServices'
                Application requested argument op
                Application requested argument logResultErrors
                Application requested argument action
                Application requested argument status
                Application requested argument type
                Application requested argument subject
                Application requested argument name
                Application requested argument resource
                Application requested argument accountId
                Application requested argument error
                Application requested argument parameters
                Application requested argument trackedAttributes
                Application requested argument attributes
                Application requested argument originalAttributes
                Application requested argument overflowAttributes
                Application requested argument auditableAttributesList
                Application requested argument organizations
            Step complete 'Approved'
          Step inactive 'Check Status'
        Step pass 4
          Step inactive 'Approved'
          Step executing 'end'
            Step inactive 'end'
            Completing case 'Approval'
          Step inactive 'Approved'
      Processing steps in 'Create User'
      Step pass 1
        Check completion 'Manager Approval'
          Check subcase result 'Approval'
            Subcase complete
            Returning from actualApprover to actualApprover  = testuseradmin
            Returning from applicationEscalator to actualEscalator  = null
            Returning from approved to managerApproved  = true
            Returning from comments to comments  = null
          Step complete 'Manager Approval'
      Step pass 2
        Resolved reference error = null
        Resolved reference managerApproved = true
        Resolved reference WF_ACTION_ERROR = null
        Step inactive 'Manager Approval'
        Step executing 'Provision'
          Action
            Resolved reference transforms.preProvisionRule = null
            Resolved reference transforms.preProvisionForm = null
            Creating subcase Data Transformation
        Step inactive 'Manager Approval'
      Step pass 3
        Check completion 'Provision'
          Check subcase result 'null'
            Subcase waiting
    ----------------------------------------In spite of that, the error ocurred (I've eliminated some StackTrace lines for clarity reasons, but you can find them in my original post).
    Furthermore, we've encountered this error in other activities diffrent from the "Approval" process. Here's another log example of this error:
    Walking case 'AIO - Update Resource Account WF'
      Walking case 'Rename Task'
        Processing steps in 'Rename Task'
        Step pass 1
          Initializing variables
          Initial Case Variables
            name = Solicitud de Acceso en Proceso de jjefe (04/08/2008 @ 17:12:04)
          Case title set to 'Rename Task'
          Step executing 'Find Unique Name'
            Action
              Resolved reference makeUnique = null
              Condition evaluated false
            Step complete 'Find Unique Name'
          Step inactive 'Find Unique Name'
          Step executing 'Rename'
            Action
              Evaluating XPRESS
              Resolved reference name = Solicitud de Acceso en Proceso de jjefe (04/08/2008 @ 17:12:04)
              Resolved reference WF_CASE_OWNER = jjefe
              Resolved reference name = Solicitud de Acceso en Proceso de jjefe (04/08/2008 @ 17:12:04)
              Resolved reference name = Solicitud de Acceso en Proceso de jjefe (04/08/2008 @ 17:12:04)
              XPRESS returned =
                <WavesetResult>
                  <ResultItem type='error' status='error'>
                    <ResultError>
                      <Message>
                        <Text>XPRESS <invoke> exception:</Text>
                      </Message>
                    </ResultError>
                  </ResultItem>
                  <ResultItem type='error' status='error'>
                    <ResultError throwable='com.waveset.util.WavesetException'>
                      <Message>
                        <Text>Can't call method getObject on class com.waveset.server.InternalSession</Text>
                      </Message>
                      <StackTrace>com.waveset.util.WavesetException: Can't call method getObject on class com.waveset.server.InternalSession&#xA;==> com.waveset.util.InternalError: ID not passed to ObjectCache.getObject&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.checkBreakpoint(WavesetException.java:513)&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.<init>(WavesetException.java:229)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:908)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:846)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:171)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:130)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.object.Rule.eval(Rule.java:955)&#xD;&#xA;&#x9;at com.waveset.workflow.ExpressionState.resolveRule(ExpressionState.java:233)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.externalRule(ExState.java:565)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule.evalInternal(ExRule.java:184)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule$Argument.evalInternal(ExRule.java:345)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule.evalInternal(ExRule.java:172)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.evaluate(WorkflowEngine.java:1463)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.initVariables(WorkflowEngine.java:2017)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:3312)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.makeTransition(WorkflowEngine.java:2863)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkExplicitTransitions(WorkflowEngine.java:2754)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkTransitions(WorkflowEngine.java:2540)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.processSteps(WorkflowEngine.java:1945)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1797)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1705)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:843)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:505)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowExecutor.execute(WorkflowExecutor.java:236)&#xD;&#xA;&#x9;at com.waveset.task.TaskThread.run(TaskThread.java:132)&#xD;&#xA;Caused by: com.waveset.util.InternalError: ID not passed to ObjectCache.getObject&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.checkBreakpoint(WavesetException.java:513)&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.<init>(WavesetException.java:114)&#xD;&#xA;&#x9;at com.waveset.util.InternalError.<init>(InternalError.java:75)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:527)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:480)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:478)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:497)&#xD;&#xA;&#x9;at sun.reflect.GeneratedMethodAccessor420.invoke(Unknown Source)&#xD;&#xA;&#x9;at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)&#xD;&#xA;&#x9;at java.lang.reflect.Method.invoke(Method.java:585)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:885)&#xD;&#xA;&#x9;... 31 more&#xD;&#xA;Wrapped exception:&#xD;&#xA;com.waveset.util.InternalError: ID not passed to ObjectCache.getObject&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.checkBreakpoint(WavesetException.java:513)&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.<init>(WavesetException.java:114)&#xD;&#xA;&#x9;at com.waveset.util.InternalError.<init>(InternalError.java:75)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:527)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:480)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:478)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:497)&#xD;&#xA;&#x9;at sun.reflect.GeneratedMethodAccessor420.invoke(Unknown Source)&#xD;&#xA;&#x9;at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)&#xD;&#xA;&#x9;at java.lang.reflect.Method.invoke(Method.java:585)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:885)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:846)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:171)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:130)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.object.Rule.eval(Rule.java:955)&#xD;&#xA;&#x9;at com.waveset.workflow.ExpressionState.resolveRule(ExpressionState.java:233)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.externalRule(ExState.java:565)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule.evalInternal(ExRule.java:184)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule$Argument.evalInternal(ExRule.java:345)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule.evalInternal(ExRule.java:172)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.evaluate(WorkflowEngine.java:1463)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.initVariables(WorkflowEngine.java:2017)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:3312)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.makeTransition(WorkflowEngine.java:2863)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkExplicitTransitions(WorkflowEngine.java:2754)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkTransitions(WorkflowEngine.java:2540)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.processSteps(WorkflowEngine.java:1945)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1797)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1705)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:843)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:505)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowExecutor.execute(WorkflowExecutor.java:236)&#xD;&#xA;&#x9;at com.waveset.task.TaskThread.run(TaskThread.java:132)&#xD;&#xA;</StackTrace>
                      <ResultError throwable='com.waveset.util.InternalError'>
                        <Message id='OBJECT_CACHE_NO_ID'>
                        </Message>
                        <StackTrace>com.waveset.util.InternalError: ID not passed to ObjectCache.getObject&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.checkBreakpoint(WavesetException.java:513)&#xD;&#xA;&#x9;at com.waveset.util.WavesetException.<init>(WavesetException.java:114)&#xD;&#xA;&#x9;at com.waveset.util.InternalError.<init>(InternalError.java:75)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:527)&#xD;&#xA;&#x9;at com.waveset.object.ObjectCache.getObject(ObjectCache.java:480)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:478)&#xD;&#xA;&#x9;at com.waveset.server.InternalSession.getObject(InternalSession.java:497)&#xD;&#xA;&#x9;at sun.reflect.GeneratedMethodAccessor420.invoke(Unknown Source)&#xD;&#xA;&#x9;at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)&#xD;&#xA;&#x9;at java.lang.reflect.Method.invoke(Method.java:585)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:885)&#xD;&#xA;&#x9;at com.waveset.util.Reflection.invoke(Reflection.java:846)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:171)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExInvoke.evalInternal(ExInvoke.java:130)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.object.Rule.eval(Rule.java:955)&#xD;&#xA;&#x9;at com.waveset.workflow.ExpressionState.resolveRule(ExpressionState.java:233)&#xD;&#xA;&#x9;at com.waveset.expression.ExState.externalRule(ExState.java:565)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule.evalInternal(ExRule.java:184)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule$Argument.evalInternal(ExRule.java:345)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.expression.ExRule.evalInternal(ExRule.java:172)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.eval(ExNode.java:79)&#xD;&#xA;&#x9;at com.waveset.expression.ExNode.evalToObject(ExNode.java:498)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.evaluate(WorkflowEngine.java:1463)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.initVariables(WorkflowEngine.java:2017)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:3312)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.makeTransition(WorkflowEngine.java:2863)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkExplicitTransitions(WorkflowEngine.java:2754)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.checkTransitions(WorkflowEngine.java:2540)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.processSteps(WorkflowEngine.java:1945)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1797)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.walkCases(WorkflowEngine.java:1705)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:843)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowEngine.execute(WorkflowEngine.java:505)&#xD;&#xA;&#x9;at com.waveset.workflow.WorkflowExecutor.execute(WorkflowExecutor.java:236)&#xD;&#xA;&#x9;at com.waveset.task.TaskThread.run(TaskThread.java:132)&#xD;&#xA;</StackTrace>
                      </ResultError>
                    </ResultError>
                  </ResultItem>
                </WavesetResult>
              Assimilating last application result into task result
            Step complete 'Rename'
          Step inactive 'Find Unique Name'
        Step pass 2
          Step inactive 'Rename'
          Completing case 'Rename Task'
      Processing steps in 'AIO - Update Resource Account WF'
      Step pass 1
        Check completion 'Rename Temporary Task'
          Check subcase result 'Rename Task'
            Subcase complete
          Step complete 'Rename Temporary Task'
      Step pass 2
        Step inactive 'Rename Temporary Task'
        Step executing 'end'
          Step inactive 'end'
          Completing case 'AIO - Update Resource Account WF'
        Step inactive 'Rename Temporary Task'
    Deleting work item for action Edit Request
    Deleting invalid work item #ID#5F564652662387E3:-15828051:11B8E51257D:-7CEE
    Finished executing workflow case AIO - Update Resource Account WF
    ***************************************The code that genereted this log is something like this:
    <Configuration name='Rename Task' creator='%STARTUP%Configurator' createDate='1214936621250' lastModifier='Configurator' lastModDate='1216397579578' lastMod='1'>
      <Extension>
        <WFProcess name='Rename Task' maxSteps='0'>
          <Comments>&#xA;        Rename the current workflow task instance.&#xA;      </Comments>
          <Variable name='name' input='true'>
            <Comments>&#xA;          New task instance name.&#xA;        </Comments>
          </Variable>
          <Variable name='makeUnique' input='true'>
            <Comments>&#xA;          If true, causes this task to append a suffix to the end&#xA;          of 'name' in order to enforce uniqueness.  Otherwise&#xA;          this task fails if a task already exists called 'name'.&#xA;        </Comments>
          </Variable>
          <Activity id='0' name='Find Unique Name' hidden='true'>
            <Action id='0'>
              <Comments>&#xA;            The 'name' passed in may be suffixed with something that&#xA;            makes it unique if necessary&#xA;          </Comments>
              <Condition>
                <isTrue>
                  <ref>makeUnique</ref>
                </isTrue>
              </Condition>
              <expression>
                <block>
                  <defvar name='uniqueName'>
                    <ref>name</ref>
                  </defvar>
                  <defvar name='counter'>
                    <i>0</i>
                  </defvar>
                  <while>
                    <cond>
                      <invoke name='getObjectIfExists'>
                        <invoke name='getLighthouseContext'>
                          <ref>WF_CONTEXT</ref>
                        </invoke>
                        <invoke name='findType' class='com.waveset.object.Type'>
                          <s>TaskInstance</s>
                        </invoke>
                        <ref>uniqueName</ref>
                      </invoke>
                      <s>false</s>
                    </cond>
                    <block>
                      <set name='counter'>
                        <add>
                          <ref>counter</ref>
                          <i>1</i>
                        </add>
                      </set>
                      <set name='uniqueName'>
                        <concat>
                          <ref>name</ref>
                          <s>(</s>
                          <ref>counter</ref>
                          <s>)</s>
                        </concat>
                      </set>
                      <s>true</s>
                    </block>
                    <s>false</s>
                  </while>
                  <set name='name'>
                    <ref>uniqueName</ref>
                  </set>
                </block>
              </expression>
            </Action>
            <Transition to='Rename'/>
            <WorkflowEditor x='43' y='10'/>
          </Activity>
          <Activity id='1' name='Rename'>
            <Action id='0'>
              <Comments>&#xA;            First rename the object in the repository.  The last&#xA;            argument is an options map containing the name under which&#xA;            we will lock the object.&#xA;            Next rename it in memory so when the scheduler eventually&#xA;            saves it back into the repository it doesn't overwrite&#xA;            the name we just changed.&#xA;          </Comments>
              <expression>
                <block>
                  <invoke name='renameObject'>
                    <invoke name='getLighthouseContext'>
                      <ref>WF_CONTEXT</ref>
                    </invoke>
                    <invoke name='findType' class='com.waveset.object.Type'>
                      <s>TaskInstance</s>
                    </invoke>
                    <invoke name='getId'>
                      <invoke name='getTask'>
                        <ref>WF_CONTEXT</ref>
                      </invoke>
                    </invoke>
                    <ref>name</ref>
                    <map>
                      <s>user</s>
                      <ref>WF_CASE_OWNER</ref>
                    </map>
                  </invoke>
                  <invoke name='setName'>
                    <invoke name='getTask'>
                      <ref>WF_CONTEXT</ref>
                    </invoke>
                    <ref>name</ref>
                  </invoke>
                  <invoke name='setDisplayName'>
                    <invoke name='getTask'>
                      <ref>WF_CONTEXT</ref>
                    </invoke>
                    <ref>name</ref>
                  </invoke>
                </block>
              </expression>
            </Action>
            <WorkflowEditor x='174' y='13'/>
          </Activity>
        </WFProcess>
      </Extension>
      <MemberObjectGroups>
        <ObjectRef type='ObjectGroup' id='#ID#Top' name='Top'/>
      </MemberObjectGroups>
    </Configuration>
    .......................................Any ideas on why this is happening?
    Thanks a lot in advance.

  • Assignment of Step type and CR step for MDG_S

    Hi
    This is in continuaton for thread MDG_S workflow.
    I original issue which is for MDGS when I assigned WS543000005 to CR type and sumitted CR goes no where,
    As as per SWEL it  shows No Reciver Found enen though GET_AGENT table is maintained.
    In another system I found that WS531000044 is assigned ti CR Type Then I tested it and found that CR creates Work Items also upto final processing.
    as per below
    Before CR Submission : CR status is 02: Changes to be executed
    After CR Submission : CR status is 01:To be considered and Approved
    After CR Reviewer approves : CR status is 09: Dependant Data to be processed /Approved
    After Purchase reviewer Finalize processing :CR status is 09: Dependant Data to be processed /Approved
    After Finainace reviewer Finalixe processing :CR status is 09: Dependant Data to be processed /Approved
    Now I can not see CR any where even though CR step 04 and 04 assigned to my user ID
    I have some questions as Description in Define Change Request Steps is not Mataching with description in GET_AGENT desesion table.
    Also it is observed that step 80 is not assigned to WS531000044 in IMG node Define Change Request Steps but it can be seen in GET_AGENT decesion table and step no 06 and 07 does not appears in GET_AGENT decesion table ( In edit mode).
    Can you explain from where assignment of  CR steps to CR type in desion table are taken ino accout ?
    Why description is not matched for steps under IMG and in decesion table?
    Can you explain me releationship between CR step and step type,CR Status and where they \maintained in IMG and how proceeses modelling is diffenent t for determination of Next CR step in case of WS531000044 ?

    Please keep in mind that "hard-wired" workflow templates are just that: hard-wired. This means that a specific workflow template (for example WS53100044) will always have the same number of steps, each step will always have the same type and number, agents will always be assigned in the same way, and those can't be altered by configurations. To understand each workflow template's behavior, you can either open that template in transaction PFTC or SWDD, or alternatively, read the exact behavior in SAP Help documentation. You basically need to google the workflow template number and you should be able to find the description of each template's behavior (by the way, the number you type has an extra zero so if you can't find a match on Google, you will know why ).
    Now, the assignment of CR steps to CR type is done in the workflow template itself and NOT in the decision table. See the first screenshot:
    The step number above "should" correspond to what is in the configuration table (for readability and consistency of documentation purposes). However, if for some reason, it does not, the hard-coded value is the value that will actually be considered. So, in technical terms, the assignment of step numbers in MDGIMG has no influence on how the workflow template will behave. Again, the main purpose is for the corresponding description in the step number configuration table to show on the CR window.
    The other thing is the step type. A step type purpose is mainly to indicate what set of buttons will show at the top of the CR window. The fact that step types are represented by numbers confuse a lot of people with step numbers. I would have personally preferred if step types were a 2-char field so that a clear distinction can be made between step types and step numbers. In any case, buttons on the CR correspond to actions and you can see in MDGIMG that you can assign step types to actions. SAP delivers a pre-defined set of step types and associated actions. Those must NOT be altered because they could break the standard workflow templates. However, you can create your own custom step types and link them with as many actions (standard or custom actions) as you like. But again, you can't assign those custom step types to hard-wired workflow templates. You can only use them in your custom workflow templates or in the rule-based workflow.
    Now, the question is how does the hard-wired workflow know what step type to use. The answer is easy: you can either find that in the SAP Help documentation or in the workflow template definition in transaction SWDD. For the above screenshot, the step type is 2. You can find that if you double-click the task ID TS75707980 (or display it using transaction PFTC) and look in the "Cntainer" tab. In this case, this task will ALWAYS have type 2. Other tasks are assigned different step types or are more dynamic in the sense that they expect the step type to be passed from the main workflow template calling them. For example TS53200002 will always have type 7, TS60808005 will always have type 5, and TS60807954 accepts the step type dynamically. This last one is the one used in the rule-based workflow (hence it has to read the step type configured in the decision table).
    I hope this answers you question. You definitely need some level of workflow design/build knowledge in order to be able to completely understand all of this. Hopefully, this gives you a good starting point.

  • Creating a step type "launcher" that would insert the appropriate built-in or custom step type at edit time

    Hi everybody,
    I'm looking for tips, pointers,directions... to be able to perform this operation in TS 4.0 sequence Editor, if it's even possible...
    I'm managing a test system with a "home-made" virtual instruments abstraction Layer complementary to IVI classes for instruments which do not have classes defined, customizing the sequence editor accordingly for developpers of my department.
    So basically when the instrument is IVI, the developper uses the built-in IVI step-type type and when it is not, he uses the the custom step types that I developped for this particular class of instruments.  
    However there are classes where I do have both IVI and specific drivers available and I do need to use both in the test sequence.
    For example let's say there are two sources of DC power available in the testbench, one being a programmable IVI compliant DC power supply, and the other one composed of fixed "blocks" of DC power supply managed by externals relays and you need to use them both in the test sequence.
    What I would like to be able to do in the sequence editor is inserting the appropriate step type at edit time just by selecting the source of power supply (by a ring or enum for eg), and if the first ressource is selected, it inserts IVI step type, and if the second ressource is chosen, it inserts the appropriate custom step type.
    Any Ideas on how to accomplish this ?
    Regards,
    Cyril
    Cyril Bouton
    Active LabVIEW Developper
    Solved!
    Go to Solution.

    Hello Cyril,
    Here is an idea that could be done:
    You could create a dynamic step by having a step that holds all the properties for both configurations (the superset of the necessary variables) and an extra one that indicates which 'mode' the step is in.  Then you create the main Edit substep in whichever language you desire.  That substep window will then have a box/dropdown/etc. at the top you can use to choose between modes A & B.  When the user changes the value, you would dynamically change the rest of the window to contain the appropriate properties for mode A or B.  You then copy the property values in that window to the Step properties, and copy the mode to your variable and you can run the step in that mode.  When the step then runs, it checks the mode variable, and depending on its value, it will run the step in mode A or B.
    Now we could add a dialog that allows us to choose when we put a step down but we should still allow the user to change later via the Edit substep we create.
    I don't think we can create something that inserts a completely different step, but we can have one step that has the ability to do both and we can pick which one we execute.  Also note we still don't have the ability to edit the Panels for a step, so we have to use a new window that we call from our Edit substep to complete the step.
    Hope this helps.
    Regards,
    Olivier L. | Certified LabVIEW Developer

  • Add-on step types for TestStand?

    I am almost certainly reinventing some wheels with Teststand by creating some basic test types.
    For example, I just wrote a custom step type for taking an analog measurement from a DAQmx instrument. Surely someone has done this before, and surely someone will want to do it again. There's nothing proprietary about code that simple, and I'd be happy to give it away if there was a place to post it.
    Two questions:
    1. Is there an open-source repository for sharing custom step types?
    2. Are there add-ons for purchase with canned step types beyond those which come with TestStand?
    -Arthur

    Hi Jigg, 
    I looked at Averna.com, and I don't see any add-ins available on their website. It looks like they offer services mostly. 
    It's a good point about TS projects being so varied and customized. However, if custom step types are well architected, as the built-in step types are, then they ought to be reusable by others. 
    You're right also that I can accomplish my DAQmx steps easily using an Action step with the LV adapter. My motivation for the custom step is to improve the interface for setting up such an action. In particular, when using an IO channel in TS, I have to manually type in a text string for the DeviceName value, whereas I'd like to choose from a list of global names (e.g. with the global channel list control in LV). I can get this affect by using an Enum in a wrapper VI, which maps to an array of channel constants; but this is fragile if the available channels are changed (e.g. added, removed or renamed in MAX).
    Additionally, a custom step type is better than a step template for my purposes, because I can propagate changes in the step type to instances of steps throughout the test. This is incredibly valuable to me during development and debugging. It saves me time when I want to update a step that I've used many times throughout a test sequence. Although TS isn't itself a programming language, I find that I expect it to share certain traits with programming languages to facilitate development, such as type abstractions and a strict enforcement of congruency between types and instances. But I digress....
    Thanks for your suggestions.

  • Problems with Custom Data Types when converting from TS 1.0 to 3.0.

    I am currently involved in the process of converting a test environment from TestStand 1.0, LabVIEW 5.1, and Windows NT to TestStand 3.0, LabVIEW 7.0, and Windows XP. We use a custom Operator Interface developed in LV. Based on the entered Model and Serial number, the appropriate Test Sequence is called. We also use a custom Process Model. The steps in the Test Sequence are either LV code modules or DLLs created in C++. We have LV SubVIs and C++ API functions that allow the developers of the test steps to add data to various Custom Data Types. For example, a developer may set up a test to add a note (Step.Result.Notes[x].String) when the test fails. Step.Result.Notes is a container for an array of strings. The attempt to set a note first attempts to use SetDimensions to redimension the array, then SetValString to set the value. These notes are added to the report. On the old system, everything worked fine. A note could be added to any result. On the new system, if a note is added to say the 5th result, but results 1-4 do not have a note, the test sequence ends and the Operator Interface returns to waiting for data entry (as if no test ever happened). No report is generated. The LabVIEW libraries have been modified to solve this problem by calling SetDimensions to incrementally increase the array size by one, and populating the unused TestStand array elements with an empty array of LabVIEW strings using the SetValString call . In other words, based on the previous example, if the user wants to set a note for the 5th result, the notes for results 1-4 must first be sent an empty array of strings. The report will only display the note for Result 5 (as desired). In addition to this being cumbersome, attempting to implement the same workaround in the C++ API has been unsuccessful because even though the note arrays for unwanted notes (1-4) is initialized with nothing, it is still displayed as a note (empty) on the report. If anybody knows what is wrong and what the solution is, it will be appreciated.

    Aaron,
    Thanks for your reply. I will attempt to clarify. I am working with a single step. The step calls a DLL. The DLL performs many 'checks' on the UUT (e.g. Model Number Check, Serial Number Check, Calibration Constants Check, etc.). Under the Type Palette - MyTypes.ini, we have a Step Type called TEST_DLL with a container in it called Results. In the Results container are a number of things, but I will only list the important ones:
    Notes (Array of Type 'Notes'; Type 'Notes' is a Custom Data Type (container, Type Definition)containing an array of strings called 'String')
    -Notes are generally set when on of the checks fails, otherwise no Note is set for the check.
    Val (Array of Type 'Val'; Type 'Val' is Custom Data Type (container, Type Definition) containing a Boolean called 'Boolean')
    -Val indicates whether the check passed of failed
    Pseudocode example:
    //Model Number Check
    check# = 0;
    resultBOOL = ModelNumberCheck();
    SetDimensions("Step.Result.Val", 0, "[0]", check#);
    SetValBoolean("Step.Result.Val[check#].Boolean", 0, resultBOOL);
    if(resultBOOL == FAIL)
    Note# = 0;
    SetDimensions("Step.Result.Notes", 0, "[0]", check#);
    SetDimensions(Step.Result.Notes[check#].String, 0, "[0]", Note#);
    SetValString("Step.Result.Notes[check#].String[Note#]", 0, "Model Number Check failed");
    Note# = 1;
    SetDimensions(Step.Result.Notes[check#].String, 0, "[0]", Note#);
    SetValString("Step.Result.Notes[check#].String[Note#]", 0, "Model Number = 1234");
    //Serial Number Check
    check# = 1;
    resultBOOL = SerialNumberCheck();
    SetDimensions("Step.Result.Val", 0, "[0]", check#);
    SetValBoolean("Step.Result.Val[check#].Boolean", 0, resultBOOL);
    if(resultBOOL == FAIL)
    Note# = 0;
    SetDimensions("Step.Result.Notes", 0, "[0]", check#);
    SetDimensions(Step.Result.Notes[check#].String, 0, "[0]", Note#);
    SetValString("Step.Result.Notes[check#].String[Note#]", 0, "Serial Number does not match expected");
    More Checks
    As you can see above, the "Step.Result.Val" array is redimensioned for every check. The "Step.Result.Notes" array is only redimensioned when a note needs to be added for a failing check. If the entire step executes and no check adds a note, the sequence is fine. If every check fails and therefore every check adds a note, the sequence is fine. However, if there are any gaps (e.g. check 0 adds a note, check 1 does not add a note, and check 2 tries to add a note), the sequence will stop. If I add blank notes for every check that would otherwise not have a note, the sequence completes, but the report shows the blank note.
    Also, the exact code that is causing these problems runs fine on our old systems (TestStand 1.0). I hope that I clarified the problem and thanks again for the help.

Maybe you are looking for

  • Financial Reporting Batch Scheduler Error - EPM 11.1.2.1

    Hi, I just downloaded, installed and configured 11.1.2.1 on a test server. Defaults were used and all products have been configured to run on the same database (SQL Server). Mostly everything seems to be working, but when I try to open up "Batch Sche

  • Small letters in guide display quide

    letters too small on xfinity x1 guide displays

  • Displaying date in database

    The only date that I can have in my database for some reason is mm/dd/yy. what is the code to make it dd/mm/yy?

  • Command for view i/o rate cisco nexus

    Hi I need a command for view input and output rate on all interface for device nexus 7000 and nexus 5000 The command sh interface show more information, I only need view rx and tx on switch 3750, 2960 i use sh interface summary and in nexus do not ex

  • Resize Columns In Table2 based on Table1

    I have two tables. One with data and one with totals on that data. I want the totals table to resize it's columns based on the column sizes of the data table. Do you know how to do that? Thanks, Zeke