【问题标题】:Display picture in page from different recordset in Dynamics NAV 2009在 Dynamics NAV 2009 的不同记录集中显示页面中的图片
【发布时间】:2016-08-02 09:57:26
【问题描述】:

我想在未绑定记录的页面上显示保存为 blob 的图片。

我在Table 79 中创建了一个BLOB 类型和BitMap 子类型的字段。 然后我在Page 1 上添加了字段 TestPicture 以实际手动插入图像。它在Page 1 上正确显示(因为Page 1 绑定Table 79

但是,我也想在Page 5050上显示这张图片,所以我添加了Table 79的记录,过滤了记录并做了CALCFIELDS

OnInit():
recCompanyInfo.GET;
recCompanyInfo.CALCFIELDS("TestPicture");

我在Page 5050 上创建了一个新字段,并将SourceExpr 设置为我添加的记录变量recCompanyInfo 上的BLOB 字段TestPicture

但它不显示图片,而是显示一个灰色的文本字段。

我做错了什么?

编辑

Dynamics NAV 2009 SP1,RTC

【问题讨论】:

  • 您在哪个触发器添加了代码?可能你应该使用 OnSfterGetRecord。
  • @Mark 我试过OnInit()OnOpenPage()OnAfterGetRecord()

标签: microsoft-dynamics navision


【解决方案1】:

快速解决方案是在 OnAfterGetRecord() 触发器中的 5050 (Contact) 表中创建相同的字段,然后放入您的代码。

recCompanyInfo.GET;
recCompanyInfo.CALCFIELDS(TestPicture);
TestPicture = recCompanyInfo.TestPicture;

并在第 5050 页显示 联系表 的现场测试图片。

【讨论】:

  • 谢谢你,这有效。但是,它是否将分配的内容存储在数据库中?
  • 好的,它确实将它存储在数据库中,然后我将清除表的OnModify,OnInsert触发器。
  • 完美,分配仅在内存中显示页面中的值,但如果您在页面上进行任何更改,请保存该值。如果您不想将值保存在字段 TestPicture 中,请将此代码放入触发器 OnModifyRecord() CLEAR(TestPicture);
  • 是的,我确保在OnModifyOnInsertOnInsert仅显示BLOB
猜你喜欢
  • 2013-09-12
  • 2015-03-14
  • 1970-01-01
  • 2013-02-24
  • 1970-01-01
  • 1970-01-01
  • 2017-05-19
  • 1970-01-01
  • 2011-07-13
相关资源
最近更新 更多