2016-08-05 13 views
0

SQL式を使用して2つのカスタムフィールドを連結するNetSuiteワークフローに問題があります。問題は、いくつかの項目では、それらの項目の1つが欠落していることです。私が使用している式は、Concat(SQL)のNetSuiteフィールド数式の問題

{custitem3} || ' '|| {custitemshoewidth}

"custitem3"がフォームに存在しないときは、 "エラー:フィールド' custitem3 'が見つかりません"というエラーが表示されます。条件付きIF文とWHENを使用して試しました。私はSQLに精通していないので、それは私の構文かもしれません。しかし誰かが助言できるなら、それは大いに感謝されるでしょう。

編集:

いただきありがとうございます。私は問題を発見した。実際に呼び出されたかどうかにかかわらず存在しないフィールドを参照すると、ERRORが作成されます。だから私の回避策は、存在していてもいなくてもよいマトリックスフィールドを参照する新しいフィールドを作成することでした。

アイテムレコードに常に存在するこのフィールドを参照しても、ERRORレポートはフィールドを連結しようとしません。また、参照フィールドにエラーレポートが含まれている場合、無視することができます。このコードをYNKの提案から変更しました

CASE 
WHEN {custitem_hm_ref1} ISNUMERIC 
{custitemshoewidth}||" "||{custitem_hm_ref1} 
ELSE {custitemshoewidth} 
END 

しかし、これは無効な式を返しています。私はコードを間違って調整しましたか?これはあなたを助ける

CASE 
WHEN {custitem3} IS NULL THEN 
    {custitemshoewidth} 
ELSE 
    {custitem3}||' '||{custitemshoewidth} 
END 

希望:

+0

いくつかのことを見直してテストした後。ここで大きな問題は、このフォームに存在しない "custiitem3"フィールドです。誰かがそれを回避するための提案を持っていますか? – HamBeast

答えて

0

あなたは、CASE関数の代わりに、ここでIF条件...このよう

を使用することができます。

ありがとうございました。

+1

ありがとう@YNK CASE WHENステートメントでワークフローを実行しようとしました。それは同じエラーを蹴ったエラー:フィールド 'custitem3'が見つかりません。 私はそれがそのフォーム上に存在しないフィールド(custitem3はマトリックスフィールドですが、このエラーはマトリックスなしのアイテムにあります)を呼び出すことと関係していると思います。マトリックス。そのフィールドにエラーがある場合は、表示されているコードがエラーをプルしないで、エラー・テキストだけを出力します。 ケース WHEN {custitemX} ISNUMERIC {custitem3} || ' '|| {custitemshoewidth} ELSE {custitemshoewidth} END – HamBeast

0

これは、NVL関数のいずれかの良い使用例です。 NULL値を処理するために使用できる関数は、NVLNVL2です。 「SQL式」と題しNSのヘルプドキュメントを参照して、使用可能なすべてのSQL関数の詳細については

NVL2({custitem3}, {custitem3}||' '||{custitemshoewidth}, {custitemshoewidth})

:何をやっている達成するためには、私のような式を使用する場合があります。