2016-08-12 5 views
1

SCNにクロスポスト:チェックカスタムコード:(ATC FUNCTIONAL_DB)

私たちのコードベース全体で機能的な正当性チェックを実行していますが、私は信じているいくつかのオブジェクトは、機能的にピックアップされていない間違っています:

私は完全なキーを使用していない次のコードを、持っている、と声明によって何の秩序を持っていません。しかし、それはチェック合格:なしSELECT/OPENカーソルの結果について

検索、問題文を ORDER BY

。 ATCに関する既知の問題はありますか、または下記のコードは機能的に正しいと考えられますか?

select frgco from zmm_rel_codes up to 1 rows 
    into lv_frgco 
    where ekorg = lv_ekorg 
     and bsart = lv_bsart 
     and knttp = lv_knttp 
     and zcap = lv_capex 
     and zlimit ge lv_gnetw. 
endselect. 

enter image description here

システムの詳細:NetweaverのハナDB上で実行されている7.4 SP 8。

+1

*チェックの対象は、*結果セット*を使用する場合にのみ当てはまりますデータの上記のコードに関連する別のチェックがありますか? – Esti

答えて

1

あなたの例では、1行を選択することは "select single"に似ていると思います。 選択結果は表ではなく、単一の項目であるため、問題とはみなされません。

は、しかし、私は標準が良く機能していないとして、次の問題に対処するためにチェックするカスタムコードインスペクタを構築する必要がありました:

  1. を選択し、「結合」または「すべてのエントリの」文 使用「SORTを使用しています"キー・フィールドの選択の直後に表示されます。
  2. 「すべてのエントリを」

2.1を「結合」またはなしを選択します。テーブルのキーフィールドはすべて結果に含まれます(たとえば、select *が使用されます) "ORDER BY PRIMARY KEY"ステートメントを使用します。

2.2。選択結果にはテーブルキーフィールドの一部のみが表示されます "ORDER BY" +ステートメントを使用

+0

あなたの答えDenisに感謝します。そうですね、私はSAPから同様の反応を示しました。彼らがそれをチェックすれば、あまりにも多くの誤検知を投げ捨てるリスクがあると述べています。 この問題の後で膨大な量のコードをQAしなければならなかったことに私は同意します。文字通り、選択がこのように行われた100のケースのうち2つでは、実際には問題でした。興味のあるもの: – Esti

+0

どのようにカスタムチェックをしましたか?コードインスペクタクラスを拡張しましたか、またはREGEXチェックを使用しましたか? – Esti

+1

こんにちはエスティ、ここでは、あなたが望む何かのための新しいカスタムチェックを作成するのに役立つ記事です:) https://blogs.sap.com/2006/11/02/code-inspector-how-to-create- a-new-check / – Denis

関連する問題