+

Search Tips   |   Advanced Search

Deciphering Run errors

Do not panic. You should have gotten an error, indicated by the stack dump appearing in the log output. Scroll to the top of the very first stack dump. Here you will see information on both where the problem occurred as well as what caused it. Error message in log output

The component name is in brackets ('PhoneDB') followed by the error description that an Entry was not found – in other words, that the Lookup failed.

When a Connector is configured in Lookup mode, the system expects to find one and only one matching record when the search is performed. If none are found – or if multiple records match the Link Criteria – then you end up in special Hooks that must at least be enabled to prevent the AL from stopping. This behavior is clearly visible in the DataFlow diagrams that are part of the SDI v7.2 Reference Guide. Here is an excerpt from the page detailing Lookup mode: Partial Flow Diagram for Lookup mode

We can take advantage of this behavior to set your foundUser flag variable. Right-click on the 'PhoneDB' Connector and choose Hooks... to open the Hooks editor. Select the 'On No Match' Hook and enter the script code to set foundUser to false.

	foundUser = false;

Now choose 'After Lookup' and enter this complimentary Hook script1:

	foundUser = true;

Your AssemblyLine should now resemble the one in this screenshot: First tutorial exercise completed

It's time to Run this AssemblyLine again, and this time it should complete without errors. The Output.xml file should be identical to the results you got from your Loop-based AL.

Congratulations! You have just completed your first Security Directory Integrator tutorial exercise. Now it's time discuss how AssemblyLines can be triggered by real-time events.


Parent topic:

Using Lookup Mode

1 As we can see from the Flow Diagram, the 'After Lookup' Hooks is only executed if the search results in a single match.