メインプログラムとコンポーネント

プログラム > メインプログラム

コンポーネント > コンポーネントリポジトリ

メインプログラムは、[コール]処理コマンドでは実行できないので、コンポーネントの一部として出力することはできません。

プログラム、テーブル、イベントなど、別のコンポーネントのオブジェクトを使用する場合は、まずそのオブジェクトが定義されているプロジェクトのメインプログラムが実行されます。つまり、最初に別のMagicコンポーネントのオブジェクトを使用する時には、そのメインプログラムの[タスク前]が実行され、その変数が初期化されます。

ただし、コンポーネントをすぐに使用する場合(即時有効=Yes)、つまり、 コンポーネントを実際に使用する時ではなく、プロジェクトを開いた時にコンポーネントを読み込む場合は例外です。このようなコンポーネントの場合は、読み込まれるとすぐにコンポーネントのメインプログラムが実行されます。

実行タスク用スタックは、コンポーネントのメインプログラムの実行による影響を受けません。このコンポーネントのプログラムは、メインプログラムではなく、親プログラムによって呼び出されます。 コンポーネントのメインプログラムは、プロジェクトのメインプログラムの直後、その他の全てのプログラムの前に実行タスク用スタックに挿入されます。

メインプログラムの[タスク後]が実行される前にプロジェクトを終了すると、[タスク後]は、[タスク前]の実行と逆の順序で実行されます。