MS Access MSChart.Graph.8无法打印

时间:2009-05-20 14:15:29

标签: ms-access printing charts

  

软件:Microsoft Access 2007 SP2
  数据库文件版本:Access 2000

我有一个我从前一名员工继承的访问程序。它使用报表形式,因为我没有太多访问经验,所以我继续这样做。我为另一个项目创建了一个程序副本并对其进行了修改以适应。

我无法获得多个图表进行打印。所有图表都显示在表单视图中,它们都具有相同的属性(除了数据,位置等)。由于某些原因,它们不是打印。它们甚至没有出现在打印预览中。

我认为它必须与图表本身有关,因为它们有时会丢失所有信息。我必须在编辑模式下打开图形并将数据源从列更改为行再返回,以便重新绘制。 (刷新无法修复)

所以现在我甚至都不知道在哪里看,所以欢迎这些想法。

编辑#1

链接到未绑定表单似乎存在问题。

  

子表单字段链接器:   无法在未绑定的表单之间建立链接。

主表单的查询是

SELECT tTest.ixTest, tMotorTypes.ixMotorType, tMotorTypes.asMotorType, tMotorTypes.fDeprecated, tTestType.asTest, tTest.asSerialNum, tTest.asOrderNum, tTest.asFrameNum, tTest.asRotorNum, tTest.asOperator, tTest.iStation, tTest.dtTestDate, tTest.ixTestType
FROM tMotorTypes 
INNER JOIN (tTestType 
  INNER JOIN tTest ON tTestType.ixTestType=tTest.ixTestType) 
ON tMotorTypes.ixMotorType=tTest.ixMotorType;

图表的查询是:

SELECT qGraphRSTTemperatures.Frequency, qGraphRSTTemperatures.[Drive End], qGraphRSTTemperatures.[Non Drive End], qGraphRSTTemperatures.[Air In], qGraphRSTTemperatures.Core 
FROM qGraphRSTTemperatures 
ORDER BY qGraphRSTTemperatures.ixTemperature;

查询qGraphRSTTemperatures:

SELECT tElectricalData.dblFrequency AS Frequency, tTemperatures.dblDrvEnd AS [Drive End], tTemperatures.dblNonDrvEnd AS [Non Drive End], tTemperatures.dblAirIn AS [Air In], tTemperatures.dblCore AS Core, tSubTest.ixTest, tTemperatures.ixTemperature
FROM (tSubTest INNER JOIN tElectricalData ON tSubTest.ixSubTest = tElectricalData.ixSubTest) 
  LEFT JOIN tTemperatures ON tElectricalData.ixElectrical = tTemperatures.ixElectrical
WHERE (((tSubTest.ixSubTestType)=5))
ORDER BY tSubTest.ixTest, tTemperatures.ixTemperature;

那么为什么如此,在表单视图中它显示链接时带有正确数据的图形:

  

儿童字段:ixTest
  主场:ixTest

但不会打印图表。

如果删除链接,图表将会打印,但之后我会获得图表查询中的所有数据,因为它不受ixTest的限制。

编辑#2

这似乎是打印中的数据检索/渲染问题。打印中是否存在更改父/子关系记录上下文的内容?

4 个答案:

答案 0 :(得分:0)

遇到类似的问题...带有图表的报告工作正常,直到我的报告代码出现无效的语法问题,我没有抓到。

显然报告的代码无法正确编译,因此它没有正确链接到图表和子报告,即使手动输入链接字段,我也会得到相同的错误。

我的建议是检查表单或报告上的代码......然后编译代码并修复任何问题。希望这会有所帮助。

答案 1 :(得分:0)

检查控件的“显示时间”属性并确保将其设置为“始终”(如果通过代码执行,则“始终为0”)。

要查找的其他一些内容将是“自动激活”属性。我相信它默认设置为“双击”。

答案 2 :(得分:0)

我的报告也有类似的问题。我创建了一个组中的图形,为每个类别(比如分区)提供了一个单独的图表。图表在报告视图(每个分区)和打印预览中都显示正常,但是当我打印到pdf时,只打印第一个图形。如果我打开报告并转到打印预览,然后打印到PDF,它的效果很好。如果这是你遇到的问题,那就是我的工作:

我使用VBA按顺序解决问题。当在我的主表单上单击按钮时,会发生以下事件(1)在打印预览中打开报表(隐藏),(2)打开打印对话框,在创建PDF后(3)报表关闭。

Dim stDocName As String     stDocName ="我的报告名称"

(1)DoCmd.OpenReport stDocName,acViewPreview ,,, acHidden

(2)DoCmd.RunCommand acCmdPrint

(3)DoCmd.Close acReport,"我的报告名称"

答案 3 :(得分:0)

我解决问题的解决方案。

我创建了单独的报告,其中包含图表/图表。我只是复制了&将表格中的图表粘贴到报告中,然后就可以了。

我不想这样做,因为它比以前使用了几张纸。我对这个解决方案也不满意,因为问题仍然存在。