VSC の概要

VSC (ソフトウェア構成要素の検証) は、LN で開発または変更されたソフトウェア構成要素に品質チェックを実行するために使用されます。

VSC は次の作業に使用できます。

  • ソフトウェア開発が LN コーディングおよびプログラミング標準に従って行われたかどうかをチェックします。
  • ツールディレクトリ内の不整合を検索します。
  • 疑わしい構文を検索します。
  • コンパイラを通過する構文を検索します。例:
    • (ダイナミック) 関数実装
    • メッセージコードがスクリプトまたはライブラリで使用されているが、メッセージが失効しているか存在しない

VSC はマニュアルで実行できます。ソフトウェア構成要素がチェックインされるたびに自動的に VSC を開始することもできます。

LN ソフトウェア製品の開発段階では、VSC を定期的に使用することをお勧めします。このようにすると、ランタイムエラー、パフォーマンスの問題、および見つからないか失効したラベル、メッセージ、質問を早い段階で解決できます。その結果、ソフトウェアエンジニアの作業負荷が軽減されます。

ソフトウェア構成要素の検証 (VSC)
ソフトウェア構成要素の検証 (VSC)

VSC で実行される指定されたチェックに基づいて、処理する必要がある警告のリストが生成されます。警告ごとに、警告を承認するか、問題を解決するかを決定できます。警告を承認する場合、警告は 「処理予定」 リストから削除されます。問題を解決するには、ソフトウェア構成要素を編集してから、VSC を再度実行する必要があります。

エラーによっては、チェックインプロセスがブロックされることがあります。ブロックエラーが発生した場合、関係するソフトウェア構成要素のチェックインを続行するには、対応する警告を承認する必要があります。警告を承認しないか承認できない場合、構成要素をチェックインするには、問題を解決して VSC を再度実行する必要があります。

品質チェックを実行するため、VSC はソフトウェアプログラミング標準 (SPS)、ソフトウェアコーティング標準 (SCS)、およびパフォーマンスガイドラインなどの公式な LN 設計の原則に基づくさまざまな規則を適用します。VSC により適用される規則の詳細は、規則を参照してください。

注意

VSC ソフトウェアの規則は、規則データベース内の仕様に従って構築されます。これは、LN 開発部署が既存の規則と将来の規則の情報を保存するために使用するデータベースです。

VSC によりチェックされる構成要素

VSC は次のソフトウェア構成要素をチェックします。

  • メッセージ
  • 質問
  • セッション
  • ドメイン
  • テーブル
  • メニュー
  • フォーム
  • スクリプト (すべてのタイプ)
  • レポート
注意

セッション、フォーム、レポートなどのソフトウェア構成要素の検証中、VSC は対応するラベルを自動的にチェックします。

VSC は、「インクルード」 と 「ヘルプテキスト」 はチェックしません。

規則

品質チェックを実行するため、VSC は次に基づくさまざまな規則を適用します。

  • LN ソフトウェアコーディング標準 (SCS) - 各ソフトウェア構成要素タイプをコーディングする方法を定義する一連の標準。たとえば、ダイナミックセッションのコーディング標準は 「pp mmm s f xx o y cc」 です。ここで、各部分は次の内容を表しています。
    • pp - パッケージコード
    • mmm - モジュールコード
    • s - サブモジュールコード
    • f - 関数コード
    • xx - 順序番号
    • o - プロセスのタイプ
    • y - セッション順序番号。同じメインテーブルに複数のセッションが存在する場合、0 から始まるこの順序番号を使用してさまざまなセッションを定義できます。
    • cc - カスタマイズのタイプ
  • LN ソフトウェアプログラミング標準 (SPS) - エンジニアがスクリプトとライブラリを記述する方法を定義する一連の標準。これらの標準により、次のことが可能になります。
    • 優れたプログラミング方法を共有する
    • 標準のプログラミングソリューションおよびスタイルを確立する
    • 複雑さを管理する
    • わかりやすいコードを記述する (特に他の開発者にとって)
  • LN パフォーマンスガイド - LN ソフトウェアのパフォーマンスを最大限に高める一連のガイドライン
  • 実践
  • ダイナミックテスト

