WebSphere MQ Workflow 3.4 Generic C API Test / Prototyping Tool

[prev][next][parent][TOC]

FmcjPointVector - Example

* Process Model

* FDL

* Testcase

* Result
 

Process Model

[Artwork not shown]
 

FDL

/*
 *
 *  FDL definitions generated by MQSeries Workflow at 1998-12-07, 06:17:25.
 *
 */
CODEPAGE 1252 
FM_RELEASE V3R1 2 

/*
 *  STRUCTUREs
 */
UPDATE STRUCTURE 'Default Data Structure'
END 'Default Data Structure'

STRUCTURE 'SimpleDS'
  'm_long': LONG;
  'm_string': STRING;
  'm_float': FLOAT;
END 'SimpleDS'

STRUCTURE 'ComplexDS'
  'm1': LONG;
  'm2': LONG;
  'b1': BINARY;
  'm_simpleds': 'SimpleDS';
  'm_array_of_string': STRING(10);
  'm_array_of_long': LONG(1);
  'm_array_of_float': FLOAT(100);
END 'ComplexDS'

/*
 *  TOOL_SETs
 */
UPDATE TOOL_SET 'STANDARD'
  DEFAULT_PROCESS_ACTIVITY_ICON 'fmcbprca'
  DEFAULT_BLOCK_ACTIVITY_ICON 'fmcbblka'
  DEFAULT_BUNDLE_ACTIVITY_ICON 'fmcbbnda'
  DEFAULT_INFORMATION_ACTIVITY_ICON 'fmcbinfa'
  DEFAULT_PROGRAM_ACTIVITY_ICON 'fmcbprga'
END 'STANDARD'

/*
 *  PROCESS_CATEGORYs
 */
PROCESS_CATEGORY 'PM1'
  DOCUMENTATION 'PM1: Category for the process ''ProcessMonitor1'''
END 'PM1'


/*
 *  PROGRAMs
 */
PROGRAM 'ACTIMPL' ( 'ComplexDS', 'ComplexDS' ) 
  NO STRUCTURES_FROM_ACTIVITY
  NOT UNATTENDED 
  OS2 EXE PATH_AND_FILENAME 'fmctjcim.exe'
    STYLE VISIBLE 
  AIX EXE PATH_AND_FILENAME 'fmctjcim'
  WINNT EXE PATH_AND_FILENAME 'fmctjcim.exe'
    STYLE VISIBLE 
END 'ACTIMPL'

/*
 *  PERSONs
 */
UPDATE PERSON 'ADMIN'
  AUTHORIZED_FOR STAFF 
  AUTHORIZED_FOR AUTHORIZATION 
  AUTHORIZED_FOR OPERATION 
  AUTHORIZED_FOR TOPOLOGY 
  AUTHORIZED_FOR PROCESS_MODELING
  AUTHORIZED_FOR PROCESS_CATEGORY ALL AS_ADMINISTRATOR
  AUTHORIZED_FOR WORKITEMS_OF ALL 
  PASSWORD $$00F005FFFEF7F50A
  IS_NOT_ABSENT
  DO NOT RESET_ABSENT
  GROUP 'SYS_GRP'
  SYSTEM 'FMCSYS'
END 'ADMIN'

PERSON 'BOB'
  LAST_NAME 'Marley'
  FIRST_NAME 'Bob'
  AUTHORIZED_FOR PROCESS_CATEGORY 'PM1' AS_ADMINISTRATOR
  PASSWORD $$01FBFAF8FFF8F30C
  IS_NOT_ABSENT
  DO NOT RESET_ABSENT
  GROUP 'SYS_GRP'
  SYSTEM 'FMCSYS'
END 'BOB'

PERSON 'DAVE'
  LAST_NAME 'Gohl'
  FIRST_NAME 'Dave'
  AUTHORIZED_FOR PROCESS_CATEGORY 'PM1'
  PASSWORD $$03ED0EFBF4F70702
  IS_NOT_ABSENT
  DO NOT RESET_ABSENT
  GROUP 'SYS_GRP'
  SYSTEM 'FMCSYS'
