Table Task

This task works with tables with unique keys. It is designed to be very fast and handle large tables. It is a hardware configuration requirement for there to be enough RAM on the server workstation to hold all of the active tables.

01   public TableLookupResult process (DecisionRequest decisionRequest) 
                              throws TaskException, Exception
02   {
03      lookupKey.setKey (decisionRequest, keyFields);
04
05      try
06      {
07         userExit.setLookupKey (decisionRequest, lookupKey);
08      }
09      catch (Exception xcp)
10      {
11         throw xcp;
12      }
13
14      boolean recFound = binTable.search (lookupKey.getKey(), lookupResults.getPayload());
15
16      lookupResults.setOperationResults (recFound == true);
17      lookupResults.setRecordFound      (recFound);
18
19      if (recFound == true)
20      {
21         lookupResults.setResults (decisionRequest, payloadFields);
22      }
23
24      try
25      {
26         userExit.postLookup (decisionRequest, lookupResults);
27      }
28      catch (Exception xcp)
29      {
30         throw xcp;
31      }
32
33      return lookupResults;
34   }
Source code line number
Description
1
This function is called by the eSort Node. For more information, see Node Level.
3
The fields that make up the key for this table are automatically drawn from the decision request.
7
The user exit optionally sets or alters the key.
21
The payload fields are automatically copied into the decision request.
26
The user exit optionally modifies the results from the table lookup.