This functions reads and provides the value of a collection at a specified position. This function has to be used if the expected value is not of a simple type but a complex one.
For simple types the function SapGuiIteratorGetValueAt has to be used. The returned object handle has to be freed by calling SapGuiObjectFree when no longer needed.
SapGui.bdh
SapGuiIteratorGetObjectAt( in  nIterator : number,
                           in  nPos      : number,
                           out nObj      : number ) : boolean; 
               	 | Parameter | Description | 
|---|---|
| nIterator | The handle to the collection iterator | 
| nPos | The position of the value to be read. | 
| nObj | This parameter will be assigned the handle of the object to be read. | 
transaction TMain
  var
    sConnID       : string;
    i             : number;
    nIterator     : number;
    nType         : number;
    nObject, nObj : number;
    bRet          : boolean;
    sStr1, sStr2  : string;
  begin
    // Connecting to SAP
    sConnID := SapGuiOpenConnection(" /SAP_CODEPAGE=1100 /FULLMENU 10.5.2.198 0 /3");
    SapGuiSetActiveConnection(sConnID);
    SapGuiSetActiveSession("ses[0]");
  
    // SAP
    SapGuiSetActiveWindow("wnd[0]", "SAP", SAPGUI_MATCH_Exact);
    SapGuiWindowAction(SAPGUI_WND_MAXIMIZE);
  
    // Logon to SAP System
    SapGuiIgnoreError(SAPENGINE_STATUSBAR_CHANGED, SEVERITY_SUCCESS);
    ThinkTime(2.8);
    SapGuiLogon("ddic", "minisap", "000", ""); 
  
    // Copyright
    ThinkTime(2.1);
    SapGuiSetActiveWindow("wnd[1]", "Copyright", SAPGUI_MATCH_Exact);
    SapGuiPressButton("tbar[0]/btn[0]");
  
    // SAP Easy Access
    ThinkTime(9.9);
    SapGuiSetActiveWindow("wnd[0]", "SAP Easy Access", SAPGUI_MATCH_Exact);
    SapGuiGetPropertyCollection("wnd[0]", "Children", nIterator);
    SapGuiIteratorGetObjectAt(nIterator, 0, nObj);
    SapGuiObjectFree(nObj);
    SapGuiIteratorRelease(nIterator);
  end TMain;