END 'DAVE'

PERSON 'JIM'
  LAST_NAME 'Morrison'
  FIRST_NAME 'Jim'
  AUTHORIZED_FOR PROCESS_CATEGORY ALL 
  PASSWORD $$09F50500F903FB06
  IS_NOT_ABSENT
  DO NOT RESET_ABSENT
  GROUP 'SYS_GRP'
  SYSTEM 'FMCSYS'
END 'JIM'

/*
 *  ROLEs
 */
UPDATE ROLE 'System administrator'
  RELATED_PERSON 'ADMIN'
END 'System administrator'

/*
 *  PROCESSes
 */
/*
 *  PROCESS MonitorProcess1 
 */
PROCESS 'MonitorProcess1' ( 'ComplexDS', 'ComplexDS' ) 
  DESCRIPTION 'This is a simple process to test the monitor'
  DOCUMENTATION 'This is the documentation'
  CATEGORY 'PM1'
  DO NOT PROMPT_AT_PROCESS_START
  KEEP_PROCESSES FOREVER 
  KEEP_WORKITEMS FOREVER 
  RC_CREATION LAST 
  NOTIFICATION AFTER 60 SECONDS 
  PROCESS_ADMINISTRATOR 'ADMIN'
  WINDOW VIEW_REFERENCE_POINT XPOS -16 YPOS 116 
  WINDOW SHOW ALL CONNECTORS 
  WINDOW SHOW ALL CONDITIONS 
  SOURCE 1 XPOS -600 YPOS 500 
  BLOCK 'BlockActAPI04' ( 'ComplexDS', 'ComplexDS' ) 
    DESCRIPTION 'This is the 04 activity contained in the instance (BlockActAPI04)'
    DOCUMENTATION 'It is an activity of kind block'
    START WHEN AT_LEAST_ONE CONNECTOR TRUE 
    LAYOUT XPOS 500 YPOS -100
    WINDOW VIEW_REFERENCE_POINT XPOS -1 YPOS 98 
    WINDOW SHOW ALL CONNECTORS 
    WINDOW SHOW NO CONDITIONS 
    PROGRAM_ACTIVITY 'ProgActOfBlock04' ( 'ComplexDS', 'ComplexDS' ) 
      START MANUAL WHEN AT_LEAST_ONE CONNECTOR TRUE 
      EXIT AUTOMATIC 
      LAYOUT XPOS 100 YPOS 600 
      PROGRAM 'ACTIMPL'
    END 'ProgActOfBlock04'
    BLOCK 'BlockAct0401' ( 'ComplexDS', 'ComplexDS' ) 
      DESCRIPTION 'This is the 01 activity contained in the block 04'
      DOCUMENTATION 'It is an activity of kind block'
      START WHEN AT_LEAST_ONE CONNECTOR TRUE 
      LAYOUT XPOS -400 YPOS 600 
      WINDOW VIEW_REFERENCE_POINT XPOS -1 YPOS 26 
      WINDOW SHOW ALL CONNECTORS 
      WINDOW SHOW NO CONDITIONS 
      PROGRAM_ACTIVITY 'ProgActOfBlock0401' ( 'ComplexDS', 'ComplexDS' ) 
        START MANUAL WHEN AT_LEAST_ONE CONNECTOR TRUE 
        EXIT AUTOMATIC 
        LAYOUT XPOS 0 YPOS 0 
        PROGRAM 'ACTIMPL'
      END 'ProgActOfBlock0401'
    END 'BlockAct0401'
    BLOCK 'BlockAct0402' ( 'ComplexDS', 'ComplexDS' ) 
      DESCRIPTION 'This is the 02 activity contained in the block 04'
      DOCUMENTATION 'It is an activity of kind block'
      START WHEN AT_LEAST_ONE CONNECTOR TRUE 
      LAYOUT XPOS -800 YPOS 600 
      WINDOW VIEW_REFERENCE_POINT XPOS -1 YPOS 26 
      WINDOW SHOW ALL CONNECTORS 
      WINDOW SHOW NO CONDITIONS 
      PROGRAM_ACTIVITY 'ProgActOfBlock0402' ( 'ComplexDS', 'ComplexDS' ) 
        START MANUAL WHEN AT_LEAST_ONE CONNECTOR TRUE 
        EXIT AUTOMATIC 
        LAYOUT XPOS 0 YPOS 0 
        PROGRAM 'ACTIMPL'
      END 'ProgActOfBlock0402'
    END 'BlockAct0402'
  END 'BlockActAPI04'
  PROGRAM_ACTIVITY 'ProgActAPI01' ( 'ComplexDS', 'ComplexDS' ) 
    DESCRIPTION 'This is the 01 activity contained in the instance'
    DOCUMENTATION 'This is the documentation (ProgActAPI01)'
    INPUT_CONTAINER
      'm_array_of_long[0]' INITIAL_VALUE '999'
      'm_array_of_float[1]' INITIAL_VALUE '99.9'
      'm_array_of_string[1]' INITIAL_VALUE 'm_string value'
    START MANUAL WHEN AT_LEAST_ONE CONNECTOR TRUE 
    EXIT AUTOMATIC WHEN 'm1=1'
    LAYOUT XPOS -600 YPOS 200 
    NAME_POSITION XPOS -800 YPOS 225 
    PRIORITY 7 
    DONE_BY PERSON 'BOB' 'DAVE' 'JIM'
    NO SUBSTITUTION 
    PROGRAM 'ACTIMPL'
  END 'ProgActAPI01'
  PROGRAM_ACTIVITY 'ProgActAPI02' ( 'ComplexDS', 'ComplexDS' ) 
    DESCRIPTION 'This is the 02 activity contained in the instance'
    DOCUMENTATION 'This is the documentation 
