Crystal Reports查看器+连续滚动

2020-09-10 20:21发布

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

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


我找到了此知识库文章:

1455375-使用Crystal Reports查看器时如何启用连续滚动 在Visual Studio .NET应用程序中

指出,使用Crystal Reports DHTML Web浏览器,您可以访问一个属性以允许连续滚动:

 CrystalReportViewer1.SeparatePages = False 

在Win-Viewer(CrystalDecisions.Windows.Forms.CrystalReportViewer)中,此属性不存在。

@ Don Williams :您可以要求R&D添加此功能吗? 也许对于SP 25来说是完美的,我实际上使用的是SP24。有关SP 25的新闻吗?

谢谢

帕特里克

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

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


我找到了此知识库文章:

1455375-使用Crystal Reports查看器时如何启用连续滚动 在Visual Studio .NET应用程序中

指出,使用Crystal Reports DHTML Web浏览器,您可以访问一个属性以允许连续滚动:

 CrystalReportViewer1.SeparatePages = False 

在Win-Viewer(CrystalDecisions.Windows.Forms.CrystalReportViewer)中,此属性不存在。

@ Don Williams :您可以要求R&D添加此功能吗? 也许对于SP 25来说是完美的,我实际上使用的是SP24。有关SP 25的新闻吗?

谢谢

帕特里克

付费偷看设置
发送
8条回答
路亽曱_Ryan
1楼 · 2020-09-10 21:00.采纳回答

我创建了这个主意,请投票:

https://influence.sap.com/sap/ino/#/ idea/228941

歪着头看世界
2楼-- · 2020-09-10 21:00

嗨,唐,

即使您写了Win form Viewer依赖于打印机,我也不认为这与要求R&D添加新属性" SeparatePages"(例如SP 25)有什么关系?

问题在于Win Viewer中,用鼠标滚轮滚动到页面末尾时,用户必须单击向下翻页按钮(或按下向下翻页按钮)才能继续滚动下一页-甚至 CRD这样做:

我们想要拥有的就像MS Word一样:

Patrick

clever101
3楼-- · 2020-09-10 21:12

嗨Patrick,

" Win Form Viewer"是基于您选择的打印机的页面。

在CRD中打开报表,然后 选择页面设置。 将页面长度设置为200英寸,这是CRD允许的最大长度。

然后它将页面向上扩展到该固定长度。

我做了快速测试,但没有 找到在代码中执行此操作的方法,它与此属性有关:

尝试
{
newOpts.PageContentWidth = 280000; //值在Twips中。
rptClientDoc.PrintOutputController.ModifyPrintOptions(newOpts);
}

但是它没有用,我相信我必须克隆属性以使其更改。/p>

它在我的打印机测试应用程序中的"设置打印机"按钮下。

关于SP 25的一切,您在SP 25中是否正在寻找东西?

Don

软件心理学工程师
4楼-- · 2020-09-10 21:23

嗨,帕特里克,

嗯,抱歉,我将您的请求解释为如何在WinForm查看器中而不是在鼠标功能上不使用分页符。 与页面中断无关,只是页面之间滚动。

该属性仅用于WEB查看器生成HTML代码等...对于鼠标控件而言是不同的。

几年前,我与R&D进行了讨论,我必须搜索并找出为什么/何时/是否/如何/回归。

我是小鹏鹏啊
5楼-- · 2020-09-10 21:10

嗨,唐,

你有什么消息吗?

随着时间的流逝以及多年来的研发活动,内部逻辑也发生了变化,也许如今,他们可以添加此功能....

您能否要求R&D进行增强?

Patrick

追夢秋陽
6楼-- · 2020-09-10 21:01

嗨,帕特里克,

对不起,我买了一台新笔记本电脑,不得不做大量安装,复制和更新等工作。 感谢您的提醒...

我做了另一个快速测试,它确实起作用了,如果您在任意位置单击报告,则向下箭头将滚动显示当前页面。 将焦点设置到页面后,请使用键盘上的Page Up和Page Down按钮在页面之间切换。

要在页面上设置焦点,请使用以下方法:

crystalReportViewer1.SetFocusOn(UIComponent.Page);

有关使用"焦点"的详细信息,这是我的事件列表,可能会有用。

您还可以添加"焦点事件"并执行 这样:

