Skocz do zawartości

Wyszukiwanie dokumentów po numerze partii - sfera

Polecane posty

Można to np. zrobić wychodząc od asortymentu. Pierwsze zapytanie zwraca listę dokumentów przyjmujących partię na magazyn, drugie listę dokumentów wydających partię z magazynu (ze statusem W), trzecie listę dokumentów rezerwujących partię na magazynie (ze statusem R/C), a ostatnie listę dokumentów zwracających partię na magazyn (w tym MMP).

 

var partie = sfera
    .PodajObiektTypu<IAsortymenty>()
    .Dane
    .Wszystkie()
    .Where(a => a.Symbol == "BANAW200")
    .SelectMany(a => a.Przyjecia.SelectMany(p => p.Partie))
    .Where(p => p.Numer == "NumerPartii");

var przyjecia = partie
    .Select(p => p.Przyjecie.PozycjaDokumentu.Dokument);

var wydania = partie
    .SelectMany(p => p.Rozchody.Where(r => r.Wydanie != null).Select(r => r.Wydanie))
    .Select(w => w.PozycjaDokumentu.Dokument);

var rezerwacje = partie
    .SelectMany(p => p.Rozchody.Where(r => r.Rezerwacja != null).Select(r => r.Rezerwacja))
    .Select(w => w.PozycjaDokumentu.Dokument);

var zwroty = partie
    .SelectMany(p => p.Przychody.Where(pr => pr.Zwrot != null).Select(pr => pr.Zwrot))
    .Select(z => z.PozycjaDokumentu.Dokument);
  • Lubię to 1
Link to postu
  • 3 tygodnie później...
×
×
  • Dodaj nową pozycję...