of ProgActAPI02'
    START MANUAL WHEN AT_LEAST_ONE CONNECTOR TRUE 
    EXIT AUTOMATIC 
    LAYOUT XPOS 100 YPOS 200 
    PRIORITY DEFINED_IN INPUT_CONTAINER
    NOTIFICATION TO 'JIM' AFTER 30 SECONDS 
      SECOND_NOTIFICATION AFTER 30 SECONDS 
    DONE_BY PERSON 'BOB'
    PROGRAM 'ACTIMPL'
  END 'ProgActAPI02'
  PROCESS_ACTIVITY 'ProcActAPI03' ( 'ComplexDS', 'ComplexDS' ) 
    DESCRIPTION 'This is the 03 activity contained in the instance'
    DOCUMENTATION 'It is an activity of kind process (ProcActAPI03)'
    START AUTOMATIC WHEN AT_LEAST_ONE CONNECTOR TRUE 
    EXIT AUTOMATIC 
    LAYOUT XPOS 100 YPOS -100
    PRIORITY DEFINED_IN INPUT_CONTAINER
    DONE_BY PERSON 'BOB' 'JIM'
    PROCESS ' SomeSubProcess'
  END 'ProcActAPI03'
  CONTROL NAME 'From02To03'
    DESCRIPTION 'Desc of From02To03'
    FROM 'ProgActAPI02' TO 'ProcActAPI03'
    WHEN 'm1=1'
      XPOS -100 YPOS 25 
    LAYOUT 
      XPOS -200 YPOS 200 
      XPOS -200 YPOS -100
  CONTROL NAME 'From02To04'
    FROM 'ProgActAPI02' TO 'BlockActAPI04'
    OTHERWISE 
    LAYOUT 
      XPOS 500 YPOS 200 
  DATA 
    FROM SOURCE 1 TO 'ProgActAPI01'
    MAP 'm1' TO 'm1'
    MAP 'm2' TO 'm2'
    MAP 'm_array_of_string[0]' TO 'm_array_of_string[0]'
    MAP 'm_array_of_long[0]' TO 'm_array_of_long[0]'
    MAP 'm_array_of_float[0]' TO 'm_array_of_float[0]'
    MAP 'm_simpleds.m_long' TO 'm_simpleds.m_long'
    MAP 'm_simpleds.m_string' TO 'm_simpleds.m_string'
    MAP 'm_simpleds.m_float' TO 'm_simpleds.m_float'
