0

因此,我在片段页面(用于编辑数据库条目)上有一个状态下拉列表,当条目从“待定”更改为“准备构建”时,我想发送电子邮件通知。

我正在使用以下代码:

var widgets = widget.parent.descendants;
    var to = 'notifications@xxx.com';
    var subject = 'New System Order: ' + widgets.ProjectName.value;
    var msg = "A new order for [ " + widgets.ProjectName.value + " ] has been created for [ " + widgets.UsersPosition.value + " ]";
    sendMessage(to, subject, msg);

您可以看到我也将项目名称/用户位置拉到电子邮件的主题/正文中。这些是该片段页面上的文本框,显示条目中的信息。

当下拉菜单和文本框都在同一个面板中时,所有这些都可以很好地工作并且完全符合预期。但是,当我将它们分成单独的面板(为了美观)时,系统找不到widgets.ProjectName.valuewidgets.UsersPosition.value

我假设我只需要调整var widgets = widget.parent.descendants; 线,但我不知道是什么。

任何帮助将不胜感激。谢谢你。

4

2 回答 2

1

所以看起来我只需要更改widget.parent.descendants; widget.root.descendants;

于 2017-04-21T19:46:27.067 回答
0

我建议您改用模型事件。每次修改记录时,应用制作工具都会触发“onSave”事件。

转到模型编辑器中的“事件”选项卡,然后添加如下内容:

if (oldRecord.State == "Pending" && record.State == 'Ready to Build') {
  sendEmail_();
}

您可以在此处了解有关模型事件的更多信息。

问候,

朱利安.-

于 2017-04-23T18:10:50.003 回答