public int RozpocznijDekompletacje()
        {
            NowyDokument(RW);
            WartoscRW      = RW.WartoscDokumentu;
            ZwracaneWyniki = RW.GetReturns();
            List <int> _ZwracaneWyniki = new List <int>();

            _ZwracaneWyniki.AddRange(ZwracaneWyniki);

            if (SprawdzPoprawnoscDokumentu())
            {
                NowyDokument(PW);
                _ZwracaneWyniki.AddRange(PW.GetReturns());
                return(_ZwracaneWyniki.Sum());
            }
            else
            {
                info.Sukces    = false;
                info.Komunikat = "Różnica wartości dokumentów RW / PW jest zbyt duża.Wszystkie dokumenty dekompletacji zostaną cofnięte.";
                info.Rodzic    = true;

                RW.NotifyObservers(info);
                AnulujDekompletacje();
                _ZwracaneWyniki.AddRange(ZwracaneWyniki);
                return(_ZwracaneWyniki.Sum());
            }
        }
 private void AnulujDekompletacje()
 {
     if (PW.StanDokumentu != -1 && PW.DokumentNumer != 0)
     {
         PW.AnulujDokument();
         ZwracaneWyniki = PW.GetReturns();
         RW.AnulujDokument();
     }
     else if (RW.StanDokumentu == -1 && RW.DokumentNumer != 0)
     {
         RW.AnulujDokument();
     }
 }