Symptoms
"Message: String or binary data would be truncated. The Statement has been terminated. ServiceName: SmartBoxService ServiceGuid: GUID] InnerExceptionMessage: " error on a send email event in a workflow.
Diagnoses
The workflow was dynamically adding email addresses to a SmartObject field, which eventually hit the character limit for text input to a SmartObject.
Resolution
The customer had implemented a workaround by removing emails that were common to all events, and hard-coded them in to avoid the input limit on the SmartObject.
An additional way to fix this would be to create (or modify your) SmartObject to add a 'WorkflowID' field, then create SmartObject 'save' method events for each email you need to add, and drag the hContext Browser -> Workflow Context -> ID] field (ID of the workflow instance) into the WorkflowID field of the SmartObject, and the email address into the Email field. This would create individual entries of different email addresses in the SmartObject that all have the same 'WorkflowID', so that you can return them all by supplying the workflow instance's ID.
For the 'To:' field of the email, you can drag in the hContext Browser -> SmartObjects -> -> Email] field, and supply the hContext Browser -> Workflow Context -> ID] field as the WorkflowID parameter, thus returning all Emails attached to this workflow from the previous steps.