Forum Użytkownikow Subiekt GT
InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: Vault_Boy w Sierpień 30, 2021, 10:54:54
-
Dzień dobry,
Jak w temacie borykam się z problemem dot. formatowania warunkowego SQL.
Chciałem stworzyć formatowanie podświetlające powtarzającą się nazwę pozycji Dokument Źródłowy za pomocą funkcji COUNT, ale za każdym razem wyskakuje mi błąd związany z brakiem funkcji GOUP BY, której to dodać się nie da lub nie potrafię tego zrobić.
Czy jest jakiś inny sposób pozwalający na proste podświetlenie duplikatów w programie ? w Subiekcie jest włączona blokada na ten sam numer dokumentu, ale użytkownik czasem potrafi wrzucić dokument na innego kontrahenta.
Z góry dziękuję za pomoc
-
Jak w temacie borykam się z problemem dot. formatowania warunkowego SQL.
Chciałem stworzyć formatowanie podświetlające powtarzającą się nazwę pozycji Dokument Źródłowy za pomocą funkcji COUNT, ale za każdym razem wyskakuje mi błąd związany z brakiem funkcji GOUP BY, której to dodać się nie da lub nie potrafię tego zrobić.
Da się, pozostaje poznać składnię języka T-SQL i się zastosować.
Zwrócę uwagę, że należałoby jeszcze ograniczyć sprawdzenie do wybranego roku obrotowego - większość systemów posiada numerację roczną.
Tak w ogóle to zastanowiłbym się nad tym, czy zda to egzamin - wielu dostawców może korzystać z tych samych systemów i/lub posiadać te same serie numeracji, numery dokumentów mogą się powtarzać i takie informacja może być myląca.
Czy jest jakiś inny sposób pozwalający na proste podświetlenie duplikatów w programie ?
Standardowo - dodatkowe zestawienie SQL z opcją automatycznej wysyłki na e-mail.
w Subiekcie jest włączona blokada na ten sam numer dokumentu, ale użytkownik czasem potrafi wrzucić dokument na innego kontrahenta.
Nikt nie weryfikuje poprawności wprowadzania dokumentów (dwuetapowa kontrola) ? Szybko nie wychodzą takie błędy w rozrachunkach, najpóźniej przy zlecaniu przelewów (po zajrzeniu do oryginału do biblioteki dokumentów) ?
-
Oczywiście jest dwuetapowa kontrola, ale chciałbym dorzucić taką rzucającą się wprost w oczy.
Jestem na etapie :
CASE WHEN (SELECT COUNT(dkr_dokumentzrodlowy) FROM dkr__dokument HAVING COUNT(dkr_dokumentzrodlowy)>=2)>=2
THEN 1
ELSE 0
END
ale niestety podświetla wszystkie Dokumenty.
-
Program wyświetla to, co zdefiniowałeś, czyli zostaną podświetlone wszystkie dokumenty jeśli jakikolwiek numer się powtórzył - brakuje powiązania między konkretnym dokumentem, a innymi o tym samym numerze.
-
A czy mógłbym prosić o jakąś podpowiedź lub dokładniejsze nakierowanie mnie ? Wdrażam się powoli w ten T-SQL i z czasem na pewno efekty będą lepsze.
-
Musisz w podzapytaniu sprawdzać konkretny numer dokumentu czyli skorzystać z klauzuli WHERE i z racji tego, że będziesz odpytywać tą samą kolumnę drugi raz (dkr_dokumentzrodlowy) to w podzapytaniu musisz skorzystać z aliasów tabel i odpytywanego widoku z programu.