Mamut Maniek 115 Napisano 11 Marca 2020 Udostępnij Napisano 11 Marca 2020 w Naprawa st_Stan i mr_Pozostalo Ostatnio wycofywałem skutki magazynowe starych dokumentów i przez tą operację prawdopodobnie uszkodziłem zapis w kolumnie mr_Pozostalo. Czy istnieje jakiś skrypt/zapytanie SQL, który naprawi (przeliczy) mr_Pozostalo? Do naprawy (przeliczenia) st_Stan znalazłem zapytanie SQL na forum: UPDATE tw_Stan SET tw_Stan.st_Stan = ( SELECT ISNULL ( SUM ( tMR.mr_pozostalo ),0 ) FROM dok_MagRuch tMR WHERE tMR.mr_TowId = tST.st_TowId and tMR.mr_MagId = tST.st_MagId ) FROM tw_stan tST tak samo zapytanie do sprawdzania wartości stanu z wartością obliczoną na podstawie mr_Pozostalo: SELECT tw_Symbol, st_Stan, (SELECT ISNULL(SUM(rr.mr_pozostalo), 0) FROM dok_magruch rr WHERE rr.mr_towid = s.st_towid AND rr.mr_magid = s.st_magid) AS SUMA__mr_Pozostalo FROM tw_stan s JOIN tw__Towar ON st_TowId = tw_Id JOIN sl_Magazyn ON st_MagId = mag_Id WHERE s.st_stan != (SELECT isnull(sum(r.mr_pozostalo), 0) FROM dok_magruch r WHERE r.mr_towid = s.st_towid AND r.mr_magid = s.st_magid) ORDER BY tw_symbol, mag_symbol Link to postu
Mamut Maniek 115 Napisano 12 Marca 2020 Autor Udostępnij Napisano 12 Marca 2020 w Naprawa st_Stan i mr_Pozostalo W mojej sytuacji zepsuła się tabela dok_MagRuch a dokładniej wartość mr_Pozostalo, gdzie wyświetlały się wartości na minusie. Wystarczyło wykonać takie polecenie: update dok_MagRuch set mr_Pozostalo = 0 where mr_Pozostalo < 0 a potem przeliczyć na nowo stany wg zapytania z pierwszego posta 1 Link to postu
Polecane posty