Temat: Błąd podczas aktualizacji z wersji 2106.0.1.0 do 2106.3.6.0
Dzień dobry, podczas aktualizacji bazy danych 2 klientów z wersji 2106.0.1.0 do wersji 2106.3.6.0 program wyrzuca błąd:The PERCENTILE_DISC function is not allowed in the current compatibility mode. It is only allowed in 110 mode or higher.
Proszę o wskazówki w rozwiązaniu problemu. Pojawia się to tylko w dwóch bazach, reszta firm zaktualizowana bez takich komunikatów.
Scenariusz wystąpienia błędu:
Stos błędu:
Wersja programu: 2106.3.6 release 2021-09-30 11:17:36
===============================================
Komentarz:
Zapytanie dla błędnego połączenia.
Źródło:
Soneta.Business
Wywołanie:
w Soneta.Business.App.Connection.RootCn.ExecuteSingleCommand(ExecuteMode mode, String command, IEnumerable parameters, Boolean allowRepeat, Object& result)
w Soneta.Business.App.Connection.RootCn.ExecuteCommand(ExecuteMode mode, String commands, IEnumerable parameters)
w Soneta.Business.Internal.RecordsCache.RefreshFull(Table table)
w Soneta.Business.Internal.RecordsCache.<>c__DisplayClass5_0.<Get>b__0(TableInfo dummy)
w System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
w Soneta.Business.Internal.ConnectorReader.LoadRecords(String fname, Object fvalue)
w Soneta.Business.Internal.ConnectorReader.Read(String fname, Object fvalue)
w Soneta.Business.Internal.Connector.GetRow(Table table, Guid guid)
w Soneta.Business.GuidedTable.GetByGuid(Guid guid)
w Soneta.Workflow.WorkflowTools.GetRowByGuid[T](Guid guid, Session session)
w Soneta.Workflow.Workers.WfDefinitionCreatorWorker.Soneta.Business.IWfDefinitionCreatorService.SubprocessesMapping(IDependentWfDefinitionParent dependentWfDefinitionParent)
w Soneta.Core.SimpleWfDefinition.Initialize(Login login, Int32 version, IEnumerable`1 definicje)
w Soneta.Business.App.Database.InitBusinessLogic(Login login, Boolean secondaryDb, Dictionary`2 versions, Boolean afterXml)
w Soneta.Business.App.Database.Initialize(SqlGenerator generator, Login login, Dictionary`2 versions)
w Soneta.Business.App.Database.ConvertBase(Connection cn, SqlGenerator generator, Login login, ConvertSqls csqls)
w Soneta.Business.App.Database.ConvertImpl(DatabaseConversionArguments args)
w Soneta.Business.App.MsSqlDatabase.AfterConvert(Login login, Exception ex)
w Soneta.Business.App.Database.InvokeAfterConvert(Login login, Exception ex)
w Soneta.Business.App.Database.ConvertImpl(DatabaseConversionArguments args)
w Soneta.Business.App.Database.Convert(DatabaseConversionArguments args)
w Soneta.Business.Forms.App.LoginForm.ConvertDatabase(Database database, InvalidVersionException e, String userName)
===============================================
Komentarz:
The PERCENTILE_DISC function is not allowed in the current compatibility mode. It is only allowed in 110 mode or higher.
Źródło:
.Net SqlClient Data Provider
Wywołanie:
w System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
w System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
w System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
w System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite)
w System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
w System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
w Soneta.Business.App.Connection.RootCn.ExecuteSingleCommand(ExecuteMode mode, String command, IEnumerable parameters, Boolean allowRepeat, Object& result)
Z góry dziękuję :)