規則の例は次のとおりです。

  • スクリプトで呼び出されるメッセージが失効してはなりません。
  • フォームコマンドで使用される関数は、セッションの UI スクリプトに存在している必要があります。
  • DALHOOKERROR の後に dal.set.error.message() が続く必要があります。
  • UI スクリプトで呼び出されるビジネスメソッドが DAL に存在している必要があります。
  • 更新を実行する問合せには、「with retry」 句が必要です。
  • メッセージ呼出内のパラメータの数は、メッセージ記述内のパラメータの数と一致している必要があります。
  • 質問にはデフォルトの回答が必要です。
  • フォームコマンド内のセッション記述ラベルの長さは、ボタンに適合している必要があります。
  • フォーム内のフィールド特有のボタンには、バインドタイプ 「field」 が必要です。

VSC は、ソフトウェア構成要素がツールに合致するかどうかをチェックします。問題および競合ごとに、警告が生成されます。

検証コード

VSC により生成される警告は、特定の検証コードの 「下で」 ログに記録されます。

検証コードは、実行されるチェックの選択内容を識別し、チェック可能な構成要素が含まれるパッケージコンビネーションを特定します。

各検証コードは、次のものにリンクされます。

  • 1 つ以上のパッケージコンビネーション
  • 1 つ以上の検証フィルタ。これらのフィルタは、VSC により実行されるチェックを定義します。
下図の例を参照してください。
検証コードサンプル
検証コードサンプル
注意

複数のパッケージコンビネーションを同じ検証コードにリンクできます。ただし、各パッケージコンビネーションは 1 つの検証コードにのみリンクできます。

VSC 実行すると、1 つのパッケージコンビネーションの構成要素がチェックされます。ソフトウェア構成要素の検証 (tlvsc3400m000) セッションを使用してて VSC を実行するときは、まず必要な検証コードを指定してから、その検証コードにリンクされているパッケージコンビネーションを 1 つ選択する必要があります。この結果、VSC は選択された検証コードにリンクされているフィルタで定義されたチェックを使用して、選択されたパッケージコンビネーション内の構成要素をチェックします。

ソフトウェア構成要素の検証 (tlvsc3400m000) セッションを使用して VSC を実行します。検証コード B61a とパッケージコンビネーション B61asy05 を指定します。この結果、検証コード B61a (上の図を参照) に定義されたすべてのフィルタを使用して、パッケージコンビネーション B61asy05 内のソフトウェア構成要素が検証されます。

検証コードのプロパティと検証フィルタのプロパティによっては、ソフトウェアエンジニアが構成要素をチェックインをしたときに VSC を自動的に開始できます。開発プロセスのどの段階でも、エンジニアはショートカットメニューコマンドを使用して VSC をマニュアルで開始することもできます。この場合、VSC はエンジニアのパッケージコンビネーションがリンクされている検証コードの検証フィルタで定義されたチェックを使用して構成要素を検証します。

パッケージコンビネーション B61asy05 にリンクされたソフトウェアエンジニアが、ソフトウェア構成要素をチェックインします。VSC が自動的に開始されます。

パッケージコンビネーション B61asy05 は検証コード B61a にリンクされています。このため、VSC は B61a の検証フィルタで定義されたチェックを使用して構成要素をチェックします。上の図を参照してください。

検証フィルタ

各検証コードは、VSC により実行されるチェックを定義する 1 つ以上の検証フィルタにリンクされます。

通常、検証コードは 1 つの汎用検証フィルタと 1 つ以上の特定検証フィルタにリンクされています。

汎用検証フィルタ

汎用フィルタは、すべてのパッケージ内のすべてのソフトウェア構成要素を検証するために実行されるチェックを定義します。フィルタ設定に応じて、汎用フィルタでのチェックにより次の 2 つのタイプの警告が生成されることがあります。

  • 「フィルタ対象」 警告。これらの警告はすぐに処理する必要があります。これらのフィルタされた警告を解決するか、承認する必要があります。
  • 「フィルタなし」 警告。すぐに処理する必要はありません。
注意

VSC のインストール時に生成される汎用フィルタは、「フィルタ対象」 警告のみを生成します。

特定検証フィルタ

特定フィルタは、特定のパッケージモジュールまたは VRC の 「フィルタ対象」 警告の数を減らすために使用されます。各特定フィルタは汎用フィルタから派生するため、汎用フィルタとまったく同じチェックが実行されます。特定フィルタでは、各チェックにより次の警告を生成するかどうかを指定できます。

  • 「フィルタ対象」 警告。すぐに処理する必要があります。
  • 「フィルタなし」 警告。すぐに処理する必要はありません。