私有无效btrSetFocus_Click(对象发送者,EventArgs e)
 {//仅SP 13
     尝试
     {
         如果(cbFocusType.SelectedItem.ToString()==" ToolBar")
         {
             crystalReportViewer1.InitialFocus = CrystalDecisions.Windows.Forms.UIComponent.ToolBar;
             crystalReportViewer1.InitialSectionIndex = Convert.ToInt32(btrValueObjIndex.Text);
             crystalReportViewer1.InitialObjectIndex = Convert.ToInt32(btrValueSectIndex.Text);
             crystalReportViewer1.SetFocusOn(CrystalDecisions.Windows.Forms.UIComponent.ToolBar);
         }
         如果(cbFocusType.SelectedItem.ToString()==" PageAlbumTab")
         {
             crystalReportViewer1.InitialFocus = CrystalDecisions.Windows.Forms.UIComponent.PageAlbumTab;
             crystalReportViewer1.InitialSectionIndex = Convert.ToInt32(btrValueObjIndex.Text);
             crystalReportViewer1.InitialObjectIndex = Convert.ToInt32(btrValueSectIndex.Text);
             crystalReportViewer1.SetFocusOn(CrystalDecisions.Windows.Forms.UIComponent.PageAlbumTab);
         }
         如果(cbFocusType.SelectedItem.ToString()=="页面")
         {
             crystalReportViewer1.InitialFocus = CrystalDecisions.Windows.Forms.UIComponent.Page;
             crystalReportViewer1.InitialSectionIndex = Convert.ToInt32(btrValueObjIndex.Text);
             crystalReportViewer1.InitialObjectIndex = Convert.ToInt32(btrValueSectIndex.Text);
             crystalReportViewer1.SetFocusOn(CrystalDecisions.Windows.Forms.UIComponent.Page);
         }
         如果(cbFocusType.SelectedItem.ToString()==" PageObject")
         {
             crystalReportViewer1.InitialFocus = CrystalDecisions.Windows.Forms.UIComponent.PageObject;
             crystalReportViewer1.InitialSectionIndex = Convert.ToInt32(btrValueObjIndex.Text);
             crystalReportViewer1.InitialObjectIndex = Convert.ToInt32(btrValueSectIndex.Text);
             crystalReportViewer1.SetFocusOn(CrystalDecisions.Windows.Forms.UIComponent.PageObject);
         }
         如果(cbFocusType.SelectedItem.ToString()==" GroupTree")
         {
             crystalReportViewer1.InitialFocus = CrystalDecisions.Windows.Forms.UIComponent.GroupTree;
             crystalReportViewer1.InitialSectionIndex = Convert.ToInt32(btrValueObjIndex.Text);
             crystalReportViewer1.InitialObjectIndex = Convert.ToInt32(btrValueSectIndex.Text);
             crystalReportViewer1.SetFocusOn(CrystalDecisions.Windows.Forms.UIComponent.GroupTree);
         }
         如果(cbFocusType.SelectedItem.ToString()==" ParameterPanel")
         {
             crystalReportViewer1.InitialFocus = CrystalDecisions.Windows.Forms.UIComponent.ParameterPanel;
             crystalReportViewer1.InitialSectionIndex = Convert.ToInt32(btrValueObjIndex.Text);
             crystalReportViewer1.InitialObjectIndex = Convert.ToInt32(btrValueSectIndex.Text);
             crystalReportViewer1.SetFocusOn(CrystalDecisions.Windows.Forms.UIComponent.ParameterPanel);
         }
     }
     抓住(前例外)
     {
        //没有任何节或对象索引超出范围可以获取节对象计数并对其进行限制,但不会引发错误,因此不会导致错误。
         MessageBox.Show(ex.ToString());
     }
 } 

Don

悻福寶寶
7楼-- · 2020-09-10 21:15

嗨,唐,

您在上面使用箭头向下和向下翻页描述的行为在我们的ERP程序中已经可以正常工作。

我的问题与鼠标滚轮有关。

尝试重新请求研发方面的改进-看看他们怎么说:-)

如果MS Word和几乎所有其他现代程序都具有平滑的鼠标滚轮操作,则CR查看器也应该这样做-不仅是Web查看器,还有Win查看器。

预先感谢

Patrick

一周热门 更多>