Skocz do zawartości

Przepisywanie płatności

Polecane posty

Witam,

mam problem z przepisywaniem parności natychmiastowych z ZK na paragon

parametryGrupowania.PrzeniesNatychmiastowe = PrzenoszeniePlatnosciNatychmiastowych.Przepisz;
...
ds.WypelnijNaPodstawieZK(zk.Dane.Pozycje, zk.Dane, parametryGrupowania);

Na zk mam dodaną testową formę płatności p1 typu "Zapłacono przelewem",

obraz.png.b689c312d4c3dc7e8c727edcdda57eb0.png
na paragonie dodaje mi się wpłata bankowa

 

obraz.png.46bc0157a7371185f90cc50eb53f7614.png

 

Czy opcja "przepisz" nie powinna działać w taki sposób że skoro na ZK formę p1 to na dokumencie wynikowym też powinno być p1 ?

 

 

Edytowane przez Anna Sałacińska
Link to postu

 

Proszę sprawdzić ten, kod - nie miałem problemu z przenoszeniem płatności z ZK.

 

        public int DodajPAFS(int iddok, string typ_dok, string numerzk, Uchwyt sfera, ref string blad, string email, int idkategoria)
        {


            int sukces = 0;

            ParametryGrupowaniaDS parametryGrupowania = new ParametryGrupowaniaDS();
            parametryGrupowania.MetodaGrupowaniaPozycji = MetodaGrupowaniaPozycji.BezKonsolidacji;
            parametryGrupowania.MetodaWyliczeniaCen = MetodaWyliczeniaCen.BezKonsolidacji;

            IAsortymenty asortyment = sfera.PodajObiektTypu<IAsortymenty>();
            IJednostkiMiar jednostkiMiary = sfera.PodajObiektTypu<IJednostkiMiar>();
            IPodmioty podmioty = sfera.PodajObiektTypu<IPodmioty>();
            IPodmioty podmiotyODB = sfera.PodajObiektTypu<IPodmioty>();
            IUzytkownicy uzytkownicy = sfera.PodajObiektTypu<IUzytkownicy>();
            Konfiguracja konfZk;
            if (typ_dok == "PI")
                konfZk = sfera.PodajObiektTypu<IKonfiguracje>().DaneDomyslne.ParagonImienny;
            else
                konfZk = sfera.PodajObiektTypu<IKonfiguracje>().DaneDomyslne.FakturaVAT;


            Magazyn mag = sfera.PodajObiektTypu<IMagazyny>().Dane.Wszystkie().Where(m => m.Id == 100001).FirstOrDefault();

            IZamowieniaOdKlientow izk = sfera.PodajObiektTypu<IZamowieniaOdKlientow>();
            var dokument = izk.Dane.Wszystkie().Where(d => d.Id == iddok).First();
            IZamowienieOdKlienta zam = izk.Znajdz(dokument);

            parametryGrupowania.MiejsceDostawy = zam.Dane.MiejsceDostawy;
            parametryGrupowania.MiejsceDostawyTyp = MiejsceDostawyTyp.Nabywca;
            parametryGrupowania.NabywcaSprzedawca = zam.Dane.NabywcaSprzedawcaWybrany;

            parametryGrupowania.OdbiorcaDostawca = zam.Dane.OdbiorcaWybrany;
            parametryGrupowania.PrzeniesNatychmiastowe = PrzenoszeniePlatnosciNatychmiastowych.Przepisz;
            parametryGrupowania.PrzeniesPrzedplaty = PrzenoszeniePrzedplat.Przepisz;
            

           parametryGrupowania.OperacjePrzeliczaniaDokumentu = zam.Dane.OperacjePrzeliczaniaDokumentu;

            Console.WriteLine("Zamówienie odszukane to :" + zam.Dane.NumerWewnetrzny.PelnaSygnatura);
         
            IDokumentySprzedazy dspr = sfera.PodajObiektTypu<IDokumentySprzedazy>();
            IStatusyDokumentowDaneDomyslne statusyDD = sfera.PodajObiektTypu<IStatusyDokumentow>().DaneDomyslne;
            using (IDokumentSprzedazy dsp = dspr.Utworz(konfZk))
            {
                
                dsp.Dane.Magazyn = mag;
                dsp.Dane.StatusDokumentu = statusyDD.Sprzedaz_OdlozoneWykonanie;
                dsp.WypelnijNaPodstawieZK((IEnumerable<PozycjaDokumentu>)zam.Dane.Pozycje, (DokumentZK)zam.Dokument, parametryGrupowania);
 


                dsp.Dane.WystawilaOsoba = uzytkownicy.Dane.Wszystkie().Where(p => p.Login== "Szef").FirstOrDefault().Osoba;


 
                if (dsp.Zapisz())
                {
                    Console.WriteLine(dsp.Dane.NumerWewnetrzny.PelnaSygnatura);
                    LogManager.GetCurrentClassLogger().Info("Powstał dokument:" + dsp.Dane.NumerWewnetrzny.PelnaSygnatura);
                    sukces = 1;

                }
                else
                {
                    Rozszerzenia.WypiszBledy(dsp);
                    blad = dsp.Bledy.ToString();
                    LogManager.GetCurrentClassLogger().Info("Błędy:" + dsp.Bledy.ToString());
                    Console.WriteLine("Błędy:" + dsp.Bledy.ToString());
                    sukces = 0;

                }

            }

            return sukces;
        }

Link to postu

Wszystko zależy od tego, czy zamówienie zostało wystawione z włączoną obsługą płatności w konfiguracji. Jeśli tak, to wtedy płatności natychmiastowe powodują utworzenie rozrachunku, więc na dokumencie końcowym podpinane są jako przedpłaty, a w przeciwnym razie nie tworzy się rozrachunek, więc płatności mogą zostać po prostu skopiowane.

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