Skocz do zawartości

Znajdź zawartość

Wyświetlanie wyników dla 'linq raport'.

  • Wyszukaj za pomocą tagów

    Wpisz tagi, oddzielając je przecinkami.
  • Wyszukaj przy użyciu nazwy użytkownika

Szukaj wyników w...

Znajdź wyniki, które zawierają...


Data utworzenia

  • Od tej daty

    Do tej daty


Ostatnia aktualizacja

  • Od tej daty

    Do tej daty


Filtruj po ilości...

Dołączył

  • Od tej daty

    Do tej daty


Grupa podstawowa


O mnie


Tytuł własny

  1. Trzeba dodać BO osoba, potem Podmiot, potem Kontakty i z tamtych kontaktów korzystać Do sekcji Code na wydruku dodać metodę: private string TelefonOpiekuna() { return ((Podmiot)Dokument.Opiekun.Osoba.Podmiot.BusinessObjectValue).Kontakty.FirstOrDefault(x=>x.Rodzaj.Id == 1).Wartosc; } oraz również w sekcji Code usingi: using InsERT.Moria.ModelDanych; using System.Linq; using System.Collections.Generic; w referenced assemblies w ustawieniach raportu dodać: InsERT.Moria.ModelDanych.dll System.Core.dll
  2. Na wstępie, dziękuje za dodanie funkcjonalności - jak dla mnie, jest ona wygodniejsza od raportów LINQ. Mam kilka pytań, w tej kwestii: - obsługiwane funkcje - czy są jakieś ograniczenia co do funkcji, jakie można używać? Np. przy korzystaniu z funkcji CAST mam problem z formatowanie daty, bez wartości czasu. A może powinienem stosować tutaj inne funkcje formatujące? - filtrowanie kolumn - czy planujecie dodać taką funkcjonalność? Domyślam się, że parametry kontekstowe i użytkownika, mogą mieć coś z tym do czynienia, ale mimo kilku prób, nie udało mi się ich prawidłowo użyć, bo nie wiem, czy one powinny trafić do WHERE, czy być w SELECT? Jakieś przykładowe zapytanie może macie na wzór? Jest informacja w Pomocy, ale nie ma dokumentacji w SDK, jak z LINQ z przykładami, a ona była świetną bazą do wyjścia dla nas.
  3. Dziekuję za odpowiedź - ale tu nawet nie tyle chodzi o same rozrachunki, bo z tymi księgowość sobie raczej jakoś poradzi. Nie poradzi sobie natomiast z obowiązkiem podawania na fakturze numeru rachunku do zapłaty w EUR należności netto oraz drugiego numeru rachunku w PLN do zapłaty podatku VAT. W starym dobrym GT-ku można było zrobić swój wzór wydruku w Crystal Reports 8.5, i cuda tam zrobić. Przyznaję, że NEXO zostało u tego uzytkownika kupione trochę przez pomyłkę, chcieli GT-ka - ale broniłem i nadal będę próbował tego jakoś bronić. Tylko proszę mi powiedzieć, czy można w NEXO zrobić swój własny wzór wydruku tak łatwo jak w GT? Czy może to zrobić serwistant z doświadczeniem raczej tylko w GT a w NEXO z takim sobie? Mogę zrobić własny raport, w LINQ też jakoś dam radę, ale czy wymagać od użytkownika po każdym wystawieniu faktury przechodzenia do raportów, wybierania faktury z listy i jej drukowania? Niby też można... Bardzo proszę o kilka słów wskazówki jak najlepiej w tej sytuacji ugryźć temat wzoru wydruku faktury. Bo tak naprawdę problem mam tylko z tym.
  4. W pierwszym poście zabrakło informacji o możliwości dodawania własnych typów dokumentów w sferze. Aby dodać własny typ zamówienia, bazujący na ZK należy to zrobić w ten sposób: using (var sfera = UruchomSfere()) { IZamowieniaOdKlientow zamowieniaOdKlientow = sfera.PodajObiektTypu<IZamowieniaOdKlientow>(); IKonfiguracje konfiguracje = sfera.PodajObiektTypu<IKonfiguracje>(); Konfiguracja konfiguracjaZA = konfiguracje.Dane.Wszystkie().FirstOrDefault(k => k.Symbol == "ZA"); using (IZamowienieOdKlienta za = zamowieniaOdKlientow.Utworz(konfiguracjaZA)) { DokumentZK dokument = za.Dane; Console.WriteLine($"Konfiguracja: {dokument.Konfiguracja.Symbol}"); // Konfiguracja: ZK Console.WriteLine($"Symbol: {dokument.Symbol}"); // Symbol: ZK Console.WriteLine($"KonfiguracjaRzeczywista: {dokument.KonfiguracjaRzeczywista.Symbol}"); // KonfiguracjaRzeczywista: ZA Console.WriteLine($"SymbolRzeczywisty: {dokument.SymbolRzeczywisty}"); // SymbolRzeczywisty: ZA } } Użycie w raportach LINQ: Użycie w raportach SQL:
  5. Zgadza się – nexo korzysta z języka zapytań LINQ, który jest później automatycznie przekształcany na zapytania SQL. Porównywanie zapytań generowanych automatycznie z języka LINQ z zapytaniami pisanymi ręcznie w SQL nie ma większego sensu. Zapytania generowane automatycznie z pewnością będą bardziej rozbudowane, ale nie oznacza to, że zawsze będą przez to wolniejsze. Jeżeli jest Pan w stanie napisać takie zestawienie, które będzie zwracać takie same wyniki i wykonywać się dużo szybciej, to zawsze istnieje możliwość wykorzystania udostępnionej funkcjonalności raportów własnych SQL lub LINQ. Proszę jednak pamiętać, że wbudowane zestawienia muszą uwzględniać wiele przypadków biznesowych, które być może akurat w Państwa firmie nie występują, takich jak m.in.: dokumenty w walucie obcej dokumenty zaliczkowe oraz wydania/korekty wydań do nich usługi z materiałami oraz korekty materiałów różne daty kwalifikacji dokumentów opłaty specjalne. To właśnie konieczność uwzględniania tych i innych przypadków powoduje, że wbudowane zestawienia są bardziej skomplikowane, a przez to wolniej się wykonują.
  6. Musze ogarnac co Insert nie chce ogarnac gdyż Szczecin mnie już mocno nęka mimo, ze to banal w podstawowej funkcjonalnosci - plik XML ma pare linijek Dzial handlowy insertu wydzwania zeby przedluzyc abonament, ale widac za mamlo pieniedzy placimy. Czy naprawdę po sześciu latach proszenia nie można choćby jakiegos raportu tego typu o ograniczonej funkcjonalnosci dodac ? Konczac jednak te zlosliwosci, plan jest taki: Raport w subiekcie, ktory wygeneruje dane, nastepnie wyeksportuje plik CSV czy Excel i wypelnie tym sposobem za pomoca jakiegos skryptu plik XML do zaimportowania w PUESC Czy dla kopii predefiniowanego raportu jestem w stanie wyswietlic zrodlo LINQ lub SQL tak, zeby miec baze do dalszego dzialania ? lub Czy ktoś dysponuje już gotowym zapytaniem SQL (bazujacego na dokumentach zakupu), które mogłoby być bazą i zawieralo z faktur zakupu (dla filtru WNT) - kod CN z bazy danych - kraj zakupu - kraj pochodzenia sobie ustawie jako tożsamy, gdyz na poziomie produktu nie ma tego (rozumiem, ze to jest glowna przeszkoda dla insertu?) - opis towaru sobie zagreguje po przecinku wszystkie nazwy pozycji - rodzaj transakcji 11 statycznie - wartosc faktury z faktur <ns1:Towar KodTowarowy="99302700" KrajPochodzenia="IT" KrajPrzeznaczeniaWysylki="IT" MasaNetto="100" OpisTowaru="Kawa" PozId="1" RodzajTransakcji="11" WartoscFaktury="100"/> <ns1:Towar KodTowarowy="99190000" KrajPochodzenia="IT" KrajPrzeznaczeniaWysylki="AT" MasaNetto="100" OpisTowaru="czipsy" PozId="2" RodzajTransakcji="11" WartoscFaktury="100"/> Daniel
  7. W praktyce zastosowałem wspomniane rozwiązanie polegające na nadaniu dedykowanej cechy dla asortymentu podlegającego promocji i następnie usunięcie jej dla pozycji, które posiadają blokadę ceny. Dodatkowo oznaczam pozycje z blokadą cechą "Bez promocji", aby umożliwić ich wyszukiwanie w innych sekcjach programu. Załączam przykładowy raport, który ułatwia zarządzenie cechami i ich weryfikację dla tego scenariusza. (from aso in source let kod = aso.PodstawowaJednostkaMiaryAsortymentu.PodstawowyKodKreskowy.Kod where ( (cechaQ.Id == -1 || (from poz in aso.Cechy where poz.Id == cechaQ.Id select poz.Id).Count()==1) && (cechaQ2.Id == -1 || (from poz in aso.Cechy where poz.Id == cechaQ2.Id select poz.Id).Count()==1) && (cechaQN.Id == -1 || (from poz in aso.Cechy where poz.Id == cechaQN.Id select poz.Id).Count()==0) && (eanQ == "" || kod.StartsWith(eanQ)) ) let blokada = (from poz in aso.PozycjeCennika where poz.Cennik.Id==cennikQ.Id select poz.CenaSztywnaNaDokumencie).FirstOrDefault() select new Wynik { Id = aso.Id, Symbol = aso.Symbol, Nazwa = aso.Nazwa, Kod = kod, Blokada = blokada, }) Dziękuję za wkład wniesiony w rozwój programu i pozdrawiam. Asortyment wg cech - raport LINQ.xml
  8. Dziękuję. Potwierdzam - zaproponowany workaround działa, ale tylko jeżeli przekopiuję również plik Xml.pak z Binaries do katalogu wynikowego (skompilowanego rozwiązania). W przeciwnym wypadku przy czystym Build będzie występował poniższy wyjątek: InsERT.Mox.ResourceFiles.FileLoaderException: Nie znaleziono pliku xml.pak. at InsERT.Mox.ResourceFiles.ZipArchive.InitZip() at InsERT.Mox.ResourceFiles.ZipArchive.Contains(String fileName) at InsERT.Mox.ResourceFiles.PakFileLoader.<>c__DisplayClass4_0.<Contains>b__0(ZipArchive p) at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate) at InsERT.Mox.ResourceFiles.PakFileLoader.Contains(String filename) at InsERT.Mox.ResourceFiles.FileLoader.LoadFile(String filename) at InsERT.Mox.UIFramework.UIModuleBase.LoadDataTypeCommandsDefinition(IFileLoader info, String xmlFile, IDynamicCommandsProvider dynamicCommandsProvider) at InsERT.Mox.UIFramework.UIModuleBase.ConfigureCommands[THandler](IUnityContainer unity, String xmlFile) at InsERT.Moria.Raporty.UI.Configuration.RaportyUIModule.ConfigureCommandsHandlers(IUnityContainer unity) at InsERT.Moria.Raporty.UI.Configuration.RaportyUIModule.ConfigureTypes(IUnityContainer unity) at InsERT.Mox.UIFramework.UIModuleBase.ConfigureCore(IUnityContainer unity) at InsERT.Mox.Runtime.Unity.UnityModuleBase.Configure(IInjectionContainer container) at InsERT.Moria.Configuration.UI.UnityConfigurator.ConfigureSphereWihtoutUI() at (Object ) at InsERT.Moria.Sfera.MenedzerPolaczen.SjE=(1zE= progressInvoker, ZDE= sphereHandeInformator, UnityAdapter container, IUnityContainer unity, LaunchMessage launchMessage, Boolean ui, IProductContext productContext) at InsERT.Moria.Sfera.MenedzerPolaczen.Polacz(DanePolaczenia danePolaczenia, ProductId produkt, IPostepLadowaniaSfery postep, IEnumerable`1 dodatkoweProdukty) at InsERT.Moria.Sfera.MenedzerPolaczen.Polacz(DanePolaczenia danePolaczenia, ProductId produkt, Nullable`1 dodatkowyProdukt1, Nullable`1 dodatkowyProdukt2, Nullable`1 dodatkowyProdukt3, Nullable`1 dodatkowyProdukt4, Nullable`1 dodatkowyProdukt5) ...
  9. Przykładowy scenariusz dla klienta detalicznego sklepu stacjonarnego: Na poziomie konfiguracji klienta mamy opcję "uczestnik programu lojalnościowego" po zaznaczeniu której pojawia się możliwość dodania numeru karty (przyjmuję, że mamy fizyczne karty z naniesionym kodem kreskowym). Klientom, którzy mają kartę, nadajemy cechę "KLIENT 5%". Możemy to zrobić akcją zbiorczą - moduł "Klienci", filtrujemy po kolumnie "Uczestnik programu lojalnościowego" lub "Numer karty". Kolumny można aktywować w konfiguracji widoku. Przechodzimy do promocji, dodajemy promocje o nazwie"PROM KLIENT 5%", "PROM KLIENT 8%", itp., ustawiając w ich konfiguracji: "Łączy się z innymi promocjami", sprzedaż "Najbardziej korzystny rabat", Wynik "Rabat procentowy od ceny" 5%, klienci spełniający warunki - tu wskazujemy cechę "KLIENT 5%" - czyli każdy z kartą dostanie rabat 5% na dowolny artykuł (można je ograniczyć, ale upraszczamy przykład). Wskazujemy klientów, którzy mają dostać wyższy rabat, przypisując im cechę, np. "KLIENT 8%". Tą cechę przypisujemy też do właściwej promocji "PROM KLIENT 8%". Aby wskazać klientów, bazując na wartości sprzedaży, wykorzystamy własny raport, "Sprzedaż wg klientów", którego kod zamieszczam. Uwaga: raport zawiera uproszczony schemat wyliczania sumy (np. nie uwzględnia korekt), może wymagać dostosowania względem potrzeb. W trakcie sprzedaży, na PA, skanujemy kartę do pola Nabywca - rabaty zostaną naliczone automatycznie (o ile promocje są ustawione w ten sposób - patrz konfiguracja sprzedaży). (from podmiot in source where ( podmiot.Podtyp == 3 && podmiot.UczestnikProgramuLojalnosciowego == true && (cechaQ.Id == -1 || (from poz in podmiot.Cechy where poz.Id == cechaQ.Id select 1).Count()>0) ) let wartosc_brutto = (decimal?)(from poz in podmiot.DokumentyPodmiotu where poz.DataWprowadzenia >= dataOd && poz.DataWprowadzenia <= dataDo && new[] { "PA", "PI", "FS" }.Contains(poz.Symbol) select poz.Wartosc.BruttoPoRabacie).Sum() ?? 0m let ilosc_dokumentow = (decimal?)(from poz in podmiot.DokumentyPodmiotu where poz.DataWprowadzenia >= dataOd && poz.DataWprowadzenia <= dataDo && new[] { "PA", "PI", "FS" }.Contains(poz.Symbol) select 1).Count() ?? 0m select new Wynik { Id = podmiot.Id, Nazwa = podmiot.NazwaSkrocona, Telefon = podmiot.Telefon, Ilosc = ilosc_dokumentow, Wartosc_brutto = wartosc_brutto, Info = podmiot.TekstKomunikatu, Sygnatura = podmiot.Sygnatura.PelnaSygnatura, DataPozyskania = podmiot.DataPozyskania, } ) Sprzedaż wg klientów - raport LINQ.xml
  10. Witam, Chciałbym za za pomocą Raportu własnego LINQ zrealizować odpowiednik SQLowego Inner Join. Przykładowo chciałbym dla każdej FS zsumować wszystkie pozycje z usługami i przemnożyć je przez wartość pola własnego FS w danym okresie czasu. Potrafię wyciągnąć dokumenty określonego typu w danym okresie: .Where (dok =>(dok.Symbol == "FS") && (dok.DataWydaniaWystawienia >= DataOd && dok.DataWydaniaWystawienia <= DataDo ) ) .Select((DokumentHandlowy dokumentHandlowy) => new Wynik { Id = dokumentHandlowy.Id, SymbolDok = dokumentHandlowy.NumerWewnetrzny.PelnaSygnatura, polewlasne = (dokumentHandlowy as DokumentDS).PolaWlasneAdv.polewlasne, }); Potrafię odfiltrować usługi i wykonać operacje z polem własnym: .Where (poz => poz.RodzajAsortymentuId==1 ) .Select((PozycjaDokumentu pozycjaDokumentu) => new Wynik { Id = pozycjaDokumentu.Id, Nazwa = pozycjaDokumentu.AsortymentAktualny.Nazwa, ilosc = pozycjaDokumentu.Ilosc, dokNazwa = pozycjaDokumentu.Dokument.NumerWewnetrzny.PelnaSygnatura, prowizja = pozycjaDokumentu.Ilosc * pozycjaDokumentu.Wartosc.NettoPoRabacie * (pozycjaDokumentu.Dokument as DokumentDS).PolaWlasneAdv.polewlasne / 100, }); Ale ni jak nie umiem tego połączyć w coś na kształt inner join. Proszę o jakąś wskazówkę. Pozdrawiam Korin Bobowski CorNET - Korin Bobowski
  11. Informujemy o ukazaniu się wersji 15 systemu InsERT nexo. Lista zmian Ogólne: WYSZUKIWANIE DANYCH W FORMIE MODUŁU - nowy, bardziej praktyczny serwis wyszukiwania danych z ich podglądem i wszystkimi dostępnymi operacjami. KOPIOWANIE LISTY POZYCJI DO DALSZEJ OBRÓBKI - potrzebujesz przetwarzać listy obiektów poza nexo? Po prostu skopiuj zawartości list edycyjnych (np. pozycji dokumentu) do schowka lub do programu Excel. WYGODNY DOSTĘP DO WIDOKÓW I RAPORTÓW - ODKRYJ WIDOKI - listy obiektów z własnymi filtrami, kolumnami, formatowaniem. W wersji PRO można definiować własne. DŁUGIE NAZWY PRZY WSTAWIANIU TOWARÓW NA DOKUMENTY - długie nazwy towarów? Rozszerz listę pasującego asortymentu, klientów itp. JESZCZE ŁATWIEJSZE UŻYWANIE FLAG - informacja i zmiana na formularzach; proste nadawanie na listach; podgląd dodanego komentarza. DODATKOWE DANE NA NAKLEJKACH - rozszerzono naklejki o pola własne oraz zewnętrzne źródła danych (LINQ i SQL). Subiekt: PODLICZENIE OKRESU - nowy raport, na którym sprawdzisz bilans sprzedaży, zakupów oraz wartość magazynu. INFORMACJA O ZAMÓWIENIACH NA DOKUMENTACH SPRZEDAŻY I WYDAŃ - potrzebujesz wiedzieć, jakie zamówienia realizowane są konkretnym dokumentem? Teraz znajdziesz tę informację na fakturze i wydaniu magazynowym. SCALANIE I DZIELENIE RAT - płatność odroczona w jednej czy w wielu ratach? Przełączaj jedną opcją. ZADYSPONUJ ILOŚĆ, WYSTAWIAJĄC DOKUMENT Z LISTY ASORTYMENTU - wybierz typ dokumentu i zadysponuj ilość dla jednego lub wielu towarów. WYGODNE WYSTAWIANIE ZAMÓWIENIA NA SKŁADNIKI KOMPLETU - zamówienie na komplet, a potrzebujesz zamówić składniki? Zmień na dokumencie jedną opcją! AUTOMATYCZNE NUMEROWANIE KODÓW DOSTAW W PARTII MODELE – DOSTĘPNOŚĆ I ZMIANA WARIANTU NA DOKUMENTACH - chcesz sprawdzić dostępność wariantu, wystawiając fakturę albo zmienić na inny? Od wersji 15 zrobisz to bez problemu! WYBÓR PŁATNIKA – ODBIORCA CZY NABYWCA? - odbiorca płatnikiem dokumentu - np. na potrzeby Jednostek Samorządu Terytorialnego. Gestor: WYSYŁANIE WIADOMOŚCI DO WIELU ADRESATÓW - stało się jeszcze wygodniejsze dzięki zastąpieniu wielu oddzielnych pól jednym wspólnym miejscem do wpisywania adresów. ZARZĄDZANIE SZABLONAMI WIADOMOŚCI - definiując szablon wiadomości, wskaż, w których miejscach w programie ma on być dostępny. WYSZUKIWANIE WIADOMOŚCI E-MAIL - szybkie i dokładne wyszukiwanie wiadomości e-mail na podstawie wielu kryteriów, tj. tematu, treści, nadawcy i innych. WIADOMOŚCI PO ROSYJSKU BEZ BŁĘDÓW - unikaj błędów w pisowni dzięki słownikowi języka rosyjskiego (przełączanie w edycji wiadomości). PLANOWANIE WYSYŁKI SMS - kiedy chcesz wysłać SMS do klienta? Jutro, pojutrze, za tydzień? Wystarczy ustawić termin wysyłki. KOLEJNOŚĆ POZYCJI W OFERTACH - najważniejsza pozycja powinna być na pierwszym miejscu? Zmieniaj dowolnie kolejność i twórz jeszcze czytelniejsze oferty. DZIAŁANIA POWIĄZANE Z POZYCJAMI DOKUMENTU - reklamacje? Serwis? Indywidualne zamówienia? Łatwo nad tym zapanujesz, przypisując działania do pozycji dokumentów. PEŁNIEJSZA INFORMACJA O DZIAŁANIACH I OFERTACH - informatory o działaniu, ofercie i procesie ofertowym udostępniają dane o powiązanych wiadomościach SMS. Rachmistrz, Rewizor: NOWA WERSJA UPOWAŻNIENIA DO SKŁADANIA DEKLARACJI DROGĄ ELEKTRONICZNĄ - formularz upoważnienia do składania deklaracji drogą elektroniczną UPL-1 (6) oraz odwołanie upoważnienia OPL-1 (5). OBSŁUGA KSIĘGOWA PŁATNIKA Z DOKUMENTÓW SPRZEDAŻY - obsługa księgowa dokumentów sprzedaży ze zmienionym płatnikiem (nabywca/odbiorca). POBIERANIE UPO DLA PLIKÓW JPK_VAT WYSŁANYCH SPOZA NEXO - e-Sprawozdawczość - pobieranie Urzędowego Potwierdzenia Odbioru dla podanego numeru referencyjnego wysyłki elektronicznej. WARTOŚĆ DOTYCHCZASOWEJ AMORTYZACJI - w dokumencie dotychczasowego umorzenia dodano możliwość wprowadzenia wartości dotychczasowej amortyzacji. Biuro nexo: STAŁA OPŁATA ZA OBSŁUGĘ KSIĘGOWĄ - ryczałt za obsługę księgową klientów biura z fakturowaniem oraz raport Rozliczenia z klientami. ZBIORCZE ZARZĄDZANIE LICENCJAMI - zbiorcze zarządzanie licencjami i parametrami operacji on-line (aktualizacja licencji, podłączania do konta InsERT, parametry InsMAIL). DEKLARACJE ELEKTRONICZNE POD KONTROLĄ - czy wszystkie deklaracje klientów zostały wysłane? Czy pobrano UPO? Zobacz w raporcie Stan deklaracji skarbowych. BADANIA, SZKOLENIA BHP I UPRAWNIENIA ZAWODOWE POD KONTROLĄ - zbiorcza informacja dla kadrowych o ważności badań, szkoleń BHP i uprawnień zawodowych pracowników klientów biura (z Gratyfikanta nexo). AKTUALIZACJA UPOWAŻNIENIA DO SKŁADANIA DEKLARACJI DROGĄ ELEKTRONICZNĄ - formularz upoważnienia do składania deklaracji drogą elektroniczną UPL-1 (6) oraz odwołanie upoważnienia OPL-1 (5). Gratyfikant: KONTEKSTOWA ANALIZA WYNAGRODZENIA - szybki podgląd analizatora poszczególnych elementów wynagrodzenia. UJEMNE WYPŁATY - możliwość zapisania "ujemnej" wypłaty wraz z mechanizmem weryfikującym nieujemność sumy wynagrodzeń w miesiącu. DEFINIOWALNE STAŻE PRACY - definiowanie własnych staży pracy wraz z konfiguracją okresów wliczanych i niewliczanych do stażu. RAPORT DO DEKLARACJI DEK-I-O - dodano raport o stanie zatrudnienia do deklaracji wpłat na PFRON. ODCZYTYWANIE DANYCH Z ARKUSZY KALKULACYJNYCH - nowa funkcja odczytująca dane z arkusza kalkulacyjnego w definicjach wartości składników płacowych. IMPORT Z PŁATNIKA - wczytywanie pracowników z Płatnika przy tworzeniu podmiotu, a także w dowolnym momencie po wdrożeniu. Pełna lista zmian w załączniku. ŁATWA AKTUALIZACJA DLA POSIADACZY ABONAMENTU. Zawsze, kiedy dostępna jest nowa wersja, zobaczysz w nexo w pasku widżetów ikonę aktualizacji! Kliknij ją i rozpocznij aktualizację. Abonament na ulepszenia udostępnia wszystkie funkcje dodawane do programu, aktualizację kursów walut oraz parametrów podatkowych przez Internet. Więcej informacji o Abonamencie. Jeśli nie zdecydowali się Państwo na zakup abonamentu, można pobrać aktualizację, ale nie umożliwi ona korzystania z nowo dodanych funkcji. Po pobraniu należy ręcznie zainstalować nową wersję programu. Pobierz aktualizację z internetu. Lista_zmian_nexo_15.htm
  12. Jako baza do wyliczania kosztu magazynowego używana jest tabela koszty zakupu, która przechowuje koszty przyjęć (oraz ich korekty wynikające z fakturowania PZ lub korekt wartościowych) w postaci Wartość + Ilość + Kurs. Każde przyjęcie ma swój koszt pierwotny, którego Id jest przechowywany w tabeli Przyjecia, potem korekty kosztów tworzą kolejne wpisy w tabeli kosztów zakupu, które niejako "zastępują" rekord kosztu pierwotnego więc do wyliczeń należy zawsze wziąć ostatnią korektę kosztu (w kolejności wg LP z tabeli KosztyZakupu). Dodatkowo należy uwzględnić koszty dodatkowe wynikające z KKD z tabeli KosztyDodatkowe (w tej tabeli jest identyfikator powiązanego przyjęcia). Sumę ostatecznego kosztu z kosztów zakupu oraz kosztów dodatkowych dzielimy przez ilość co daje nam cenę magazynową, a następnie ta cena magazynowa w połączeniu z ilością pozostałą na dzień daje nam aktualną wartość magazynową. Co do samego wyliczania ilości pozostałej to należy oprzeć się na najbardziej "atomowych" elementach ruchu magazynowego czyli przychodach i rozchodach. Suma przychodów minus suma rozchodów w połączeniu z filtrowaniem po dacie określi ilość pozostałą na magazynie. Jeśli chodzi o powielanie raportów to tak jak kiedyś już pisaliśmy na forum, są one napisane w LINQu i nie mamy planów udostępniania kodu tych zestawień. Można jednak podejrzeć w SQL profilerze zapytanie, które idzie do serwera już po przetłumaczeniu na T-SQL.
  13. Żeby dodać wiersz podsumowujący należy zrobić Union z podobnym zapytaniem, tylko zsumowanym. To jednak nie ma sensu, bo zapytanie znacznie się komplikuje oraz dwa razy analizuje te same dane co wydłuża czas jego działania, podczas gdy lista podsumowuje pobraną już zawartość. Ale dla porządku napiszę, że musiałoby to wyglądać tak: .Where (dok =>(dok.Symbol == "FS" && (dok.WartoscUslugNetto > 0) && (dok.DataWydaniaWystawienia >= DataOd && dok.DataWydaniaWystawienia <= DataDo) )) .Select(dok => new { Dokument = dok, PozycjeUslug = dok.Pozycje.Where(poz => poz.RodzajAsortymentuId==1) }) .Select(tmp => new Wynik { Id = tmp.Dokument.Id, SymbolDok = tmp.Dokument.NumerWewnetrzny.PelnaSygnatura, sumarycznailoscuslug = tmp.PozycjeUslug.Any() ? tmp.PozycjeUslug.Sum(p => p.Ilosc) : 0m, sumarycznaprowizjaoduslug = tmp.PozycjeUslug.Any() ? tmp.PozycjeUslug .Sum(pozycjaDokumentu => pozycjaDokumentu.Ilosc * pozycjaDokumentu.Wartosc.NettoPoRabacie * (pozycjaDokumentu.Dokument as DokumentDS).PolaWlasneAdv.polewlasne / 100) : 0m, }) .ToList() .Union( new object[] { null } .Select(dokument => new { PozycjeUslug = source .Where(dok =>(dok.Symbol == "FS" && (dok.WartoscUslugNetto > 0) && (dok.DataWydaniaWystawienia >= DataOd && dok.DataWydaniaWystawienia <= DataDo) )) .SelectMany(dok => dok.Pozycje.Where(poz => poz.RodzajAsortymentuId==1)), }) .Select(tmp => new Wynik { Id = 0, SymbolDok = "Podsumowanie:", sumarycznailoscuslug = tmp.PozycjeUslug.Any() ? tmp.PozycjeUslug.Sum(p => p.Ilosc) : 0m, sumarycznaprowizjaoduslug = tmp.PozycjeUslug.Any() ? tmp.PozycjeUslug .Sum(pozycjaDokumentu => pozycjaDokumentu.Ilosc * pozycjaDokumentu.Wartosc.NettoPoRabacie * (pozycjaDokumentu.Dokument as DokumentDS).PolaWlasneAdv.polewlasne / 100) : 0m, }) ).AsQueryable() Język zapytań w raportach własnych LINQ to C#: ?: Operator decimal (Literals)
  14. Poniższe informacje zostały pierwotnie opublikowane na Formu dla Parnterów. Pozwoliłem sobie je tu skopiować. W odpowiedzi na braki i problemy związane z funkcjonowaniem zaawansowanych pól własnych w obecnej postaci, podjęliśmy decyzję o stworzeniu nowego mechanizmu pól zaawansowanych. Ma on docelowo zastąpić mechanizm dotychczasowy. Nowe pola własne są niekompatybilne ze starymi i potrzebna będzie migracja danych. Proces migracji istniejących baz będzie bezproblemowy poza przypadkami, gdy w podmiocie są zaawansowane pola własne i dodatkowo używane są wykorzystujące je rozwiązania własne/partnerskie (rozwiązania sferyczne, raporty LINQ, raporty SQL czy wydruki własne). W takich przypadkach konieczne będzie dostosowanie tych rozwiązań do nowego mechanizmu. W związku z koniecznością zmian w rozwiązaniach własnych przewidujemy rozłożenie w czasie procesu migracji podmiotów klienckich. Zakładany harmonogram: - jesień 2019 – (wersja 27) – dodanie do nexo w laboratorium dostępnej opcji przejścia na nowe pola własne, - wiosna 2020 (wersja 30) staną się następujące rzeczy: podmioty utworzone w wersji 30 lub wyższej będą od razu działały z włączonymi polami zaawansowanymi v2 podmioty konwertowane z wersji wcześniejszej do wersji 30, które nie posiadają żadnych pól zaawansowanych, od wersji 30 będą działały z włączonymi polami v2 podmioty konwertowane z wersji wcześniejszej do wersji 30, które posiadają pola zaawansowane, pozostaną w trybie pól v1, przy czym: przycisk przejścia na pola v2 stanie się ogólnie dostępny dla wszystkich użytkowników użytkownicy będą zachęcani do przejścia na pola v2 (m.in. z sugestią wcześniejszego skontaktowania się z Partnerem/Serwisantem) powyższe oznacza, że użytkownicy z zaawansowanymi polami własnymi będą mogli odroczyć migrację na pola własne v2 do wersji 31 (czerwiec/lipiec 2020), kiedy to nastąpi automatyczna migracja Usprawnienia w nowej wersji zaawansowanych pól własnych: brak rekompilacji modelu danych po zmianach w zaawansowanych polach własnych, przyspieszony restart aplikacji po zmianach w zaawansowanych polach własnych, usunięcie błędów i problemów w działaniu, w tym także związanych z aktualizacją do nowej wersji nexo, możliwość tworzenia słowników własnych SQL. w których zbiór wartości pochodzi z wykonania zdefiniowanego zapytania SELECT, możliwość wybrania wartości domyślnej dla pola słownikowego, zastąpienie typu "kwota" bardziej uniwersalnym typem "liczba rzeczywista", dla którego można określić ilość miejsc po przecinku, możliwość określenia, oprócz wymagalności i widoczności, także tego czy pole zaawansowane ma być edytowalne oraz klonowalne, możliwość określenia kolejności wyświetlania pól zaawasnowanych w oknie edycji pól własnych obiektu, zaawansowanemu polu własnemu można przypisać dowolną ilość unikatowych aliasów nazwy. Aby pobrać lub ustawić wartość w polu można użyć jego nazwy lub jednego ze zdefiniowanych aliasów. Pozwala to na wykorzystanie tego samego pola w różnych rozwiązaniach własnych, gdy każde z rozwiązań odwołuje się do pola pod inną nazwą,[/list] Jak wypróbować nowe pola własne w wersji wcześniejszej niż 30 Aby przejść na nowe pola własne należy wejść do modułu laboratorium (Ctrl + Space + XX) i wybrać opcję "PRZEJDŹ NA POLA WŁASNE W WERSJI 2." W celu definiowania pól własnych oraz słowników w nowej wersji: 1. W konfiguracji należy wybrać "System", a następnie wyszukać jeden z modułów: - "Pola własne" - po jego wybraniu wyświetlone zostają wszystkie obiekty, dla których można definiować pola własne - "Słowniki własne" - umożliwia wyświetlanie oraz dodanie/edycję/usunięcie słowników własnych i słowników własnych SQL 2. W konfiguracji zamiast "System" można także wybrać "Pola własne" Użycie pól własnych w wersji 2 w rozwiązaniach własnych 1. W dokumentacji do sfery InsERT.nexo.Sfera.chm (gałąź "Rozszerzanie/Pola własne") znajdują się informacje: - W jaki sposób sprawdzić bieżącą wersję pól własnych - W jaki sposób odczytać informacje o zdefiniowanych zaawansowanych polach własnych wersji 2. oraz słownikach własnych wersji 2. - W jaki sposób odczytać i ustawić wartości pól zaawansowanych wersji 2. - W jaki sposób używać pól własnych w wersji 2. w zapytaniach LINQ 2. Mechanizm prostych pól własnych nie uległ zmianie - nie jest wymagana modyfikacja rozwiązania własnego, które korzysta tylko z prostych pól własnych 3. Rozwiązania własne korzystające z zaawansowanych pól własnych muszą zostać dostosowane do współpracy z wersją 2. Po konwersji podmiotu do pól własnych wersji 2., rozwiązanie własne które korzysta z zaawansowanych pól własnych w wersji 1. przestanie działać poprawnie. Użycie pól własnych w wersji 2 na wydrukach Proszę zajrzeć do osobnego tematu: Struktura pól własnych v2 w bazie danych Proszę zajrzeć do osobnego tematu:
  15. Na szybko: 1) tak, trzeba będzie (najpóźniej do wersji wiosennej) dostosować rozwiązania własne wykorzystujące zaawansowane pola własne 2) można pozostać przy starych polach własnych, najdłużej do wiosny 2020. W wiosennej wersji planujemy automatyczne przejście na nowe pola własne. W wersji 27 dajemy taką opcję. Pozwolę sobie skopiować część informacji o polach własnych z forum dla Partnerów InseRTu: Nowe zaawansowane pola własne W odpowiedzi na braki i problemy związane z funkcjonowaniem zaawansowanych pól własnych w obecnej postaci, podjęliśmy decyzję o stworzeniu nowego mechanizmu pól zaawansowanych. Ma on docelowo zastąpić mechanizm dotychczasowy. Nowe pola własne są niekompatybilne ze starymi i potrzebna będzie migracja danych. Proces migracji istniejących baz będzie bezproblemowy poza przypadkami, gdy w podmiocie są zaawansowane pola własne i dodatkowo używane są wykorzystujące je rozwiązania własne/partnerskie (rozwiązania sferyczne, raporty LINQ, raporty SQL czy wydruki własne). W takich przypadkach konieczne będzie dostosowanie tych rozwiązań do nowego mechanizmu. W związku z koniecznością zmian w rozwiązaniach własnych przewidujemy rozłożenie w czasie procesu migracji podmiotów klienckich. Zakładany harmonogram: - jesień 2019 – (wersja 27) – dodanie do nexo dostępnej dla wszystkich opcji przejścia na nowe pola własne, - wiosna 2020 – automatyczna migracja baz klienckich na nowy mechanizm. Powyższy harmonogram oznacza, że jest około roku czasu na to by dostosować rozwiązana własne i dostarczyć je klientom. Oczywiście zachęcamy do szybszego zmierzenia się z tym problemem, tym bardziej, że nowe pola własne to także nowe możliwości. Usprawnienia w nowej wersji zaawansowanych pól własnych: - Brak rekompilacji modelu danych po zmianach w zaawansowanych polach własnych - wymagane jest jedynie ponowne uruchomienie nexo, - Łatwiejsze tworzenie rozwiązań własnych ze względu na brak potrzeby kopiowania biblioteki InsERT.Moria.ModelDanych.dll po zmianach w zaawansowanych polach własnych, - Zaawansowanemu polu własnemu można przypisać dowolną ilość unikatowych aliasów nazwy. Aby pobrać lub ustawić wartość w polu można użyć jego nazwy lub jednego ze zdefiniowanych aliasów. Pozwala to na wykorzystanie tego samego pola w różnych rozwiązaniach własnych, gdy każde z rozwiązań odwołuje się do pola pod inną nazwą,[/list] - Wprowadzono słowniki własne SQL. W słownikach własnych SQL zbiór wartości pochodzi z wykonania zdefiniowanego zapytania SELECT, - Typ "kwota" został zastąpiony bardziej uniwersalnym typem "liczba rzeczywista", dla którego można określić ilość miejsc po przecinku, - Doszła możliwość określenia kolejności wyświetlania pól w oknie edycji pól własnych obiektu. Jak wypróbować nowe pola własne Aby przejść na nowe pola własne należy: - przejść do modułu laboratorium (Ctrl + Space + XX) i wybrać opcję "PRZEJDŹ NA POLA WŁASNE W WERSJI 2." Definiowanie w nexo pól własnych w nowej wersji: 1. W konfiguracji należy wybrać "System", a następnie wyszukać jeden z modułów: - "Pola własne" - po jego wybraniu wyświetlone zostają wszystkie obiekty, dla których można definiować pola własne - "Słowniki własne" - umożliwia wyświetlanie oraz dodanie/edycję/usunięcie słowników własnych i słowników własnych SQL 2. W konfiguracji zamiast "System" można także wybrać "Pola własne" Użycie pól własnych w wersji 2 w rozwiązaniach własnych 1. W SDK do nexo znajduje się przykład "nexoPolaWlasne2", który pokazuje m.in.: - W jaki sposób sprawdzić bieżącą wersję pól własnych (użycie interfejsu IWersjaPolWlasnych) - W jaki sposób odczytać informacje o zdefiniowanych zaawansowanych polach własnych wersji 2. oraz słownikach własnych wersji 2. (użycie interfejsu IZaawansowanePolaWlasne oraz ISlownikiWlasne) - W jaki sposób odczytać i ustawić wartości pól zaawansowanych wersji 2. w przykładowym obiekcie asortymentu - W jaki sposób używać pól własnych w wersji 2. w zapytaniach LINQ 2. Mechanizm prostych pól własnych nie uległ zmianie - nie jest wymagana modyfikacja rozwiązania własnego, które korzysta tylko z prostych pól własnych - nadal do pobrania informacji o prostych polach własnych można używać interfejsu IPolaWlasnePodstawowe - jednak tylko w zakresie dotyczącym prostych pól własnych (dla nowych rozszerzeń własnych zalecamy jednak używać nowego interfejsu IProstePolaWlasne) - sposób odczytu i ustawiania wartości prostych pól własnych nie uległ zmianie 3. Rozwiązania własne korzystające z zaawansowanych pól własnych muszą zostać dostosowane do współpracy z wersją 2. Po konwersji podmiotu do pól własnych wersji 2., rozwiązanie własne które korzysta z zaawansowanych pól własnych w wersji 1. przestanie działać poprawnie.
  16. Szanowni Państwo, zgodnie z zapowiedzią przesyłam drugą część planów do wersji 45. Wersję 45 nexo opublikujemy na przełomie marca/kwietnia tego roku. Film Nowy produkt Sello NX w wersji BETA: Moduł Zamówienia wysyłkowe - dedykowany do obsługi sprzedaży internetowej oraz nadawania wysyłek. Możliwość pobierania zamówień z Allegro, wysyłania numerów przesyłek oraz dokumentów sprzedaży. Możliwość nadawania przesyłek kurierskich za pomocą serwisu Wysyłam z Allegro oraz InPost ShipX. Moduł wspierający pakowanie przesyłek pojedynczo lub zbiorczo. Konieczne jest posiadanie Konta Insert, w którym należy aktywować Sello NX. Współpraca z Subiektem GT w zakresie pobierania towarów, wystawiania dokumentów ZK, PA, PAi, FS, PA FSD, PAi FSD. Wszystkie operacje synchronizacji z serwisami zewnętrznymi dostępne w postaci czynności dla automatyzacji. Co zrobimy w Subiekcie: Film Obsługę bramki produkcyjnej KSeF w Subiekcie nexo. Dodamy parametr umożliwiający opcjonalne ostrzeganie lub blokowanie wystawiania faktury zaliczkowej końcowej zamykającej ciąg zaliczkowy, jeśli istnieją niezafakturowane wydania magazynowe z tego procesu. Dodamy uprawnienie do eksportu danych asortymentu. Zostaną scalone dotychczasowe uprawnienia do eksportu klientów, pracowników i wspólników. Film Dodamy możliwość sparametryzowania blokady okresu w Subiekcie tak, aby dla dokumentów zakupu operowała na dacie otrzymania a nie dacie wystawienia dokumentu oryginalnego. Dodamy możliwość zbiorczego przeliczania kosztów składników kompletu jak i materiałów dla zaznaczonych w module kompletów i usług materiałowych. Będzie dostępna możliwość rezerwacji partii jakie zostaną rozchodowane wraz z wykonaniem inwentaryzacji. Dotychczas było to dostępne w Laboratorium. Film Dodamy możliwość drukowania naklejek z wybranej promocji z możliwością wykazania ceny sprzed i z po promocji. Możliwość ustawienia programu tak, aby weryfikacja danych rachunku bankowego w Wykazie Podatników była wykonywana wyłącznie dla czynnych podatników VAT. Co zrobimy w POS - interfejs dotykowy: Film Dodamy możliwość uruchomienia POS-a jako osobnej aplikacji. Dzięki temu użytkownik będzie mógł pracować wyłącznie w POSie, bez widoczności "dużego" Subiekta. Co zrobimy w Gestorze: Film Dodamy obsługę serwisu OneDrive do współdzielenia załączników pocztowych. Film Dodamy możliwość zbiorczej realizacji zleceń serwisowych w dokumenty handlowe. Film Dodamy możliwość dodawania dokumentów skojarzonych, jako załącznik do wiadomości pocztowej. W tworzonej wiadomości pocztowej, w górnym menu dodamy ikonkę kosz, która będzie odpowiadała za usunięcie trwałe wiadomości. Wprowadzimy zmianę, aby przy poprawie dokumentu bezpośrednio z wiadomości pocztowej i następnie dodaniu tego dokumentu jako załącznik do wiadomości, będzie brany aktualny zapisany dokument. Poprawimy błąd, który uniemożliwiał korzystanie z menu kontekstowego (Kopiuj, Zaznacz wszystko, Wyświetl źródło strony) w podglądzie pod listą wiadomości pocztowych. Co zrobimy w Księgowości: Zmienimy mechanizm wydruku deklaracji skarbowych, dyspozycji bankowych oraz umów o pracę. Będziemy rezygnować z plików XPS na rzecz plików SVG, które są renderowane do wydruku rastrowego tych dokumentów. Zmiana obejmie wszystkie deklaracje wraz z załącznikami. W związku z likwidacją terminu płatności podatku do 20. dnia siódmego miesiąca okresu obrachunkowego dostosujemy obsługę deklaracji rozliczeniowych podatku estońskiego. Film Udostępnimy dokument Rocznego rozliczenia składki zdrowotnej wspólników, który dodaliśmy w wersji 44 do włączenia w Laboratorium. Poprawimy dostrzeżone problemy oraz te zgłoszone przez użytkowników czy naszych partnerów. Dodatkowo dodamy obsługę śladu rewizyjnego dla operacji wykonywanych z tym dokumentem. Dodamy ślad rewizyjny dla obsługi dokumentu rozliczenia rocznego składki zdrowotnej. W Biurze nexo dodamy operację zbiorczą rozliczenia rocznej składki zdrowotnej wspólników w podmiotach klientów biura. Dodane zostanie również działanie cykliczne dla takiego naliczenia. W naliczeniu rocznej składki zdrowotnej wspólników ujmiemy również wartość sprzedanych w 2022 roku środków trwałych - dotyczy podatników opodatkowanych na zasadach ogólnych. Uprawnienia dotyczące rozrachunków podzielimy na uprawnienia dotyczące należności i uprawnienia dotyczące zobowiązań. Dodamy w schematach dekretacji zapisów ewidencji VAT możliwość warunkowania po typie rozrachunku. Co zrobimy w Gratyfikancie: Nowe absencje wynikające z nowelizacji Kodeksu Pracy: Film Dodamy obsługę nowej absencji - Urlop opiekuńczy. Film Dodamy obsługę nowej absencji - Zwolnienie od pracy z powodu działania siły wyższej. Praca zdalna: Dodamy wzory wniosków o pracę zdalną i pracę zdalną okazjonalną. Film W pracy zdalnej wprowadzimy rozróżnienie na pracę zdalną i pracę zdalną okazjonalną. Wynagrodzenia: W widoku wynagrodzeń dodamy kolumnę z informacją o składkach PPK, które na tej wypłacie zwiększyły podstawę opodatkowania. W analizatorze wynagrodzenia dodamy funkcję eksportowania do pliku pdf. W widoku wynagrodzeń dodamy kolumnę ze składkami społecznymi obliczonymi od przychodów opodatkowanych. Uaktualnimy widok wynagrodzenia w archiwum wynagrodzeń wyświetlanych z Gratyfikanta GT. W funkcji eksportującej analizator wynagrodzenia umożliwimy ukrycie danych wrażliwych. W wydruku odcinka z wypłaty usuniemy nieużywane już pozycje. Pozostałe: Zmienimy opis danych do urlopowego w danych wdrożeniowych na bardziej zrozumiały. Uwidocznimy funkcję aktualizacji diet zagranicznych z poziomu Rachmistrza nexo i Rewizora nexo. Zaktualizujemy kody tytułów ubezpieczeń zgodnie z Rozporządzeniem z dnia 31.01.2023. W składnikach płacowych dodamy wyróżnik dla składek członkowskich na rzecz związków zawodowych pobranych przez płatnika, podlegających odliczeniu od dochodu. W module umów dodamy kolumny z polami własnymi pracownika. W Danych Wdrożeniowych w danych do urlopów dodamy obsługę 13 miesiąca do prawidłowego liczenia podstawy wynagrodzenia urlopowego przy wypłatach "do 10 dnia następnego miesiąca". Co zrobimy w zmianach wspólnych: Profilowanie danych (nowość w Laboratorium): Film Sferyczne profilowanie danych - Dodamy możliwość tworzenia rozszerzeń sferycznych służących do profilowania danych. Szczegółowa lista profilowanych ewidencji będzie znajdować się w SDK i zawiera między innymi: dokumenty Subiekta i asortymenty, klienci, zlecenia serwisowe, działania oraz inne ewidencje Gestora, ewidencje finansowo-księgowe i kadrowo-płacowe. W SDK dodany zostanie przykład profilowania danych według opiekuna klienta bazujący na ewidencjach Gestora, Subiekta oraz finansowych. Film Ograniczenie widoczności wierszy w widokach - W definicjach widoków dodamy możliwość określenia ograniczeń widoczności wierszy. Film Uprawnienia: Dodamy uprawnienie do zmiany filtrów. Dodamy uprawnienie do konfiguracji widoku. Uprawnienie to będzie blokować dostęp do wszystkich ustawień listy. Film Dodamy możliwość konfiguracji profilowania dostępu do oddziałów, magazynów, stanowisk kasowych i rachunków bankowych. W raportach własnych LINQ dodamy parametr pozwalający uwzględnić profilowanie danych w wynikach raportu. Własne filtry sferyczne (nowość w Laboratorium): Film Wprowadzimy możliwość tworzenia własnych filtrów sferycznych. Pozostałe: Dodamy możliwość zmiany nazwy kolumny w listach edycyjnych. Poprawimy odświeżanie podglądu po zmianie zaznaczonej pozycji na liście. W szablonach projektów sferycznych dodamy możliwość podania własnej ikonki do instalatora rozwiązania sferycznego. W sferze dodamy możliwość sprawdzania uprawnień użytkownika. Do raportów sferycznych dodamy obsługę flag własnych. Raporty sferyczne dostępne są w Laboratorium. Film Dodamy parametr pozwalający wyłączyć zapisywanie wartości filtrów przy wychodzeniu z serwisu. Dodamy także możliwość określenia domyślnych wartości filtrów w definicjach widoków. Obie funkcje będą dostępne w Laboratorium. Co zrobimy w Automatyzacji: Film W automatach dodamy możliwość wyboru wielu wykonawców czynności. Dodatkowo damy możliwość wyboru ról użytkowników jako wykonawców czynności. Film Dodamy możliwość wykonywania automatów bezpośrednio z modułów InsERT nexo. Automaty będą widoczne na liście po przypisaniu ról użytkowników w definicji automatu dla pola "Umożliwiaj wykonanie ręczne w module dla ról". Film Dodamy możliwość zdecydowania o tym, aby były uwzględniane tylko dni robocze w opcji uruchamiania automatu: "Po zadanym czasie od spełnienia warunków w obiekcie". W automatach z opóźnieniem poprawimy wyświetlanie prawidłowego czasu w przykładzie. Problem dotyczy automatów wyświetlanych w trybie Pokaż. Film W automatyzacji dodamy warunek dotyczący komentarzy z parametrami dodanie, edycja, usunięcie (w Laboratorium). Co zrobimy w Automatyzacji dla Gratyfikanta: Film W Automatyzacji dla opcji uruchamiania "Po zadanym czasie od spełnienia warunków w obiekcie..." dodamy dwa warunki: Lista wynagrodzeń - została zatwierdzona. Absencja - status zatwierdzenia został zmieniony." Część 1. planów do wersji 45 można zobaczyć tutaj:
  17. Szanowni Państwo, miło mi poinformować, że 21-23 czerwca pojawi się wersja 41 nexo. Co zrobimy w Subiekcie: Udostępnimy w Laboratorium symulację wymiany dokumentów między Subiektem a Krajowym Systemem e-Faktur. Symulacja będzie wykorzystywać wirtualną bramkę i pozwoli zapoznać się z procesem wysyłania oraz odbierania dokumentów. Na potrzeby dyrektywny "Omnibus" wprowadzimy wyliczanie najniższej ceny asortymentu z ostatnich 30 dni. Wprowadzimy także możliwość umieszczania tej informacji na naklejkach. Wprowadzono obsługę wag zwracających masę towaru. W danych "Mojej Firmy" jak i klientów wprowadzimy ewidencjonowanie dodatkowych numerów: BDO, KRS oraz EORI. Dodamy także możliwość umieszczania tych numerów na wydrukach dokumentów. Wprowadzimy możliwość automatycznego przeliczenia cen asortymentu wczytywanego ze spisów inwentaryzacyjnych do inwentaryzacji. Dzięki temu możliwe będzie np. ewidencjonowanie asortymentu na spisach w cenach detalicznych, zaś po podłączeniu spisów automatyczne przeliczenie pozycji np. na ceny ewidencyjne. Umożliwimy drukowanie naklejek dla spisów inwentaryzacyjnych oraz umieszczanie grafiki asortymentu na wydrukach spisów. Na listach dokumentów sprzedaży, zmienimy funkcjonowanie kolumny "Numer przesyłki". Dane w tej kolumnie są prezentowane jako link, który po kliknięciu przenosi do adresu śledzenia przesyłki. Zmienimy zachowanie płatności domyślnych na fakturach zaliczkowych wystawianych do zamówienia i dokumentujących przyjęcie zaliczki. Od teraz, po realizacji zamówienia w fakturę zaliczkową domyślnie podpowiadana będzie kwota płatności wynikająca wyłącznie z przedpłat i domyślnie podpowiadana jako zaliczka. Pozostałe płatności domyślne (przypisane do klienta, wynikające z ustawień stanowiska kasowego) będą wstawiane na dokument, ale z wartością zerową. Wprowadzimy obsługę kopiowania i wklejania opisów dostaw (partii) podczas korzystania ze "Schowka". Film z planowanymi zmianami w Subiekcie (drukowanie naklejek, przeliczanie cen ze spisu w IW, linki do śledzenia przesyłki) Film z planowanymi zmianami w Subiekcie nr 2 (wyliczanie najniższej ceny asortymentu, płatności domyślne na zaliczkach, schowek, obsługa wag) Krajowy System e-Faktur Uruchomienie Krajowy System e-Faktur Wysyłka dokumentu Krajowy System e-Faktur Odbiór dokumentów Co zrobimy w Gestorze: W poczcie umożliwimy zachowanie poprzedniego powiązania jako dokument skojarzony przy zmianie powiązań. W klientach umożliwimy wybór osób, które zaakceptowały/wycofały/odrzuciły zgody na przetwarzanie danych osobowych. W umowach oraz ofertach wprowadzimy zmianę, aby wysyłka e-mailem kierowana była do przedstawiciela, jeśli taki został wskazany w umowie/ofercie. Dodamy możliwość wyłączenia subskrypcji w poczcie dla podstawowych folderów (Odebrane, Wysłane, Skrzynka nadawcza, Spam, Kosz). Na karcie klienta (FI), dla przedstawicieli dodamy możliwość wyboru dodatkowych kontaktów. Dotychczas można było wybrać tylko podstawowy kontakt przedstawiciela. Dodamy również wyświetlanie komentarzy do kontaktów. Na karcie klienta (FI) wprowadzimy zmianę, aby przy próbie wyświetlenia poprawy danych przedstawiciela wyświetlał się pełny widok osoby. Wcześniej był wyświetlany uproszczony widok przedstawiciela. Dodamy nowe uprawnienie: Modyfikacja danych klienta bez opiekuna. W wiadomości e-mail oraz SMS dodamy nowy autotekst w węźle Zlecenie serwisowe: Status naprawy. W umowach z klientami dodamy autotekst, który umożliwi zwrócenie informacji o dokumencie źródłowym (dodanie umowy na podstawie wskazanego dokumentu). W treści umowy z klientem dodamy nowy autotekst, który pozwoli wpisać numer dokumentu źródłowego. W Ofercie dodamy możliwość ustawienia terminu realizacji w postaci liczby dni od daty zamówienia. Film z planowanymi zmianami w Gestorze Co zrobimy w Rachmistrzu, Rewizorze i Biurze: Wczytanie wyciągów mt940 z Banku Ochrony Środowiska. Dodamy możliwość dokonania kompensaty rozrachunku bądź jego rozliczenie spłatą z określeniem podzielonej płatności. Prześlemy dane przelewu rozliczenia rocznego CIT-8 do Portalu Biura – Raporty. Dodamy możliwość wysyłki maili z poziomu naliczeń składek ZUS wspólników. Wyliczanie załącznika CIT/KW w deklaracji rocznej CIT-8. Dodano w związku tym również nową definicje struktury sprawozdania CIT/KW oraz domyślną definicję składników. W Ewidencji przychodów dodamy filtr oraz kolumnę związaną z formą wynajmu oraz osobą wynajmującą dotyczące zapisów związanych z wynajmem prywatnym. W dekretacji automatycznej do ewidencji VAT, dla tworzonego rozrachunku wyznaczana jest również kwota VAT na potrzeby obsługi podzielonych płatności. Dostosujemy naliczanie składki zdrowotnej wspólników do zmian podatkowych wprowadzanych od 1 lipca 2022 (Polski Ład 2.0) - obniżenie przychodu/dochodu o wartość zapłaconej składki do wysokości przysługującego limitu, wsparcie zmiany formy księgowości, dostosowanie zaliczek miesięcznych itp. Przy naliczaniu składek ZUS wspólnika umożliwimy podanie innych źródeł przychodów do naliczenia składki zdrowotnej. Dla operacji bankowych dodamy możliwość ręcznego powiązania operacji PP z operacją na kwotę VAT. W danych wdrożeniowych pracownika, w deklaracji PIT-11(28) dodamy obsługę wartości przychodów zaewidencjonowanych, związanych z nowymi ulgami (dla seniorów, dla posiadających rodzinę 4+, dla powracających z zagranicy). Udostępnimy w programach księgowych wysyłanie skanów dokumentów do Portalu Biura (usługa Dokumenty z OCR). Funkcja do tej pory była dostępna w Laboratorium. Dodamy możliwość wykasowania logów śladu rewizyjnego starszych niż: 1 rok, 3 lata, 5 lat. W rozliczeniach właścicielskich dodamy możliwość określenia przychodów z tytułu najmu bądź dzierżawy (rozliczane na zasadach ogólnych) jako prywatne. Będzie miało to wpływ na wyliczenie zaliczki na podatek dochodowy, jak również na wysokość podstawy składki zdrowotnej. W określaniu podstawy składki zdrowotnej wspólników dodamy obsługę ujemnej różnicy remanentowej występującej w miesiącu, którego dochód stanowi podstawę tej składki. Film z planowanymi zmianami w Księgowości i Finansach Co zrobimy w Gratyfikancie: Wprowadzimy zmiany przewidziane w Polskim Ładzie 2, które wejdą w życie 1 lipca. W rozliczeniu oddelegowania (funkcja dostępna w Laboratorium) udostępnimy możliwość wprowadzenia końcowej kwoty diet w walucie obcej lub od razu w złotówkach. Dodamy obsługę nowej absencji - zwolnienie z obowiązku świadczenia pracy. Dodamy wczytywanie zwolnień eZLA wspólników z PUE. Rozszerzymy możliwości funkcji Wyrównanie do kwoty w definicji listy płac o parametry - tylko w górę/tylko w dół. Rozszerzymy dane wdrożeniowe pracownika o dane kwartalne, półroczne i roczne do chorobowego. Pozwolimy na naliczenie dodatkowych wynagrodzeń (poza systemem) za miesiąc poprzedzający miesiąc wdrożenia pracownika. Rozwiążemy problem choroby wyłącznie w dni wolne - niepomniejszanie składników wynagrodzenia. Film z planowanymi zmianami w Gratyfikancie Co zrobimy w zmianach wspólnych oraz sferycznych: Dodamy możliwość podglądu dokumentu w osobnym oknie (F9). Do tej pory była to funkcja dostępna w Laboratorium. W serwisach dodamy pasek narzędziowy ułatwiający wyszukiwanie, filtrowanie i podgląd elementów znajdujących się na liście. W drzewie modułów (w grupie Ewidencje dodatkowe) udostępnimy wcześniej ukryty moduł Laboratorium. Od wersji 41 będzie można w nim włączyć testową komunikację z KSeF (Krajowym Systemem e-Faktur). Do pól własnych zaawansowanych dodamy możliwość tworzenia opisów tych pól, które będą dostępne na dokumentach jako tooltip na ikonie informacyjnej. W raportach własnych SQL i LINQ dodamy możliwość tworzenia kolumny z flagą. Uprościmy niektóre operacje wykonywane za pomocą sfery, np. fiskalizacje. Będziemy kontynuować rozwój szablonów projektów sferycznych. Do wbudowanych wzorców wydruków dodamy informację o wersji programu, w której wzorzec był ostatnio aktualizowany. Film z planowanymi zmianami wspólnymi W module automatyzacji dodamy: Możliwość grupowania w parametrach warunków/czynności oraz możliwość wyboru wielu elementów w warunku/czynności. Nową czynność umożliwiającą zapis wydruku w bibliotece załączników. Możliwość eksportu oraz importu automatów. Dodamy możliwość negacji dla warunków użytych w automatach. Dodamy wypełnianie kolumn związanych z wydrukami w modułach z dokumentami, dla wydruków realizowanych przez automaty. Włączymy mechanizm wielokrotnego wyboru adresata dla czynności: powiadomienie nexo, tworzenie wiadomości e-mail, tworzenie wiadomości SMS. Dodamy nowy widok powiadomień, wyświetlający wszystkie powiadomienia do automatów. W module Automatyzacja dodamy nowy widok ze wszystkimi powiadomieniami do automatów. Pozwoli on na wykonanie czynności wynikających z poszczególnych powiadomień oraz ich usuwanie. Film z planowanymi zmianami w module automatyzacji Automatyzacja w Księgowości: Dla automatu wykonywanego wg harmonogramu dodamy możliwość wystawiania deklaracji skarbowych dla wspólników i pracowników. Dodamy możliwość zdefiniowania automatu dekretacji automatycznej dokumentów w oparciu o harmonogram. W operacji zbiorczej zarządzania automatyzacją umożliwimy kopiowanie automatów pomiędzy podmiotami klientów biura rachunkowego. Dodamy możliwość kopiowania wyłącznie aktywnych automatów. Dodamy możliwość zdefiniowania automatów dotyczących dokumentów do dekretacji - pozwala to m.in. na zdefiniowanie automatu dekretacji automatycznej po pojawieniu się np. nowego dokumentu w systemie. Mechanizm automatyzacji rozszerzymy o dokument naliczenia amortyzacji środka trwałego. Można dzięki temu zdefiniować np. automat do naliczenia amortyzacji zbiorczej po dokonaniu amortyzacji dla ostatniego środka trwałego w danym okresie. Dodamy operacje zbiorczą aktywacji usługi Automatyzacja dla klientów biura rachunkowego. Dodamy kolejne czynności do automatów wykonywanych wg harmonogramu: sporządzanie raportu kasowego dla wskazanej kasy, naliczanie zestawienia dziennego bądź miesięcznego sprzedaży VAT, naliczanie Amortyzacji zbiorczej (dla wskazanego typu amortyzacji), naliczanie dokumentów rozliczających eksploatacje pojazdów, naliczanie składek ZUS wspólników i osób współpracujących. Film z planowanymi zmianami w automatyzacji w Księgowości Automatyzacja w Subiekcie: W definicjach automatyzacji dodamy możliwość skorzystania z warunku płatności natychmiastowych oraz przedpłat na dokumentach.
  18. Od wersji wiosennej (30.0.0) w Laboratorium Subiekta nexo udostępniono możliwość korzystania z modułu Szybkiej sprzedaży oraz stosowania klasyfikatorów dla asortymentu. Pierwsza z nowości to alternatywny interfejs pozwalający na lepsze wykorzystanie ekranów dotykowych. Druga pozwala na klasyfikowanie asortymentu wg hierarchii z wielostopniowymi zagnieżdżeniami. Aby korzystać z tych nowości, należy je włączyć w Laboratorium, czyli wykonać następujące kroki: wywołać laboratorium, poprzez wciśnięcie kombinacji klawiszy ctrl+spacja oraz podanie mnemonik „xx”, zaakceptować regulamin Laboratorium: na dole okna włączyć korzystanie z Szybkiej sprzedaży: Od tego momentu w Subiekcie można już korzystać z Szybkiej sprzedaży oraz klasyfikatorów. 1. Szybka sprzedaż – prowadzenie sprzedaży Moduł Szybka sprzedaż dostępny jest w drzewku modułów, w sekcji Sprzedaż, można go też uruchomić za pomocą mnemonika „TS”: Po uruchomieniu modułu użytkownik zostanie poproszony o dodanie konfiguracji Szybkiej sprzedaży – w tym momencie wystarczy podać jej nazwę i zapisać. Konfigurowanie zostanie omówione w dalszej części dokumentu. Po uruchomieniu pojawia się domyślne okno Szybkiej sprzedaży: Po lewej stronie znajduje się część wyświetlająca dane o dokumencie. W Szybkiej sprzedaży możliwa jest zmiana typu wystawianego dokumentu w trakcie jego wypełniania – np. po wprowadzeniu kilku pozycji towarowych możliwe jest zmienienie typu wystawianego dokumentu z paragonu na fakturę bez utraty danych - wystarczy wybrać typ dokumentu (zielona strzałka). Poniżej dostępne są przyciski kończące pracę nad dokumentem: określające jego płatność (i zapis dokumentu) lub też anulowanie całego dokumentu. Po prawej stronie domyślnie widoczne są dwie zakładki (czerwona strzałka). W tej części okna pracuje się, korzystając z czytnika kodów kreskowych lub kodów PLU i praca ta jest podobna do pracy na kasie fiskalnej. Na przykład sprzedając 4 kostki masła o kodzie 1827 wprowadzamy kolejno: 4 [przycisk „Ilość”]1827 [przycisk „Kod”]. Oprócz tego możliwe jest wybieranie asortymentu z kafelków, wystarczy po prawej stronie przełączyć się na zakładkę „Towary”: W polu oznaczonym na czerwono widoczne są asortymenty w formie kafelków. Jeśli posiadają grafiki – są one wyświetlane. Listę tę można przesuwać, korzystając z klawiszy oznaczonych na czerwono. Dostępne jest także filtrowanie (zielona strzałka), jak i podgląd danych asortymentu (niebieska strzałka). Po wprowadzeniu pozycji na dokument dostępna jest jej edycja wraz z możliwością usunięcia - wystarczy w nią kliknąć: Po wprowadzeniu pozycji dokumentu należy wybrać sposób płatności, a jego zatwierdzenie zapisuje dokument – np. po kliknięciu na przycisk „Gotówka” i potwierdzeniu zapisywany jest dokument z płatnością gotówkową oraz wyświetlane okno do wyliczenia reszty: Po zapisie dokumentu – zgodnie z parametrami określonymi w nexo – przeprowadzany jest wydruk dokumentu lub/i jego fiskalizacja. Dokumenty wystawione z poziomu Szybkiej sprzedaży nie różnią się niczym od dokumentów wystawionych w Subiekcie nexo. W przypadku, gdy prowadząc sprzedaż potrzebne jest ustawienie jakichś niestandardowych danych (np. ceny z innego cennika niż domyślny, sposobu liczenia od netto/brutto), należy za pomocą przycisku „Pełna edycja” tymczasowo włączyć „nexowe” okno dokumentu: Szybka sprzedaż może być uruchamiana jako okno wbudowane w nexo lub w pełnym ekranie – doraźnie jest to dostępne w poniższym miejscu i wybór ten jest zapamiętywany: 2. Konfiguracja Szybkiej sprzedaży Szybka sprzedaż jest konfigurowalna - konfigurację można odnaleźć, na przykład korzystając z wyszukiwarki poleceń: W pierwszej zakładce można określić podstawowe parametry, m.in. domyślny typ dokumentu, określić, jakie typy dokumentów można będzie wystawiać z Szybkiej sprzedaży. Można także konfigurować ustawienia dotyczące listy asortymentu, jak i dodawania klientów. Część ustawień jest widoczna jedynie w zaawansowanym widoku: W widoku zaawansowanym można m.in. w łatwy sposób wyłączyć widoczność kolumn. Przykładowo, gdy chcemy dodać masę pozycji towarowej, należy w nowym wierszu listy, w kolumnie "Nagłówek" wpisać "Masa", i po prawej stronie w kolumnie "Wartość", z prawokliku wywołać listę kolumn i wybrać z niej masę: Zakładka "Kasa – klawiatura dolna" pozwala na definiowanie, jakie przyciski dostępne będą w tej zakładce. Można wybierać z predefiniowanych przycisków, jak i dodawać za pomocą Sfery własne przyciski, czy też tworzyć rozwijane menu. Domyślnie w Szybkiej sprzedaży dostępne są dwie zakładki: Kasa i Towary. W konfiguracji - na zakładce "Zakładki własne" dostępna jest możliwość zdefiniowania dodatkowych zakładek, na przykład: Zakładki utworzone w tym miejscu są oczywiście widoczne w Szybkiej sprzedaży: Kolejna zakładka - Użytkownicy - pozwala na określenie, którzy użytkownicy mogą korzystać z danej konfiguracji: Jeśli dla jakiegoś użytkownika przypisano więcej niż jedną konfigurację, podczas uruchamiania Szybkiej sprzedaży zostanie mu wyświetlony wybór, którą z nich wykorzystać. 3. Klasyfikatory asortymentu Kolejna z nowości to klasyfikatory, które umożliwiają tworzenie hierarchicznych struktur asortymentu w oparciu o grupy, cechy, modele, działy sprzedaży czy też inne, własne definicje. Można zdefiniować i korzystać z wielu klasyfikacji. Klasyfikatory można definiować w konfiguracji Subiekta nexo, w module Klasyfikatory asortymentu. Przykładowo utworzony klasyfikator widoczny jest poniżej: Definicja ma zasadniczo trzy sekcje: na górze widoczne są podstawowe ustawienia. Poniżej, po lewej stronie wyświetlane są możliwe do użycia składniki budujące hierarchię, po prawej zaś definicja gotowego klasyfikatora. Na powyższym ekranie kolorami oznaczono kilka ważnych ustawień, które teraz zostaną objaśnione Sposób klasyfikowania: W górnej części, kolorem czerwonym oznaczono pole Klasyfikuj, za pomocą którego można określić, jak działać ma klasyfikator. Domyślne ustawienie to uwidocznienie tych asortymentów, które spełniają wszystkie warunki. Przykładowo: W definicji (oznaczone czerwonym kolorem) umieszczono grupę Klimatyzatory, pod którą podpięte są modele, a pod nie cechy. Przy ustawieniu „gdy zostaną spełnione wszystkie warunki”, gdy klikniemy w „2,0 kW” widoczne będą asortymenty, które są w grupie „Klimatyzatory” oraz mają przypisany model oraz posiadają cechę „2,0 kW”. Gdyby ustawiono „gdy spełniony zostanie bieżący warunek”, wyświetlone byłyby wszystkie asortymenty posiadające cechę „2,0 kW”, bez względu na grupę i przynależność do modelu. Składniki (oznaczono na niebiesko): Budując klasyfikację, można opierać się na grupach towarowych, cechach, modelach i działach sprzedaży. Wybierając te składowe, możemy korzystać z nich pojedynczo, jak i dodawać zbiorczo (działa oznaczanie z klawiszem ctrl lub shift – oznaczono na zielono). Dostępne są także dwa predefiniowane elementy: „(wszystkie)” i „(wybrane)”. Pierwszy pozwala dynamicznie dodać wszystkie elementy (np. wszystkie grupy), drugi tworzy zbiór wybranych elementów. Klawisze operacyjne (oznaczone na pomarańczowo): pierwsze pozwalają na dodawanie i usuwanie elementów definicji, drugie na definiowanie nadrzędności/podrzędności i przesuwanie elementów klasyfikatora w górę i w dół. Zdefiniowany klasyfikator można wykorzystać: w module Asortyment (przypisanie do klasyfikatora jest widoczne także w danych asortymentu); na liście asortymentu, w dokumentach (F2); w Szybkiej sprzedaży, w raportach operujących na asortymencie zarówno „fabrycznych”, jak i własnych SQL i LINQ. Pokazany wcześniej klasyfikator w module asortymentu będzie wyglądać następująco: A po przypisaniu go w konfiguracji Szybkiej sprzedaży, pojawi się także i tam: 4. Wykorzystanie pól własnych i Sfera Przykłady zastosowania Sfery i indywidualnych rozwiązań dostępne są w dokumencie SDK. Zapraszamy do testowania i dzielenia się z nami uwagami, sugestiami, znalezionymi błędami. W fazie laboratoryjnej opisane powyżej funkcje dostępne są bez ograniczeń. Zastrzegamy jednak, że w wersji finalnej korzystanie z nich może wymagać posiadania wersji PRO Subiekta nexo, aktywnego abonamentu lub spełnienia innych, dodatkowych warunków.
  19. Mam następujący problem na chwilę obecną znalazłem dwa indeksy utworzone sferycznie w 2016 roku. Przy próbie wejścia w informator wyskakuje taki błąd: InsERT.Mox.WpfControls.ServiceGridElements.C1.ExceptionsFactory+GetSourceQueryException: InsERT.Mox.WpfControls.ServiceGridElements.C1.ExceptionsFactory+ExceptionContext SvcGrid.GetSourceQuery failed An error occurred while executing the command definition. See the inner exception for details. w InsERT.Mox.WpfControls.SvcGrid.GetSourceQueryHandleAcceptableExceptions() w InsERT.Mox.WpfControls.SvcGrid.SetupItemsSource(Boolean newCollectionView, IActualConfig actualConfig, IGroupsStates groupsStates, Object positonOnIdentifier, IInitializeGridActions initializeActions) w InsERT.Mox.WpfControls.SvcGrid.DoApplyGridParameters(IGridConfig gridConfig, Boolean reloadSourceQuery) w InsERT.Mox.WpfControls.SvcGrid.ApplyProperties() w InsERT.Mox.WpfControls.SvcGrid.OnApplyTemplate() w System.Windows.FrameworkElement.ApplyTemplate() w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w InsERT.Mox.WpfControls.OverlappingPanel.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w System.Windows.Controls.Control.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w System.Windows.Controls.Decorator.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV) w System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged) w System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV) w System.Windows.Controls.Grid.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w System.Windows.Controls.Control.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w System.Windows.Controls.Decorator.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) 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.RenderMessageHandler(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.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.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.Buffer`1..ctor(IEnumerable`1 source) w System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source) w InsERT.Moria.Dokumenty.Logistyka.RaportRuchuAsortymentu.PostFilterProcess(IInjectionScope unitOfWork, IQueryable`1 source) w InsERT.Moria.Logistyka.UI.RuchAsortymentuDataSource.PostFilterProcess(IQueryable`1 source) w InsERT.Mox.UIFramework.FilterableSourceBase`1.get_Source() w InsERT.Mox.UIFramework.GridDataSource`1.GetSourceQuery() w InsERT.Mox.WpfControls.SvcGrid.GetSourceQueryFromGridDataSource() w InsERT.Mox.WpfControls.SvcGrid.GetSourceQueryHandleAcceptableExceptions() --System.Data.SqlClient.SqlException: Upłynął limit czasu wykonywania. Limit upłynął przed ukończeniem operacji lub serwer nie odpowiada. -- 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.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior, ObjectContext objectContext) ---System.ComponentModel.Win32Exception: Upłynął limit czasu operacji oczekiwania EnvironmentStackTrace: w System.Environment.GetStackTrace(Exception e, Boolean needFileInfo) w System.Environment.get_StackTrace() w InsERT.Mox.UIFramework.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.SvcGrid.GetSourceQueryHandleAcceptableExceptions() w InsERT.Mox.WpfControls.SvcGrid.SetupItemsSource(Boolean newCollectionView, IActualConfig actualConfig, IGroupsStates groupsStates, Object positonOnIdentifier, IInitializeGridActions initializeActions) w InsERT.Mox.WpfControls.SvcGrid.DoApplyGridParameters(IGridConfig gridConfig, Boolean reloadSourceQuery) w InsERT.Mox.WpfControls.SvcGrid.ApplyProperties() w InsERT.Mox.WpfControls.SvcGrid.OnApplyTemplate() w System.Windows.FrameworkElement.ApplyTemplate() w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w InsERT.Mox.WpfControls.OverlappingPanel.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w System.Windows.Controls.Control.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w System.Windows.Controls.Decorator.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV) w System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged) w System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV) w System.Windows.Controls.Grid.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w System.Windows.Controls.Control.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) w System.Windows.Controls.Decorator.MeasureOverride(Size constraint) w System.Windows.FrameworkElement.MeasureCore(Size availableSize) w System.Windows.UIElement.Measure(Size availableSize) 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.RenderMessageHandler(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) Czy można liczyć na jakąś pomoc w tym temacie?
×
×
  • Dodaj nową pozycję...