END 'MonitorProcess1'

/*
 *  PROCESS SomeSubProcess 
 */
PROCESS 'SomeSubProcess' ( 'ComplexDS', 'ComplexDS' ) 
  DO NOT PROMPT_AT_PROCESS_START
  RC_CREATION LAST 
  WINDOW SHOW ALL CONNECTORS 
  WINDOW SHOW NO CONDITIONS 
  PROGRAM_ACTIVITY 'ProgSubAPI01' ( 'ComplexDS', 'ComplexDS' ) 
    START MANUAL WHEN AT_LEAST_ONE CONNECTOR TRUE 
    EXIT AUTOMATIC 
    PROGRAM 'ACTIMPL'
  END 'ProgSubAPI01'
END 'SomeSubProcess'
 

 
 
 
 
 
 

Testcase

/******************************************************************************
* Testcase:      pm_8.dat     ( FmcjPointVector...() APIs )
* Prerequisites: ProcMon.fdl
******************************************************************************/

/*********************************************************
* logon 
**********************************************************/
FmcjGlobalConnect 
  XpRc                              FMC_OK
End 

FmcjExecutionServiceAllocate 
  ExecutionServiceHdl               1 
  XpRc                              FMC_OK
End 

FmcjExecutionServiceLogon 
  ExecutionServiceHdl               1 
  UserId                            "BOB"
  Password                          "password"
  SessionMode                       Fmc_SM_Default
  AbsentIndicator                   Fmc_SA_NotSet
  XpRc                              FMC_OK
End 

/*********************************************************
* Preparations: create a process instance 
**********************************************************/
FmcjExecutionServiceQueryProcessTemplates 
  ExecutionServiceHdl               1 
  Filter                            "NAME IN 'MonitorProcess1'"
  SortCriteria                      NULL
  Threshold                         NULL 
  ProcessTemplateVectorHdl          1
  ShowAllObjectNames                TRUE
  XpRc                              FMC_OK
End 

FmcjProcessTemplateVectorSize 
  ProcessTemplateVectorHdl          1
  XpValue                           1 
End 

FmcjProcessTemplateVectorFirstElement 
  ProcessTemplateVectorHdl          1
  ProcessTemplateHdl                1
End 

FmcjProcessTemplateName 
  ProcessTemplateHdl                1
  BufferLength                      33

  XpValue                           "MonitorProcess1"
End 

FmcjProcessTemplateCreateInstance 
  ProcessTemplateHdl                1
  InstanceName                      "MonitorInstance_1"
  SystemGroup                       NULL 
  System                            NULL
  KeepName                          FALSE
  ProcessInstanceHdl                1
  XpRc                              FMC_OK
End 

/*********************************************************
* Retrieve process instance 
**********************************************************/
FmcjExecutionServiceQueryProcessInstances 
  ExecutionServiceHdl               1 
  Filter                            "NAME = 'MonitorInstance_1'"
  SortCriteria                      NULL
  Threshold                         NULL 
  ProcessInstanceVectorHdl          1
  ShowAllObjectNames                TRUE
  XpRc                              FMC_OK
End 

FmcjProcessInstanceVectorSize 
  ProcessInstanceVectorHdl          1
  XpValue                           1 
End 

