我正在获取带有列的Excel电子表格,但是单击网格上的Excel图标时没有数据。
我在CR306030页面上放置了一个网格,该网格绑定到与该页面的CRActivity记录相关的自定义DAC的视图。我已将SkinID设置为Inquire,AllowImport = true。我的Graph扩展类中的视图如下所示:
[PXImport(typeof(CRActivity))]
public PXSelect<MyDac,
Where<MyDac.activityNoteID,
Equal<Current<CRActivity.noteID>>>> MyDacView;
我不确定我缺少什么。我正在尝试将数据导出到网格中,所以我可能离这里很远。
TIA!
答案 0 :(得分:1)
发生这种情况是因为我在FieldSelecting()事件处理程序内部进行了update()调用。由于某种原因,这导致出口停止运转。这给我带来了另一个问题,我将在另一个问题中发布,但是出口问题已解决。这是导致问题的扩展图中我的代码的样子:
protected virtual void CRActivity_UsrCustomField_FieldSelecting(PXCache cache, PXFieldSelectingEventArgs e)
{
CRActivity activity = (CRActivity) e.Row;
CRActivityExt activityExt = activity.GetExtension<CRActivityExt>();
// Some code here.
e.ReturnValue = TotalValue;
activityExt.UsrCustomField = TotalValue;
Base.Events.Update(activity);
}
为了使导出正常工作,我将其更改为此:
protected virtual void CRActivity_UsrCustomField_FieldSelecting(PXCache cache, PXFieldSelectingEventArgs e)
{
CRActivity activity = (CRActivity) e.Row;
CRActivityExt activityExt = activity.GetExtension<CRActivityExt>();
// Some code here.
e.ReturnValue = TotalValue;
//activityExt.UsrCustomField = TotalValue;
//Base.Events.Update(activity);
}
答案 1 :(得分:0)
添加“导出”按钮仅是必需的。设置SkinID进行查询将为您做到这一点。
您似乎遇到了一个不常见的情况,因此我建议回退暂定的解决方案,例如添加导入功能,以防您的实现发生错误而导致与导出功能发生冲突。
下一个问题我怀疑是一种担保/权利问题,或者是明确禁止调用导出记录的调用。删除不必要的代码并替换您正在使用的DAC可以帮助揭示根本原因,因为某些特定实体可能已被安全性锁定,而其他实体则没有。
如果您熟悉Acumatica Web服务,则值得一试来测试Web服务是否可以检索网格中的记录。如果他们不能这样做,则说明存在安全/权利问题。