我对水晶报表版本有疑问。

2020-09-23 05:12发布

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

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


我使用Crystal Report 9版本创建了许多文件。
并将VB6更改为C#.NET + WPF的程序。
问题是..

1。 在版本9文件中创建->使用Crystal Reports for .Net打印。
2。 在版本9中创建的文件->使用Crystal Report 2013打开文件并保存。 ->使用Crystal Reports for .Net打印。
3。 将所有文件重新创建到Crystal Report 2013,并使用Crystal Reports for .Net打印。

我是否需要了解某些事情或打印方面可能存在问题?

对于使用Google翻译的尴尬部分感到抱歉。

谢谢。

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

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


我使用Crystal Report 9版本创建了许多文件。
并将VB6更改为C#.NET + WPF的程序。
问题是..

1。 在版本9文件中创建->使用Crystal Reports for .Net打印。
2。 在版本9中创建的文件->使用Crystal Report 2013打开文件并保存。 ->使用Crystal Reports for .Net打印。
3。 将所有文件重新创建到Crystal Report 2013,并使用Crystal Reports for .Net打印。

我是否需要了解某些事情或打印方面可能存在问题?

对于使用Google翻译的尴尬部分感到抱歉。

谢谢。

付费偷看设置
发送
6条回答
一只江湖小虾
1楼 · 2020-09-23 06:18.采纳回答

我这样做是为了检查版本,还有其他方法可以确定是否安装了另一个版本。

