-
Liczba zawartości
6 -
Rejestracja
-
Ostatnia wizyta
Ostatnie wizyty
Blok z ostatnimi odwiedzającymi dany profil jest wyłączony i nie jest wyświetlany użytkownikom.
Rafał Kaim's Achievements
0
Reputacja
-
Brak Auto WZ przy Realizowaniu Paragonu z ZK (Sfera)
Rafał Kaim odpowiedział Rafał Kaim → na temat → Forum użytkowników - InsERT nexo - Sprawy techniczne
Kod zamieściłem w wątku -
Brak Auto WZ przy Realizowaniu Paragonu z ZK (Sfera)
Rafał Kaim odpowiedział Rafał Kaim → na temat → Forum użytkowników - InsERT nexo - Sprawy techniczne
public int AddParagonForOrder(Document document, ECOneContext dbContext) { try { IAsortymenty asortymentList = mUchwyt.PodajObiektTypu<IAsortymenty>(); IJednostkiMiar jednostkaMiaryList = mUchwyt.PodajObiektTypu<IJednostkiMiar>(); IStatusyDokumentowDaneDomyslne statusyDDList = mUchwyt.PodajObiektTypu<IStatusyDokumentow>().DaneDomyslne; IDokumentySprzedazy dokumentySprzedazy = mUchwyt.PodajObiektTypu<IDokumentySprzedazy>(); IPodmioty podmiotList = mUchwyt.PodajObiektTypu<IPodmioty>(); IStatusyDokumentow statusyDokumentow = mUchwyt.PodajObiektTypu<IStatusyDokumentow>(); IFormyPlatnosci formaPlatnosciList = mUchwyt.PodajObiektTypu<IFormyPlatnosci>(); DokumentZK dokumentZK = null; DocumentItem documentItem = null; InsERT.Moria.ModelDanych.Asortyment asortyment = null; int nexoOrderId = ...; dokumentZK = mUchwyt.PodajObiektTypu<IZamowieniaOdKlientow>().Dane.Wszystkie().Where(z => z.Id == nexoOrderId).FirstOrDefault(); if (dokumentZK.Zamkniety) return 0; else if (dokumentZK == null) return -1; Konfiguracja konfiguracja = mUchwyt.PodajObiektTypu<InsERT.Moria.Dokumenty.Logistyka.IKonfiguracje>().DaneDomyslne.ParagonFiskalny; Magazyn magazyn = mUchwyt.PodajObiektTypu<IMagazyny>().Dane.Wszystkie().Where(m => m.Symbol == mMagazynSymbol).FirstOrDefault(); using (IDokumentSprzedazy paragonNexo = dokumentySprzedazy.Utworz(konfiguracja)) { paragonNexo.Dane.NumerZewnetrzny = dokumentZK.NumerZewnetrzny; paragonNexo.Dane.DataWprowadzenia = document.DateAdd; paragonNexo.Dane.Magazyn = magazyn; paragonNexo.Dane.WystawilaOsoba = podmiotList.Dane.Wszystkie().Where(p => p.Osoba != null && p.NazwaSkrocona == mOsobaWystawiajaca).FirstOrDefault().Osoba; if (document.ClientEMail != string.Empty) { paragonNexo.Dokument.Uwagi += "E-Mail: " + document.ClientEMail; } if (document.ClientPhoneNumber != string.Empty) { paragonNexo.Dokument.Uwagi += "Nr telefonu: " + document.ClientPhoneNumber; } foreach (var item in paragonNexo.DodajPozycjeZZK(dokumentZK.Pozycje, new ParametryGrupowaniaDS { MetodaWyliczeniaCen = MetodaWyliczeniaCen.BezKonsolidacji, MetodaGrupowaniaPozycji = MetodaGrupowaniaPozycji.BezKonsolidacji, PrzeniesNatychmiastowe = PrzenoszeniePlatnosciNatychmiastowych.Przepisz, OperacjePrzeliczaniaDokumentu = dokumentZK.OperacjePrzeliczaniaDokumentu, NabywcaSprzedawca = dokumentZK.NabywcaSprzedawcaWybrany, OdbiorcaDostawca = dokumentZK.OdbiorcaWybrany, })) ; foreach (DocumentItem item in document.DocumentItem) { if (!(from p in paragonNexo.Dane.Pozycje where p.AsortymentWybrany.Symbol.Trim().ToLower() == item.Symbol.Trim().ToLower() select p).Any()) { asortyment = asortymentList.Dane.Wszystkie().Where(a => a.Symbol.Trim().ToUpper() == item.Symbol.Trim().ToUpper()).FirstOrDefault(); var paragonPozycja = paragonNexo.Pozycje.Dodaj(asortyment, item.Quantity, asortyment.JednostkaSprzedazy); paragonPozycja.Cena.BruttoPrzedRabatem = item.GrossPrice; } } paragonNexo.Dokument.PochodziZUrzadzeniaFiskalnego = true; paragonNexo.Dane.StatusFiskalizacji = 1; paragonNexo.Dane.PlatnosciDokumentow.Clear(); paragonNexo.Przelicz(); if (document.PaymentType == 0 || document.PaymentType == 2) { if (document.Discount > 0) { decimal wartoscPoRabacie; if (document.IsDiscountPercent == true) wartoscPoRabacie = decimal.Round(document.GrossValue * (1 - document.Discount), 2, MidpointRounding.AwayFromZero); else wartoscPoRabacie = decimal.Round(document.GrossValue - document.Discount, 2, MidpointRounding.AwayFromZero); paragonNexo.Przelicz(); var funkcja = mUchwyt.PodajObiektTypu<IFabrykaFunkcjiRozdzielajacychRabatNaPozycje>().Znajdz(Guid.Parse("EA786A35-1868-4F9B-8B6E-D132D992B02B")); if (funkcja != null) { decimal rabatBrutto = funkcja.WyliczRabatBrutto(paragonNexo.Dane, wartoscPoRabacie); funkcja.RozdzielRabatNaPozycje(paragonNexo, rabatBrutto); } } paragonNexo.Dane.FormaPlatnosci = formaPlatnosciList.Dane.Wszystkie().Where(f => f.Aktywna == true && f.Nazwa == "Gotówka (1)").First(); } else if (document.PaymentType == 1) { if (document.Discount > 0) { decimal wartoscPoRabacie; if (document.IsDiscountPercent == true) wartoscPoRabacie = decimal.Round(document.GrossValue * (1 - document.Discount), 2, MidpointRounding.AwayFromZero); else wartoscPoRabacie = decimal.Round(document.GrossValue - document.Discount, 2, MidpointRounding.AwayFromZero); paragonNexo.Przelicz(); var funkcja = mUchwyt.PodajObiektTypu<IFabrykaFunkcjiRozdzielajacychRabatNaPozycje>().Znajdz(Guid.Parse("EA786A35-1868-4F9B-8B6E-D132D992B02B")); if (funkcja != null) { decimal rabatBrutto = funkcja.WyliczRabatBrutto(paragonNexo.Dane, wartoscPoRabacie); funkcja.RozdzielRabatNaPozycje(paragonNexo, rabatBrutto); } } paragonNexo.Dane.FormaPlatnosci = formaPlatnosciList.Dane.Wszystkie().Where(f => f.Aktywna == true && f.Nazwa == "Karta płatnicza").First(); } paragonNexo.Platnosci.DodajDomyslnaPlatnoscNatychmiastowaNaKwoteDokumentu(); if (paragonNexo.Zapisz()) { return paragonNexo.Dane.Id; } else { return -1; } } } catch (Exception e) { return -1; } } -
Brak Auto WZ przy Realizowaniu Paragonu z ZK (Sfera)
Rafał Kaim odpowiedział Rafał Kaim → na temat → Forum użytkowników - InsERT nexo - Sprawy techniczne
Po zmianie statusu (Wydany towar-->Blokada-->Wydany towar) - dokument WZ generuje się normalnie poniżej przykład z innego paragonu po wspomnianej edycji ukazujący w dokumentach powiązanych właściwą WZ. Wkrótce dodam część kodu. -
Brak Auto WZ przy Realizowaniu Paragonu z ZK (Sfera)
Rafał Kaim odpowiedział Rafał Kaim → na temat → Forum użytkowników - InsERT nexo - Sprawy techniczne
Wrzucam paragon -
Brak Auto WZ przy Realizowaniu Paragonu z ZK (Sfera)
Rafał Kaim odpowiedział Rafał Kaim → na temat → Forum użytkowników - InsERT nexo - Sprawy techniczne
Status dokumentu ze towar został wydany, oczywiście na paragonie są pozycje