Testcase
(runtime application)
Result
(runtime application)
Testcase
(activity implementation)
Result
(activity implementation)
FDL (with initial container values)
/* * * FDL definitions generated by MQSeries Workflow at 2000-02-08, 09:38:32. * */ CODEPAGE 1252 FM_RELEASE V3R2 1 /* * STRUCTUREs */ UPDATE STRUCTURE 'Default Data Structure' END 'Default Data Structure' STRUCTURE 'DsLevel4' 'DsL4M1StringArray': STRING(3); 'DsL4M2Long': LONG; 'DsL4M3Float': FLOAT; 'DsL4M3Binary': BINARY; END 'DsLevel4' STRUCTURE 'DsLevel3' 'DsL3M1String': STRING; 'DsL3M2Long': LONG; 'DsL3M3Float': FLOAT; 'DsL3M3Binary': BINARY; 'DsL3M4StringArray': STRING(4); 'DsL3M5LongArray': LONG(5); 'DsL3M6FloatArray': FLOAT(6); 'DsL3M6BinaryArray': BINARY(2); 'DsL3M7AnotherDsL4': 'DsLevel4'(2); END 'DsLevel3' STRUCTURE 'DsLevel2' 'DsL2M1AnotherDsL3': 'DsLevel3'; END 'DsLevel2' STRUCTURE 'DsLevel1' DESCRIPTION "Data structure to check the C++ container API ods." 'DsL1M1String': STRING; 'DsL1M2Long': LONG; 'DsL1M3Float': FLOAT; 'DsL1M3Binary': BINARY; 'DsL1M4AnotherDsL2': 'DsLevel2'; END 'DsLevel1' /* * PROCESS_CATEGORYs */ PROCESS_CATEGORY 'Category1' END 'Category1' PROCESS_CATEGORY 'Category2' END 'Category2' /* * PROGRAMs */ PROGRAM 'DemoProgramName1' ( 'DsLevel1', 'DsLevel1' ) DESCRIPTION "DemoProgramDataDescription1" DOCUMENTATION "Demo Program Documentation 1" NO STRUCTURES_FROM_ACTIVITY NOT UNATTENDED WINNT EXE PATH_AND_FILENAME "java.exe" PARAMETER "com.ibm.workflow.api.tool.JGATT -ijexample17act.dat -oexample17act.log" INHERIT ENVIRONMENT STYLE VISIBLE START FOREGROUND WIN95 EXE PATH_AND_FILENAME ".\java.exe" PARAMETER "com.ibm.workflow.api.tool.JGATT -i.\example17act.dat -o.\example17act.log" INHERIT ENVIRONMENT STYLE VISIBLE START FOREGROUND OS2 EXE PATH_AND_FILENAME ".\java.exe" PARAMETER "com.ibm.workflow.api.tool.JGATT -i.\example17act.dat -o.\example17act.log" INHERIT ENVIRONMENT STYLE VISIBLE START FOREGROUND AIX EXE PATH_AND_FILENAME "./java" PARAMETER "com.ibm.workflow.api.tool.JGATT -i./example17act.dat -o./example17act.log" RUN_IN_XTERM HPUX EXE PATH_AND_FILENAME "./java" PARAMETER "com.ibm.workflow.api.tool.JGATT -i./example17act.dat -o./example17act.log" RUN_IN_XTERM SOLARIS EXE PATH_AND_FILENAME "./java" PARAMETER "com.ibm.workflow.api.tool.JGATT -i./example17act.dat -o./example17act.log" RUN_IN_XTERM END 'DemoProgramName1' /* * PERSONs */ UPDATE PERSON 'ADMIN' DESCRIPTION "PersonDescription1" PERSON_ID "AdminID" LAST_NAME "LastNameUserAdmin" FIRST_NAME "FirstNameUserAdmin" MIDDLE_NAME "MiddleNameUserAdmin" PHONE "PhoneAdmin_0001" SECOND_PHONE "2ndPhoneAdmin_0001" AUTHORIZED_FOR STAFF AUTHORIZED_FOR AUTHORIZATION AUTHORIZED_FOR OPERATION AUTHORIZED_FOR TOPOLOGY AUTHORIZED_FOR PROCESS_MODELING AUTHORIZED_FOR PROCESS_CATEGORY 'Category1' 'Category2' AUTHORIZED_FOR WORKITEMS_OF ALL RELATED_ROLE 'System administrator' PASSWORD %%00F005FFFEF7F50A IS_NOT_ABSENT DO NOT RESET_ABSENT END 'ADMIN' PERSON 'USER2' DESCRIPTION "PersonDescription2" PERSON_ID "User2ID" LAST_NAME "LastNameUserUser2" FIRST_NAME "FirstNameUser2" MIDDLE_NAME "MiddleNameUser2" PHONE "PhoneUser2_0002" SECOND_PHONE "2ndPhoneUser2_0002" AUTHORIZED_FOR STAFF AUTHORIZED_FOR AUTHORIZATION AUTHORIZED_FOR PROCESS_MODELING AUTHORIZED_FOR PROCESS_CATEGORY 'Category1' AUTHORIZED_FOR WORKITEMS_OF 'ADMIN' SUBSTITUTE 'ADMIN' PASSWORD %%14FFFD08E20B0402 IS_NOT_ABSENT RESET_ABSENT END 'USER2' /* * ROLEs */ ROLE 'DemoRole1' DESCRIPTION "DemoRoleDescription1" COORDINATOR 'ADMIN' RELATED_PERSON 'ADMIN' END 'DemoRole1' ROLE 'DemoRole2' DESCRIPTION "DemoRoleDescription2" RELATED_PERSON 'ADMIN' 'USER2' END 'DemoRole2' /* * ORGANIZATIONs */ ORGANIZATION 'DemoOrganization1' DESCRIPTION "DemoOrganizationDescription1" MANAGER 'ADMIN' RELATED_PERSON 'USER2' END 'DemoOrganization1' /* * PROCESSes */ /* * PROCESS DemoProcessTemplate1 */ PROCESS 'DemoProcessTemplate1' ( 'DsLevel1', 'DsLevel1' ) DESCRIPTION "DemoProcessTemplateDescription1" DOCUMENTATION "DemoProcessTemplateDocumentation1" INPUT_CONTAINER 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M1String' INITIAL_VALUE 'StringValue1' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(0)' INITIAL_VALUE 'StringValue3' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)' INITIAL_VALUE 'StringValue2' CATEGORY 'Category1' DO NOT PROMPT_AT_PROCESS_START STAFF NOTIFICATION ADMINISTRATION AUTONOMY NOTIFICATION AFTER 3600 SECONDS WINDOW ZOOM_FACTOR 100 WINDOW VIEW_REFERENCE_POINT XPOS 0 YPOS 0 WINDOW PAPERSIZE WIDTH 2970 HEIGHT 2100 WINDOW SHOW ALL CONNECTORS WINDOW SHOW ALL CONDITIONS SOURCE 1 XPOS -536 YPOS 453 SINK 1 XPOS -533 YPOS -179 PROGRAM_ACTIVITY 'DemoProgramActivity1' ( 'DsLevel1', 'DsLevel1' ) DESCRIPTION "DemoProgramActivityDescription1" DOCUMENTATION "DemoProgramActivityDocumentation1" INPUT_CONTAINER 'DsL1M1String' INITIAL_VALUE 'Demo string 1: ABC' 'DsL1M2Long' INITIAL_VALUE '999' 'DsL1M3Float' INITIAL_VALUE '1.33399' 'DsL1M3Binary' INITIAL_VALUE 'AA99AA99AA99AA99AA99AA' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M4StringArray(0)' INITIAL_VALUE 'String A1' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M4StringArray(1)' INITIAL_VALUE 'String B1' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M5LongArray(0)' INITIAL_VALUE '111' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M5LongArray(1)' INITIAL_VALUE '222' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M6BinaryArray(0)' INITIAL_VALUE '00112233445566778899AABBCCDDEEFF' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M6BinaryArray(1)' INITIAL_VALUE 'FFEEDDCCBBAA99887766554433221100' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(0).DsL4M2Long' INITIAL_VALUE '100' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(0).DsL4M3Float' INITIAL_VALUE '0.999' 'DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(0).DsL4M3Binary' INITIAL_VALUE 'AA99AA99AA99AA99AA99AA' START MANUAL WHEN AT_LEAST_ONE CONNECTOR TRUE EXIT MANUAL LAYOUT XPOS -500 YPOS 200 NAME_POSITION XPOS -500 YPOS 125 PRIORITY DEFINED_IN INPUT_CONTAINER DONE_BY PERSON 'ADMIN' PROGRAM 'DemoProgramName1' SYNCHRONIZATION NESTED END 'DemoProgramActivity1' DATA NAME "OutputDataConnector1" DESCRIPTION "OutputDataConnectorDescription1" FROM 'DemoProgramActivity1' TO SINK 1 MAP '_STRUCT' TO '_STRUCT' DATA NAME "InputDataConnector1" DESCRIPTION "InputDataConnectorDescription1" FROM SOURCE 1 TO 'DemoProgramActivity1' MAP '_STRUCT' TO '_STRUCT' MAP '_PROCESS_INFO' TO '_PROCESS_INFO' MAP '_ACTIVITY_INFO' TO '_ACTIVITY_INFO' LAYOUT XPOS -539 YPOS 334 END 'DemoProcessTemplate1'
Testcase (runtime application)
/* ---------------------------------------------------------------------- jexample17.dat (see also activity implementation of example 17: jexample17act.dat) Scenario: jexample17.fdl Invocation: java com.ibm.workflow.api.tool.JGATT -ijexample17.dat -ojexample17.log -d ---------------------------------------------------------------------- */ Agent.Agent agentHdl 1 End Agent.setLocator agentHdl 1 locator LOC_LOCATOR End Agent.setName agentHdl 1 name "" End Agent.locate agentHdl 1 systemGroup "FMCGRP" system "FMCSYS" executionServiceHdl 1 xpFmcException FMC_OK End Agent.isBound agentHdl 1 xpValue true End ExecutionService.logon2 executionServiceHdl 1 userID "ADMIN" password "password" sessionMode PRESENT_HERE absenceIndicator NOT_SET xpFmcException FMC_OK End ExecutionService.programExecutionAgentStartUp executionServiceHdl 1 xpFmcException FMC_OK End ExecutionService.queryProcessTemplates executionServiceHdl 1 filter "NAME = 'DemoProcessTemplate1'" sortCriteria null threshold 100 processTemplateArrayHdl 1 showAllObjectNames true xpFmcException FMC_OK End ProcessTemplateArray.size processTemplateArrayHdl 1 xpValue 1 End ProcessTemplateArray.getFirstElement processTemplateArrayHdl 1 processTemplateHdl 1 End ProcessTemplate.name processTemplateHdl 1 xpValue "DemoProcessTemplate1" End ProcessTemplate.refresh processTemplateHdl 1 xpFmcException FMC_OK End ProcessTemplate.inContainerName processTemplateHdl 1 xpValue "DsLevel1" End ProcessTemplate.inContainerNeeded processTemplateHdl 1 xpValue true End ProcessTemplate.initialInContainer processTemplateHdl 1 readWriteContainerHdl 1 xpFmcException FMC_OK End ReadWriteContainer.getString readWriteContainerHdl 1 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(0)" xpValue "StringValue3" xpFmcException FMC_OK End ReadWriteContainer.getString readWriteContainerHdl 1 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" xpValue "StringValue2" xpFmcException FMC_OK End /* Alternative API for the same DS member (see differences in qualifiedName) */ ReadWriteContainer.getString2 readWriteContainerHdl 1 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray" arrayIndex 1 xpValue "StringValue2" xpFmcException FMC_OK End /* a initital container value of one DS member will be overwritten by the following API */ ReadWriteContainer.setString readWriteContainerHdl 1 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" stringValue "StringValueNEW" xpFmcException FMC_OK End ProcessTemplate.createAndStartInstance2 processTemplateHdl 1 instanceName "A_new_Instance" systemGroup "" system "" ReadWriteContainerHdl 1 keepName false processInstanceHdl 1 xpFmcException FMC_OK End ExecutionService.queryProcessInstances executionServiceHdl 1 filter "NAME LIKE '*'" filter "STATE IN (RUNNING) AND NAME LIKE '*'" sortCriteria "NAME ASC" threshold 100 processInstanceVectorHdl 1 showAllObjectNames true xpFmcException FMC_OK End ExecutionService.queryWorkItems executionServiceHdl 1 filter "STATE IN READY AND NAME LIKE '*' AND OWNER = 'ADMIN'" sortCriteria null threshold 50 workItemArrayHdl 1 showAllObjectNames true xpFmcException FMC_OK End WorkItemArray.size /* tool macro */ workItemArrayHdl 1 End WorkItemArray.getFirstElement /* tool macro */ workItemArrayHdl 1 workItemHdl 1 End WorkItem.name workItemHdl 1 xpValue "DemoProgramActivity1" End WorkItem.state workItemHdl 1 xpValue READY End WorkItem.inContainer workItemHdl 1 readOnlyContainerHdl 2 xpFmcException FMC_OK End ReadOnlyContainer.getString readOnlyContainerHdl 2 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(0)" xpValue "StringValue3" /* original initial value */ xpFmcException FMC_OK End ReadOnlyContainer.getString readOnlyContainerHdl 2 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" xpValue "StringValueNEW" /* overwritten initial value */ xpFmcException FMC_OK End WorkItem.start workItemHdl 1 xpFmcException FMC_OK End /* --------------------------------------------- */ TestTool_CommentToOutput Comment "An activity implementation ""java com.ibm.workflow.api.tool.JGATT -ijexample17act.dat -ojexample17act.log"" will be started" ToStandardError true End Tool.sleep sleepTime_ms 40000 userText "Sleep while activity implementation is starting" beep false End /* ----End of activity implementation----------- */ WorkItem.refresh workItemHdl 1 xpFmcException FMC_OK End WorkItem.state workItemHdl 1 xpValue EXECUTED End WorkItem.outContainer workItemHdl 1 readWriteContainerHdl 2 xpFmcException FMC_OK End ReadWriteContainer.getLong readWriteContainerHdl 2 qualifiedName "_RC" xpValue 333 xpFmcException FMC_OK End ReadWriteContainer.getString readWriteContainerHdl 2 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(0)" xpValue "" /* not set in the activity implementation */ xpFmcException FMC_ERROR_MEMBER_NOT_SET End ReadWriteContainer.getString readWriteContainerHdl 2 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" xpValue "StringValueNEW in Activity Impementation modified" xpFmcException FMC_OK End ReadWriteContainer.getBuffer readWriteContainerHdl 2 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M6BinaryArray(0)" xpValue "4D512053657269657320576F726B666C6F772076657273696F6E20332E322E31" xpFmcException FMC_OK End ReadWriteContainer.getBuffer2 readWriteContainerHdl 2 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M6BinaryArray" arrayIndex 0 xpValue "4D512053657269657320576F726B666C6F772076657273696F6E20332E322E31" xpFmcException FMC_OK End ReadWriteContainer.getDouble readWriteContainerHdl 2 qualifiedName "DsL1M3Float" xpValue 99.123 xpFmcException FMC_OK End WorkItem.manualExitMode workItemHdl 1 xpValue true End WorkItem.finish workItemHdl 1 xpFmcException FMC_OK End WorkItem.state workItemHdl 1 xpValue DELETED End ExecutionService.programExecutionAgentShutDown executionServiceHdl 1 xpFmcException FMC_OK End ExecutionService.logoff executionServiceHdl 1 xpFmcException FMC_OK End
Result (runtime application)
MQSeries Workflow 3.2.2 Java Generic API Test Tool (JGATT), Driver v321, Hotfix 3 Test case: jexample17.dat 2000-02-08 09:44:07.69 ECT ============================================================================ Operating system: Windows NT Operating system version: 4.0 Operating system architecture: x86 Java version: 1.1.7 User account name: kurtfle ============================================================================ Command Line Arguments: -i=jexample17.dat (TestCase) -o=jexample17.log (Result) -d ============================================================================ +++> ============================================================================ ===> Parsing the input file ... ===> 570 msec ============================================================================ Agent.Agent parameter: agentHdl = 1 ============================================================================ Agent.setLocator parameter: agentHdl = 1 parameter: locator = LOC_LOCATOR = 4 ============================================================================ Agent.setName parameter: agentHdl = 1 parameter: name = "" ============================================================================ Agent.locate parameter: agentHdl = 1 parameter: systemGroup = "FMCGRP" parameter: system = "FMCSYS" parameter: executionServiceHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ Agent.isBound parameter: agentHdl = 1 ..........ValueReport....................................................... AcValue = true XpValue = true +++OK+++ ============================================================================ ExecutionService.logon2 parameter: executionServiceHdl = 1 parameter: userID = "ADMIN" parameter: password = "password" parameter: sessionMode = PRESENT_HERE parameter: absenceIndicator = NOT_SET ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ExecutionService.programExecutionAgentStartUp parameter: executionServiceHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ExecutionService.queryProcessTemplates parameter: executionServiceHdl = 1 parameter: filter = "NAME = 'DemoProcessTemplate1'" parameter: sortCriteria = null parameter: threshold = 100 parameter: processTemplateArrayHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ..........Object Names Report............................................... array size = 1 0) DemoProcessTemplate1 ============================================================================ ProcessTemplateArray.size parameter: processTemplateArrayHdl = 1 ..........ValueReport....................................................... AcValue = 1 XpValue = 1 +++OK+++ ============================================================================ ProcessTemplateArray.getFirstElement parameter: processTemplateArrayHdl = 1 parameter: processTemplateHdl = 1 ============================================================================ ProcessTemplate.name parameter: processTemplateHdl = 1 ..........ValueReport....................................................... AcValue = "DemoProcessTemplate1" XpValue = "DemoProcessTemplate1" +++OK+++ ============================================================================ ProcessTemplate.refresh parameter: processTemplateHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ProcessTemplate.inContainerName parameter: processTemplateHdl = 1 ..........ValueReport....................................................... AcValue = "DsLevel1" XpValue = "DsLevel1" +++OK+++ ============================================================================ ProcessTemplate.inContainerNeeded parameter: processTemplateHdl = 1 ..........ValueReport....................................................... AcValue = true XpValue = true +++OK+++ ============================================================================ ProcessTemplate.initialInContainer parameter: processTemplateHdl = 1 parameter: readWriteContainerHdl = 1 ============================================================================ ReadWriteContainer.getString parameter: readWriteContainerHdl = 1 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(0)" ..........ValueReport....................................................... AcValue = "StringValue3" XpValue = "StringValue3" +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.getString parameter: readWriteContainerHdl = 1 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" ..........ValueReport....................................................... AcValue = "StringValue2" XpValue = "StringValue2" +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.getString2 parameter: readWriteContainerHdl = 1 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray" parameter: arrayIndex = 1 ..........ValueReport....................................................... AcValue = "StringValue2" XpValue = "StringValue2" +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.setString parameter: readWriteContainerHdl = 1 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" parameter: stringValue = "StringValueNEW" ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ProcessTemplate.createAndStartInstance2 parameter: processTemplateHdl = 1 parameter: instanceName = "A_new_Instance" parameter: systemGroup = "" parameter: system = "" parameter: readWriteContainerHdl = 1 parameter: keepName = false parameter: processInstanceHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ExecutionService.queryProcessInstances parameter: executionServiceHdl = 1 parameter: filter = "STATE IN (RUNNING) AND NAME LIKE '*'" parameter: sortCriteria = "NAME ASC" parameter: threshold = 100 parameter: processInstanceArrayHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ..........Object Names Report............................................... array size = 1 0) A_new_Instance ============================================================================ ExecutionService.queryWorkItems parameter: executionServiceHdl = 1 parameter: filter = "STATE IN READY AND NAME LIKE '*' AND OWNER = 'ADMIN'" parameter: sortCriteria = null parameter: threshold = 50 parameter: workitemArrayHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ..........Object Names Report............................................... array size = 1 0) DemoProgramActivity1 ============================================================================ WorkItemArray.size parameter: workitemArrayHdl = 1 ..........ValueReport....................................................... AcValue = 1 XpValue = Expected value missing ============================================================================ WorkItemArray.getFirstElement parameter: workitemArrayHdl = 1 parameter: workitemHdl = 1 ============================================================================ WorkItem.name parameter: workitemHdl = 1 ..........ValueReport....................................................... AcValue = "DemoProgramActivity1" XpValue = "DemoProgramActivity1" +++OK+++ ============================================================================ WorkItem.state parameter: workitemHdl = 1 ..........ValueReport....................................................... AcValue = READY XpValue = READY +++OK+++ ============================================================================ WorkItem.inContainer parameter: workitemHdl = 1 parameter: readOnlyContainerHdl = 2 ============================================================================ ReadOnlyContainer.getString parameter: readOnlyContainerHdl = 2 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(0)" ..........ValueReport....................................................... AcValue = "StringValue3" XpValue = "StringValue3" +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadOnlyContainer.getString parameter: readOnlyContainerHdl = 2 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" ..........ValueReport....................................................... AcValue = "StringValueNEW" XpValue = "StringValueNEW" +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ WorkItem.start parameter: workitemHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ TestTool_CommentToOutput An activity implementation "java com.ibm.workflow.api.tool.JGATT -iexample17act.dat -oexample17act.log" will be started ============================================================================ Tool.sleep Tool will sleep for 40000 ms Sleep while activity implementation is starting ============================================================================ WorkItem.refresh parameter: workitemHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ WorkItem.state parameter: workitemHdl = 1 ..........ValueReport....................................................... AcValue = EXECUTED XpValue = EXECUTED +++OK+++ ============================================================================ WorkItem.outContainer parameter: workitemHdl = 1 parameter: readWriteContainerHdl = 2 ============================================================================ ReadWriteContainer.getLong parameter: readWriteContainerHdl = 2 parameter: qualifiedName = "_RC" ..........ValueReport....................................................... AcValue = 333 XpValue = 333 +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.getString parameter: readWriteContainerHdl = 2 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(0)" ..........RC Report......................................................... AcException = FMC_ERROR_MEMBER_NOT_SET = 113 XpException = FMC_ERROR_MEMBER_NOT_SET +++OK+++ ============================================================================ ReadWriteContainer.getString parameter: readWriteContainerHdl = 2 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" ..........ValueReport....................................................... AcValue = "StringValueNEW in Activity Impementation modified" XpValue = "StringValueNEW in Activity Impementation modified" +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.getBuffer parameter: readWriteContainerHdl = 2 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M6BinaryArray(0)" ..........ValueReport....................................................... AcBINARY data length = 32 byte. XpBINARY data length = 32 byte. AcValue = 4D 51 20 53 65 72 69 65 73 20 57 6F 72 6B 66 6C MQ Series Workfl 6F 77 20 76 65 72 73 69 6F 6E 20 33 2E 32 2E 31 ow version 3.2.2 XpValue = 4D 51 20 53 65 72 69 65 73 20 57 6F 72 6B 66 6C MQ Series Workfl 6F 77 20 76 65 72 73 69 6F 6E 20 33 2E 32 2E 31 ow version 3.2.2 +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.getBuffer2 parameter: readWriteContainerHdl = 2 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M6BinaryArray" parameter: arrayIndex = 0 ..........ValueReport....................................................... AcBINARY data length = 32 byte. XpBINARY data length = 32 byte. AcValue = 4D 51 20 53 65 72 69 65 73 20 57 6F 72 6B 66 6C MQ Series Workfl 6F 77 20 76 65 72 73 69 6F 6E 20 33 2E 32 2E 31 ow version 3.2.2 XpValue = 4D 51 20 53 65 72 69 65 73 20 57 6F 72 6B 66 6C MQ Series Workfl 6F 77 20 76 65 72 73 69 6F 6E 20 33 2E 32 2E 31 ow version 3.2.2 +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.getDouble parameter: readWriteContainerHdl = 2 parameter: qualifiedName = "DsL1M3Float" ..........ValueReport....................................................... AcValue = 99.123 XpValue = 99.123 +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ WorkItem.manualExitMode parameter: workitemHdl = 1 ..........ValueReport....................................................... AcValue = true XpValue = true +++OK+++ ============================================================================ WorkItem.finish parameter: workitemHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ WorkItem.state parameter: workitemHdl = 1 ..........ValueReport....................................................... AcValue = DELETED XpValue = DELETED +++OK+++ ============================================================================ ExecutionService.programExecutionAgentShutDown parameter: executionServiceHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ExecutionService.logoff parameter: executionServiceHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ====== Test case ended normally ============================================
Testcase (activity implementation)
/* ---------------------------------------------------------------------- jexample17act.dat (an actitivity implementation) Scenario: jexample17.fdl Invocation via runtime application: java com.ibm.workflow.api.tool.JGATT -ijexample17.dat -ojexample17.log -d ---------------------------------------------------------------------- */ Agent.Agent agentHdl 1 End Agent.setLocator agentHdl 1 locator LOC_LOCATOR End Agent.getLocator agentHdl 1 xpValue LOC_LOCATOR End Agent.setName agentHdl 1 name "" End Agent.getExecutionAgent agentHdl 1 executionAgentHdl 1 xpFmcException FMC_OK End ExecutionAgent.inContainer executionAgentHdl 1 readOnlyContainerHdl 1 xpFmcException FMC_OK End ReadOnlyContainer.type readOnlyContainerHdl 1 xpValue "DsLevel1" End ReadOnlyContainer.allLeafCount readOnlyContainerHdl 1 xpValue 55 End ReadOnlyContainer.getString readOnlyContainerHdl 1 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(0)" xpValue "StringValue3" /* original initial value */ xpFmcException FMC_OK End ReadOnlyContainer.getString readOnlyContainerHdl 1 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" xpValue "StringValueNEW" /* modified in runtime application */ xpFmcException FMC_OK End ReadOnlyContainer.getBuffer readOnlyContainerHdl 1 qualifiedName "DsL1M3Binary" xpValue "AA99AA99AA99AA99AA99AA" xpFmcException FMC_OK End ExecutionAgent.outContainer executionAgentHdl 1 readWriteContainerHdl 1 xpFmcException FMC_OK End ReadWriteContainer.setString readWriteContainerHdl 1 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" stringValue "StringValueNEW in Activity Impementation modified" xpFmcException FMC_OK End ReadWriteContainer.setBuffer2 readWriteContainerHdl 1 qualifiedName "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M6BinaryArray" arrayIndex 0 binaryValue "4D512053657269657320576F726B666C6F772076657273696F6E20332E322E31" xpFmcException FMC_OK End ReadWriteContainer.setDouble readWriteContainerHdl 1 qualifiedName "DsL1M3Float" doubleValue 99.123 xpFmcException FMC_OK End /* set the activity implementation return code via API call */ ReadWriteContainer.setLong readWriteContainerHdl 1 qualifiedName "_RC" longValue 333 /* A demo return code value */ xpFmcException FMC_OK End ExecutionAgent.setOutContainer executionAgentHdl 1 readWriteContainerHdl 1 xpFmcException FMC_OK End
Result (activity implementation)
MQSeries Workflow 3.2.2 Java Generic API Test Tool (JGATT), Driver v321, Hotfix 3 Test case: example17act.dat 2000-02-08 09:44:23.87 ECT ============================================================================ Operating system: Windows NT Operating system version: 4.0 Operating system architecture: x86 Java version: 1.1.7 User account name: kurtfle ============================================================================ +++> ============================================================================ ===> Parsing the input file ... ===> 240 msec ============================================================================ Agent.Agent parameter: agentHdl = 1 ============================================================================ Agent.setLocator parameter: agentHdl = 1 parameter: locator = LOC_LOCATOR = 4 ============================================================================ Agent.getLocator parameter: agentHdl = 1 ..........ValueReport....................................................... AcValue = LOC_LOCATOR XpValue = LOC_LOCATOR +++OK+++ ============================================================================ Agent.setName parameter: agentHdl = 1 parameter: name = "" ============================================================================ Agent.getExecutionAgent parameter: agentHdl = 1 parameter: executionAgentHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ExecutionAgent.inContainer parameter: executionAgentHdl = 1 parameter: readOnlyContainerHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadOnlyContainer.type parameter: readOnlyContainerHdl = 1 ..........ValueReport....................................................... AcValue = "DsLevel1" XpValue = "DsLevel1" +++OK+++ ============================================================================ ReadOnlyContainer.allLeafCount parameter: readOnlyContainerHdl = 1 ..........ValueReport....................................................... AcValue = 55 XpValue = 55 +++OK+++ ============================================================================ ReadOnlyContainer.getString parameter: readOnlyContainerHdl = 1 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(0)" ..........ValueReport....................................................... AcValue = "StringValue3" XpValue = "StringValue3" +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadOnlyContainer.getString parameter: readOnlyContainerHdl = 1 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" ..........ValueReport....................................................... AcValue = "StringValueNEW" XpValue = "StringValueNEW" +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadOnlyContainer.getBuffer parameter: readOnlyContainerHdl = 1 parameter: qualifiedName = "DsL1M3Binary" ..........ValueReport....................................................... AcBINARY data length = 11 byte. XpBINARY data length = 11 byte. AcValue = AA 99 AA 99 AA 99 AA 99 AA 99 AA ª™ª™ª™ª™ª™ª XpValue = AA 99 AA 99 AA 99 AA 99 AA 99 AA ª™ª™ª™ª™ª™ª +++OK+++ ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ExecutionAgent.outContainer parameter: executionAgentHdl = 1 parameter: readWriteContainerHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.setString parameter: readWriteContainerHdl = 1 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M7AnotherDsL4(1).DsL4M1StringArray(1)" parameter: stringValue = "StringValueNEW in Activity Impementation modified" ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.setBuffer2 parameter: readWriteContainerHdl = 1 parameter: qualifiedName = "DsL1M4AnotherDsL2.DsL2M1AnotherDsL3.DsL3M6BinaryArray" parameter: arrayIndex = 0 parameter: binaryValue = "4D512053657269657320576F726B666C6F772076657273696F6E20332E322E31" ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.setDouble parameter: readWriteContainerHdl = 1 parameter: qualifiedName = "DsL1M3Float" parameter: doubleValue = 99.123 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ReadWriteContainer.setLong parameter: readWriteContainerHdl = 1 parameter: qualifiedName = "_RC" parameter: longValue = 333 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ExecutionAgent.setOutContainer parameter: executionAgentHdl = 1 parameter: readWriteContainerHdl = 1 ..........RC Report......................................................... AcException = none = 0 XpException = none +++OK+++ ============================================================================ ====== Test case ended normally ============================================