Skocz do zawartości

Brak możliwość utworzenia słownika SQL dla pól własnych zaawansowanych.

Polecane posty

Chciałem utworzyć Sobie listę pracowników z dwóch podmiotów NEXO, i dodać ją jako pole własne z słownikiem SQL. Niestety otrzymuje niezrozumiały dla mnie z słownikiem błąd:

Nie można zapisać słownika własnego SQL bez kluczy, które zostały użyte jako wartości w polach własnych obiektu "Dokument sprzedaży", "Dokument zakupu", "Zamówienie od dostawcy", "Zamówienie od klienta".

Nie ukrywam, że troszkę zgłupiałem, ale treść pewnie jest jakaś ogólna i chodzi zapewne o moją zabawę z UNION. Generalnie klauzula FROM wygląda tak:

(
(
SELECT
o.Id [Id], CONCAT('[IT] ',IIF(p.Aktywny=1,'','Nieaktywny: '),o.Nazwisko,' ',o.Imie) [Nazwa], IIF(p.Aktywny=1,0,1)[Sorter]
FROM [Nexo_A].ModelDanychContainer.Pracownicy AS p
INNER JOIN [Nexo_A].ModelDanychContainer.Osoby AS o ON p.Osoba_Id=o.Id 
INNER JOIN [Nexo_A].ModelDanychContainer.Uzytkownicy AS u ON u.Osoba_Id=o.Id
)
UNION ALL
(
SELECT
(o.Id+100000) [Id], CONCAT('[EW] ',IIF(p.Aktywny=1,'','Nieaktywny: '),o.Nazwisko,' ',o.Imie) [Nazwa], IIF(p.Aktywny=1,0,1)[Sorter]
FROM [Nexo_B].ModelDanychContainer.Pracownicy AS p
INNER JOIN [Nexo_B].ModelDanychContainer.Osoby AS o ON p.Osoba_Id=o.Id 
INNER JOIN [Nexo_B].ModelDanychContainer.Uzytkownicy AS u ON u.Osoba_Id=o.Id
)
) Pracownicy ORDER BY Sorter ASC, Nazwa ASC

W kluczu i wartości, mam odpowiednio  Pracownicy.Id oraz Pracownicy.Nazwa.

Da radę ten błąd jakoś obejść?

Link to postu
17 godzin temu, Radomił Ząbik napisał:
Nie można zapisać słownika własnego SQL bez kluczy, które zostały użyte jako wartości w polach własnych obiektu "Dokument sprzedaży", "Dokument zakupu", "Zamówienie od dostawcy", "Zamówienie od klienta".

Komunikta oznacza, że edytuje Pan słownik własny SQL, który został użyty we wzmiankowanych obiektach. Nowe zapytanie SQL po edycji nie zawiera już kluczy, które zostały użyte jako wybrane pozycje we wzmiankowanyc obiektach.

Link to postu

Niestety, muszę kontynuować ten wątek, bo dodanie słownika się powiodło, ale dodanie go do pola własnego zlecenia, spowodowało dziwną awarię konfiguracji. Od razu po zapisaniu, dostałem błąd:

System.InvalidOperationException: Exception during arranging of OverlappingPanel in data context of InsERT.Moria.PolaWlasne2.UI.KonfiguracjaPolWlasnychEditItemService
   w InsERT.Mox.WpfControls.OverlappingPanel.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.ContextLayoutManager.UpdateLayout()
   w System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg)
   w System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork()
   w System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
   w System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
   w System.Windows.Media.MediaContext.AnimatedRenderMessageHandler(Object resizedCompositionTarget)
   w System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   w System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
