Skocz do zawartości

Jarek KοIaѕa

InsERT
  • Liczba zawartości

    224
  • Rejestracja

  • Ostatnia wizyta

Posty dodane przez Jarek KοIaѕa

  1. Synchronizacja powinna zachowywać większość ustawień wprowadzonych przez użytkownika. Głównym jej zadaniem jest zapewnienie odpowiedniej liczby kolumn powiązanych o odpowiednim typie. Z ta precyzją to nasz wpadka i zostanie to poprawione.

    Dnia ‎2018‎-‎05‎-‎28 o 11:29, Radomił Ząbik napisał:

    - w kolumnach liczbowych, fajnie jakby można ustawić wartość jako "fajkę", w sensie, dla tych co mają 1/0, jak np. zgoda na przetwarzanie na liście

    Jeśli kolumna jest typu bit to ma automatycznie typ boolowski i jest reprezentowana fajką. Wystarczy więc konwersja w zapytaniu na bit.

    SELECT
       [Id]
      ,[Symbol]
      ,[Nazwa]
      , SerwisAukcyjny
      , CAST(Uwagi as bit)
      , Uwagi
    FROM [ModelDanychContainer].[Asortymenty]

    image.png.c332bf36f434610b4d84ac356cbb27f9.png

    [EDIT]

    Jeszcze przyszło mi do głowy rozwiązanie na dziś. Ponieważ konfiguracja kolumn jest tworzona na podstawie cech źródła danych to można wymusić domyślną precyzję w danej kolumnie, pozbywając się efektu "resetowania" precyzji przy synchronizacji kolumn, np:

    CAST(CenaEwidencyjna as decimal(18,6)) AS Cena

     

  2. 12 godzin temu, Użytkownik GT/NEXO napisał:

    PYTANIE 5:

    Gdzie domyślnie zainstalowany jest ten programik do wysyłania e-archiwizacji, który gdy jest ona aktywna widoczny jest w zasobniku WIN (koło zegara)?
    W sensie jak go znaleźć/włączyć ponownie (z ręki zakończyłem wysyłanie archiwum i mam potrzebę wznowienia wysyłki)?

    C:\Program Files (x86)\InsERT\nexo

     

    12 godzin temu, Użytkownik GT/NEXO napisał:

    PYTANIE 7:

    Czy może być tak, że gdy program do e-archiwizacji jest włączony (i archiwum jest wysyłane na serwer) to wówczas nie uda się przeprowadzić konwersji bazy danych?

    Samo wysyłanie pobiera tylko hasło do e-archiwizacji z bazy danych. Potem wysyła gotowe archiwum.

  3. 1 minutę temu, Radomił Ząbik napisał:

    Dokładnie. Na tą chwilę, ogarniam wszystko co mi się posypało w wersji 20, plus jeszcze RODO, tak że ważne, że przywróciłem do działania moje programy do e-faktur, bo dział handlowy i tak już mnie nienawidzi w tym tygodniu ;)

    Powinien raczej być wdzięczny... No, ale cóż.

    Na pewno przyczyniły się też do tego zmiany struktur, ale niestety było to konieczne w związku z RODO.

  4. Wszystkie potrzebne pliki można zawsze pobrać z odpowiedniego katalogu Deployments. SDK ma za zadanie tylko ułatwić tworzenie rozwiązań. Jakby więc znikła w którejś wersji to wiadomo co zrobić. ;)

    Co do problemów to należałoby to dokładnie prześledzić. Posprawdzać referencje realnie wkompilowane w moduły, użyć Fusion Loga, żeby zobaczyć co się dzieje w czasie uruchamiania, czyli co i skąd jest ładowane. Bardzo pomaga też debuggowanie. Niestety, w skrajnych przypadkach, zajmuje to długie godziny.

  5. Dokument ma właściwość OperacjePrzeliczaniaPozycji, którą należy ustawić wg jednej z dostępnych funkcji typu IOperacjePrzeliczaniaPozycji.

    7995085B-2B24-4020-8607-6085D018B509 od brutto Funkcja wyliczania pozycji od brutto
    1A2B199C-38D5-4E2D-94AC-9D9F63D2CD12 od netto Funkcja wyliczania pozycji od netto
    // ustawienie przeliczania od netto
    zkBO.Dane.OperacjePrzeliczaniaPozycji = Guid.Parse("1A2B199C-38D5-4E2D-94AC-9D9F63D2CD12");

     

     
  6. W procesie wysyłania poprawiliśmy pewne elementy, które mogły w niektórych sytuacjach problemów z połączeniem powodować zatrzymanie wysyłania. Po przekroczeniu pewnego czasu oczekiwania na odzyskanie połączenia proces będzie wznawiany. Poprawka wejdzie do wersji 20.

  7. Najpierw trzeba pobrać domyślną funkcję rozdzielającą rabat na pozycje metodą
    IFabrykaFunkcjiRozdzielajacychRabatNaPozycje.Znajdz
    następnie wyznaczyć rabat metodą
    IFunkcjaRozdzielajacaRabatNaPozycje.WyliczRabatBrutto
    a potem przeliczyć pozycje metodą
    IFunkcjaRozdzielajacaRabatNaPozycje.RozdzielRabatNaPozycje
     
    Przykładowy kod:
    zkBO.Przelicz();
    decimal nowaKwotaDoZaplaty = Math.Round(zkBO.Dane.KwotaDoZaplaty * 0.9m);
    try
    {
        var funkcja = sfera.PodajObiektTypu<IFabrykaFunkcjiRozdzielajacychRabatNaPozycje>().Znajdz(Guid.Parse("EA786A35-1868-4F9B-8B6E-D132D992B02B"));
        if (funkcja != null)
        {
            decimal rabatBrutto = funkcja.WyliczRabatBrutto(zkBO.Dane, nowaKwotaDoZaplaty);
            funkcja.RozdzielRabatNaPozycje(zkBO, rabatBrutto);
        }
    }
    catch (NaprawialnyException ex)
    {
        Console.WriteLine(ex.Message);
    }

     

×
×
  • Dodaj nową pozycję...