0

只是想在这里问一下,因为这让我发疯了……我想做的是,commitChanges()或者applyChanges(),跟着我的myapp.showBrowseOtherScreen()

这是我尝试这样做的方式:

var result = confirm("Send Parcel?");
if (result == true) {
    screen.ProjectFinance.SendParcel = true;
    myapp.showBrowseInvoices();
}
else {
    msls.showMessageBox("Application Not Sent", { title: "Aborted" });
    myapp.cancelChanges();
    screen.ProjectFinance.SendParcel = false;
}
};

它当前所做的是显示消息“发送包裹”,如果我单击“确定”,然后它会弹出另一个选项,因为现在 SendParcel 已设置为 true,页面上有未保存的更改...

我需要它来保存然后导航,但我不确定下一步该尝试什么,感谢您的帮助或建议

4

2 回答 2

1

在发送包裹更改之后,您可能需要在实体上调用 Save(),然后再打开下一个屏幕。:)

于 2014-09-11T08:47:47.103 回答
1

save()、saveChanges() 和 commitChanges() 都是异步的。所以它开始保存操作,然后在保存完成之前尝试离开。

myapp.commitChanges().then(function () {
    myapp.showBrowseInvoices();
}

.then 方法最多需要两个参数。两个函数,可以像上面的例子一样在行中定义,或者调用在别处定义的函数。第一个参数是操作成功后执行,第二个参数是失败后执行。

于 2014-10-01T15:34:05.730 回答