In the last part of the Change process, in 'Implement Change Task', when you select action 'Complete Task', the only field on the form that opens is the required 'Provide Comments' multiline textbox. If the length of comment entered exceeds 254 characters, an Application Error is shown and the Change ticket will not progress further.
ServiceDesk 8.1 up to and including RU5
Error System.Exception: could not save object Symantec.ServiceDesk.Cm.Core.DataTypes.ChangeTicket ---> System.Data.SqlClient.SqlException: String or binary data would be truncated.
The statement has been terminated.
в System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
в LogicBase.Core.ExecutionEngine.AbstractExecutionEngine.RunComponent(TLExecutionContext context, IData data, IOrchestrationComponent comp)
The Database schema for the Change Ticket defines Implementer Comments with length of 254 characters, and the form does not check length of the comments entered before trying to save it into database.
Text entered there will be saved to the CmChangeTicket table in the database. CmChangeTicket.ImplementerComments type is nvarchar(254), anything over 254 characters will trigger the SQL exception.
The database field will be extended in ServiceDesk 8.1 RU6 to resolve this issue.
A good workaround to this is to add a check to the forms project for field length. The problem is in SD.Forms.ChangeManagement project than is open and customizable. Fairly simple logic can be added to the project to check and warn about the comment length at the top of the form.
2. 'Compare Numbers Rule' component - Value 1: Process Variables: ImplementerCommentsLength - Value 2: Constant Value: 254 Connect 'less than' and 'equal to' paths to 'Check Tasks' component. Connect 'greater than' path back to 'Fullfill Change Ticket'
3. Add 'Merge Text' component on that path from 'greater than' to 'Fullfill Change Ticket'. Variable Name: VarStatusMessage Merge Data: Add a message to be shown at the top of the page when comment is too long. For example: 'Please keep the comment under 254 characters (currently [ImplementerCommentsLength])'
Change: Implementer Comment over 254 characters will throw an error and will not allow closing the Change ticket
Subscribing will provide email updates when this Article is updated. Login is required.