我有一种情况,我使用 force.com 网站来运行购物车。在购物车的前 5 页,我收集了诸如信用卡号、送货地址等数据。
最后一个按钮称为“下订单”。这是我想将所有内容提交到数据库并向信用卡收费的地方。所以这里是执行顺序:
1) Insert an account.
2) Charge the credit card using a call out webservice.
3) If the charge worked, create a Receipt__c object which is a slave object on the Account.
4) Create a pdf of the Receipt__c object.
5) Display the pdf in an iframe of the client's browser.
现在,如果我正在执行 DML 进程,那么顶点代码将无法调用 Web 服务。所以我不得不在两个按钮中移动这个过程。
其次,在收据是 DML 插入完全执行到数据库中之前,顶点代码无法生成 pdf。
最终结果是客户必须快速连续单击 3 个按钮才能处理所有报表。这是有问题的,因为自 1999 年以来,单击按钮就是要走的路。有没有办法在单个顶点代码执行中处理所有这些?