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

■14436 / ResNo.10)  Re[5]: 変数値の取得方法について
  
□投稿者/ ONnoji -(2024/06/13(Thu) 22:27:21)
    2024/06/14(Fri) 00:44:22 編集(投稿者)

    >>[トレース出力]コマンドと[トレース出力]ウィンドウは強力なデバッグツールですね。
    >>でも、使わない人が圧倒的に多いんですよね。アハハハ。
    > インターネットを見ていると
    > 確認 #STR(変数)
    > で 変数の値を調べている人もいました。

    DOS桐の時から、ちょっと確認したい時に[確認]コマンドを挿入する方法がよく使われていますよ。

    Win桐ならば[メッセージボックス]コマンドになりますね。

    > この方法でも調べられるのでしょうけど、トレース出力 を知った今なら
    > 断然 トレース出力 が便利だと思います(^^ゞ

    [トレース出力]ウィンドウは、エクセルのVBAの[イミディエイトウィンドウ]みたいなものですね。

    全く同じではなく、あくまでもみたいなものです。(^^ゞ

    [トレース出力]コマンドは、VBAの Debug.Print に相当しますね。


    >>そうそう、「目からウロコのデータベース桐プログラミング入門」の続編を公開しました。
    >
    > 気付いていませんでした!
    > 早速読ませて頂きます(^^♪

    「のほか掲示板」で告知していますので、

     All 「目からウロコの・・・パート2」を公開.. / ONnoji (24/06/11(Tue) 16:31) #1445 1718091910.jpg/44KB

    読後の感想をフィードバックしていただけると嬉しいです。(^^ゞ


    p.s.

    次の過去ログが何かのお役に立つかもしれませんので、ご一読をお勧めします。

    こちら
     ↓
    過去ログ89
    http://tayu.o0o0.jp/bbs/kiri/cbbs.cgi?mode=al2&namber=13213&no=0&KLOG=89

    ■13213 / inTopicNo.1)  質問3つ
    □投稿者/ MEVIUS -(2022/02/17(Thu) 22:01:52)
    先日はお世話になりました。桐(Ver9)を勉強中の者です。
    初歩的な質問かもしれませんが、3つ相談させて下さい。

    1.ファイルパレットから何れかのファイルの定義に入る際、マウスを使わず
    キーコンビネーション(Ctrl+何かみたいな)で入る事は可能でしょうか。

    2.桐の親ウィンドウの配下にあるアクティブな子ウィンドウを閉じるための
    キーコンビネーションがあれば教えて下さい。


引用返信 [メール受信/OFF] 削除キー/
■14437 / ResNo.11)  Re[2]: 変数値の取得方法について
□投稿者/ ジェダイの桐 -(2024/06/14(Fri) 16:16:11)
    ONnojiさん


    こんにちは!
    更なる改良有難うございましたm(__)m


    感想 と 疑問です。

    ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇

    感想1、


    >   &indexList = &indexList + #cond( &indexList <> #u, &comma ) + #str( 1 + #日数( &mDate[1], [日付] ) )

    >  トレース出力 _&indexList

    この時までは、&commma を付ける目的は、トレースした時に見やすくする為だなと思ったんです。(実際見やすいので、確認しやすいです(^^))


    まさか


    >&dimNum = #num( #対応文字列( &indexList, &i ) )


    #対応文字列に使用する為とは考えもつきませんでした!
    実際に気づけた理由は別にあります。


    プログラムを書き写しました。( コピペではなく、手打ちです! )


    まず、
    >&dimNum = #num( #対応文字列( &indexList, &i ) )

    の #対応文字列( &indexList, &i ) の意味が分かりませんでした。
    何が分からないかと言うと、


    #対応文字列は、文字列の並びから n番目の文字を取り出す関数です。


    #対応文字列( 1, 1 )
    #対応文字列( 8, 2 )
    #対応文字列( 14, 3 )

           ・
           ・
           ・

    プログラムを見ただけの時は何故かこの様に理解してしまっていました。


    >トレース出力 _&loop, "  ", _&i, "  ", _&dimNum



    トレース出力 _&loop, "  ", _&i, "  ", _&indexList, "  ", _&dimNum


    へ _&indexList を追加してトレース出力しました。


    結果が


        :&loop : 11  &i : 1  &indexList : 1,8,14,15,21,22,28,29,35,36,42  &dimNum : 1
        :&loop : 11  &i : 2  &indexList : 1,8,14,15,21,22,28,29,35,36,42  &dimNum : 8
        :&loop : 11  &i : 3  &indexList : 1,8,14,15,21,22,28,29,35,36,42  &dimNum : 14

           ・
           ・
           ・

    これで、&commma の意味と #対応文字列( &indexList, &i ) の意味が分かったのでした(^^ゞ


    ===========================================================================

    感想2、


    >&m休日 = { "" } /* すべての要素値を未定義にします cf. 桐ヘルプ [代入]コマンド */


    これは、シビレました!
    要素値を未定義にすると言う発想が全く有りませんでした。


    早速、桐ヘルプを見ると

    **************************************************************************

    &設定色 のすべての要素値を未定義にします。
    変数宣言 共通,文字列{ &設定色[8] }
    &設定色 = { "" }

    **************************************************************************

    しっかり書かれていました。
    勉強になりました。


    ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇


    ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇

    疑問


    >&indexCount = 1 + #文字数( &indexList ) - #文字数( #文字置換( &indexList, &comma, #u ) )


    この値が 11 になる理由が分かりませんでした。


    トレース出力  _&indexCount,"  ",_( 1 + #文字数( &indexList ) ), "  ", _( #文字数( #文字置換( &indexList, &comma, #u ) ) )


    を追加で入れると


    :&indexCount :   ( 1 + #文字数( &indexList ) ) : 31  ( #文字数( #文字置換( &indexList, &comma, #u ) ) ) : 20


    これで 11 になる理由は分かったのですが、
    値が

    ( 1 + #文字数( 21 ) ) : 22  ( #文字数( 11 ) ) : 11


    22 - 11 = 11 なのかと思ったら、 31 - 20 = 11 で 11でした。


    私の理解では、&indexList が 30 カンマなし&indexList が 20 になる理由が分かりませんでした(T_T)


    ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇


    いつも、丁寧なプログラム有難うございます!


    今回の質問事項は、自分の中で結構応用範囲が広く使えると感じています。


    たかがカレンダーなのですが、
    変数のソース値に日にちを入れる(これだけならNULLで可能)


    表にある情報を変数に入れる(今の私にはかなりハードルが高かったです)
    等、桐のプログラムを勉強する上で基本的な事が詰め込まれていたと思います。


    思った通りに、プログラムが動いたら凄く嬉しいですね(^^♪
    桐が楽しくなってきました!


    ご教授ありがとうございましたm(__)m


引用返信 [メール受信/OFF] 削除キー/
■14438 / ResNo.12)  Re[6]: 変数値の取得方法について
□投稿者/ ジェダイの桐 -(2024/06/14(Fri) 16:19:12)
    ONnojiさん

    > >>そうそう、「目からウロコのデータベース桐プログラミング入門」の続編を公開しました。
    >>
    >>気付いていませんでした!
    >>早速読ませて頂きます(^^♪
    >
    > 「のほか掲示板」で告知していますので、
    >
    >  All 「目からウロコの・・・パート2」を公開.. / ONnoji (24/06/11(Tue) 16:31) #1445 1718091910.jpg/44KB
    >
    > 読後の感想をフィードバックしていただけると嬉しいです。(^^ゞ


    はい!
    感想を書き込みますね(^^♪


    > p.s.
    >
    > 次の過去ログが何かのお役に立つかもしれませんので、ご一読をお勧めします。
    >
    > こちら
    >  ↓
    > 過去ログ89
    > http://tayu.o0o0.jp/bbs/kiri/cbbs.cgi?mode=al2&namber=13213&no=0&KLOG=89


    情報ありがとうございます。
    読み込んでいきます!

引用返信 [メール受信/OFF] 削除キー/
■14439 / ResNo.13)  Re[3]: 変数値の取得方法について
□投稿者/ ONnoji -(2024/06/14(Fri) 16:51:58)
    >>  &indexList = &indexList + #cond( &indexList <> #u, &comma ) + #str( 1 + #日数( &mDate[1], [日付] ) )
    >> トレース出力 _&indexList
    > この時までは、&commma を付ける目的は、トレースした時に見やすくする為だなと思ったんです。(実際見やすいので、確認しやすいです(^^))
    > まさか
    > >&dimNum = #num( #対応文字列( &indexList, &i ) )
    > #対応文字列に使用する為とは考えもつきませんでした!

    こちら
     ↓
    29 半角コンマで区切った文字列を利用する|桐の釣魚大全のトップ > フォームアプリケーション教書 第2部
    http://silicon7565.html.xdomain.jp/guide/guide_Part2.htm#section29

    > プログラムを書き写しました。( コピペではなく、手打ちです! )

    コピペで良かったのに。アハハハha

    > #対応文字列は、文字列の並びから n番目の文字を取り出す関数です。
    >
    > #対応文字列( 1, 1 )
    > #対応文字列( 8, 2 )
    > #対応文字列( 14, 3 )
    > プログラムを見ただけの時は何故かこの様に理解してしまっていました。

    × #対応文字列は、文字列の並びから n番目の文字を取り出す関数です。

    〇 #対応文字列は、半角コンマで区切られた文字列から n番目の文字列を取り出す関数です。
              ・・・・・・・・・・・・・・・・・・・・・・・・・・・・

    #sstr( )関数と勘違いしましたね。

    > 結果が
    >     :&loop : 11  &i : 1  &indexList : 1,8,14,15,21,22,28,29,35,36,42  &dimNum : 1
    >     :&loop : 11  &i : 2  &indexList : 1,8,14,15,21,22,28,29,35,36,42  &dimNum : 8
    >     :&loop : 11  &i : 3  &indexList : 1,8,14,15,21,22,28,29,35,36,42  &dimNum : 14
    > これで、&commma の意味と #対応文字列( &indexList, &i ) の意味が分かったのでした(^^ゞ

    お疲れ様でした。

    > >&m休日 = { "" } /* すべての要素値を未定義にします cf. 桐ヘルプ [代入]コマンド */
    > これは、シビレました!
    > 要素値を未定義にすると言う発想が全く有りませんでした。


    休日の配列変数を1〜42すべてクリアしなければならないでしょ。

    ワザワザ繰り返し...繰り返し終了でクリアしても良いですが、手っ取り早いのと意味が明瞭になるので、これは便利ですね。

    手っ取り早いさよりも、意味が明瞭になることの方が価値がありますね。


    > 疑問
    > >&indexCount = 1 + #文字数( &indexList ) - #文字数( #文字置換( &indexList, &comma, #u ) )
    > この値が 11 になる理由が分かりませんでした。

    次のように計算しているだけですよ          #文字置換( )で半角コンマを消しています
                                  ↓
    1 + #文字数( "1,8,14,15,21,22,28,29,35,36,42" ) - #文字数( "18141521222829353642" )

    種明かしでした。アハハハha

    > いつも、丁寧なプログラム有難うございます!
    > 今回の質問事項は、自分の中で結構応用範囲が広く使えると感じています。
    > たかがカレンダーなのですが、
    > 変数のソース値に日にちを入れる(これだけならNULLで可能)
    > 表にある情報を変数に入れる(今の私にはかなりハードルが高かったです)
    > 等、桐のプログラムを勉強する上で基本的な事が詰め込まれていたと思います。

    ジェダイの桐さんが情熱が持てるテーマなので、頑張れたと思いますね。


引用返信 [メール受信/OFF] 削除キー/
■14440 / ResNo.14)  Re[4]: 変数値の取得方法について
□投稿者/ ジェダイの桐 -(2024/06/17(Mon) 10:15:52)
    ONnojiさん


    >>疑問
    >>>&indexCount = 1 + #文字数( &indexList ) - #文字数( #文字置換( &indexList, &comma, #u ) )
    >>この値が 11 になる理由が分かりませんでした。
    >
    > 次のように計算しているだけですよ          #文字置換( )で半角コンマを消しています
    >                               ↓
    > 1 + #文字数( "1,8,14,15,21,22,28,29,35,36,42" ) - #文字数( "18141521222829353642" )
    >
    > 種明かしでした。アハハハha


    理解出来ました!
    素直に一文字づつ数えていたのですね(^^♪


    本当にありがとうございましたm(__)m


解決済み!
引用返信 [メール受信/OFF] 削除キー/
■14441 / ResNo.15)  Re[5]: 変数値の取得方法について
□投稿者/ うにん -(2024/06/18(Tue) 20:50:12)
    #対応文字列数2( str1 ,str2 )
    なんて関数ができてますね。
    「str1 内に str2 で区切られた部分文字列がいくつあるかを求めます。」
引用返信 [メール受信/OFF] 削除キー/
■14442 / ResNo.16)  Re[6]: 変数値の取得方法について
□投稿者/ ジェダイの桐 -(2024/06/19(Wed) 17:21:49)
    うにんさん


    こんにちは。


    > #対応文字列数2( str1 ,str2 )
    > なんて関数ができてますね。
    > 「str1 内に str2 で区切られた部分文字列がいくつあるかを求めます。」


    #対応文字列数2 という関数を新たに作った(需要が有る)のなら
    #対応文字列 #対応文字列2だけでは実現出来ない
    何かがあるのかもしれないないですね。

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

<前のレス10件

スレッド内ページ移動 / << 0 | 1 >>

このスレッドに書きこむ

Mode/  Pass/

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

- Child Tree -
- Antispam Version -