Acumatica 我如何打开一个可编辑的、可发送的电子邮件屏幕,屏幕上有预设值?

Acumatica 我如何打开一个可编辑的、可发送的电子邮件屏幕,屏幕上有预设值?,acumatica,Acumatica,我正在尝试创建一封电子邮件,其中“收件人”和“发件人”已填写。为了创建电子邮件,我正在创建CREmailActivityMaint的一个图形实例。每当我尝试将新对象分配给CREmailActivityMaint.CurrentMessage或CREmailActivityMaint.Message对象以便设置值时,打开的页面将不可编辑,并且Send将隐藏: 此外,当我输入值时,并非所有值都显示。在此,我输入了To、From、Subject、Summary和Body,但Body和Summary没

我正在尝试创建一封电子邮件,其中“收件人”和“发件人”已填写。为了创建电子邮件,我正在创建CREmailActivityMaint的一个图形实例。每当我尝试将新对象分配给CREmailActivityMaint.CurrentMessage或CREmailActivityMaint.Message对象以便设置值时,打开的页面将不可编辑,并且Send将隐藏:

此外,当我输入值时,并非所有值都显示。在此,我输入了To、From、Subject、Summary和Body,但Body和Summary没有显示任何内容。此外,如果我试图保存,我会收到一个错误,说明摘要、收件人和主题为空:

CREmailActivityMaint图形=CreateInstance();
graph.Message.Current=graph.Message.Insert();
graph.Message.Current.MailTo=”other@test.com";
graph.Message.Current.MailCc=”another@test.com";
graph.Message.Current.MailBcc=”bcc@test.com";
graph.Message.Current.Subject=“Subject”;
graph.Message.Current.Body=“Body”;
graph.Message.Cache.IsDirty=false;
pxrirecthelper.TryRedirect(图形,pxrirecthelper.WindowMode.NewWindow);

谢谢,这很有效!您知道什么时候应该使用.Current=.Insert()vs.Current=new object()?您可以使用Insert让系统处理键字段初始化和表之间的父子关系(标识、记录号、段结束键等)。如果创建新对象,则这些字段在持久化时将保留为空,因此您必须手动填写它们,否则它将抛出一个键不能为空的错误。大多数屏幕需要为其主数据视图当前记录正确填写键,因此我建议仅在需要手动设置键的边缘情况下插入并使用新对象。好的,好建议!谢谢我以后会记住这一点。我还有一个关于.Insert()的问题。如果我创建一个对象并填充它,然后使用graph.CurrentDocument.Insert(对象),那么它仍然会自动填充必要的键吗?
    CREmailActivityMaint graph = CreateInstance<CREmailActivityMaint>();
    graph.Message.Current = graph.Message.Insert();
    graph.Message.Current.MailTo = "other@test.com";
    graph.Message.Current.MailCc = "another@test.com";
    graph.Message.Current.MailBcc = "bcc@test.com";
    graph.Message.Current.Subject = "Subject";
    graph.Message.Current.Body = "Body";
    graph.Message.Cache.IsDirty = false;
    PXRedirectHelper.TryRedirect(graph, PXRedirectHelper.WindowMode.NewWindow);