Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This function fetches an External Reference value from an external source. For information about External References, see 8.10 11 External Reference Profile in the Desktop user's guide.

...

Note
titleNote!

If you have a large number of external references, for example, greater than 1000, this may impact the workflow startup and processing. It is therefore recommended that extraction is done using an APL configuration in multiple functions multiple functions and that extraction is executed in the initialize block of an Analysis agent.

Info
titleExample - With large number of external reverences

If you have a large number of external references, the APL configuration may look as shown below:

Code Block
final string EXT_REF = "Default.PRF_ExtRef";
map<string, string> keyValueMap;

void loadStrings1(){

    keyValueMap = mapCreate(string, string);
    mapSet(keyValueMap, "EXT_VAL1", externalReferenceGet(EXT_REF, "EXT_VAL1"));
    mapSet(keyValueMap, "EXT_VAL2", externalReferenceGet(EXT_REF, "EXT_VAL2"));
    mapSet(keyValueMap, "EXT_VAL3", externalReferenceGet(EXT_REF, "EXT_VAL3"));
    mapSet(keyValueMap, "EXT_VAL4", externalReferenceGet(EXT_REF, "EXT_VAL4"));
    mapSet(keyValueMap, "EXT_VAL5", externalReferenceGet(EXT_REF, "EXT_VAL5"));
    ...
}
 
void loadStrings1000(){

    keyValueMap = mapCreate(string, string);
    mapSet(keyValueMap, "EXT_VAL1001", externalReferenceGet(EXT_REF, "EXT_VAL1001"));
    mapSet(keyValueMap, "EXT_VAL1002", externalReferenceGet(EXT_REF, "EXT_VAL1002"));
    mapSet(keyValueMap, "EXT_VAL1003", externalReferenceGet(EXT_REF, "EXT_VAL1003"));
    mapSet(keyValueMap, "EXT_VAL1004", externalReferenceGet(EXT_REF, "EXT_VAL1004"));
    mapSet(keyValueMap, "EXT_VAL1005", externalReferenceGet(EXT_REF, "EXT_VAL1005"));
    ...
}

It is recommended that you configure an Analysis agent so that extraction is done in the initialize block only extracting the required references for the specific agent, as shown below:

Code Block
import apl.Default.extreflib1;

initialize{
   loadStrings1(); 
}

consume {
...

}



...