Log and Ignore Row Error
To log an error on a Row, we must ues the Starfish.ErrorMessage property. To continue running a job when a row errors, we need to set Starfish.SuppressError=true; in an "On Row Error" POST-PROCESS.
First, create an "On Row Error" POST-PROCESS. In my post process, I use a globally created C# variable so I can use the Error Message later in the job.
//"On Row Error" POST-PROCESS void CSharpProcedure() { sQuoteToNSError = Starfish.ErrorMessage; //Starfish.LogMessage(sQuoteToNSError); //There's also a boolean you can set called "SuppressError" which will swallow the error and allwo the process to continue //I could check the error message for something and then set that to true if I want to ignore it. Starfish.SuppressError=true; }
The error for me was always happening on the first Stage. I then have a second stage that updates the Origin with the foreign ID or the error, depending on if the first stage is successful or not. I set my origin update stage to not update blank values so it will only set 1 field or the other because only one will have a value.