Olá!  Estou tendo problema com Crystal 8 + VB6 + MDB + Win7 64.  O problema é que não encontro o driver odbc para MDB para esse SO.  Logo, estou mudando os meus arquivo RPTs para não utilizarem ODBC, mas DAO diretamente ligados ao MDB.  Depois que fiz as modificações, o relatório funciona, mas não aceita mais a instrução SQL que o VB envia.  Eu faço a chamada desta maneira (e funciona com ODBC).   Rpt.LogOnServer "p2sodbc.dll", "DB_NAME", "DB_NAME", "", ""
Rpt.WindowTitle = "Report"
Rpt.WindowState = crptMaximized
Rpt.SQLQuery = "SELECT CLIENT.ID, CLIENT.NAME FROM CLIENT WHERE CLIENT.ID > 1 AND CLIENT.ID < 10 ORDER BY CLIENT.NAME DESC"
Rpt.Action = 1
Substituí a linha com Rpt.LogOnServer para Rpt.DataFiles(0) = "DB_FILE.MDB"
O Vb chama o report sem erro, mas ele não respeita mais a clausula WHERE e ORDER BY do SQL.
Parece que está ignorando a propriedade SQLQuery.
Se eu usar
Rpt.SelectionFormula = "{CLIENT.ID} > 1 AND {CLIENT.ID} > 10"
em vez do SQLQuery, o filtro funciona, mas ainda não descobri como fazer a ordenação.
Eu já tentei:
Rpt.SortFields(0) = "-{CLIENT.NAME}"  e com GroupSortFields também.  Alguém pode me ajudar?