我开始一个新项目。然后我添加一个空白表单,然后将ReportViewer控件添加到表单。然后我将控件停靠在表单上。
接下来,我将新数据集(DataSet1.xsd)添加到项目中。然后我打开服务器资源管理器并将特定视图(而不是表)拖到DataSet1的表单中。然后,我可以在数据集的表单上看到视图中的所有字段。如果我选择,我可以预览数据并验证Fill,GetData()函数是否有效(他们可以。我可以看到所有数据)。 然后我回到我的主表单(Form1)并选择设计一个新报告。我告诉报告向导使用什么数据源,然后将所需的字段拖到“行”分组框和“值”框中。我点击下一步,选择我的报告和样式的布局。
最后,我回到Form1并在该reportviewer控件上选择我想要的报表。我构建然后运行该项目。将显示该表单,但查看器控件中不会显示任何报告。对于我的生活,我无法弄清楚为什么。我在某处跳过了一步吗?我本可以发誓说这是我之前做的一个简单的报告,但它似乎没有起作用。
我甚至尝试在数据集的TableAdapter的Fill方法上进行调试,这似乎是它被卡住的地方。但是,我可以使用相同的表适配器填充例程来预览数据。我没有对任何代码进行任何更改,所以我很茫然。有什么想法吗?
填写代码:
private void Form1_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'DataSet1.CAV_MBRHISTDETL' table. You can move, or remove it, as needed.
this.CAV_MBRHISTDETLTableAdapter.Fill(this.DataSet1.CAV_MBRHISTDETL);
this.reportViewer1.RefreshReport();
}
填充数据集的SQL:
SELECT
MBRSEP,
LOCATION,
BILLDATE,
READDATE,
DUEDATE,
READTYPE,
BILLTYPE,
CREDITCODE,
BILLMOYR,
METERREAD,
KWH
FROM CAR1.CAV_MBRHISTDETL
WHERE BILLTYPE = '09' AND
BILLMOYR <> '9999'
AND ROWNUM <= 100
连接字符串:
connectionString="Dsn=UPN2;uid=car1;dbq=SEDC;dba=W;apa=T;exc=F;fen=T;qto=T;frc=10;fdl=10;lob=T;rst=T;btd=F;bnf=F;bam=IfAllSuccessful;num=NLS;dpm=F;mts=T;mdi=F;csr=F;fwc=F;fbs=64000;tlo=O;mld=0;oda=F"
答案 0 :(得分:1)
我想我发现了自己的问题。在Visual Studio 2010中,我单击“Debug”然后单击“Exceptions”并检查结果窗口中的每个异常。不知怎的,我想,一个错误正在发生,我没有意识到它。
果然,当我再次运行我的报告程序时,我收到一条错误消息,指出我的密码为空。设想!当我在dataset.xsd屏幕中预览数据时,我不得不输入我的用户ID和密码,但是当我运行它时,程序没有一次询问我的密码。我也想知道为什么程序不会完全停止错误而不是只是坐在那里。无论如何,当我在连接字符串中提供密码并重新运行时,一切正常。呼!