Forum Użytkownikow Subiekt GT

InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: Omenus78 w Marzec 30, 2018, 11:05:55

Tytuł: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: Omenus78 w Marzec 30, 2018, 11:05:55
Witam
Mam zestawienie  / do rozliczenia pośrednika/ ale niektóre faktury wyświetla i liczy podwójnie. Nie mam pojecia dlaczego??
Pomoże ktoś??
Proszę

SELECT
kh_Symbol AS Symbol,
nz__Finanse.nzf_Data AS [Data powstania],
dok__Dokument.dok_NrPelny AS [Dokument],
dok_WartNetto AS [Netto],
adr__Ewid.adr_Nazwa AS [Nazwa],
dok_Uwagi as Uwagi,
kh_Pole1 as [Sprzedawca]


FROM
kh__Kontrahent,
nz__Finanse,
dok__Dokument,
adr__Ewid,
sl_CechaKh,
kh_cechaKh


WHERE
(dok__Dokument.dok_Typ IN({CHL:faktura sprzedaży#2#korekta faktury sprzedaży#6#:Typ dokumentu}))
and adr__Ewid.adr_IdObiektu=kh__Kontrahent.kh_Id
and nz__Finanse.nzf_IdDokumentAuto=dok__Dokument.dok_Id
and adr__Ewid.adr_Id=nz__Finanse.nzf_IdAdresu
and kh__Kontrahent.kh_Id=kh_CechaKh.ck_IdKhnt
and kh_CechaKh.ck_IdCecha=sl_CechaKh.ckh_Id
and dok_DataWyst BETWEEN {DR: Data :2018-01-01 : 2018-01-31}
and kh_CechaKh.ck_IdCecha={DB: SELECT ckh_Id, ckh_Nazwa AS CECHA FROM sl_CechaKh ORDER BY Cecha: Dla cechy}

Z góry dziękuję za wszelkie sugestie.
A tak wogóle to : WESOŁYCH Swiąt i mokrego dyngusa ;-)
Tytuł: Odp: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: candy w Marzec 30, 2018, 13:21:02
Mam zestawienie  / do rozliczenia pośrednika/ ale niektóre faktury wyświetla i liczy podwójnie. Nie mam pojecia dlaczego??

Przez ten fragment
FROM
kh__Kontrahent,
nz__Finanse,
dok__Dokument,
adr__Ewid,
sl_CechaKh,
kh_cechaKh
Bierzesz dane z 6 tabel, w każdej z nich są potrzebne i niepotrzebne i ani słowem się nie zająknąłeś co ma te tabele łączyć
Bez tego to zapytanie nie ma żadnego sensu.
Wpisz w google "łączenie tabel sql" i przeczytaj cośkolwiek
Tytuł: Odp: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: Omenus78 w Marzec 30, 2018, 13:54:06
Dzięki. Zasiadam do wujka google i szukam.

Proszę nadawać tytuły zgodnie z tematem pytania
Tytuł: Odp: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: Omenus78 w Kwiecień 03, 2018, 08:16:04
Niestety nie poradziłem sobie. Niby wylicza ale dla niektórych kontrahentów pokazuje mi 2 razy faktury ale nie wszystkie- dlaczego ?
Np.kontrahent ma 10 faktur a pokazuje mi 5 z nich razy 2 choć liczy raz.

Pomoże ktoś?
Tytuł: Odp: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: birds22 w Kwiecień 03, 2018, 08:45:46
Nie wiem co jest źle bo nie pokazałeś co aktualnie zrobiłeś i w jaki sposób. Z tego co masz powyżej to

Masz tabele kh__kontrahent i adr__ewid powiązane za pomocą adr__Ewid.adr_IdObiektu=kh__Kontrahent.kh_Id
Zobacz co się stanie jak połączysz tylko te dwie tabele - ile razy występuje ten sam kontrahent?
Zwróć uwagę na pole adr_typadresu - do czego ono służy?

Masz też powiązanie z kh_cechaKh za pomocą kh__Kontrahent.kh_Id=kh_CechaKh.ck_IdKhnt ...
Co się stanie jak kontrahent będzie miał dwie cechy, a co jeżeli nie będzie miał wcale cechy

Zacznij od jednej tabeli i później dołączaj kolejne tabele sprawdzając co jest w wyniku. Np zacznij od dok__dokument z filtrem daty i typu dokumentu a następni dołączaj kolejne tabele. To nie może być tak, że wrzucasz bezmyślnie różne tabele - zrób to powoli, ale tak abyś wiedział co robisz. Korzystaj też z różnych połączeń JOIN, bo łączenie za pomocą "=" po WHERE jest jednoznaczne z INNER JOIN, a nie zawsze jest to odpowiednie. Poczytaj co najmniej o LEFT JOIN.


Załóż sobie pusty podmiot testowy (bez danych przykładowych) załóż jednego klienta, jeden towar, dodaj jeden dokument i wtedy testuj.
Tytuł: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: candy w Kwiecień 03, 2018, 08:50:37
Masz rację, tylko niech raczej założy 2 kontrahentów i wystawi jednemu dwa dokumenty, a drugiemu jeden.
Bo jak będzie miał po jednym wszystkiego to wyjdzie piękne zestawienie, które w ogóle nie będzie działać w realu tak jak to.
Tytuł: Odp: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: Omenus78 w Kwiecień 05, 2018, 07:51:21
Niestety nie poradzę sobie, musze to zrobić "na piechotę"  :'(
Tytuł: Odp: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: Omenus78 w Kwiecień 05, 2018, 14:41:01
Dzięki za pomoc.
Tytuł: Odp: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: Omenus78 w Kwiecień 10, 2018, 12:22:38
ZROBIŁEM!!  Wielkiedzieki za zmuszenie mnie do myślenia . CANDY dziękuje za link do kursu sql to dzieki niemu dałem radę. ;D
Tytuł: Odp: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: candy w Kwiecień 10, 2018, 14:25:06
ZROBIŁEM!!  Wielkiedzieki za zmuszenie mnie do myślenia . CANDY dziękuje za link do kursu sql to dzieki niemu dałem radę. ;D
I to lubię!
Żadnego jęczenia i fochów, tylko chwila pracy i sukces.

Gratuluję!
Tytuł: Odp: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: Omenus78 w Kwiecień 10, 2018, 14:32:20
Jak nikt nie słyszał to trochę jeczałem 8) Ale jeszcze raz dzięki.
Tytuł: Odp: Zestawienie SQL do rozliczenia pośrednika
Wiadomość wysłana przez: candy w Kwiecień 10, 2018, 16:46:35
Jak nikt nie słyszał to trochę jeczałem 8) Ale jeszcze raz dzięki.
Bo jęczenie do siebie jest słuszne i zalecane, pomaga rozładować stres i oczyszcza rozum  ;)