über eine Ganze Anzahl von mydataset.fieldbyname('...').as....
Hier liegt allein schon ein großes Verbesserungspotential:
Wenn Du einmalig den Satz von TFields über fieldbyname('...') ermittelst und über diesen in jedem Record auf die Werte zugreifst, kannst Du das Tempo vervielfachen (ich habe bei so etwas schon das 5-fache Tempo erreicht).