-System.InvalidOperationException: Exception during arranging of OverlappingPanel in data context of InsERT.Moria.PolaWlasne2.UI.KonfiguracjaPolWlasnychServiceFlow
-   w InsERT.Mox.WpfControls.OverlappingPanel.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Grid.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Decorator.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Border.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Decorator.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w MS.Internal.Helper.ArrangeElementWithSingleChild(UIElement element, Size arrangeSize)
   w System.Windows.Controls.ContentPresenter.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.DockPanel.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Border.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Grid.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Border.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w InsERT.Mox.WpfControls.OverlappingPanel.ArrangeOverride(Size finalSize)
--System.Data.Entity.Core.EntityCommandExecutionException: An error occurred while executing the command definition. See the inner exception for details.
--   w System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior, ObjectContext objectContext)
   w System.Data.Entity.Core.Objects.Internal.ObjectQueryExecutionPlan.Execute[TResultType](ObjectContext context, ObjectParameterCollection parameterValues)
   w System.Data.Entity.Core.Objects.ObjectQuery`1.<>c__DisplayClass41_0.<GetResults>b__1()
   w System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction[T](Func`1 func, IDbExecutionStrategy executionStrategy, Boolean startLocalTransaction, Boolean releaseConnectionOnSuccess)
   w System.Data.Entity.Core.Objects.ObjectQuery`1.<>c__DisplayClass41_0.<GetResults>b__0()
   w System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute[TResult](Func`1 operation)
   w System.Data.Entity.Core.Objects.ObjectQuery`1.GetResults(Nullable`1 forMergeOption)
   w System.Data.Entity.Core.Objects.ObjectQuery`1.<System.Collections.Generic.IEnumerable<T>.GetEnumerator>b__31_0()
   w System.Data.Entity.Internal.LazyEnumerator`1.MoveNext()
   w InsERT.Moria.PolaWlasne2.UI.ZaawansowanePoleWlasneRowModel.SlownikWlasnySqlByIntComboBoxItemModel.PobierzDostepneWartosci()
   w InsERT.Moria.PolaWlasne2.UI.ZaawansowanePoleWlasneRowModel.PobierzWartosciWybranegoSlownika()
   w InsERT.Moria.PolaWlasne2.UI.ZaawansowanePoleWlasneRowModel.get_WartoscDomyslna()
   w InsERT.Moria.PolaWlasne2.UI.ZaawansowanePoleWlasneRowModel.get_ToolTipWartosciDomyslnej()
   w InsERT.Moria.PolaWlasne2.UI.ZaawansowanePolaWlasneEditingGridModel.<>c.<get_Columns>b__18_9(Object item)
   w InsERT.Mox.FlexEditableGrid.FlexCellFactory.CreateSingleCellContent(C1FlexGrid grid, Border border, CellRange& range)
   w InsERT.Mox.FlexEditableGrid.FlexCellFactory.CreateCellContent(C1FlexGrid grid, Border bdr, CellRange rng)
   w C1.WPF.FlexGrid.CellFactory.CreateCell(C1FlexGrid grid, CellType cellType, CellRange rng)
   w C1.WPF.FlexGrid.GridPanel.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Grid.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Border.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.DockPanel.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w C1.WPF.FlexGrid.C1FlexGrid.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Decorator.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Grid.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w MS.Internal.Helper.ArrangeElementWithSingleChild(UIElement element, Size arrangeSize)
   w System.Windows.Controls.ContentPresenter.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Grid.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Border.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Grid.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.ScrollContentPresenter.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Grid.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.Controls.ScrollViewer.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Decorator.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Grid.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w MS.Internal.Helper.ArrangeElementWithSingleChild(UIElement element, Size arrangeSize)
   w System.Windows.Controls.ContentPresenter.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.StackPanel.StackArrangeHelper(IStackMeasure arrangeElement, IStackMeasureScrollData scrollData, Size arrangeSize)
   w System.Windows.Controls.StackPanel.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w MS.Internal.Helper.ArrangeElementWithSingleChild(UIElement element, Size arrangeSize)
   w System.Windows.Controls.ItemsPresenter.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Border.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.StackPanel.StackArrangeHelper(IStackMeasure arrangeElement, IStackMeasureScrollData scrollData, Size arrangeSize)
   w System.Windows.Controls.StackPanel.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.ScrollContentPresenter.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Grid.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.Controls.ScrollViewer.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Decorator.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Decorator.ArrangeOverride(Size arrangeSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w InsERT.Mox.WpfControls.OverlappingPanel.ArrangeOverride(Size finalSize)
---System.Data.SqlClient.SqlException: The ORDER BY clause is invalid in views, inline functions, derived tables, subqueries, and common table expressions, unless TOP, OFFSET or FOR XML is also specified.
---   w System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   w System.Data.SqlClient.SqlInternalConnection.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.SqlDataReader.TryConsumeMetaData()
   w System.Data.SqlClient.SqlDataReader.get_MetaData()
   w System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
   w 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)
   w 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)
   w System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
   w System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
   w System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
   w System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)
   w System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.<>c.<Reader>b__6_0(DbCommand t, DbCommandInterceptionContext`1 c)
   w System.Data.Entity.Infrastructure.Interception.InternalDispatcher`1.Dispatch[TTarget,TInterceptionContext,TResult](TTarget target, Func`3 operation, TInterceptionContext interceptionContext, Action`3 executing, Action`3 executed)
   w System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.Reader(DbCommand command, DbCommandInterceptionContext interceptionContext)
   w System.Data.Entity.Internal.InterceptableDbCommand.ExecuteDbDataReader(CommandBehavior behavior)
   w System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)
   w System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior, ObjectContext objectContext)

EnvironmentStackTrace:
   w System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
   w System.Environment.get_StackTrace()
   w InsERT.Mox.Helpers.Ferf.AnalyzedException..ctor(Exception exception)
   w InsERT.Mox.UIFramework.ErrorContext..ctor(Exception exception, String dumpFilePath, Stream screenCapture)
   w InsERT.Moria.Startup.UI.NerfSupport.ShowFerfWindow(Exception exception, String dumpFile, Boolean newThread)
   w InsERT.Moria.Startup.UI.NerfSupport.HandleUsingFerf(Exception exception)
   w InsERT.Moria.Startup.UI.NerfSupport.ProcessUnhandledException(Exception exception)
   w InsERT.Moria.Startup.UI.NerfSupport.Dispatcher_UnhandledExceptionFilter(Object sender, DispatcherUnhandledExceptionFilterEventArgs e)
   w System.Windows.Threading.Dispatcher.ExceptionFilter(Exception e)
   w System.Windows.Threading.Dispatcher.ExceptionFilterStatic(Object source, Exception e)
   w System.Windows.Threading.ExceptionWrapper.FilterException(Object source, Exception e)
   w System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   w InsERT.Mox.WpfControls.OverlappingPanel.ArrangeOverride(Size finalSize)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.Controls.Control.ArrangeOverride(Size arrangeBounds)
   w System.Windows.FrameworkElement.ArrangeCore(Rect finalRect)
   w System.Windows.UIElement.Arrange(Rect finalRect)
   w System.Windows.ContextLayoutManager.UpdateLayout()
   w System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg)
   w System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork()
   w System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
   w System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
   w System.Windows.Media.MediaContext.AnimatedRenderMessageHandler(Object resizedCompositionTarget)
   w System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   w System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   w System.Windows.Threading.DispatcherOperation.InvokeImpl()
   w System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
   w MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
   w System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   w System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   w System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   w MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
   w System.Windows.Threading.DispatcherOperation.Invoke()
   w System.Windows.Threading.Dispatcher.ProcessQueue()
   w System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   w MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   w MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   w System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   w System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   w System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   w MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   w MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
   w System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
   w System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   w System.Windows.Window.ShowHelper(Object booleanBox)
   w System.Windows.Window.Show()
   w System.Windows.Window.ShowDialog()
   w InsERT.Moria.Startup.UI.NexoAppBase.Go()
   w InsERT.Moria.Subiekt.SubiektApp.Main(String[] args)

W dodatku wpada on w szaloną pętle i praktycznie pozostaje zabicie Subiekta. Dodatkowo, nie mogę teraz wejść w konfiguracje pola własnego, bo od razu wpada w ten błąd. Niestety pola własne zaawansowane na ZD przestały działać.

Link to postu

Proszę spróbować wejść w nexo do edycji tego słownika i zmienić to zapytanie, tak aby korzystało z jednej bazy i usunąć to sortowanie:

Pracownicy ORDER BY Sorter ASC, Nazwa ASC

Sam problem wynika prawdopodobnie z tego, że przy próbie pobierania wartości tego słownika konstruowane jest zapytanie LINQ, które nie potrafi sobie poradzić z powyższym sortowaniem, które i tak jest niepotrzebne, ponieważ pozycje są automatycznie wyświetlane jako posortowane po kolumnie wartości

Treść błędu jest dokładnie taka:

The ORDER BY clause is invalid in views, inline functions, derived tables, subqueries, and common table expressions, unless TOP, OFFSET or FOR XML is also specified.
Link to postu

Skasowanie ORDER BY, od razu wyrzuca taki błąd, co jest conajmniej dziwne, bo go skasowałem. To samo dzieje się, po wyrzuceniu obu baz - test jest ok, jak robię zapisz jest ok, jak klikam uruchom ponownie TAK, wywala ten błąd. To samo dzieje się, jak wybiorę NIE.

image.thumb.png.21c66021f108999a8bf5584c09b918fe.png

Link to postu

Przy edycji zapisanego już słownika SQL robimy też sprawdzenie, które powoduje wykonanie poprzedniej wersji zapytania SQL, która jest w bazie - poprawiliśmy to do wersji 42, która wyjdzie niebawem.

 

Na teraz pozostaje tylko to, co Pan napisał, czyli ręczna modyfikacja kolumny SqlFrom z tabeli ModelDanychContainer.SqlDictionaries

Link to postu

Ok, podmiana w bazie, pozwoliła to edytować, ale co ważne jakby ktoś inny miał problem, to po podmianie w bazie, należy ponownie uruchomić NEXO - widać zapytanie jest trzymane gdzieś w pamięci.

Skoro system sam narzuca sortowanie takiego słownika, po wartości, to miło by było, gdyby było to odzwierciedlone w liście pokazującej się po testowaniu zapytania, w oknie edycji słownika własnego SQL.

Czyli rozumiem, że sam UNION powinien przejść?

Nie ma szans na wysortowanie tego jakoś inaczej niż po wartości?

Link to postu
Cytat

Skoro system sam narzuca sortowanie takiego słownika, po wartości, to miło by było, gdyby było to odzwierciedlone w liście pokazującej się po testowaniu zapytania, w oknie edycji słownika własnego SQL.

Tak, to jest nasze niedopatrzenie

Cytat

Czyli rozumiem, że sam UNION powinien przejść?

Union na dwóch róznych bazach to nie jest przypadek, który testowaliśmy więc nie wiemy.

Cytat

Nie ma szans na wysortowanie tego jakoś inaczej niż po wartości?

Użytkownik widzi w como box tylko wartości słownika, więc naturalne jest sortowanie po tych wartościach. Raczej nie planujemy zmiany tego w jakikolwiek sposób.

Link to postu
4 minuty temu, Łukasz Kubacki napisał:

Union na dwóch róznych bazach to nie jest przypadek, który testowaliśmy więc nie wiemy.

Po wywaleniu ORDER BY, UNION działa, zarówno w edycji słownika, jak i po dodaniu do ZD oraz oczywiście w jego edycji. Więc wstępnie mogę chyba założyć, że działa.

Link to postu
×
×
  • Dodaj nową pozycję...