使用带有水晶报告字段的for循环时遇到问题。
我正在尝试从我的报告中提取所有SQLExpressionFieldDefinition。 为了做到这一点,我正在计算报告中SQLExpressionFieldDefinition的计数。
for循环完美无缺,直到它最后一次迭代到达它为止。然后它会收到无效索引。 换句话说,SQLExpressionFieldDefinition-> Count = 5例如,前4次迭代工作,当它到达第5时,出现无效索引问题。
以下是代码:
for ( nIterator = 1; nIterator <= rpt->DataDefinition->SQLExpressionFields->Count; nIterator++ )
{
SQLExpressionFieldDefinition
*sqlExpressionFieldDefinition = rpt->DataDefinition->SQLExpressionFields->get_Item(nIterator);
strText = sqlExpressionFieldDefinition->Text;}
等待你的回答。谢谢。
答案 0 :(得分:0)
数组的索引器应从值0开始,而不是从1开始,并以值Count - 1
结束
Crystal Reports也不例外。
for (nIterator=0; nIterator < rpt->DataDefinition->SQLExpressionFields->Count; nIterator++ )