Ik snap niets van je werkwijze, dus dat maakt het lastig om een antwoord te geven. Je legt ook je methodiek niet echt uit, en dat helpt natuurlijk ook niet.
Laten we er voor het gemak van uit gaan dat je de factuur voorbereidt op een formulier + subformulier (Factuur + Factuurregels). In de factuurregels leg je vast wat je verkoopt, met de aantallen + prijzen. Bij facturen is het belangrijk dat de vastgelegde gegevens niet meer wijzigen, dus je slaat de
actuele prijs op in de tabel Factuurregels. Zodat bij prijswijzigingen de prijzen van de reeds eerder verkochte artikelen niet meer verandert.
Korting kun je geven per artikel, maar jij doet dat blijkbaar op basis van de
complete factuur. Dat betekent voor je tabel, dat je de korting (percentage) opslaat in de tabel tFactuur, want de korting is nu een eigenschap van de factuur geworden, niet meer van de factuurregels. Dat betekent dus dat je op je hoofdformulier een veld moet hebben dat de korting ophaalt uit de tabel tKorting. Daarvoor moet je dus interactief het percentage kunnen muteren op dat hoofdformulier. Afhankelijk van het totaal aantal artikelen krijg je een ander percentage immers, als ik het goed heb begrepen.
Dat interactieve veld kun je met een DLOOKUP laten werken op (bijvoorbeeld) een totaal veld dat je in het subformulier in de voettekst zet. Bij elke mutatie in je factuurregels verandert dat totaal, en derhalve ook het percentage op je hoofdformulier. Daar komt verder geen query aan te pas. Zoals gezegd: factuur gegevens leg je vast in je tabellen, dus het kortingspercentage is ook gekoppeld aan een veld in de tabel tFactuur.
Zo zou ik het tenminste doen

.