如何重命名子报表的对象名?

2020-09-13 14:19发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨 ...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们正在尝试使用C#设置子报表的"对象名称"。 Name属性显示为get; 设置并接受我们设置的字符串值。 但是,当报告使用C#代码保存并在设计器中签入时,它仍然显示" Subreport1"。

下面的代码示例运行正常,但是使用Crystal Reports Designer打开报表时,它显示对象名称仍为" Subreport1":

 CrystalDecisions.CrystalReports.Engine.ReportDocument Mainrd;
 字符串RPTPath = @" C:\ Main.rpt";
 Mainrd.Load(RPTPath);
 ReportObjectController rptObjCtrl = Mainrd.ReportClientDocument.ReportDefController.ReportObjectController;
 rptObjCtrl.GetReportObjectsByKind(CrReportObjectKindEnum.crReportObjectKindSubreport)[0] .Name =" TestSub";
 Mainrd.SaveAs(RPTPath);
 Mainrd.Close();
 

我们正在使用:

运行时:" 13.0.20.2399"

Visual Studio 2017

我们在这里做错了吗? 请告诉我们。 感谢您的帮助!

致谢

尼基尔

3条回答
d56caomao
2020-09-13 14:32

要能够正常更改名称,您将使用RAS,这是一个只读属性:

字符串名称{get; }
CrystalDecisions.ReportAppServer.Controllers.ISCRSubreportClientDocument的成员

您需要做的就是克隆子报表并更改其名称,然后删除旧的子报表并将克隆的对象添加回报表中。

一周热门 更多>