点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
唐,
我使用Report.PrintOptions.CopyTo方法从报表中复制.Net打印机设置与从报表中复制的运气并不好。 我只能复制打印机对话框的默认值。 更改它们后,必须有一种方法可以从对话框中获取这些值。 因此,当显示打印机对话框时,我需要更新报告以反映更改。 我正在尝试保存Report.PrinterOptions.PaperOrientation,PaperSize,PaperSource,PrinterDuplex。 当用户更改打印机对话框上的信息时,无法获得反映我的更改的值。 必须有一种方法可以做到这一点。 我所看到的都是默认值,这对我没有帮助。
谢谢
克里斯
唐,
您认为使用该方法进行打印时可以使用报告设置吗? 我正在保存这些设置,需要使用这些设置,而不是报告中保存的内容。 我认为这是最后一件事,我走出困境。 除了内存问题,我不是在忙bri
谢谢
Chris
嗨,克里斯,
在Windows 10上,我只有MS PCL 6,没有可用的打印机托盘。
您正在使用什么操作系统?
按照我建议的方式使用测试应用程序,我选择了我们在网络上设置的HP Universal驱动程序,它使用了HP Universal驱动程序:
我选择了纸盘5:
查看报告并导出为RPT格式,然后在CRD中打开该报告,然后看到纸盘5已保存:
如果要从打印机/报告中复制CR的纸张来源,为什么要使用CR的纸张来源? 您应该使用打印机的纸张来源。
尝试使用RAS复制到/从,您正在进行更改,因此您需要使用RAS。
Don
无论我做什么,唯一的纸张来源都是行不通的。 我需要纸张来源来设置报告。 现在,所有其他选项都可以使用。 打印机上的纸张来源和报告上的纸张来源甚至都不是枚举,枚举也不相同。 我需要知道如何在报告上设置纸盘(纸张来源)以匹配打印机。 谢谢
嗨,克里斯,
我仍然需要知道您使用的是什么操作系统,因为MS的通用打印机驱动程序没有可用的打印机托盘。
我建议保存,以便我们可以查看报告中保存了哪些值。
您是否尝试过使用我的测试应用程序使用的RAS的"设置打印机"例程?
您尝试过 使用RAS的CopyTo/CopyFrom API来设置值?
只是在寻找解决方法,因为如果这是一个错误,则需要花费一些时间来解决。 可能是Windows或以下集合之一中的错误:
System.Drawing.Printing.PrintDocument pDoc =新的System.Drawing.Printing.PrintDocument();
CrystalDecisions.Shared。 PrintLayoutSettings PrintLayout =新的CrystalDecisions.Shared.PrintLayoutSettings();
System.Drawing.Printing.PrinterSettings printerSettings =新的System.Drawing.Printing.PrinterSettings();
System.Drawing。 通过我确实看到更改/设置纸盘始终默认为默认值,或者可能是列表中的第一个纸盘。
/p>
唐
这是问题所在。 所有HP打印机和新的通用驱动程序都有许多纸盘选项。 我有一台打印机,带有6个纸盘和一个信封纸盘,以及手动收费纸盘。 所以你们没有那么多的纸盒(枚举)这是您的列表:
PaperSource.Auto
PaperSource.Cassette
PaperSource.Envelope
PaperSourve.EnvManual
PaperSource.FormSource
PaperSource.LargeCapacity
PaperSource.LargeFmt
PaperSource.Lower
PaperSource.Manual
PaperSource.Middle
PaperSource.SmallFmt
PaperSource.Tractor
PaperSource.Upper
PrintDialog pd =新的PrintDialog();
Report.PrintOptions.CopyTo(pd.PrinterSettings,pd.PrinterSettings.DefaultPageSetting);
除纸张来源外,所有内容均适用。
纸张来源无法复制或转换,因为进纸匣与您的可用纸盘和HP的纸盘不一致。 如果他们将表单源作为打印机表单源的索引或字符串值,将更加简单。 如果必须创建样本,可以,但是可以向您保证,我无法在许多HP打印机上放置纸盘。 他们也更改了驱动程序,这导致保存纸盘分配出现问题。
谢谢
嗨克里斯,
我已经对此进行了更多的测试,现在我想我同意您的观点,但是我必须向DEV询问。
我也对此进行了搜索,发现尝试更改默认纸盘(默认为ENUM 15),您必须进入PrinterServer Collection,因此它位于.NET CR的CopyXXXX函数的核心中。 >
我首先使用默认值对此进行了验证:
如您所见,我正在选择ENUM 262并尝试进行设置,但是当鼠标悬停在PaperSource上时,它仍显示ENUM 15。
然后我将打印机属性中的默认纸盘更改为纸盘4,现在它打印到纸盘4,但是我仍然无法将其更改为所选纸盘。
我将不得不Ping DEV,看看他们是否意识到了这个问题,或者根本无法解决这个问题。
我将尝试CopyTo/From的RAS版本,看看是否可行。
Don
使用LPT1安装假打印机,并使用Microsoft通用PCL驱动程序在打印机上安装5个纸盘,您将看到我在说什么。
一周热门 更多>