VC6.0中为什么给水晶报表设置SQL语句无效
发表在C语言图书答疑
2012-07-13
是否精华
是
否
版块置顶:
是
否
VC6.0中为什么给水晶报表设置SQL语句无效??????????????????
以下为我的代码:
IApplicationPtr m_Application;
IReportPtr m_ReportPtr;
CCrystalReportViewer9 m_CRViewer1;
int ReportDlg::InitReport()
{
//实例化m_Application
m_Application.CreateInstance (__uuidof(Application));
//m_Report获取报表文件
m_ReportPtr =m_Application->OpenReport ("Report.rpt");
//设置报表标题
m_ReportPtr->put_ReportTitle (_bstr_t("收支总汇表"));
//设置数据库连接变量
try
{
m_ReportPtr->Database->Tables->Item[1]->SetLogOnInfo("KENNY","CardDB","sa","sa");
}
catch (_com_error err)
{
AfxMessageBox(err.Description()+err.ErrorMessage());
return -1;
}
//设置检索SQL命令
m_ReportPtr->put_SQLQueryString ((_bstr_t)"select * from Tbl_Pers");
//此句为什么没有起到作用?SQL语句没有改变!
//此句为什么没有起到作用?SQL语句没有改变!
//不显示重复字段
m_ReportPtr->PutEnableSelectDistinctRecords (TRUE);
//设置报表作者
m_ReportPtr->PutReportAuthor ("sure");
//将m_Report与报表控件连接
m_CRViewer1.SetReportSource(m_ReportPtr);
//显示报表工具条
m_CRViewer1.SetDisplayToolbar (TRUE);
//不显示报表左边的分组树
m_CRViewer1.SetDisplayGroupTree (FALSE);
//不显示控件边框
m_CRViewer1.SetDisplayBorder (FALSE);
//显示报表内容
m_CRViewer1.ViewReport();
//刷新数据
m_CRViewer1.Refresh ();
m_CRViewer1.Zoom(75);
return 0;
}
为什么“m_ReportPtr->put_SQLQueryString ((_bstr_t)"select * from Tbl_Pers");”语句没有起作用???
我通过“CString str = (char*)(_bstr_t)m_ReportPtr->GetSQLQueryString();”读出来的还是以前设计时的语句。
以下为我的代码:
IApplicationPtr m_Application;
IReportPtr m_ReportPtr;
CCrystalReportViewer9 m_CRViewer1;
int ReportDlg::InitReport()
{
//实例化m_Application
m_Application.CreateInstance (__uuidof(Application));
//m_Report获取报表文件
m_ReportPtr =m_Application->OpenReport ("Report.rpt");
//设置报表标题
m_ReportPtr->put_ReportTitle (_bstr_t("收支总汇表"));
//设置数据库连接变量
try
{
m_ReportPtr->Database->Tables->Item[1]->SetLogOnInfo("KENNY","CardDB","sa","sa");
}
catch (_com_error err)
{
AfxMessageBox(err.Description()+err.ErrorMessage());
return -1;
}
//设置检索SQL命令
m_ReportPtr->put_SQLQueryString ((_bstr_t)"select * from Tbl_Pers");
//此句为什么没有起到作用?SQL语句没有改变!
//此句为什么没有起到作用?SQL语句没有改变!
//不显示重复字段
m_ReportPtr->PutEnableSelectDistinctRecords (TRUE);
//设置报表作者
m_ReportPtr->PutReportAuthor ("sure");
//将m_Report与报表控件连接
m_CRViewer1.SetReportSource(m_ReportPtr);
//显示报表工具条
m_CRViewer1.SetDisplayToolbar (TRUE);
//不显示报表左边的分组树
m_CRViewer1.SetDisplayGroupTree (FALSE);
//不显示控件边框
m_CRViewer1.SetDisplayBorder (FALSE);
//显示报表内容
m_CRViewer1.ViewReport();
//刷新数据
m_CRViewer1.Refresh ();
m_CRViewer1.Zoom(75);
return 0;
}
为什么“m_ReportPtr->put_SQLQueryString ((_bstr_t)"select * from Tbl_Pers");”语句没有起作用???
我通过“CString str = (char*)(_bstr_t)m_ReportPtr->GetSQLQueryString();”读出来的还是以前设计时的语句。