2つの状況に該当する場合にCASEの結果が選択されるように、既存のコードを修正しようとしています。ビジネスルールが変更されたので、以下のコードは機能していますが、不完全な状態になっています。 以下は、特定の請求書のANY明細にITMCLSCDが 'CCC-OUT'であるかどうかをテストする実際のコードのスニペットです。ルールが変更され、すべての広告申込情報に 'CCC-OUT'のITMSLSCDが必要になりました。 これで、 'CCC-OUT'が存在するか、他のITMSLSCDが存在しないかをテストする必要があります。
誰かが私を正しい方向に向けることができますか?これまでのところ、あなたは少なくとも一つのLEFT(IV.ITMCLSCD,7) = 'CCC-OUT'
をしたい値のSQLテストがありません
おかげ
SELECT DISTINCT
OH.SOPNUMBE HSOPMNBR,
OH.INVODATE INVODATE,
OH.ORIGNUMB ORIGNUM,
OH.CUSTNMBR CUSTOMER,
CASE WHEN 'CCC-OUT' IN (SELECT LEFT(IV.ITMCLSCD,7)
FROM IV00101
INNER JOIN SOP10200 OL ON OH.SOPNUMBE = OL.SOPNUMBE
WHERE OH.SOPTYPE = 3
AND OH.PSTGSTUS = 0
AND OH.VOIDSTTS = 0
AND OH.BACHNUMB <>'DO NOT POST')
THEN 'THIRD PARTY SERVICES'
ELSE 'COMPANY SERVICES'
END TRANSTYPE,
UD.USRTAB09
FROM SOP10100 OH
INNER JOIN SOP10200 OL ON OH.SOPNUMBE = OL.SOPNUMBE
INNER JOIN IV00101 IV ON OL.ITEMNMBR = IV.ITEMNMBR
INNER JOIN SOP10106 UD ON OH.SOPNUMBE = UD.SOPNUMBE
WHERE OH.SOPTYPE=3
AND OH.PSTGSTUS = 0
AND OH.VOIDSTTS = 0
AND OH.BACHNUMB <>'DO NOT POST'
コードは意味がありません。 「OH」とは何ですか? 'IV'とは何ですか? –
それはあなたが与えるすべての場合、どのように人々があなたを助けることを期待していますか?クエリは実行されません。ここでは、質問する方法を参考にしています。 https://stackoverflow.com/help/how-to-ask – Eric
不足しているコードを追加しました –