P W 0 Napisano 4 Sierpnia 2022 Udostępnij Napisano 4 Sierpnia 2022 w sfera - ZK zmiana statusu z "Z" na "S" Witam, czy można poprzez sferę zmienić status ZK ze zrealizowanego ("Z") na "S"? Zamówienie zrealizowane jest poprzez FV. Jeżeli tak to co trzeba jeszcze ustawić? Wywołuje to tak: IStatusyDokumentowDaneDomyslne statusy = sfera.PodajObiektTypu<IStatusyDokumentow>().DaneDomyslne; zk.Dane.StatusDokumentu = statusy.ZamowienieOdKlienta_RezerwacjaStanu; zk.Zapisz() //Przy zapisie występuje poniższy wyjątek, Gdybym miał już status "S" i chciałbym ponownie zapisać "S", to błędu nie ma, więc sam zapis chyba jest poprawny. Czy to kwestia tego, że z poziomu Nexo pojawia się dodatkowe pytanie "Zamówienie jest w pełni zrealizowane. Czy chcesz zmienić status na 'Zrealizowane'?" i poprzez sferę nie można tego obsłużyć? Błąd: "W trakcie akceptowania zmian wystąpiły błędy" Szczegóły błędu: Resolution of the dependency failed, type = "InsERT.Moria.Wspolne.RegulyAutomatyzacji.IFabrykaKryteriumRegulyAutomatyzacji", name = "(none)". Exception occurred while: Calling constructor InsERT.Moria.Wspolne.RegulyAutomatyzacji.WartoscDokumentuKryteriumAutomatyzacji(InsERT.Moria.ModelDanych.IParametrCennikowRepository parametrCennikowRepository). Exception is: TargetInvocationException - Obiekt docelowy wywołania zgłosił wyjątek. ----------------------------------------------- At the time of the exception, the container was: Resolving InsERT.Moria.Wspolne.RegulyAutomatyzacji.FabrykaKryteriumRegulyAutomatyzacji,(none) (mapped from InsERT.Moria.Wspolne.RegulyAutomatyzacji.IFabrykaKryteriumRegulyAutomatyzacji, (none)) Resolving parameter "funkcja" of method FabrykaKryteriumRegulyAutomatyzacji.Zarejestruj(InsERT.Moria.Wspolne.RegulyAutomatyzacji.IKryteriumRegulyAutomatyzacji funkcja) Resolving InsERT.Moria.Wspolne.RegulyAutomatyzacji.WartoscDokumentuKryteriumAutomatyzacji,(none) Calling constructor InsERT.Moria.Wspolne.RegulyAutomatyzacji.WartoscDokumentuKryteriumAutomatyzacji(InsERT.Moria.ModelDanych.IParametrCennikowRepository parametrCennikowRepository) Pozdrawiam Przemek Link to postu
Mateusz Matuszewski 91 Napisano 5 Sierpnia 2022 Udostępnij Napisano 5 Sierpnia 2022 w sfera - ZK zmiana statusu z "Z" na "S" Poproszę o treść wyjątku razem z pełnym callstackiem (ToString() zamiast Message). Link to postu
P W 0 Napisano 5 Sierpnia 2022 Autor Udostępnij Napisano 5 Sierpnia 2022 w sfera - ZK zmiana statusu z "Z" na "S" błąd: Microsoft.Practices.Unity.ResolutionFailedException: Resolution of the dependency failed, type = "InsERT.Moria.Wspolne.RegulyAutomatyzacji.IFabrykaKryteriumRegulyAutomatyzacji", name = "(none)". Exception occurred while: Calling constructor InsERT.Moria.Wspolne.RegulyAutomatyzacji.WartoscDokumentuKryteriumAutomatyzacji(InsERT.Moria.ModelDanych.IParametrCennikowRepository parametrCennikowRepository). Exception is: TargetInvocationException - Obiekt docelowy wywołania zgłosił wyjątek. ----------------------------------------------- At the time of the exception, the container was: Resolving InsERT.Moria.Wspolne.RegulyAutomatyzacji.FabrykaKryteriumRegulyAutomatyzacji,(none) (mapped from InsERT.Moria.Wspolne.RegulyAutomatyzacji.IFabrykaKryteriumRegulyAutomatyzacji, (none)) Resolving parameter "funkcja" of method FabrykaKryteriumRegulyAutomatyzacji.Zarejestruj(InsERT.Moria.Wspolne.RegulyAutomatyzacji.IKryteriumRegulyAutomatyzacji funkcja) Resolving InsERT.Moria.Wspolne.RegulyAutomatyzacji.WartoscDokumentuKryteriumAutomatyzacji,(none) Calling constructor InsERT.Moria.Wspolne.RegulyAutomatyzacji.WartoscDokumentuKryteriumAutomatyzacji(InsERT.Moria.ModelDanych.IParametrCennikowRepository parametrCennikowRepository) ---> System.Reflection.TargetInvocationException: Obiekt docelowy wywołania zgłosił wyjątek. ---> System.Data.Entity.Core.EntityException: The underlying provider failed on EnlistTransaction. ---> System.Transactions.TransactionManagerCommunicationException: Dostęp do sieci usługi menedżera transakcji rozproszonych (MSDTC) został zablokowany. Włącz dostęp do sieci usługi DTC w konfiguracji zabezpieczeń za pomocą narzędzia administracyjnego usług składowych. ---> System.Runtime.InteropServices.COMException: Menedżer transakcji wyłączył swoją obsługę transakcji zdalnych/sieciowych. (Wyjątek od HRESULT: 0x8004D024) w System.Transactions.Oletx.IDtcProxyShimFactory.ReceiveTransaction(UInt32 propgationTokenSize, Byte[] propgationToken, IntPtr managedIdentifier, Guid& transactionIdentifier, OletxTransactionIsolationLevel& isolationLevel, ITransactionShim& transactionShim) w System.Transactions.TransactionInterop.GetOletxTransactionFromTransmitterPropigationToken(Byte[] propagationToken) --- Koniec śladu stosu wyjątków wewnętrznych --- w System.Transactions.Oletx.OletxTransactionManager.ProxyException(COMException comException) w System.Transactions.TransactionInterop.GetOletxTransactionFromTransmitterPropigationToken(Byte[] propagationToken) w System.Transactions.TransactionStatePSPEOperation.PSPEPromote(InternalTransaction tx) w System.Transactions.TransactionStateDelegatedBase.EnterState(InternalTransaction tx) w System.Transactions.EnlistableStates.Promote(InternalTransaction tx) w System.Transactions.Transaction.Promote() w System.Transactions.TransactionInterop.ConvertToOletxTransaction(Transaction transaction) w System.Transactions.TransactionInterop.GetExportCookie(Transaction transaction, Byte[] whereabouts) w System.Data.SqlClient.SqlInternalConnection.GetTransactionCookie(Transaction transaction, Byte[] whereAbouts) w System.Data.SqlClient.SqlInternalConnection.EnlistNonNull(Transaction tx) w System.Data.SqlClient.SqlInternalConnection.Enlist(Transaction tx) w System.Data.SqlClient.SqlInternalConnection.EnlistTransaction(Transaction transaction) w System.Data.SqlClient.SqlConnection.EnlistTransaction(Transaction transaction) w System.Data.Entity.Core.EntityClient.EntityConnection.EnlistTransaction(Transaction transaction) --- Koniec śladu stosu wyjątków wewnętrznych --- w System.Data.Entity.Core.EntityClient.EntityConnection.EnlistTransaction(Transaction transaction) w System.Data.Entity.Core.Objects.ObjectContext.EnsureContextIsEnlistedInCurrentTransaction[T](Transaction currentTransaction, Func`1 openConnection, T defaultValue) w System.Data.Entity.Core.Objects.ObjectContext.EnsureConnection() 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__26_0() w System.Lazy`1.CreateValue() w System.Lazy`1.LazyInitValue() w System.Lazy`1.get_Value() w System.Data.Entity.Internal.LazyEnumerator`1.MoveNext() w System.Linq.Enumerable.Single[TSource](IEnumerable`1 source) w System.Data.Entity.Core.Objects.ELinq.ObjectQueryProvider.<>c__12`1.<GetElementFunction>b__12_3(IEnumerable`1 sequence) w System.Data.Entity.Core.Objects.ELinq.ObjectQueryProvider.ExecuteSingle[TResult](IEnumerable`1 query, Expression queryRoot) w System.Data.Entity.Core.Objects.ELinq.ObjectQueryProvider.System.Linq.IQueryProvider.Execute[TResult](Expression expression) w System.Linq.Queryable.Single[TSource](IQueryable`1 source) w InsERT.Moria.Wspolne.RegulyAutomatyzacji.WartoscDokumentuKryteriumAutomatyzacji..ctor(IParametrCennikowRepository parametrCennikowRepository) --- Koniec śladu stosu wyjątków wewnętrznych --- w System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) w System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) w InsERT.Mox.Runtime.Unity.ReflectionBuildPlanPolicy.DoConstructorInjection(IBuilderContext context) w InsERT.Mox.Runtime.Unity.ReflectionBuildPlanPolicy.BuildUp(IBuilderContext context) w Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(IBuilderContext context) w Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context) w Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(NamedTypeBuildKey newBuildKey) w Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(IBuilderContext context) w InsERT.Mox.Runtime.Unity.ReflectionBuildPlanPolicy.DoMethodInjection(IBuilderContext context) w InsERT.Mox.Runtime.Unity.ReflectionBuildPlanPolicy.BuildUp(IBuilderContext context) w Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(IBuilderContext context) w Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context) w Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable`1 resolverOverrides) --- Koniec śladu stosu wyjątków wewnętrznych --- w Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable`1 resolverOverrides) w Microsoft.Practices.Unity.UnityContainer.Resolve(Type t, String name, ResolverOverride[] resolverOverrides) w Microsoft.Practices.Unity.UnityContainerExtensions.Resolve[T](IUnityContainer container, String name, ResolverOverride[] overrides) w Microsoft.Practices.ObjectBuilder2.DeferredResolveBuildPlanPolicy.ResolveTrampoline`1.Resolve() w InsERT.Moria.Wspolne.RegulyAutomatyzacji.WeryfikatorRegulAutomatyzacji.SprawdzSpelnienieWarunkow(IEnumerable`1 obiektyZKontekstem, RegulaAutomatyzacji regulaAutomatyzacji) w InsERT.Moria.Wspolne.RegulyAutomatyzacji.WeryfikatorRegulAutomatyzacji.SprawdzSpelnienieWarunkow(IEnumerable`1 strategie, List`1 reguly) w InsERT.Moria.Wspolne.RegulyAutomatyzacji.WeryfikatorRegulAutomatyzacji.UruchomWeryfikator() w InsERT.Moria.Wspolne.RegulyAutomatyzacji.WeryfikatorRegulAutomatyzacji.WykonajPoAkceptacjiZmian(Object sender, ChangesAcceptedEventArgs args) w InsERT.Mox.Work.UnitOfWork.SaveChanges3(Boolean changesWereSaved) Link to postu
Mateusz Matuszewski 91 Napisano 5 Sierpnia 2022 Udostępnij Napisano 5 Sierpnia 2022 w sfera - ZK zmiana statusu z "Z" na "S" Czy na zamówieniu poza zmianą statusu coś się jeszcze dzieje? Czy zamówienie jest pobierane z menedżera zamówień bezpośrednio przed rozpoczęciem edycji czy może ta sama instancja obiektu biznesowego była już wcześniej modyfikowana? Czy dla zamówień są zdefiniowane automaty, a jeśli tak to jakie? Link to postu
P W 0 Napisano 5 Sierpnia 2022 Autor Udostępnij Napisano 5 Sierpnia 2022 w sfera - ZK zmiana statusu z "Z" na "S" 1 godzinę temu, Mateusz Matuszewski napisał: Czy na zamówieniu poza zmianą statusu coś się jeszcze dzieje? Czy zamówienie jest pobierane z menedżera zamówień bezpośrednio przed rozpoczęciem edycji czy może ta sama instancja obiektu biznesowego była już wcześniej modyfikowana? Czy dla zamówień są zdefiniowane automaty, a jeśli tak to jakie? Odczytuję listę zamówień z określonymi danymi, a następnie w pętli foreach chcę dalej obrabiać te zamówienia. Miałem jeszcze odczyt pól własnych, ale go do testów usunąłem, więc on nie stanowił problemu, bo wyjątek i tak się pojawia. Dane zamówień zapisuję do własnej klasy: IQueryable<DaneNumeruZam> listaZamowien = sfera.PodajObiektTypu<IZamowieniaOdKlientow>().Dane.Wszystkie().Select( x => new DaneNumeruZam { numer = x.NumerWewnetrzny.Numer, rozszerzenie = x.NumerWewnetrzny.RozszerzenieNumeru, procentRealizacji = x.StanRealizacjiZamowienia.ProcentowyStanRealizacji, wartoscPrzedplaty = x.SumaPrzedplat, wartoscZamowienia = x.Wartosc.BruttoPoRabacie, dataZamowienia = x.DataWprowadzenia, } ).Where(x => x.wartoscPrzedplaty < x.wartoscZamowienia && x.procentRealizacji == 100 && x.dataZamowienia > dataPoczSprawdzania); Później w pętli je odczytuję. Po okrojeniu kodu, który i tak wywala wyjątek, zostało: foreach (DaneNumeruZam zamowienie in listaZamowien) { IZamowieniaOdKlientow dokumentyZk = sfera.PodajObiektTypu<IZamowieniaOdKlientow>(); var dsDoEdycji = dokumentyZk.Dane.Wszystkie().Where(dok => dok.NumerWewnetrzny.Numer == zamowienie.numer.Value && dok.NumerWewnetrzny.RozszerzenieNumeru.Equals(zamowienie.rozszerzenie)).FirstOrDefault(); IZamowienieOdKlienta zk = dokumentyZk.Znajdz(dsDoEdycji); IStatusyDokumentowDaneDomyslne statusyDD = sfera.PodajObiektTypu<IStatusyDokumentow>().DaneDomyslne; zk.Dane.StatusDokumentu = statusyDD.ZamowienieOdKlienta_RezerwacjaStanu; zk.Zapisz(); } W zamówieniach mamy automat wysyłający mailem proformy po X minut od dodania dokumentu. Gdy wywołuję ten kod, to już jest po automatycznej wysyłce dokumentu. Dla faktur VAT również mamy automat wysyłające mail. Link to postu
Michał Gałecki 82 Napisano 8 Sierpnia 2022 Udostępnij Napisano 8 Sierpnia 2022 w sfera - ZK zmiana statusu z "Z" na "S" Wygląda na to, że przyczyną są Automaty, a konkretnie te, w których obiektem jest Zamówienie od klienta i wykorzystujące warunek "Wartość". Po ich dezaktywacji, rozwiązanie sferyczne powinno działać. Oczywiście nie jest to rozwiązaniem Pańskiego problemu, bo taka sytuacja nie powinna wystąpić. W prywatnej wiadomości prześlę rozszerzenie sferyczne, instalujące warunek "Wartość - do sprawdzenia", w którym zastosowaliśmy poprawkę, która powinna pomóc. Nie udało nam się powtórzyć tego problemu u siebie. Link to postu
Polecane posty