新netsuite和我試圖使用案例系統像我們的物業管理公司的工作秩序系統。我希望能夠從案例記錄中創建採購訂單並將其自動關聯回來。我已經通過採購訂單中的自定義字段來鏈接案例;但是,我試圖在案例表單上創建一個創建採購訂單按鈕。Netsuite添加創建新的採購訂單按鈕的情況下形式
我明白我必須做一個桌面,然後將其附加到窗體設置中的自定義動作子選項卡,我需要幫助編寫suitescript文件。
新netsuite和我試圖使用案例系統像我們的物業管理公司的工作秩序系統。我希望能夠從案例記錄中創建採購訂單並將其自動關聯回來。我已經通過採購訂單中的自定義字段來鏈接案例;但是,我試圖在案例表單上創建一個創建採購訂單按鈕。Netsuite添加創建新的採購訂單按鈕的情況下形式
我明白我必須做一個桌面,然後將其附加到窗體設置中的自定義動作子選項卡,我需要幫助編寫suitescript文件。
要將一個按鈕添加到案例記錄,請在加載案例記錄之前設置一個用戶事件。 用戶事件是這樣的:
function BeforeLoadCase(type, form) {
try {
form.setScript('customscript_create_po');
form.addButton('custpage_custombutton', 'Create PO', 'CreatePO()');
}
catch (err) {
nlapiLogExecution('error', 'BeforeLoadCase', err);
}}
「customscript_create_po」:這是一個客戶端腳本,打開按鈕上點擊一個新的採購訂單記錄。其代碼如下:
function CreatePO() {
var url = nlapiResolveURL('record', 'purchaseorder', null, 'edit') + '?case_id=' + nlapiGetRecordId();
window.open(url, "New Purchase Order");}
現在,採購訂單(負載前)部署一個用戶事件,代碼有點像:
function BeforeLoadPO(type, form, request) {
if (type == 'create' && request.getParameter('case_id') != null) {
var caseRecord = nlapiLoadRecord('supportcase', request.getParameter('case_id'));
}}
您的腳本應該是這樣的
location.href = nlapiResolveURL('record','purchaseorder',null,'edit') + '?case_id=' + nlapiGetRecordId();
進一步你必須處理採購訂單的前負荷情況下,本查詢字符串參數,並設置它在你的自定義字段。
使用此代碼來代替:
window.location.href = nlapiResolveURL('record','purchaseorder') + '?record.custbody1=' + nlapiGetRecordId();
該代碼應該重定向到您的訂單表格,然後預先填充自定義字段爲您服務。
感謝我給它一個鏡頭 – gabe17 2013-05-12 13:19:47
嗨Saqib,謝謝你的幫助。我將它保存爲.js文件,創建了一個名爲函數pobutton的套接字,併爲案例表單中的create po按鈕添加了一個自定義操作。我已將套件添加到自定義代碼下的案例表單中。問題是,當我編輯工作訂單時,腳本會自動發生而不點擊按鈕。 2.案例編號未顯示在採購訂單中的我的案例字段中。有關更多詳細信息,這是我在與案例記錄相關的採購訂單上創建的自定義字段。該字段的ID稱爲custbody1。感謝您的任何其他意見 – gabe17 2013-05-13 15:21:31