Хм ... как бы хорошо не вызывать хранимый процесс из отчета и хранить все это в одном месте, однако мы обнаружили (как и вы), что в конечном итоге вы попали в точку, в которую вы не можете получить кристалл делай, что хочешь, даже если данные прямо там.
В итоге мы ввели бизнес-уровень, который находится под отчетом, и вместо того, чтобы «извлекать» данные из отчета, мы «проталкиваем» наборы данных в него и привязываем данные к отчету. Преимущество заключается в том, что вы можете манипулировать данными в коде в наборах данных или объектах, прежде чем они достигнут отчета, а затем просто привязать данные к отчету.
Эта статья содержит хорошее введение в настройку отправки данных в отчеты. Я понимаю, что ваши временные / бизнес-ограничения могут не позволить вам сделать это, но если это вообще возможно, я настоятельно рекомендую это, поскольку это означает, что мы можем удалить все «кодирование» из наших отчетов и в управляемый код, который всегда хорошая вещь.