Mikolaj Muszynski 1 Napisano 13 Lipca 2021 Udostępnij Napisano 13 Lipca 2021 w cena pozycji Witam Tworze zk na usluge. Usluga nie ma wypelnionej ceny. Dopiero na zk ma sie pojawiac cena pozycji. Kombinuje jak kon pod gore i nic. W GUI mozna tak zrobic, tzn dodac pozycje i ustalic cene, kod tez dziala, ale cena/wartosc jest zawsze zero. Asortyment a = asortyment.Dane.Wszystkie().Where(t => t.Symbol == excelSymbolTowaru).FirstOrDefault(); if (a is null) { Tworze_Towar(excelSymbolTowaru); a = asortyment.Dane.Wszystkie().Where(t => t.Symbol == excelSymbolTowaru).FirstOrDefault(); a.WalutaCenyEwidencyjnej = walutyDD.EUR; a.CenaEwidencyjna = 400; } PozycjaDokumentu poz = new PozycjaDokumentu(); Wartosc wartosc = new Wartosc(); wartosc.BruttoPoRabacie = 400; //wartosc.NettoPoRabacie = 400; //wartosc.BruttoPrzedRabatem = 400; //wartosc.BruttoPoRabacie = 400; //wartosc.VatPrzedRabatem = 0; //wartosc.VatPoRabacie = 0; poz.Wartosc = wartosc; poz = zk.Pozycje.Dodaj(a, 1, a.JednostkaSprzedazy); zk.Przelicz(); Link to postu
Wojciech Szopiński 227 Napisano 13 Lipca 2021 Udostępnij Napisano 13 Lipca 2021 w cena pozycji Po pierwsze to najpierw Pan tworzy pozycję w linii: PozycjaDokumentu poz = new PozycjaDokumentu(); a następnie tworzy Pan jeszcze raz nową pozycję w linii: poz = zk.Pozycje.Dodaj(a, 1, a.JednostkaSprzedazy); Więc te zmiany, które są wprowadzane między tymi liniami i tak nie są w ogóle uwzględniane. Najlepiej po prostu skorzystać z tej metody dodającej pozycję, z której Pan skorzystał i pozycję zwracaną przez tę metodę edytować wedle własnych potrzeb. Na przykład tak: PozycjaDokumentu poz = zk.Pozycje.Dodaj(a, 1, a.JednostkaSprzedazy); poz.Cena.BruttoPrzedRabatem = 123m; Nie ma konieczności tworzenia nowych obiektów typu Wartosc lub Cena czyli własności PozycjaDokumentu.Wartosc lub PozycjaDokumentu.Cena tak jak Pan to robi w linii: Wartosc wartosc = new Wartosc(); Te własności będą utworzone zawsze po utworzeniu pozycji. Dodatkowo nie do końca wiem jaki jest cel tych dwóch linii w Pańskim kodzie: a.WalutaCenyEwidencyjnej = walutyDD.EUR; a.CenaEwidencyjna = 400; Te zmiany nigdy nie zostaną zaaplikowane ponieważ nie został utworzony obiekt IAsortyment, który odpowiada za edycję asortymentu. Wydaje mi się, że to powinno być zawarte wewnątrz funkcji: Tworze_Towar Gdzie zapewne coś takiego się odbywa. 1 Link to postu
Mikolaj Muszynski 1 Napisano 13 Lipca 2021 Autor Udostępnij Napisano 13 Lipca 2021 w cena pozycji Faktycznie dziala, te kombinacje powstaly na skutek tego, ze z jakis wzgledow nie moglem uaktualnic ceny pozycji. Dziekuje bardzo 🙂 Link to postu
Polecane posty