0

返されたデータの SQL ステートメントをチェックし、結果セットに基づいて列に Y/N を入力するレポートを作成しようとしています。

NVL 機能を使用しようとしましたが、この関数のポイントを完全に見逃していると思います。以下のクエリは行をまったく返さないため、NVL 関数が失敗する理由は「null 値」ではありません。私の場合はうまくいきません - COALESCE を試しましたが、埋め込まれた SELECT とダミーの「DUAL」テーブルの呼び出しについて理解できません。

「行が返されない」場合に値を提供するために使用できる方法はありますか?

SELECT
TO_CHAR(AR_WD_EVENTS.EVENT_ID)
FROM
AR_WD_EVENTS, AR_PI_SITE_BLOCKS
WHERE AR_WD_EVENTS.EVENT_BLOCK_ID = {!AR_PI_SITE_BLOCKS.SITE_ID}
AND TO_CHAR(AR_WD_EVENTS.EVENT_CONTRACT_ID) = 1555

これは QB 構文です - '6. Shutters - Event' は上記の SQL クエリの名前です。基本的には、SQL ステートメントが対応する 'Event ID' を返すようにします。'Event ID' が見つからない場合は、NULL/Zero/NA の値を指定します。以下の QBF ステートメントで使用できるように - 現状では、SQL クエリは正常に動作しますが、返す値がある場合のみです。

$QBFvalue = 'Y';

if ({%6. Shutters - Event} = 'N/A') $QBFvalue = 'N';

return $QBFvalue;

どうもありがとう

4

1 に答える 1