Vielleicht
query.CachedUpdates ?? Da hilft ein einfaches .Post nicht.
Da muss dann nach dem .Post noch .ApplyUpdates kommen.
Es kommt drauf an, was FireDAC im Hintergrund mit Transaktionen anstellt. Wenn erstmal alle Insert/Update/Delete nur gesammelt und erst beim Schließen der Table committet werden, dann sieht man Änderungen nie sofort.