7.10.2.3 GetResultListFiltered
This method is used to get a list of results matching certain filter criteria.
Signature
GetResultListFiltered ([in] ResultStateDataType resultState[in] MeasIdDataType measId[in] PartIdDataType partId[in] RecipeIdExternalDataType externalRecipeId[in] RecipeIdInternalDataType internalRecipeId[in] ConfigurationIdDataType externalConfigurationId[in] ConfigurationIdDataType internalConfigurationId[in] ProductIdDataType productId[in] JobIdDataType jobId[in] UInt32 maxResults[in] UInt32 startIndex[in] Int32 timeout[out] Boolean isComplete[out] UInt32 resultCount[out] Handle resultHandle[out] ResultDataType[] resultList[out] Int32 error);
| Argument | Description |
| resultState | If not 0, only results having the specified state are returned. |
| measId | If not empty, only results corresponding to the given measId are returned |
| partId | If not empty, only results corresponding to the given partId are returned. |
| externalRecipeId | If not empty, only results corresponding to the given externalRecipeId are returned. |
| internalRecipeId | If not empty, only results corresponding to the given internalRecipeId are returned. |
| externalConfigurationId | If not empty, only results corresponding to the given externalConfigurationId are returned. |
| internalConfigurationId | If not empty, only results corresponding to the given internalConfigurationId are returned. |
| productId | If not empty, only results corresponding to the given productId are returned. |
| jobId | If not empty, only results corresponding to the given jobId are returned. |
| maxResults | Maximum number of results to return in one call; by passing 0, the client indicates that it does not put a limit on the number of results. |
| startIndex | Shall be 0 on the first call, multiples of maxResults on subsequent calls to retrieve portions of the entire list, if necessary. |
| timeout | With this argument the client can give a hint to the server how long it will need access to the result data. A value > 0 indicates an estimated maximum time for processing the data in milliseconds. A value = 0 indicates that the client will not need anything besides the data returned by the method call. A value < 0 indicates that the client cannot give an estimate. The client cannot rely on the data being available during the indicated time period. The argument is merely a hint allowing the server to optimize its resource management. |
| isComplete | Indicates whether there are more results in the entire list than retrieved according to startIndex and resultCount. |
| resultCount | Gives the number of valid results in ResultList. |
| resultHandle | The server shall return to each client requesting result data a system-wide unique handle identifying the result set / client combination. This handle has to be used by the client to release the result set. |
| resultList | List of results matching the Filter. |
| error | 0 – OK Values > 0 are reserved for errors defined by this and future standards. Values < 0 shall be used for application-specific errors. |
| Attribute | Value | ||||
| BrowseName | GetResultListFiltered | ||||
| References | NodeClass | BrowseName | DataType | TypeDefinition | ModellingRule |
|---|---|---|---|---|---|
| HasProperty | Variable | InputArguments | Argument[] | PropertyType | Mandatory |
| HasProperty | Variable | OutputArguments | Argument[] | PropertyType | Mandatory |
There are the following cases with the respect to the number of results:
The number of results to be returned according to the filter is less or equal to MaxResults; the first call, with startIndex=0, returns isComplete=TRUE, so the client knows that no further calls are necessary. resultCount gives the number of valid elements in the resultList array.
The number of results to be returned is larger than maxResults; the first N calls (N > 0 with N ≤ (number of results) divisor MaxResults), with startIndex=(N-1)*maxResults, return isComplete=FALSE, so the client knows that further calls are necessary. The following call returns isComplete=TRUE, so the client knows, no further calls are necessary. resultCount gives the number of valid elements in the resultList array (on each call, so on the first N calls, this should be maxResults).