2017-03-22 46 views
0

當我保存一個Product對象時,我想通過工作流功能在特定的銷售訂單上執行/觸發save()。Save SaleOrder programmaticaly

我試圖用標準的保存功能,但我所有的產品都在銷售訂單中刪除:

$moduleName = 'SalesOrder'; 
$recordId = $salesOrderId; 
$recordModel= Vtiger_Record_Model::getInstanceById($recordId,$moduleName); 
$recordModel->set('mode', 'edit'); 
$recordModel->save(); 

有沒有辦法來programmaticaly執行保存SalesOrder對象?

感謝

傑里米

回答

0

您必須手動應用插入查詢,保存後的事件觸發,並要做到這一點首先,你必須得到在陣列前面的產品線項目的數據,然後保存SalesOrder的事件之後,申請插入逐個查詢數組。 vtiger也是這樣做的。

+0

好的,但我的願望是避免重新計算總金額(包括稅收,折扣等..)手動和使用現有的功能。 所以我找到了vtiger API的解決方案,下面是我的代碼: 'include_once'include/Webservices/Retrieve.php'; include_once'include/Webservices/Update.php'; $ wsid = vtws_getWebserviceEntityId('SalesOrder',$ salesOrderId); $ data = vtws_retrieve($ wsid,$ current_user); $ data [「productid」] = $ entityData-> getId(); vtws_update($ data,$ current_user);' –

+0

我認爲它同樣認爲你先獲取數據,然後將其傳遞給Update函數。只是你已經使用網絡服務。涼 –