Skocz do zawartości

Sfera nexo - Ustawienie oddziału dla dokumentu

Polecane posty

No dobrze, ale w przypadku ZK, dostaję komunikaty błędu:

- Stanowisko kasowe nie pochodzi z jednostki organizacyjnej ustawionej na dokumencie.

- Miejsce Sprzedaży nie należy do Jednostki Organizacyjnej w roli Miejsca Wprowadzenia.

Jak już wspominałem, w przypadku ZD, nie ma tych komunikatów, więc zastanawia mnie brak jednolitości w działaniu, ale tam jest to przyjęcie, a tu wydanie. Czy ja muszę te parametry ustawić dodatkowo na podstawie oddziału, bo wydawało by się, że po zmianie oddziału powinny się przestawić same. A może powinienem zmienić to już jakoś na poziomie danych domyślnych dla ZK? Będę wdzięczny za jakieś nakierowanie.

Link to postu

Czyli coś w ten deseń bardziej?

Oddzial odd = sfera.PodajObiektTypu<IOddzialy>().Dane.Wszystkie().Where(o => o.Id == spot).FirstOrDefault();

 

zk.Dane.MiejsceWprowadzenia = odd;
zk.Dane.MiejsceSprzedazy = odd.MiejscaSprzedazy.FirstOrDefault();
zk.Dane.StanowiskoKasowe = odd.StanowiskaKasowe.FirstOrDefault();

Link to postu
  • 2 tygodnie później...

Byłbym wdzięczny za jakąś podpowiedź w temacie. Zmodyfikowałem kod jak wyżej i zaczęło działać, ale dla oddziałów innych niż główny - w pozostałych przypadkach dostaję błąd "Nie ustawiono powiązanego obiektu" dla MiejsceWprowadzenia i nie wiem z czego to wynika, jakiegoś nie dokonfigurowania oddziału głównego - jest to też oddział i magazyn, dla użytkownika Sfery, z którego korzystam.

Link to postu
  • 4 tygodnie później...

Nie ma czegoś takiego w Sferze jak oddział i magazyn dla użytkownika Sfery. Jest to kontekst pracy, który musi zapewnić tworzona aplikacja.

Oddział, magazyn i stanowisko kasowe muszą być podane konkretne i to chyba jest jasne. Żeby się to dało zapisać to między nimi muszą zachodzić odpowiednie powiązania typu magazyn należy do odziału oraz stanowsko nalezy do oddziału tak jak to Pan zauważył i zaimplementował w przykładowym kodzie.

W przypadku "głównego oddziału" jednostką organizacyjną jest centrala, a nie oddział i być może stąd jest problem, bo odd jest wówczas null.

Żeby znaleźć Centralę:

JednostkaOrganizacyjna odd = sfera.PodajObiektTypu<ICentrale>().Dane.Znajdz();

 

Link to postu

Czyli dla Głównego Oddziału, trzeba zastosować wyjątek. Akurat, ze względu na brak odpowiedzi już tak zrobiłem, w trochę inny niż sugerowany przez Pana sposób - po prostu dla niego nie przesyłam MiejsceWprowadzenia, przyjmuje te przypisane do użytkownika Sfery. Ale przetestuję rozwiązanie zasugerowane przez Pana.

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