I'm new to Delphi and trying to find my way around calling some stored procedures in SQL Server.

This is the code I have been working with at the moment and it works....
FConnection := TADOConnection.Create(nil);
FMetaDataSP := TADOStoredProc.Create(nil);

FMetaDataSP.Connection := FConnection;
FMetaDataSP.ProcedureName := 'Messaging.ListMessageSections';
FMetaDataSP.Parameters.CreateParameter('@ReferralID', ftInteger, pdInput, 4, null);
FMetaDataSP.Parameters.CreateParameter('@ConsumerID', ftInteger, pdInput, 4, null);

Dataset := FMetaDataSP;
FMetaDataSP.Parameters.ParamByName('@ReferralID').Value := ReferralID;
FMetaDataSP.Parameters.ParamByName('@ConsumerID').Value := ConsumerID;
.... but when I do a profile in SQL Server I see this is the SQL that is executed.
exec Messaging.ListMessageSections 1,1
What I want is this instead...
exec Messaging.ListMessageSections @ReferralID=1, @ConsumerID=1
so that the ordering of the parameters in the code base are not important.

Is this possible?