公共frmMain()
 {
//
//Windows Form Designer支持所需
//
 InitializeComponent();

//PerformanceCounter pcPrivateBytes = new PerformanceCounter();
//PerformanceCounter pcHandles = new PerformanceCounter();
//PerformanceCounter pcThreads = new PerformanceCounter();

//pcThreads.CategoryName ="线程";
//pcThreads.InstanceLifetime = PerformanceCounterInstanceLifetime.Process;
//pcThreads.MachineName =名称;
//pcThreads.InstanceName = Application.ProductName;
//pcHandles.CategoryName =" Handles";
//pcHandles.InstanceLifetime = PerformanceCounterInstanceLifetime.Process;
//pcHandles.MachineName =名称;
//pcHandles.InstanceName = Application.ProductName;
//pcPrivateBytes.CategoryName =" pcPrivateBytesName";
//pcPrivateBytes.InstanceLifetime = PerformanceCounterInstanceLifetime.Process;
//pcPrivateBytes.MachineName =名称;
//pcPrivateBytes.InstanceName = Application.ProductName;


//pcThreads.CounterName ="线程数";
//pcHandles.CounterName ="句柄计数";
//pcPrivateBytes.CounterName ="私人字节";

//tsslThread.Text = string.Format(" Threads:{0}",pcThreads.NextValue()。ToString());
//tsslHandles.Text = string.Format(" Handles:{0}",pcHandles.NextValue()。ToString());

////将返回的专用字节除以我们将识别的内容。
//tsslPrivateBytes.Text = string.Format(" Private Bytes:{0}",(pcPrivateBytes.NextValue()/1000).ToString());

//SP 17-SAP NOTE 2321691
//System.Drawing.Drawing2D.InterpolationMode CRInterpolMode =新的System.Drawing.Drawing2D.InterpolationMode();
//CRInterpolMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;

//crystalReportViewer1.InterpolationMode = CRInterpolMode;

 LstInterpolationMode.Enabled = true;
 数组CRinterpolationMode = Enum.GetValues(typeof(System.Drawing.Drawing2D.InterpolationMode));;
 foreach(CRinterpolationMode中的对象obj)
 {
    //CRInterpolMode.GetTypeCode(CRinterpolationMode);
     LstInterpolationMode.Items.Add(obj);
 }
 LstInterpolationMode.SelectedItem = System.Drawing.Drawing2D.InterpolationMode.NearestNeighbor;

 如果(System.Globalization.RegionInfo.CurrentRegion.IsMetric)
 {
     isMetric = 567;
     isMetricTwips = 0.0017639; //厘米
 }
 其他
 {
     isMetric = 1440;
     isMetricTwips = 1440;
 }

 数组valArray = Enum.GetValues(typeof(CrystalDecisions.ReportAppServer.CommonControls.CeLocale));
 foreach(valArray中的对象obj)
 {
     lstCeLocale.Items.Add(obj);
 }

 数组valArray1 = Enum.GetValues(typeof(CrReportExportFormatEnum));

 foreach(valArray1中的对象obj)
 {
     lstExportFormatType.Items.Add(obj);
 }

 数组valFocusArray1 = Enum.GetValues(typeof(CrReportExportFormatEnum));
 foreach(valArray1中的对象obj)
 {
     lstExportFormatType.Items.Add(obj);
 }

 foreach(在AppDomain.CurrentDomain.GetAssemblies()中组装MyVerison)
 {
     如果(MyVerison.FullName.Substring(0,38)==" CrystalDecisions.CrystalReports.Engine")
     {
        //文件:C:\ Windows \ assembly \ GAC_MSIL \ CrystalDecisions.CrystalReports.Engine \ 13.0.2000.0__692fbea5521e1304 \ CrystalDecisions.CrystalReports.Engine.dll
        //InternalName:Crystal Reports
        //OriginalFilename:
        //FileVersion:13.0.9.1312
        //FileDescription:Crystal Reports
        //产品:SBOP Crystal Reports
        //产品版本:13.0.9.1312
        //调试:False
        //已修补:错误
        //PreRelease:否
        //PrivateBuild:错误
        //SpecialBuild:False
        //语言:英语(美国)

         System.Diagnostics.FileVersionInfo fileVersionInfo = System.Diagnostics.FileVersionInfo.GetVersionInfo(MyVerison.Location);
         txtRuntimeVersion.Text + = fileVersionInfo.FileVersion.ToString();
        //检查是否可以加载CrsytalDecisions.Enterprise dll(除Cortez之外的所有内容-托管报告)
         如果(fileVersionInfo.FileVersion.Substring(0,2)==" 13")
         {
             btnRasOpen.Enabled = false;
         }
         CRVer = fileVersionInfo.FileVersion.Substring(0,2);
        //返回;

        //检查调试模式
         var assembly = Assembly.LoadFrom(@" C:\ Windows \ assembly \ GAC_MSIL \ CrystalDecisions.ReportAppServer.ClientDoc \ 13.0.3500.0__692fbea5521e1304 \ CrystalDecisions.ReportAppServer.ClientDoc.dll");
         object [] attribs = assembly.GetCustomAttributes(typeof(DebuggableAttribute),false);

        //如果未找到" DebuggableAttribute",则它肯定是优化的版本
         如果(attribs.Length> 0)
         {
            //仅仅因为找到了'DebuggableAttribute'并不一定意味着
            //这是一个DEBUG构建; 我们必须检查" JIT优化"标志
            //即可以检查"生成PDB",但启用JIT优化
             DebuggableAttribute debuggableAttribute = attribs [0]作为DebuggableAttribute;
             如果(debuggableAttribute!= null)
             {
                 bool HasDebuggableAttribute = true;
                 var IsJITOptimized =!debuggableAttribute.IsJITOptimizerDisabled;
                 var BuildType = debuggableAttribute.IsJITOptimizerDisabled吗?  " Debug":"发布";

                //检查调试输出"完整"还是"仅pdb"
                 var DebugOutput =(debuggableAttribute.DebuggingFlags&
                                 DebuggableAttribute.DebuggingModes.Default)!=
                                 DebuggableAttribute.DebuggingModes.None
                                 ?  " Full":"仅pdb";
             }
         }
         其他
         {
             var IsJITOptimized = true;
             var BuildType ="发布";
         }
     }
 }

 唐
 
三十六小时_GS
2楼-- · 2020-09-23 06:13

哇!
谢谢〜!!! ^^

Aaron 3364
3楼-- · 2020-09-23 05:57

嗨,

转到此处获取SP 22:

https: //wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports%2C+Developer+for+Visual+Studio+Downloads

该页面上有一个用于打印的测试应用程序:

在.NET中打印Crystal报表

这应该对您有用,并回答所有问题

Don

路亽曱_Ryan
4楼-- · 2020-09-23 05:57

我现在正在使用SP20。 (VS2017 C#+ WPF)
如果用SP22替换,是否有什么要检查已部署的程序?
我使用installshield和CRforVS_mergemodules_13_0_20.zip
创建了一个安装文件,并且该文件已经安装在许多用户计算机上 。

对不起,我的英语不好。.
我用过google翻译。

追夢秋陽
5楼-- · 2020-09-23 06:07

无需转换rpt文件-它们应按原样运行 在新对象模型下。

当涉及参数的默认值时,可能会出现一个小问题。 在Crystal 9中,默认值假定为值列表中的第1个。 在更高版本中,有一个单独的默认值属性。 因此,在运行包含参数值列表的Crystal 9报表时,用户将获得空白的默认值。

哎,真难
6楼-- · 2020-09-23 06:13

感谢您的答复。

一周热门 更多>