Ich kann dein Projekt hier mangels UniDAC leider nicht öffnen. Daher hier nur eine Trockenübung:
Im Client ist dein DataSet über den lokalen Provider DSProv_Main mit der ServerMethod SQLSrvMethod_Main verbunden. Damit läuft immer alles über die ServerMethod. Das wollen wir hier aber nicht.
Platziere im Server eine weitere
Query und einen DataSetProvider und setze dessen DataSet property auf die
Query. Gib dem DataSetProvider einen adäquaten Namen. Das mit dem poAllowCommandText hast du ja schon selbst rausgefunden.
Setze bei dem ClientDataSet das Property RemoteServer auf die SQLCOnnection. Dann sollte dir bei ProviderName auch der neue DataSetProvider angezeigt werden. Wähle den aus und dein ClientDataSet ist mehr oder weniger direkt mit der
Query verbunden.
Edit: Ich hatte noch vergessen (das kommt davon, wenn man das Projekt nicht öffnet) - du musst im Client noch eine TDSProviderConnection platzieren, die mit der SQLConnection verbunden wird. Diese wird dann im ClientDataSet als RemoteServer ausgewählt.