2009-05-20 58 views
0

软件:Microsoft Access 2007的SP2
数据库文件版本:Access 2000中的MS Access MSChart.Graph.8不打印

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

我无法获得多个图表来打印。所有图表都以表格形式显示,它们都具有相同的属性(数据,位置等除外)。出于某种原因,它们不是打印。它们甚至不在打印预览中显示。

我认为它必须是图形本身的东西,因为它们有时会丢失所有信息。我必须在编辑模式下打开图形,并将数据源从一列更改为一行,然后再将其更改为重新绘制。 (刷新不解决它)

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

编辑#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

它似乎是打印中的数据检索/渲染问题。打印中是否有任何改变关于父母/子女关系的记录上下文?

回答

0

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

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

+0

它是如此。还有什么我可以找的? – Tanj 2009-05-21 00:22:53

+0

我现在唯一能想到的其他事情就是检查表格的显示时间“属性,然后点击细节部分栏并在那里查看。过去我不得不承认我很难过。最初工作的副本是正确的,并且一次一步地进行更改,看看有什么变化会打破它。知道这将会很长。 – Oorang 2009-05-21 02:02:23

+0

能够这样做很好,但是因为数据库方案是我做的最大部分变化将很难看到什么是破坏旧分贝是根本没有关系 – Tanj 2009-05-21 14:16:38

0

我的解决方法是解决该问题。

我用它们中的图表/图表创建了单独的报告。我刚刚复制了&将表格中的图表粘贴到报告中,并且它们工作正常。

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

0

进入类似的问题...使用图表报告工作正常,直到我有一个无效的语法问题,我没有捕捉到的报告代码。

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

我的建议是检查窗体上的代码或报告...然后编译代码并修复任何问题。希望这可以帮助。

0

我有一个报告类似的问题。我创建了一个组中的图表,为每个类别分别提供一个图表(称为分区)。这些图形在报告视图(对于每个部门)和打印预览中都可以很好地显示,但是当我打印到pdf时,只会打印第一个图形。如果我打开报告并转到打印预览,然后打印到PDF,则效果很好。如果这是你在这里遇到的问题是我的工作:

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

昏暗stDocName作为字符串 stDocName = “我的报告名”

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

(2)DoCmd.RunCommand acCmdPrint

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