You are viewing limited content. For full access, please sign in.

Question

Question

The conversion of the nvarchar value overflowed an INT2 column Error

asked on April 13

I am seeing this error occasionally when a specific workflow kicks off. The activity is a Data Query, so is Workflow trying to convert the value automatically to an INT2 or does anyone know what might be causing this and how to fix it?

----------------------------------------
Timestamp: 2022-04-13 19:54:27.296
Local Time: 4/13/2022 12:54:27 PM
Category: Activity
Machine: XXXXXXXXX
Severity: Error
Application Domain: Laserfiche.Workflow.Service.exe
Process Id: 4000
Process Name: C:\Program Files\Laserfiche\Laserfiche Workflow 10\Laserfiche.Workflow.Service.exe
Win32 Thread Id: 9104 - 
Thread Name: 
Message: <Exception handlingInstanceId="44a3fb51-8532-4d8a-bc6f-82073a47dfc2">
  <Description>An exception of type 'System.Exception' occurred and was caught.</Description>
  <DateTime>2022-04-13 12:54:27Z</DateTime>
  <ExceptionType>System.Exception, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType>
  <Message>ERROR [22003] [Microsoft][ODBC SQL Server Driver][SQL Server]The conversion of the nvarchar value '2703036' overflowed an INT2 column. Use a larger integer column.</Message>
  <Source>Laserfiche.Workflow.Activity.Base</Source>
  <HelpLink />
  <Property name="ActivityName">QueryDataPO_Invoicing_VW</Property>
  <Property name="ActivityType">Laserfiche.Workflow.Activities.Data.DataActivity</Property>
  <Property name="InstanceId">e53ab206-14dc-4182-985a-49e965681e5d</Property>
  <Property name="TargetSite">Void ProcessTaskQueueEvent(System.Workflow.ComponentModel.ActivityExecutionContext)</Property>
  <Property name="HResult">-2146233088</Property>
  <StackTrace>   at Laserfiche.Workflow.Activities.TaskActivityBase.ProcessTaskQueueEvent(ActivityExecutionContext context)
   at Laserfiche.Workflow.Activities.TaskActivityBase.OnEvent(Object sender, QueueEventArgs e)
   at System.Workflow.ComponentModel.ActivityExecutorDelegateInfo`1.ActivityExecutorDelegateOperation.Run(IWorkflowCoreRuntime workflowCoreRuntime)
   at System.Workflow.Runtime.Scheduler.Run()</StackTrace>
  <additionalInfo>
    <info name="MachineName" value="XXXXXXXXX" />
    <info name="TimeStamp" value="4/13/2022 7:54:27 PM" />
    <info name="FullName" value="Microsoft.Practices.EnterpriseLibrary.ExceptionHandling, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    <info name="AppDomainName" value="Laserfiche.Workflow.Service.exe" />
    <info name="ThreadIdentity" value="" />
    <info name="WindowsIdentity" value="XXXXX\XXXXXXXXXX" />
  </additionalInfo>
  <InnerException>
    <ExceptionType>System.InvalidOperationException, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType>
    <Message>ERROR [22003] [Microsoft][ODBC SQL Server Driver][SQL Server]The conversion of the nvarchar value '2703036' overflowed an INT2 column. Use a larger integer column.</Message>
    <Source>Laserfiche.Workflow.Runtime</Source>
    <HelpLink />
    <Property name="Trace">System.Data.Odbc.OdbcException (0x80131937): ERROR [22003] [Microsoft][ODBC SQL Server Driver][SQL Server]The conversion of the nvarchar value '2703036' overflowed an INT2 column. Use a larger integer column.
   at System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode)
   at System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior behavior, String method, Boolean needReader, Object[] methodArguments, SQL_API odbcApiMethod)
   at System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior behavior, String method, Boolean needReader)
   at System.Data.Odbc.OdbcCommand.ExecuteReader(CommandBehavior behavior)
   at Laserfiche.Workflow.Activities.Data.Runtime.InProcessDataExecutor.Execute()
   at Laserfiche.Workflow.Program.DoProcess(String[] args)</Property>
    <Property name="StartTime">4/13/2022 7:54:27 PM</Property>
    <Property name="EndTime">4/13/2022 7:54:27 PM</Property>
    <Property name="Duration">00:00:00.1562460</Property>
    <Property name="InstanceId">e53ab206-14dc-4182-985a-49e965681e5d</Property>
    <Property name="ActivityName">QueryDataPO_Invoicing_VW</Property>
    <Property name="Workflow">XXXXXXXXXX</Property>
    <Property name="ContextGuid">c555d664-c45b-4e0c-9eca-b237f27c0f0e</Property>
    <Property name="TargetSite">Laserfiche.Workflow.Runtime.Systems.Tasks.ITaskResult Execute(Laserfiche.Workflow.ComponentModel.ITaskOptionsSerialize, Laserfiche.Workflow.Runtime.Systems.Tasks.TaskExecutorContext)</Property>
    <Property name="HResult">-2146233079</Property>
    <StackTrace>   at Laserfiche.Workflow.Activities.CallExternalProcessTaskExecutor.Execute(ITaskOptionsSerialize options, TaskExecutorContext status)</StackTrace>
  </InnerException>
</Exception>
----------------------------------------

 

0 0

Answer

SELECTED ANSWER
replied on April 13

I would look at the construction of the view you are querying and the source DB column types.  If your view is trying to case a VARCHAR source column type to an INT2 type, that could be your problem.

0 0
replied on April 13

I'll take a look. Thank you Bert!

0 0
replied on April 13

Yeah, what Bert said. I'm guessing "2703036" is the value you're passing in as a token value and the column is INT2 which only likes values between -32768 and 32768. Workflow doesn't convert those, it's all in the driver. The driver is likely assuming you gave it some random text because it couldn't fit it into the INT2 range, not necessarily attempting conversion.

0 0

Replies

You are not allowed to reply in this post.
You are not allowed to follow up in this post.

Sign in to reply to this post.