FmcjProcessInstanceVectorFirstElement 
  ProcessInstanceVectorHdl          1
  ProcessInstanceHdl                1
End 

FmcjProcessInstanceName 
  ProcessInstanceHdl                1
  BufferLength                      100
  XpValue                           "MonitorInstance_1"
End 

/*********************************************************
* Obtain process instance monitor 
**********************************************************/
FmcjProcessInstanceObtainProcessMonitor 
  ProcessInstanceHdl                1
  Deep                              FALSE
  InstanceMonitorHdl                1 
  XpRc                              FMC_OK
End 

FmcjResultObjectOfCurrentThread 
  ResultHdl                         1 
End 

/*********************************************************
* Get and show the ControlConnectorInstances 
**********************************************************/

FmcjInstanceMonitorControlConnectorInstances 
  InstanceMonitorHdl                1 
  ControlConnectorInstanceVectorHdl 1 
  ShowAllObjectNames                TRUE
End 

FmcjControlConnectorInstanceVectorFirstNamedElement 
  ControlConnectorInstanceVectorHdl 1 
  Name                              "From02To03"
  ControlConnectorInstanceHdl       1 
End 

FmcjControlConnectorInstanceName 
  ControlConnectorInstanceHdl       1 
  BufferLength                      50
  XpValue                           "From02To03"
End 

/* =======================================================
  Get the FmcjPointVector and navigate on the Vector 
======================================================== */

FmcjControlConnectorInstanceBendPoints 
  ControlConnectorInstanceHdl       1 
  PointVectorHdl                    1
End 

FmcjPointVectorSize 
  PointVectorHdl                    1
  XpValue                           2 
End 

FmcjPointVectorFirstElement 
  PointVectorHdl                    1
  PointHdl                          1
End 

FmcjResultRc 
  ResultHdl                         1 
  XpRc                              FMC_OK
End 

FmcjPointXPosition
  PointHdl                          1
End

FmcjPointVectorNextElement 
  PointVectorHdl                    1
  PointHdl                          2
End 

FmcjResultRc 
  ResultHdl                         1 
  XpRc                              FMC_OK
End 

FmcjPointXPosition
  PointHdl                          1
End

FmcjPointVectorNextElement 
  PointVectorHdl                    1
  PointHdl                          3
End 

FmcjResultRc 
  ResultHdl                         1 
  XpRc                              FMC_ERROR_NO_MORE_DATA
End 

FmcjResultMessageText 
  ResultHdl                         1 
  BufferLength                      1025
  XpValue                          "FMC00804E Incorrect read past the end of list
"
End 

FmcjPointVectorDeallocate 
  PointVectorHdl                    1
  XpRc                              FMC_OK
End 

/* ------------------------------------------------ */

FmcjControlConnectorInstanceVectorFirstNamedElement 
  ControlConnectorInstanceVectorHdl 1 
  Name                              "From02To04"
  ControlConnectorInstanceHdl       2 
End 

FmcjControlConnectorInstanceName 
  ControlConnectorInstanceHdl       2 
  BufferLength                      50
  XpValue                           "From02To04"
End 

/* =======================================================
  Get the FmcjPointVector and navigate on the Vector 
======================================================== */

FmcjControlConnectorInstanceBendPoints 
  ControlConnectorInstanceHdl       2 
  PointVectorHdl                    2
End 

FmcjPointVectorSize 
  PointVectorHdl                    2
  XpValue                           1 
End 

FmcjPointVectorFirstElement 
  PointVectorHdl                    2
  PointHdl                          4
End 

FmcjResultRc 
  ResultHdl                         1 
  XpRc                              FMC_OK
End 

FmcjPointXPosition
  PointHdl                          1
End

FmcjPointVectorNextElement 
  PointVectorHdl                    2
  PointHdl                          5
End 

FmcjResultRc 
  ResultHdl                         1 
  XpRc                              FMC_ERROR_NO_MORE_DATA
