Nevím jako verzi Delphi máš, ale výraz ADOTable1['Datum'] funguje někdy blbě, hlavně když je údaj prázdný dokáže vrátit hovadiny. Je typu variant, musí se to testovat a převádět v run time (za běhu). Zkus použít ADOTable1.FieldByName ('Datum').AsDateTime - je to delší na psaní ale rychlejší na běh a převod do typu DateTime je korektnější. Již jsem narazil, že indexový výraz Table ['Jméno-pole'] fixloval při porovnávání, proto jsem od tohoto zápisu opustil.