2015-04-08 50 views
0

有人可以幫助我使用此函數nlapiSetFieldMandatory(fieldname,bool)。我嘗試使用此功能將字段從強制更改爲非強制。但它不起作用。我的朋友告訴我。該操作在調試器中工作,也適用於自定義字段。但是,由於用於更改的字段是系統字段,因此會有內部警衛呼叫阻止更改。當您在調試器中時,它被視爲「內部」。有人能幫我解釋嗎?感謝幫助。順便使用javascripts客戶端腳本。謝謝如何在netsuite中使用nlapiSetFieldMandatory(fieldname,bool)

+0

我通過閱讀nlapiSetFieldMandatory函數()的代碼解決了這個問題。當你在控制檯上運行代碼時,你會得到錯誤。我跟蹤這個函數的錯誤並覆蓋函數。 – user3627301

回答

0

這是一個沒有記錄的方法,所以我不確定它是否被NetSuite正式支持。許多Field API方法不適用於客戶端,因爲它們操作的nlobjField對象是假定爲只讀。而不是在客戶端腳本中執行此操作,請嘗試使用用戶事件腳本。除了使用nlapiSetFieldMandatory的,使用nlapiGetField('yourfieldid').setMandatory(true)

如果該字段應該始終是強制性的,而不是一個腳本,你可以簡單地自定義表單,讓您的自定義窗體中的首選之一的所有角色。

+0

謝謝你的回覆。但是我的老闆不允許我創建用戶活動。只有客戶端腳本 – user3627301

-1

如果它是一個標準字段,那麼我會建議使用工作流程。 Worlfow可以在字段編輯中將字段設置爲強制或非強制,這在客戶端腳本中無法完成,因爲nlobjField是隻讀的。

+0

您是否說我的客戶端腳本中不可能將該字段從強制變爲非強制?或者除了使用工作流程外,您還有其他方法嗎? – user3627301

+0

使用客戶端腳本不可能使用客戶端腳本,只要您將該字段設置爲自定義表格/標準表單上的強制/非強制字段,就可以使用客戶端腳本。 – vVinceth

+0

您可能想要了解「設置字段強制性」工作流操作 – vVinceth

相關問題