Wykonanie zestawienia, które by zwróciło kontrahentów dla których nie wystąpiła sprzedaż z taką ilością parametów nie jest takie proste. Zestawienie podane jako wzór nie jest prostym zestawieniem SQL, tylko zestawieniem wbudowanym w Subiekta, gdzie wynikowe zapytanie prowdopodobnie jest budowane dynamicznie w kodzie zależności od wybranych parametrów. Nie da się takich rzeczy zrobić jednym zapytaniem (niestety tylko takie przyjmuje Subiekt) i musiałoby to być zestawienie COM (aplikacja).
Ogólnie sporo pracy i wątpię, aby ktoś to zrobił za darmo. Nie mniej zestawienie takie można potraktować jako potencjalne przydatne dla większej liczby osób i obniżyć cenę za jego wykonanie.
Na bazie propozycji @Biniew, po pierwszym szlifie:
SELECT kh_Symbol AS Symbol, adr_NazwaPelna AS Nazwa, adr_Adres AS Adres, adr_Kod AS Kod, adr_Miejscowosc AS [Miejscowość],
SUM(IsNull(dok_WartNetto, 0)) AS [Wartość]
FROM kh__Kontrahent
JOIN adr__Ewid ON kh_Id = adr_IdObiektu and adr_TypAdresu = 1
left JOIN dok__Dokument ON kh_Id = dok_PlatnikId and dok_Typ IN (1, 5) AND dok_DataWyst between {DR:Data dokumentu}
WHERE kh_Jednorazowy = 0
GROUP BY adr_Miejscowosc, kh_Symbol, adr_Adres, adr_Kod, adr_NazwaPelna
HAVING SUM(IsNull(dok_WartNetto, 0)) <= {M:wartość mniejsza lub równa}
ORDER BY [Wartość], [Symbol]