Skocz do zawartości

Sferyczne zastosowanie cennika w dokumencie

Polecane posty

W skrócie będzie to wyglądało tak:
 

IDokumentSprzedazy dsBO;
Cennik cennik;

dsBO.Dane.FunkcjaWyliczaniaCenyZeStanami = null; //wyłączamy wyliczanie z plugina
dsBO.Dane.PoziomCen = cennik.PoziomCen; //włączamy wyliczanie z cennika
dsBO.UstawCenyIPrzelicz(); //przeliczamy ceny na pozycjach dokumentu oraz tabelę vat

 

Link to postu

Dziękuję za informacje. Jak natomiast będzie się to odnosić do dokumentu zakupu. W przypadku zastosowania metody UstawCenyiPrzelicz() przy zapisie dokumentu pojawia się błąd : "Błąd na konkretnych polach: Dokument nie może wykonywać skutku magazynowego dla innej ilości, niż ilość na pozycji PozycjaDokumentu.Przyjecie". Rozumiem, że chodzi tutaj o powiązany dokument PZ, który również trzeba zaktualizować?

Link to postu

     

    var nrWewnetrznyFakturyZakupu = "FZ 1/05/2022";
	var cennik = "Cennik inny";
	IKonfiguracje konfiguracje = sfera.PodajObiektTypu<IKonfiguracje>();
	IDokumentZakupu powielany = DokumentyZakupu.Znajdz(d => d.NumerWewnetrzny.PelnaSygnatura == nrWewnetrznyFakturyZakupu);
	DokumentZakupu powielony = DokumentyZakupu.Utworz(konfiguracje.DaneDomyslne.FakturaZakupuVAT);
	var wybranyCennik = Cenniki.Dane.Wszystkie().First(c => c.Tytul == cennik);
	powielony.Dane.PoziomCen = wybranyCennik.PoziomCen;
	powielony.Dane.FunkcjaWyliczaniaCenyZeStanami = null;
	powielony.UstawCenyIPrzelicz();
	if (powielony.Zapisz()==false)
	{
		powielony.WypiszBledy();
		return;
	}

Ten kod przy zapisie faktury generuje "pusty" błąd. Jeśli nie zmieniam wskazania FunkcjaWyliczaniaCenyZeStanami to powielenie faktury się odbywa, ale bez zmiany cen. Co ciekawe nazwa cennika w powielonej fakturze jest zmieniona, ale ceny nie są przeliczane.

Edytowane przez Dariusz Słowikowski
błędy opisowe
Link to postu

Problem może dotyczyć płatności, ponieważ nie są one automatycznie przeliczane po zmianie cen, trzeba to zrobić ręcznie. Jeśli na dokumencie jest jedna płatność, to można to zrobić wywołując metodę Ustaw100Procent:

powielony.Platnosci.Ustaw100Procent(powielony.Dane.PlatnosciDokumentow.First());

 

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