注意: チェックを無効にしたり、特定フィルタに別のチェックを追加することはできません。汎用フィルタに存在しないチェックを選択した場合、VSC によりこのチェックが無視されます。

VSC は、上の図に表示されている検証フィルタを使用します。この結果、次のようになります。

  • tc パッケージ内の構成要素には、「tc」 特定フィルタが使用されます。
  • tdpur モジュール内の構成要素には、「tdpur」 特定フィルタが使用されます。
  • その他

各検証フィルタには、次のプロパティが定義されます。

  • 優先度フィルタ: VSC が各種エラータイプに生成する必要がある警告のタイプ (「フィルタ対象」 または 「フィルタなし」) と、これらの警告を承認できるか、またはブロックする必要があるかを決定します。
  • 分類フィルタ: VSC がチェックの各種タイプ (「一般」 チェック、「ツールの一貫性」 チェック、「アプリケーションロジック」 チェックなど) に対して生成する必要がある警告のタイプ (「フィルタ対象」 または 「フィルタなし」) を決定します。
  • 構成要素毎タイプ: 実行する必要があるチェック。たとえば、フォームの場合、標準オプション、特定オプション、ボタン、各種フォームフィールドオプションなどでチェックを実行できます。テーブルの場合、テーブルフィールド、インデックス、参照フィールド、メッセージなどでチェックを実行できます。
注意

検証フィルタには、1 つ以上のソース解析コードを有効にできます。

ソース解析コードは、UI スクリプト、DLL、および DAL などのスクリプトでユーザ定義チェックを実行します。各ソース解析コードは、開始式、終了式、および検索式で構成される検索パターンにリンクされます。詳細は、ソース解析コードを参照してください。

警告

VSC は、検証フィルタに定義されたチェックの結果として警告を生成します。フィルタの設定に応じて、VSC により次の警告が生成されます。

  • 「フィルタ対象」 警告。これらの警告はすぐに処理する必要があります。これらのフィルタされた警告を解決するか、承認する必要があります。
  • 「フィルタなし」 警告。すぐに処理する必要はありません。
VSC により生成される警告
VSC により生成される警告

各警告には、次のようなさまざまな属性があります。

  • 検証コード
  • 構成要素タイプ
  • 構成要素、副構成要素、およびエラーが発生した行番号
  • 優先度: 高、通常、不明、低
  • 分類: 一般、ツールの一貫性、アプリケーション設計、アプリケーションロジック、標準、テキスト、パフォーマンス、統合、ランタイム、エクスポート
  • メッセージ ID とメッセージテキスト

詳細は、警告 (tlvsc3500m000) セッションのオンラインヘルプを参照してください。

次の表に、2 つのサンプル警告を示します。

構成要素タイプスクリプトレポート
パッケージtttt
モジュールadvadv
構成要素2461343001001
副構成要素group.1:init.group:ページ番号
行番号117
優先度通常不明
分類アプリケーションロジックエクスポート
メッセージ ID5003152
メッセージdb 関数は使用できなくなりました => 問合せに置き換えてくださいラベルが見つからないか、間違ったラベルが使用されています: 「ページ番号」 は 「ttgen.page」 にする必要があります

 

生成された警告は、Infor LN Studio または警告 (tlvsc3500m000) セッションを使用して処理できます。詳細については、警告を処理するにはを参照してください。

メニュー構造

VSC セッションは、LN サーバのメニューパスツール→アプリケーション開発→ユーティリティ→ソフトウェア構成要素の検証の下にあります。

セッションは、次のメニューにグループ化されています。

  • エンドユーザ: ソフトウェア構成要素を検証するセッションと、生成された警告を表示、出力、および処理するセッションが存在します。
  • 管理者: 次のサブメニューが存在します。
    • 検証コード: VSC を構成するセッションが存在します。
    • 警告: 生成された警告をコピー、移動、または削除するセッションが存在します。
    • インポート/エクスポート: VSC データを別の開発環境に転送するセッションが存在します。
    • その他: その他の管理セッションが存在します。

これらのセッションの詳細は、セッションヘルプを参照してください。

注意
  • 検証コード警告、およびインポート/エクスポートの各メニューにあるセッションは、パスワードで保護されています。これらの各セッションを選択するたびに、VSC により VSC パスワードが求められます。アプリケーション管理者は、VSC パスワードの変更 (tlvsc0291s000) セッションでこのパスワードを変更できます。
  • エンドユーザおよびその他の各メニューは、パスワードで保護されていません。