End 

FmcjResultMessageText 
  ResultHdl                         1 
  BufferLength                      1025
  XpValue                          "FMC00804E Incorrect read past the end of list
"
End 

FmcjPointVectorDeallocate 
  PointVectorHdl                    2
  XpRc                              FMC_OK
End 


/* ------------------------------------------------ */

FmcjControlConnectorInstanceDeallocate 
  ControlConnectorInstanceHdl       1 
  XpRc                              FMC_OK
End 

FmcjControlConnectorInstanceDeallocate 
  ControlConnectorInstanceHdl       2 
  XpRc                              FMC_OK
End 

FmcjControlConnectorInstanceVectorDeallocate 
  ControlConnectorInstanceVectorHdl 1 
  XpRc                              FMC_OK
End 


/*********************************************************
* logoff 
**********************************************************/
FmcjExecutionServiceLogoff 
  ExecutionServiceHdl               1 
  XpRc                              FMC_OK
End 

FmcjExecutionServiceDeallocate 
  ExecutionServiceHdl               1 
  XpRc                              FMC_OK
End 

FmcjGlobalDisconnect 
  XpRc                              FMC_OK
End
 

 
 
 
 
 
 

Result

C API Test Tool for MQSeries Workflow v330 Windows 9x/NT/2000: FMCTJCA1
Test case: PM_8.DAT
Mon Jul 23 15:07:38 2001
============================================================================
Command Line Arguments:
-i=pm_8.dat (TC)
-o=pm_8.log (Log)
-d
============================================================================
+++> 
============================================================================
FmcjGlobalConnect
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjExecutionServiceAllocate
parameter:  ExecutionServiceHdl = 1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjExecutionServiceLogon
parameter:  ExecutionServiceHdl = 1
parameter:  UserID = BOB
parameter:  Password = password
parameter:  SessionMode = Fmc_SM_Default = 0
parameter:  AbsentIndicator = Fmc_SA_NotSet = 0
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjExecutionServiceQueryProcessTemplates
parameter:  ExecutionServiceHdl = 1
parameter:  Filter = NAME IN 'MonitorProcess1'
parameter:  SortCriteria = NULL
parameter:  Threshold = NULL
parameter:  ProcessTemplateVectorHdl = 1
..........Object Names Report...............................................
vector size = 1
0) MonitorProcess1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjProcessTemplateVectorSize
parameter:  ProcessTemplateVectorHdl = 1
..........Value Report......................................................
AcSize = 1
XpSize = 1
+++OK+++
============================================================================
FmcjProcessTemplateVectorFirstElement
parameter:  ProcessTemplateVectorHdl = 1
parameter:  ProcessTemplateHdl = 1
..........Status Report.....................................................
ProcessTemplateHdl = 0xbdd1f0
============================================================================
FmcjProcessTemplateName
parameter:  ProcessTemplateHdl = 1
parameter:  BufferLength = 33
..........Value Report......................................................
AcValue = "MonitorProcess1"
XpValue = "MonitorProcess1"
+++OK+++
============================================================================
FmcjProcessTemplateCreateInstance
parameter:  ProcessTemplateHdl = 1
parameter:  InstanceName = MonitorInstance_1
parameter:  SystemGroup = NULL
parameter:  System = NULL
parameter:  KeepName = FALSE
parameter:  ProcessInstanceHdl = 1
..........Status Report.....................................................
ProcessInstanceHdl = 0x1c23010
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjExecutionServiceQueryProcessInstances
parameter:  ExecutionServiceHdl = 1
parameter:  Filter = NAME = 'MonitorInstance_1'
parameter:  SortCriteria = NULL
parameter:  Threshold = NULL
parameter:  ProcessInstanceVectorHdl = 1
..........Object Names Report...............................................
vector size = 1
0) MonitorInstance_1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjProcessInstanceVectorSize
parameter:  ProcessInstanceVectorHdl = 1
..........Value Report......................................................
AcSize = 1
XpSize = 1
+++OK+++
============================================================================
FmcjProcessInstanceVectorFirstElement
parameter:  ProcessInstanceVectorHdl = 1
parameter:  ProcessInstanceHdl = 1
..........Report............................................................
WARNING: an already stored object (ProcessInstanceHdl = 1)
         will be overwritten with a new object
