点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我正在尝试使用.net Framework 4.6.2上的Crystal运行时版本13.0.20从打印预览选项访问报告,但它给我以下错误:
{" The缺少的。 FM_Kind} = 1 \ r'\ n缺少)。\ n详细信息:errorKind"}
当我从记录选择公式中删除注释行时,它的运行正常:
({Form.FM_Kind} = 1
//和{Form.FM_ID} = 21436
//
)
类代码:
//加载报告mainreportdoc = new ReportDocument(); mainreportdoc.Load(reportobject.ReportPath); //设置主选择公式reportobject.Finalize_MainSelectionFormula(); 如果(mainreportdoc.RecordSelectionFormula.Length> 0){mainreportdoc.RecordSelectionFormula ="(" + mainreportdoc.DataDefinition.RecordSelectionFormulaRaw +")"; 如果(reportobject.MainSelectionFormula!= null && reportobject.MainSelectionFormula!="")mainreportdoc.RecordSelectionFormula = mainreportdoc.DataDefinition.RecordSelectionFormulaRaw +"和" + reportobject.MainSelectionFormula; }
对此有什么建议吗?
我不知道,这行是做什么的
3.reportobject.Finalize_MainSelectionFormula();?
Don
嗨Sakshi,
可能是因为您用注释破坏了公式文本。
但是我使用SP 22对其进行了测试,对我来说效果很好。
可能是您正在使用的代码,请尝试以下操作:
//包含注释的记录选择公式只能通过RAS
//rpt.RecordSelectionFormula ="如果不是非null({CUSTOMER.Customer Credit ID}),则{CUSTOMER.Customer Credit ID} = {% test} else true";
CrystalDecisions.ReportAppServer.DataDefModel.ISCRFilter myRecordSelectionWithComments; CrystalDecisions.ReportAppServer.DataDefModel .;
myRecordSelectionWithComments = rptClientDoc.DataDefController.DataDefinition.RecordFilter;
if(myRecordSelectionWithComments.FreeEditingText!= null)
{
//myRecordSelectionWithComments.FreeEditingText = rptClientDoc.DataDefController。 .GetFormulaText();
btnRecordSelectionForm.Text =" \ n带注释:\ n" + myRecordSelectionWithComments.FreeEditingText.ToString();
btnRecordSelectionForm.Update();
btnRecordSelectionForm.AppendText(" \ n \ n ");
btnRecordSelectionForm.Update();
btnRecordSelectionForm.AppendText(" \ n \ n没有注释:\ n" + rpt.RecordSelectionFormula.ToString());
btnRecordSelectionForm.Update();
>//myRecordSelectionWithComments.FreeEditingText =" {TStat.TArt_Cod} = \" A823/001 \"";
////rpt.RecordSelectionFormula =" {TStat.TArt_Cod} = \" A823/001 \"";
//IsRpt = false;
}
else
btnRecordSelectionForm.Text ="无记录选择公式";
唐
嗨唐,
感谢您的帮助和建议。 我在这里有另一个查询与上述线程有关。 在执行下面的代码记录时,选择公式的值总是在跳入下一个代码行后消失。
我正在检查在代码行4中记录选择公式的长度,然后跳到If条件内部。 当我来到代码行8时,它没有显示Record选择公式的任何值,但是我可以看到RecordSelectionFormulaRaw和reportobject.MainSelectionFormula的值。
为什么在代码行:4之后该值消失了?
记录选择公式:({Form.FM_Kind} = 1)
代码类:
//加载报告
1.mainreportdoc = new ReportDocument();
2.mainreportdoc.Load(reportobject.ReportPath);
//设置主选择公式
3.reportobject.Finalize_MainSelectionFormula();
4.if(mainreportdoc.RecordSelectionFormula.Length> 0)
5. {
6.mainreportdoc.DataDefinition.RecordSelectionFormula ="(" + mainreportdoc.DataDefinition.RecordSelectionFormulaRaw +")";
7.if(reportobject.MainSelectionFormula!= null && reportobject.MainSelectionFormula!="")
8.mainreportdoc.RecordSelectionFormula = mainreportdoc.DataDefinition.RecordSelectionFormulaRaw +"和" + reportobject.MainSelectionFormula; }
谢谢
Sakshi
一周热门 更多>