HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

No14041 の記事


■14041 / )  Re[7]: 変数を反映させたい
□投稿者/ ONnoji -(2023/11/12(Sun) 13:17:20)
    2023/11/12(Sun) 20:54:16 編集(投稿者)

    > &指定年、&指定月、をア kexで共通変数と宣言していた。
    > イ cmxで@共通変数と宣言してみた A固有変数と宣言してみた
    >      B宣言しなかった
    > いくつか試してみた結果、アとB の組み合わせで望む結果となりました。
    > 原因は14031で指摘されていましたp.s以下の事だったのでしょうか。

    cmxで

    @共通変数と宣言してみた ⇒ × 変数の上書き

    A固有変数と宣言してみた ⇒ × スコープが異なる同名の変数(共通変数が隠される)

    B宣言しなかった     ⇒ △ すでにア kexで宣言済みの共通変数をそのまま使う

    なお、@を回避するためには、14024 の
       ・・・・・・・・・・・・・・・・
     条件 ( #配列要素数( "variableName" ) = -1 ) 変数宣言 共通,文字列{ &variableName }

    が必要です。

    Bはcmx を実行する前に変数を宣言しておく必要があります。

     なので、もしも変数が宣言されていない場合にはエラーになります。
     ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

    結論としては、いずれにしても変数は宣言しなければなりませんので、

    変数の上書きを回避するために次のようにする必要があります。
    ・・・・・・・・・・・・・・・・・・・・・・・・・・・・

     〇 条件 ( #配列要素数( "variableName" ) = -1 ) 変数宣言 共通,文字列{ &variableName }

    つまり、貴殿は気付かれていないようですが、最初の回答14024 が正解だったのですが・・・(^^ゞ

    > 原因は14031で指摘されていましたp.s以下の事だったのでしょうか。

    余談ながら当方が指摘したp.s.の内容は、[A固有変数と宣言してみた]の場合に該当します。


    p.s.

    なお、回答中の variableName とは、英語風で変数名の意味なので

     条件 ( #配列要素数( "variableName" ) = -1 ) 変数宣言 共通,文字列{ &variableName }

    は、具体的には次のように

     条件 ( #配列要素数( "指定年" ) = -1 ) 変数宣言 共通,文字列{ &指定年 }

     条件 ( #配列要素数( "指定月" ) = -1 ) 変数宣言 共通,文字列{ &指定月 }

    になりますよ。



返信 [メール受信/OFF] 削除キー/


Mode/  Pass/

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -