Solved ! Thanks
… by executing the SQL query :
Alter Table ReportDefinitions
Add Comments Varchar(255)
I also have the same error. Help! I have hundreds of reports to migrate.
I have the same error. How did you fix it?
Assuming you're missing the same column, this is what worked:
1) Make sure you first Backup the Database before performing the following.
2) Next, run the following SQL query against the Orion database using the MS SQL management studio.
Alter Table ReportDefinitions
Add Comments Varchar(255)
3) Launch the Legacy Report Migration tool again.
hi.
I am having same error. I wanted to try the workaround mentioned here. Unfortunately, there are other teams managing the database. Once the database is backed up, can I run the script using the database manager from the Main Polling Engine instead of SQL Management Studio in the SQL Server?
Appreciate your immediate response.
Here is a part of the report that cannot be migrated, error log:
2020-12-31 10:11:13,238 INFO - Loading report [core interface traffic]...
2020-12-31 10:11:13,740 ERROR - Error while migrating report: 不允许从数据类型 datetime2 到 float 的显式转换。
System.Data.SqlClient.SqlException (0x80131904): 不允许从数据类型 datetime2 到 float 的显式转换。
在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
在 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
在 System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
在 System.Data.SqlClient.SqlDataReader.get_MetaData()
在 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
在 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
在 System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
在 System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
在 System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
在 ReportMigration.Core.Formatting.CustomSqlFieldProvider`1..ctor(IConnectionFactory connectionProvider, String sqlQuery, Func`2 createField)
在 ReportMigration.Core.MigrationStrategy.SqlReportMigrationStrategy..ctor(ReportDefinition reportDefinition, LegacyReport report, IConnectionFactory connectionFactory, String whereClause)
在 ReportMigration.Core.MigrationProcessor.<MigrateReportDefinitionAsync>d__7.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 ReportMigration.Core.MigrationProcessor.<MigrateAndSerializeReportDefinition>d__8.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 MigrationToolUi.Forms.MainForm.<MigrateReports>d__19.MoveNext()
ClientConnectionId:00379758-c365-4c60-975f-da3f756a358b
Error Number:529,State:2,Class:16
What does this query actually do? Does it add a Custom Property? Ouch! I wouldn't want that but maybe I will need to in order to fix this so I can get into the Migration Tool?
Actually, that query is altering the ReportDefinitions table and adding a column called "Comments". Seems like a major change to me. Yikes! I'm not comfortable doing this. Is this supported by the vendor? Is it a bug? Will it get fixed in a future release? Is it on a "Known Problem" list? Is there maybe a Hotfix they could supply us to make the fix a bit more official?
It does not seem to be about Custom Property called 'Comments', but a Column missing from the ReportDefinitions table called 'Comments'.
I will need a bit more info before I proceed to run that query. Seems like a major bug to me.
I ran into the same issue from upgrading NPM 12.2 to 2020.2. Do you by chance have a support case number that led you to this query?
Yes, I opened a case with support and this was the resolution they provided.
Does the report run in the Report Writer?
Does that Comments custom property field still exist or has it been deleted?
Yes, the comments custom property still exists. I don't know which report has a reference to this column. I guess i'll have to look at each one of them.
SolarWinds solutions are rooted in our deep connection to our user base in the THWACK® online community. More than 150,000 members are here to solve problems, share technology and best practices, and directly contribute to our product development process.