2016-05-24 2 views
0

は、どのように私は、取引上のカスタムトランザクションフィールドネットスイート:私はNetSuiteので

(custbody_site_no_shipto) 

に移入んカスタム船-にアドレスフィールドでカスタム取引フィールドを移入するにはどうすればよい(例えば、受注)カスタムアドレス欄を使用して

(custrecord_site_no) 

(配送先タブで)を選択しましたか?

Custom transaction field: custbody_site_no_shipto 
(Menu: Customization > Lists, Records, & Fields > Transaction Body Fields – Display Type is Inline Text). 

Custom address field: custrecord_site_no 
(Menu: Customization > Lists, Records, & Fields > Other Custom Fields – Checked Apply To All Custom Address Forms). 
+0

「custbody_site_no_shipto」のデータタイプは何ですか?また、「出荷先」フィールドについて詳しく教えてください。そのタイプは何ですか? – TonyH

+0

カスタムフィールドは両方ともフリーフォームテキストです。それはあなたの質問に答えましたか? – InigoMontoya

+0

あなたは通常、 'custbody_site_no_shipto'定義でSourcingを使ってこの種の関係を設定します。 * Source List *を* Shipping Address *に設定し、* Source From *をあなたの 'custrecord_site_no'に設定します。残念ながら、*配送先住所*はオプションではなく、住所ではなく連絡先を指す*配送先*のみです。 – erictgrubaugh

答えて

0

通常、「ソーシングとフィルタリング」でカスタムフィールドのソースを設定します。
ただし、配送先住所は「送信元リスト」には含まれていません。
この要件を満たすには、SuiteFlowまたはSuiteScript(クライアントサイドまたはユーザーイベントスクリプト)のいずれかでオートメーション/カスタマイズを行うだけです。

あなたの要件を見て、それはあなたがサブミットユーザーイベントスクリプトを送信した後でこれを行うことしかできないようです。これは、アクセスしたい "アドレス"がサブレコードであり、そのためのすべてのAPIがクライアント側のスクリプトで使用できるわけではないためです。以下のスクリプトが動作し、ユーザーイベントスクリプトとして実装されていました

var recSO = nlapiLoadRecord('salesorder', 34826, 
     { 
      recordmode : 'dynamic' 
     });//34826 is the internal id of SO 
    var recSubAddress = recSO.viewSubrecord('shippingaddress');//Ship To field id 
    var stSiteN0 = recSubAddress.getFieldValue('custrecord_site_no'); 

    recSO.setFieldValue('custbody_site_no_shipto', stSiteN0); 
    var stRecId = nlapiSubmitRecord(recSO); 
+0

合意。 SuiteScriptを作成してワークフローで参照する方法を検討していますが、ship-toカスタムフィールドの取得方法はわかりません。 – InigoMontoya

+0

要件の正確な使用例を教えていただけますか?私はあなたが必要とするものを正確に得ることができるなら、あなたを助けるかもしれません。 –

+0

受注のようなトランザクションを作成するときに、ユーザーは出荷先アドレスを選択します。選択した出荷先住所のカスタム値(元の質問に記載されている項目名)をカスタム取引項目に入力したいとします。私はすでにカスタムトランザクションフィールドを画面に追加しました(ただし、まだ入力する方法はわかりません)。 – InigoMontoya

0

:私は、以下の例があります。

function userEventBeforeSubmit(type) { 
var shipadd = nlapiGetFieldValue('shipaddresslist'); 
var customer = nlapiGetFieldValue('entity'); 

var record = nlapiLoadRecord('customer', customer,{recordmode: 'dynamic'}); 
var linenum = record.findLineItemValue('addressbook', 'internalid', shipadd); 


record.selectLineItem('addressbook', linenum); 
var subrecord = record.viewCurrentLineItemSubrecord('addressbook', 'addressbookaddress'); 
var customfield1 = subrecord.getFieldValue('custrecord_site_no'); 
nlapiSetFieldValue('custbody_site_no_shipto', customfield1); 
} 
関連する問題