View incoming links. No links were found.
Create RunScriptOnDocument Component
In the AIE Administrator, navigate to the System Management > Palette screen. Click New, which exposes the Select a Platform Component Type dialog. Type "runScriptOnDocument" in the Filter field and click the button. Select runScriptOnDocument from the resulting list and click OK to open a component editor.
Name the component. We called it myRunScriptOnDocument.
Note that this creates a dynamic change in the project. The component will be immediately functional, but you'll have to update the project using AIE-CLI.exe before the changes become permanent.
Create the Script
The script will be run against every IngestDocument that reaches the component. Two variables are pre-bound when the script runs:
doc - The doc variable is bound to the current IngestDocument
. The document's methods are available in the script. For instance, doc.getId-- can be used to acquire the document's ID.
log - The log variable is bound to the current AttivioLogger
. The logger's methods are available in the script. For instance, log.info-- can be used to send an info-level log message.
In addition, the script is expected to return a ProcessingResultCode or the string equivalent of such a code:
Indicates that a message reached the end of it's workflow.
Successfully processed the message, but did not pass it on to the next stage.
Not handled by this component.
Successfully processed the message.
Indicates that a stage had a warning about a document but did not fail the document.
The example script below operates on the title field of documents. If there is a title field and a country field, it appends the value of the country field to the title field. Used on Factook city data, it changes "Beijing" into "Beijing, China". Then it logs the event as an info-level message, and returns the code 'OK'.
Just paste the script into the component editor and save it.
Debugging the Script
If the script contains errors, they will be posted to the server log file. There are two ways to view these messages:
- Open the log file in a text editor. Look for it in <data-agent>\projects\<project-name>\<environment-name>\logs\logs-<node-name>\aie-node.log.
- View the file in AIE Administrator. Navigate to System Management > Logging > Log Viewer.
Insert myRunScriptOnDocument in a Workflow
It is not enough to create the component. The component must then be inserted in an appropriate workflow. In this case, we placed the myRunScriptOnDocument component as the next-to-last component of the ingest workflow.
In the AIE Administrator, navigate to System Management > Workflows > Ingest > ingest to open the ingest workflow editor. Add myRunScriptOnDocument to the workflow, and put it in the next-to-final position. Save the workflow.
Configure the myRunScriptOnDocument component as shown above in a FactBook demo (see the Quick Start Tutorial for instructions.)
For a clean example, load the cities feed only.
In AIE Administrator, navigate to System Management > Query > SAIL. Execute any search that pulls up city records. Look at the titles. If the title consists of a city name followed by a country name, then the script has executed correctly.