As you've discovered, You're better served to provide technical information than text descriptions:
Crystal version
Database/connectivity used
Example data
Expected output
First, I would change the connectivity from ODBC to native Oracle, it's much faster.
The reason for repitition is that the rows are not exact duplicates (row inflation), if you placed all of the field in the details you'd discover that there's some difference in the rows of data. You need to do some discovery to understand your data source, which is what example data (not just a few fields because it's too much work), but what is actually occuring in the data returned. Note that lbass has pleaded for example data, which you promptly ignore and instead try to describe your data with text, it's going to be less work overall to learn about your data and share the findings.
It's a bit unclear because I don't really want to duplicate lbass's typically excellent efforts and closely read all of your posts again, but if you want just one row per group, and the date is unique for that group, try a Report->Selection Formulas->Group
{table.date} = maximum({table.date}, {table.group))
If there are numerous dates for that group, drop the fields into the group footer sorted by the date descending.
I would try to eliminate the rows at the data source. Oracle supports the following to get the top 1:
select * from (
select date
from table
order by date desc
)
where rownum < 2
I would check with your dba for assistance with creating a View or a Stored Procedure (SP), keeping in mind that Crystal has specific requirements for Oracle SP development.
Here's the whitepaper:
You can also use the Add Command to paste in specific SQL if that's a viable option for you. Another advanced topic is the use of SQL Expressions, which allows for pasting in SQL and in this exaqmple might be used as a subquery in lie of a subreport.
You can also use subreports, or the group footer idea floated by LB, but you will recognize better performance eliminating the subreports, and you can remove the pseuod-dupes by using better SQL.
-k