..........Status Report.....................................................
ProcessInstanceHdl = 0x1c23060
============================================================================
FmcjProcessInstanceName
parameter:  ProcessInstanceHdl = 1
parameter:  BufferLength = 100
..........Value Report......................................................
AcValue = "MonitorInstance_1"
XpValue = "MonitorInstance_1"
+++OK+++
============================================================================
FmcjProcessInstanceObtainProcessMonitor
parameter:  ProcessInstanceHdl = 1
parameter:  Deep = FALSE
parameter:  InstanceMonitorHdl = 1
..........Status Report.....................................................
InstanceMonitorHdl = 0x1c24af0
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjResultObjectOfCurrentThread
parameter:  ResultHdl = 1
..........Status Report.....................................................
ResultHdl = 0xbdcaf4
============================================================================
FmcjInstanceMonitorControlConnectorInstances
parameter:  InstanceMonitorHdl = 1
parameter:  ControlConnectorInstanceVectorHdl = 1
..........Status Report.....................................................
ControlConnectorInstanceVectorHdl = 0xbdff20
..........Object Names Report...............................................
vector size = 2
0) From02To04
1) From02To03
============================================================================
FmcjControlConnectorInstanceVectorFirstNamedElement
parameter:  ControlConnectorInstanceVectorHdl = 1
parameter:  Name = From02To03
parameter:  ControlConnectorInstanceHdl = 1
..........Status Report.....................................................
ControlConnectorInstanceHdl = 0x1c23080
============================================================================
FmcjControlConnectorInstanceName
parameter:  ControlConnectorInstanceHdl = 1
parameter:  BufferLength = 50
..........Value Report......................................................
AcValue = "From02To03"
XpValue = "From02To03"
+++OK+++
============================================================================
FmcjControlConnectorInstanceBendPoints
parameter:  ControlConnectorInstanceHdl = 1
parameter:  PointVectorHdl = 1
..........Status Report.....................................................
PointVectorHdl = 0xbdff40
============================================================================
FmcjPointVectorSize
parameter:  PointVectorHdl = 1
..........Value Report......................................................
AcSize = 2
XpSize = 2
+++OK+++
============================================================================
FmcjPointVectorFirstElement
parameter:  PointVectorHdl = 1
parameter:  PointHdl = 1
..........Status Report.....................................................
PointHdl = 0x1c210c0
============================================================================
FmcjResultRc
parameter:  ResultHdl = 1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjPointXPosition
parameter:  PointHdl = 1
..........Value Report......................................................
AcValue = -200
XpValue = Expected value missing
============================================================================
FmcjPointVectorNextElement
parameter:  PointVectorHdl = 1
parameter:  PointHdl = 2
..........Status Report.....................................................
PointHdl = 0x1c241c0
============================================================================
FmcjResultRc
parameter:  ResultHdl = 1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjPointXPosition
parameter:  PointHdl = 1
..........Value Report......................................................
AcValue = -200
XpValue = Expected value missing
============================================================================
FmcjPointVectorNextElement
parameter:  PointVectorHdl = 1
parameter:  PointHdl = 3
..........Status Report.....................................................
PointHdl = 0x0
============================================================================
FmcjResultRc
parameter:  ResultHdl = 1
..........RC Report.........................................................
AcRc = FMC_ERROR_NO_MORE_DATA = 804
XpRc = FMC_ERROR_NO_MORE_DATA
+++OK+++
============================================================================
FmcjResultMessageText
parameter:  ResultHdl = 1
parameter:  BufferLength = 1025
..........Value Report......................................................
AcValue = "FMC00804E Incorrect read past the end of list
"
XpValue = "FMC00804E Incorrect read past the end of list
"
+++OK+++
============================================================================
FmcjPointVectorDeallocate
parameter:  PointVectorHdl = 1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjControlConnectorInstanceVectorFirstNamedElement
parameter:  ControlConnectorInstanceVectorHdl = 1
parameter:  Name = From02To04
parameter:  ControlConnectorInstanceHdl = 2
..........Status Report.....................................................
ControlConnectorInstanceHdl = 0xbdff40
============================================================================
FmcjControlConnectorInstanceName
parameter:  ControlConnectorInstanceHdl = 2
parameter:  BufferLength = 50
..........Value Report......................................................
AcValue = "From02To04"
XpValue = "From02To04"
+++OK+++
============================================================================
FmcjControlConnectorInstanceBendPoints
parameter:  ControlConnectorInstanceHdl = 2
parameter:  PointVectorHdl = 2
..........Status Report.....................................................
PointVectorHdl = 0x1c24240
============================================================================
FmcjPointVectorSize
parameter:  PointVectorHdl = 2
..........Value Report......................................................
AcSize = 1
XpSize = 1
+++OK+++
============================================================================
FmcjPointVectorFirstElement
parameter:  PointVectorHdl = 2
parameter:  PointHdl = 4
..........Status Report.....................................................
PointHdl = 0x1c24260
============================================================================
FmcjResultRc
parameter:  ResultHdl = 1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjPointXPosition
parameter:  PointHdl = 1
..........Value Report......................................................
AcValue = -200
XpValue = Expected value missing
============================================================================
FmcjPointVectorNextElement
parameter:  PointVectorHdl = 2
parameter:  PointHdl = 5
..........Status Report.....................................................
PointHdl = 0x0
============================================================================
FmcjResultRc
parameter:  ResultHdl = 1
..........RC Report.........................................................
AcRc = FMC_ERROR_NO_MORE_DATA = 804
XpRc = FMC_ERROR_NO_MORE_DATA
+++OK+++
============================================================================
FmcjResultMessageText
parameter:  ResultHdl = 1
parameter:  BufferLength = 1025
..........Value Report......................................................
AcValue = "FMC00804E Incorrect read past the end of list
"
XpValue = "FMC00804E Incorrect read past the end of list
"
+++OK+++
============================================================================
FmcjPointVectorDeallocate
parameter:  PointVectorHdl = 2
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjControlConnectorInstanceDeallocate
parameter:  ControlConnectorInstanceHdl = 1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjControlConnectorInstanceDeallocate
parameter:  ControlConnectorInstanceHdl = 2
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjControlConnectorInstanceVectorDeallocate
parameter:  ControlConnectorInstanceVectorHdl = 1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjExecutionServiceLogoff
parameter:  ExecutionServiceHdl = 1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjExecutionServiceDeallocate
parameter:  ExecutionServiceHdl = 1
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjGlobalDisconnect
..........RC Report.........................................................
AcRc = FMC_OK = 0
XpRc = FMC_OK
+++OK+++
============================================================================
FmcjProcessTemplateVectorDeallocate( 1 ) ended with RC = 0
FmcjProcessTemplateDeallocate( 1 ) ended with RC = 0
FmcjProcessInstanceVectorDeallocate( 1 ) ended with RC = 0
FmcjProcessInstanceDeallocate( 1 ) ended with RC = 0
FmcjPointDeallocate( 1 ) ended with RC = 0
FmcjPointDeallocate( 2 ) ended with RC = 0
FmcjPointDeallocate( 4 ) ended with RC = 0
FmcjInstanceMonitorDeallocate( 1 ) ended with RC = 0

Cleanup done by Test Tool
============================================================================
====== Test case ended normally ============================================