ディスカッション
スイート全体に組み込まれたAI機能は、データをより迅速に分析し、より優れた意思決定を促進する独自の考察を生成できるようにすることで、生産性を向上させ、リーダーに利便性をもたらします。オラクルのAI機能がどのように役立つかについては、これらのオンデマンド・ウェビナーをご覧ください。
AIを用いた自動化で請求書処理を合理化
AIを用いた考察を使用して、計画と予測を迅速化
AIを用いた自動化で請求書処理を合理化
AIを用いた考察を使用して、計画と予測を迅速化
NetSuiteの保存検索やレポートをマスターするための究極のガイドである分析センターを使用して、データの力を最大限に活用しましょう。複雑さを単純化し、組織の真の可能性を解き放ちます。今すぐ分析センターに参加して、新たな高みを目指しましょう!
NetSuite Release 2025.1リリース・ノートは、こちらからダウンロードできます。
SuiteWorld 2025年10月6日~9日 アジェンダビルダーが公開されました!
SuiteWorldまであと41日となりました。以下の最新情報をご確認ください。
アジェンダビルダー公開
SuiteWorld On Airの登録受付開始
新しいNetSuite Prompt Studioコンテスト
その他の最新情報も!
詳細はこのスレッドでご確認ください!
SuiteWorldまであと41日となりました。以下の最新情報をご確認ください。
アジェンダビルダー公開
SuiteWorld On Airの登録受付開始
新しいNetSuite Prompt Studioコンテスト
その他の最新情報も!
詳細はこのスレッドでご確認ください!
APIの戻り値を演算に参照する時、結果が誤る
適用
製品: NetSuite 2023.1
シナリオ
APIの戻り値を演算に参照する時、結果が誤ります。
nlapiGetFieldValueとかnlapiGetCurrentLineItemValue等のSuiteScript APIの戻り値の種類は文字列です。それぞれのAPIの戻り値は演算にて直接に使用できるが、結果は誤ることもあります。以下のサンプルコードを参照します。
var field1 = nlapiGetCurrentLineItemValue('item', 'custcol1'); var field2 = nlapiGetCurrentLineItemValue('item', 'custcol2'); var field3 = nlapiGetCurrentLineItemValue('item', 'custcol3'); var field4 = nlapiGetCurrentLineItemValue('item', 'custcol4'); var field5 = nlapiGetCurrentLineItemValue('item', 'custcol5'); //field1 = 3, field2 = 1, field3 = 2, field4 = 1, field5 = 1 var UnitWeight = nlapiGetCurrentLineItemValue('item', 'custcol_unit_weight'); var GalvRate = nlapiGetCurrentLineItemValue('item', 'custcol_galv_rate'); var ZincLevyRate = nlapiGetCurrentLineItemValue('item', 'custcol_zinc_levy_rate'); var PackingCost = nlapiGetCurrentLineItemValue('item', 'custcol_packing_cost'); var LidsCost = nlapiGetCurrentLineItemValue('item', 'custcol_lids_cost'); var answer = (field1*field2)+(field1*field3)+(field4)+(field5);
サンプルの値:
結果の実績値:911
結果の期待値:11
解決策
掛け算によって、field1, field2, field3は数字に変換されるため、演算結果は9で正しくなります。然し、field4とfield5は文字列のままとなります。ネイティブJavaScriptに従って、「数字 + 文字列 = 文字列」になります。そのため、field4とfield5は9として連結されます。
SuiteAnswers 10282 サブリストAPI > nlapiGetCurrentLineItemValue(type, fldnam)によると、現時点で選択されているラインの値は文字列として返して、未存在の場合は「null」を返します。
field4とfield5は1で掛け算して数字に自動変換される場合、解決できます。他のJavaScriptのメソッドのparseFloatのようを使用できますが、精度等を考慮する必要があります。以下を参照します。
var
タグ付けされた:
0