SetUsedIdentifiers (ILLDataProvider)

Syntax:

HRESULT SetUsedIdentifiers(const VARIANT* arvFieldRestriction);

Task:

Only used at node level. List & Label informs the provider which fields are required. Use this method, for example, to restrict an underlying SQL (select) statement in the data object.

Parameter:

arvFieldRestriction: BSTR Variant Array with the maximum number of fields to be requested.

Return value:

E_NOTIMPL for root objects, otherwise S_OK

Hints:

If no used identifiers are set here, there is no restriction to set - all fields are then requested.

Example:

_usedIdentifiers.clear();// to be used when building query later

       for (int i = 0;

i < int(arvFieldRestriction->parray->rgsabound[0].cElements); ++i)

       {

               VARIANT vItem;

               long lIndex = i;

               SafeArrayGetElement(arvFieldRestriction->parray,

 &lIndex, &vItem);

               std::wstring ws(vItem.bstrVal, SysStringLen(vItem.bstrVal));

               _usedIdentifiers.insert(ws.c_str());

 }

See also:

LIGetUsedIdentifiers