ho semplicemente scritto che alla chiusura del form il client data set deve creare i file.dat. Così:
procedure TForm1.FormDestroy(Sender: TObject);
begin
SalvaRubrica;
end;

procedure Tform1.SalvaRubrica;
begin
ClientDataSet1.SaveToFile('a.dat');
ClientDataSet2.SaveToFile('b.dat');
ClientDataSet3.SaveToFile('c.dat');
ClientDataSet4.SaveToFile('d.dat');
ClientDataSet5.SaveToFile('e.dat');
ClientDataSet6.SaveToFile('f.dat');
ClientDataSet7.SaveToFile('g.dat');
ClientDataSet8.SaveToFile('h.dat');
ClientDataSet9.SaveToFile('i.dat');
ClientDataSet10.SaveToFile('l.dat');
ClientDataSet11.SaveToFile('m.dat');
ClientDataSet12.SaveToFile('n.dat');
ClientDataSet13.SaveToFile('o.dat');
ClientDataSet14.SaveToFile('p.dat');
ClientDataSet15.SaveToFile('q.dat');
ClientDataSet16.SaveToFile('r.dat');
ClientDataSet17.SaveToFile('s.dat');
ClientDataSet18.SaveToFile('t.dat');
ClientDataSet19.SaveToFile('u.dat');
ClientDataSet20.SaveToFile('v.dat');
ClientDataSet21.SaveToFile('z.dat');

end;