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

[ 最新記事及び返信フォームをトピックトップへ ]

■14388 / inTopicNo.1)  比較式の書き方について
  
□投稿者/ fu -(2024/05/24(Fri) 13:15:47)
    比較式の書き方についてお尋ねします。

    文字列型[学籍番号]の項目があります(学籍番号の命名規則は上2桁が入学年度の下2桁です)
    例:24K001(2024年度入学・K所属・001番)

    これを今年度入学生で絞り込むため、下記の一括処理を書きましたが、
    「KU1090:コマンドの形式に誤りがあります」のエラーが返ってきます。

    ---
    検索条件登録 "",{[学籍番号]{[].文字2 = &今年度K生}
    絞り込み 条件名=""
    ---


    何が誤っているのかご教示いただけますと幸いです。
    なお、&今年度K生には2024Kの値が代入されています。
    また、今回は変数を使いましたが、それ以外で適切な方法がありましたら教えてください。

    ver.は桐sです



引用返信 [メール受信/ON] 削除キー/
■14389 / inTopicNo.2)  Re[1]: 比較式の書き方について
□投稿者/ MAKOTO -(2024/05/24(Fri) 19:32:46)
    fuさんこんにちは
    > 比較式の書き方についてお尋ねします。
    > 文字列型[学籍番号]の項目があります(学籍番号の命名規則
    > は上2桁が入学年度の下2桁です)
    > 例:24K001(2024年度入学・K所属・001番)
    > 検索条件登録 "",{[学籍番号]{[].文字2 = &今年度K生}
    > 絞り込み 条件名=""
    > なお、&今年度K生には2024Kの値が代入されています。
    項目名[学籍番号]には 24K001 と書いてあるのに
    変数宣言 固有,文字列{&今年度K生="2024K"}
    上の値を入力したら件数は1件も見当たりませんよ。
    &今年度K生=#SSTR(&今年度K生,3 )
    上のように変数の値を計算式で変更するか最初から二桁を設定してください。
    検索条件登録 "今年度",{[学籍番号]{[学籍番号] = &今年度K生*}}
    絞り込み 条件名="今年度"

    [].文字2 どこから「,」を探したのですかヘルプにも掲載してないですよ
    上の↑はヘルプのどこに記載してあるのですか?
    わからない言葉はヘルプや履歴などでコマンドを生成した方が確実です。

引用返信 [メール受信/OFF] 削除キー/
■14390 / inTopicNo.3)  Re[2]: 比較式の書き方について
□投稿者/ ONnoji -(2024/05/24(Fri) 20:01:08)
    2024/05/24(Fri) 20:01:55 編集(投稿者)

    今村さんでしょうか?

    横レスで失礼します。m(__)m

    > [].文字2 どこから「,」を探したのですかヘルプにも掲載してないですよ
    > 上の↑はヘルプのどこに記載してあるのですか?

    ここに書いてありますよ
        ↓
     【桐 - ヘルプから転載】行集計条件登録
      ■ノート
      桐ver8までは「行集計01」が標準の行集計条件でしたが、桐ver9からは「""」が標準の行集計条件です。
      <グループ化項目>の項目値の一部でグループ化する場合は、グループ化項目の直後につぎの文字をつけます(<n>、<m>は整数)。

      グループ化指定 説明
      .文字<n>    文字列の先頭から<n>文字までの、一致するものをグループ化します。
             「.文字<n>」は「.CH<n>」と記述してもかまいません。


引用返信 [メール受信/OFF] 削除キー/
■14391 / inTopicNo.4)  Re[3]: 比較式の書き方について
□投稿者/ MAKOTO -(2024/05/24(Fri) 20:32:35)
    ONnojiさん参考になります。
    行集計は使ったことのないコマンドでグループ化の設定文字列の
    指定に使っているのですね。
    >  【桐 - ヘルプから転載】行集計条件登録
    >   桐ver8までは「行集計01」が標準の行集計条件でしたが、
    > 桐ver9からは「""」が標準の行集計条件です。
    履歴をとると条件名が↑のように記述されますね。

    >   <グループ化項目>の項目値の一部でグループ化する場合は、
    > グループ化項目の直後につぎの文字をつけます(<n>、<m>は整数)。
    >   グループ化指定 説明
    >   .文字<n>    文字列の先頭から<n>文字までの、一致する
    > ものをグループ化します。
    >  「.文字<n>」は「.CH<n>」と記述してもかまいません。

    これ「.」は行集計の指定記号で検索条件登録ではグループ化できないようですよ。
    返信を頂いて非常に良い勉強になりました。


引用返信 [メール受信/OFF] 削除キー/
■14392 / inTopicNo.5)  Re[1]: 比較式の書き方について
□投稿者/ ONnoji -(2024/05/24(Fri) 21:28:34)
    2024/05/25(Sat) 16:13:10 編集(投稿者)
    2024/05/24(Fri) 23:38:34 編集(投稿者)

    &今年度K生 の内容は、"2024K" ですね。

    そして、[学籍番号]の内容は、"24K001" ですね。

    ところが、
     ...
     24K001
     ↑
    この部分の3文字が一致
     ↓
    2024K
     ^^^
           ...
    と言うふうに 24K の部分の3文字は一致しますが、それ以外の部分が一致しませんね。
           ^^^
    なので、一致するように

    #sstr( [学籍番号], 1, 3 ) → 24K
                   ↑
                  一致する
                   ↓
    #sstr( &今年度K生, 3, 3 ) → 24K

    と文字列を#sstr( )関数、または#部分列( )関数で調整します。※#sstr( )は、#部分列( )の別名です

    従って、

    条件登録しないで直接実行する場合には、
    ・・・・・・・・・・・・・・・・・・

     絞り込み [学籍番号]{ #sstr( [学籍番号], 1, 3 ) = #sstr( &今年度K生, 3, 3 ) }

    または、

    条件登録して条件名を指定して実行する場合には、
    ・・・・・・・・・・・・・・・・・・

     検索条件登録 "",{[学籍番号]{#sstr( [学籍番号], 1, 3 ) = #sstr( &今年度K生, 3, 3 )}}
     絞り込み 条件名=""

    ですね。

    p.s.

    おそらく履歴にあった[行集計条件登録]のコマンドをコピペしたのでしょうけれど、

    [行集計条件登録]のコマンドと[検索条件登録]では記述方法がよく似ていますが、すべて同じではありませんよ。

    よく確認しないで、タラレバでコピペするのは無茶ですよ。

引用返信 [メール受信/OFF] 削除キー/
■14394 / inTopicNo.6)  Re[2]: 比較式の書き方について
□投稿者/ fu -(2024/05/27(Mon) 10:03:43)
    No14389に返信(MAKOTOさんの記事)

    MAKOTOさんご返信ありがとうございます。

    まず、
    >>&今年度K生には2024Kの値が代入されています
    というのは私の間違いで正しくは24Kの値でした。
    そのうえで、教えていただいた記述で問題なく検索できました。

    > 検索条件登録 "今年度",{[学籍番号]{[学籍番号] = &今年度K生*}}
    > 絞り込み 条件名="今年度"

    変数には"で括らなくとも直接*を付けて検索ができるのですね。
    ありがとうございました。

    なお、グループ化については、絞り込み条件名で検索できました。そのため、履歴でコマンド化しましたがエラーとなったため、今回お尋ねの経緯となりました。



432×177 => 250×102

1716771823.png
/8KB
引用返信 [メール受信/OFF] 削除キー/
■14395 / inTopicNo.7)  Re[2]: 比較式の書き方について
□投稿者/ fu -(2024/05/27(Mon) 10:14:08)
    No14392に返信(ONnojiさんの記事)

    ONnojiさんご返信ありがとうございます。

    まず、
    >>&今年度K生には2024Kの値が代入されています
    というのは私の間違いで正しくは24Kの値でした。
    そのうえで、教えていただいた記述で問題なく検索できました。
    いつもご丁寧に教えてくださり感謝いたします。

    ※#sstr( &今年度K生, 3, 3 )は先の私の誤りにより、#sstr( &今年度K生, 1, 3 )に修正


    なお、グループ化については、会話型の絞り込み条件名で検索できました。そのため、履歴でコマンド化しましたがエラーとなったため、今回お尋ねの経緯となりました。

    会話型でできた処理も履歴でコマンド化してもできないことがあるのですね。
    大変勉強になりました。ありがとうございました。

432×177 => 250×102

1716772448.png
/8KB
引用返信 [メール受信/OFF] 削除キー/
■14396 / inTopicNo.8)  Re[3]: 比較式の書き方について
□投稿者/ ONnoji -(2024/05/27(Mon) 10:55:52)
    2024/05/27(Mon) 11:17:28 編集(投稿者)

    > まず、
    > >>&今年度K生には2024Kの値が代入されています
    > というのは私の間違いで正しくは24Kの値でした。
    > ※#sstr( &今年度K生, 3, 3 )は先の私の誤りにより、#sstr( &今年度K生, 1, 3 )に修正

    なるほどです。

    > なお、グループ化については、会話型の絞り込み条件名で検索できました。
    > そのため、履歴でコマンド化しましたがエラーとなったため、今回お尋ねの経緯となりました。

    ↑この点がボタンの掛け違いの原因になっていたんですね。

    まず、検索と絞り込みには、グループ化という考え方が最初から有りません。

    検索と絞り込みで使えるのは、比較式です。
    ・・・・・・・・・・・・・・・・・・・

    貴殿は行集計でクループ項目を指定する際に[項目名].文字nをよく使っていたのですね。

    しかし、行集計では当然の事でも、検索と絞り込みでは当然の事ではないのです。
        ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

    きっと何故?という疑問がわきますよね。

    つまり、直接操作の時にはエラーにならなくて、コマンドで実行する時にはエラーになったのかと????

    おそらくですが・・・

    行集計の登録画面と検索条件の登録画面はよく似ていますね。

    なので、桐のプログラムとしては共通の部分があるのだろうと想像できます。

    ということで、たまたま動く状態になっているということだと断定してよろしいと思いますよ。

    しかし、これは良性のバグなので、今は偶然使えていても、将来は使えなくなる可能性があります。

    なので、検索条件では、[項目名].文字nはお使いにならないことをおススメします。

    > 会話型でできた処理も履歴でコマンド化してもできないことがあるのですね。
    > 大変勉強になりました。ありがとうございました。

    もしやと思って桐sのヘルプも調べてみましたが、

    ヘルプのどこにも検索条件で[項目名].文字nが使えるとは書いてありませんでした。

    [項目名].文字nは、項目のグループ指定のオプションなのですから当然ですね。
    ・・・・・・・・・・・・・・・・・・・・・・・・・・

    [桐 - ヘルプ]→ APPENDIX → 文字列の比較方法 も併せてお読みください。




引用返信 [メール受信/OFF] 削除キー/
■14397 / inTopicNo.9)  Re[4]: 比較式の書き方について
□投稿者/ fu -(2024/05/27(Mon) 11:58:38)
    No14396に返信(ONnojiさんの記事)
    ONnojiさんご返信ありがとうございます。


    なるほど、ダイアログボックスでできたのはそもそもが仕様外のバグだったのですね。それをコマンドにしても形式エラーがでるのは当然ですね。納得しました。

    検索条件の文字列比較式はなんとしても""で括らなければならないとの先入観があり、ずっと先頭文字列をグループ化したり、"24K"*の値になる式を考えておりました。

    &今年度K生だけでなく、[学籍番号]も部分列で文字列を調整すればいいのですね。
    改めて、柔軟な考え方を教えてくださりありがとうございました。
引用返信 [メール受信/OFF] 削除キー/
■14398 / inTopicNo.10)  Re[5]: 比較式の書き方について
□投稿者/ ONnoji -(2024/05/27(Mon) 12:31:26)
    2024/05/27(Mon) 12:32:08 編集(投稿者)

    > なるほど、ダイアログボックスでできたのはそもそもが仕様外のバグだったのですね。それをコマンドにしても形式エラーがでるのは当然ですね。納得しました。

    [文字列型項目名].文字3 というのは、#sstr( [文字列型項目名], 1, 3 ) と意味は同じですね。

    しかし、グループ指定のオプションなのですから、検索条件では使えないのです。

    当方もなんでそんなことを??と思っていましたが、経緯が分って納得しました。

    なお、手前味噌ながら、以下のページに絞り込みのプログラミング例を掲載していますのでご参考になればと思います。

    こちら
     ↓
    桐の釣魚大全のトップ > フォームアプリケーション教書 第2部
    21   レコードの絞り込み
    http://silicon7565.html.xdomain.jp/guide/guide_Part2.htm#section21

    p.s.

    > ■解決しましたら最下段にチェックを入れてください

    すでに解決された場合には、解決済みのチェックを入れて投稿してください。

引用返信 [メール受信/OFF] 削除キー/
■14399 / inTopicNo.11)  Re[6]: 比較式の書き方について
□投稿者/ fu -(2024/05/27(Mon) 14:05:58)
    No14398に返信(ONnojiさんの記事)

    ONnojiさん
    ありがとうございました。HPも参考にさせていただきます。
解決済み!
引用返信 [メール受信/OFF] 削除キー/
■14400 / inTopicNo.12)  Re[6]: 比較式の書き方について
□投稿者/ うにん -(2024/05/27(Mon) 22:05:25)
    > しかし、グループ指定のオプションなのですから、検索条件では使えないのです。

    桐9sですが、検索:比較式のところでも使えてますね...
    そもそも、「グループ指定」が検索条件として使えないものなら、ダイアログで指定できたとしても機能しないはずですから、実際はヘルプにはないし履歴(一括処理)で使えなくても、検索条件の指定方法として動作するように作られてるようですね。

引用返信 [メール受信/OFF] 削除キー/
■14402 / inTopicNo.13)  Re[7]: 比較式の書き方について
□投稿者/ ONnoji -(2024/05/28(Tue) 08:15:40)
    2024/05/28(Tue) 08:23:46 編集(投稿者)

    > 桐9sですが、検索:比較式のところでも使えてますね...

    桐9系は、サポートフェーズが当の昔に過ぎているので確認しませんでしたが、桐9-2012で確認したところ再現しますよ。

    もちろん、桐sSLと桐10sでも再現します。

    おそらく、[行集計条件登録]と[検索条件/検索比較式/絞り込み比較式]の空欄記入式のユーザインタフェースの部分は根っ子が同じなのでしょうね。

    以下は個人の感想ですけれど・・・

    実際に動くのですから、そう作られていると万人が認めると思いますけれどね。(^^ゞ

    もしも、K3へ問い合わせても、事実として動くのですから、動くことを認めるでしょうね。

    そして、残念ながら「桐にはファジーな部分があるから v(^^)v」とまるでユーザを煙に巻くような回答が返ってくると思いますよ。

    ファジーと言えば聞こえがいいですが、曖昧と同じですね。

    桐にはそういう例がた〜くさんありますよね。

    例えば、変数宣言コマンドで、

     変数宣言 局所、文字列{ &変数名, &変数名 }

    という構文で、

     変数宣言 局所、文字列{ &変数名 &変数名 }

    という具合に、コンマをすっ飛ばしてもエラーにはなりません。

    見方によればいい加減ですし、またある見方によればオオラカとも言えます。

    こんな桐の例は、他にもいくらでもあるでしょう。

    ※例えば if コマンドと、それに続く条件式の間に空白文字を挿入しなくてもエラーにならないとか

    個人的な感想としては、

    なぜだかファジーが売りだったりする桐の挙動は、いい意味で有難いかもしれませんが、悪い意味で節操が無いともいえます。

    私の個人的な感想としては、いい加減な仕様を放置しているK3のスタイルは多いに気に入りませんけれどね。( 一一)

    しかし、それがK3の技術者たちの伝統の風土のように思えるのであって、なんともモドカシイ次第であります。

    今回は、仕様と動作に整合性がありません。

    だから積極的に使うのはお勧めできないですね。

    ジブリのアニメではありませんが、それなら「君たちはどう生きるか」という問いかけだと思いますよ。

    検索条件で、比較式に[項目名].文字nを使った事例はおそらく史上初の報告例だったと思います。

    私が投稿を読んだとき、最初は単にコピペの間違いだと思っていたのです。

    しかし、実際に直接動作させて、それを履歴に登録していると知った時、あまりに不思議だったので驚愕しましたよ。

    でもすぐに空欄記入式のユーザインタフェースの部分が共通なんだなと想像しましたよ。

    今回の、事例はおそらく何十年に一度のケースだと思いますよ。

    今の今まで誰も知らなかったという意味で、潜在虫と言ってもいいでしょう。


引用返信 [メール受信/OFF] 削除キー/
■14403 / inTopicNo.14)  Re[8]: 比較式の書き方について
□投稿者/ 通りすがり -(2024/05/28(Tue) 14:57:19)
    文法解析のバグはワザと残してるらしいですよ
    大久保さんが言ってた
595×504 => 250×211

1716875839.jpg
/82KB
引用返信 [メール受信/OFF] 削除キー/
■14404 / inTopicNo.15)  Re[9]: 比較式の書き方について
□投稿者/ ONnoji -(2024/05/28(Tue) 15:49:41)
    2024/05/29(Wed) 09:36:26 編集(投稿者)
    2024/05/28(Tue) 16:13:37 編集(投稿者)

    > 文法解析のバグはワザと残してるらしいですよ
    > 大久保さんが言ってた

    貴殿は大久保君から直接その旨を聞いたのですか?

    それとも、日経クロステック(xTECH)の記事を読んでそう思ったのでしょうか??

引用返信 [メール受信/OFF] 削除キー/
■14406 / inTopicNo.16)  Re[10]: 比較式の書き方について
□投稿者/ 通りすがり -(2024/05/28(Tue) 15:59:58)
    記事ですよ
引用返信 [メール受信/OFF] 削除キー/
■14408 / inTopicNo.17)  Re[11]: 比較式の書き方について
□投稿者/ ONnoji -(2024/05/28(Tue) 16:10:05)
    2024/05/28(Tue) 16:57:58 編集(投稿者)

    > 記事ですよ

    そうならば、ニュースソースを明らかにした方が誤解を招かなくて済みますよ。

    特に伝聞のような言い方はしない方がよろしいのではありませんかね。

    雑誌記事の一部を切り取った内容が、伝聞が伝聞を呼び、それが誤った情報(フェイク)の連鎖になる可能性がありますよ。


引用返信 [メール受信/OFF] 削除キー/
■14410 / inTopicNo.18)  Re[12]: 比較式の書き方について
□投稿者/ 通りすがり -(2024/05/28(Tue) 16:41:09)
    ああ、そういう意味でしたか
    私は普通にPCで見れてるんですが、スマートにスマホ画面のスクショを貼ろうとしらログインしないとダメよと出たので特定の人向けかと、で一部のみ参照
引用返信 [メール受信/OFF] 削除キー/
■14412 / inTopicNo.19)  Re[10]: 比較式の書き方について
□投稿者/ うにん -(2024/05/28(Tue) 17:27:04)
    > クループ項目を指定する際の[項目名].文字nなどといったオプションは、Win桐で初めて導入したものだと思いますよ。

    私の記憶でもそうですね。Windows版でも初期にはなかったと思います。「新機能」で見た気がします。

    > 今回の件は、Win桐のユーザインタフェースの問題であって、一括処理コマンドの文法解析の問題ではありませんよ。

    そもそも「グループ指定」という名称からして行集計用の機能でしょうから「指定できるのが問題」というとらえ方の方が正しい気もしますが、実際には「比較式でも動作する」状態を見ると「文法解析の実装不備(新形式への対応漏れ)」というのが実情という感じもします。(UIが通してしまう、だけの問題なら検索が実行できないはずなので)

    他の方法で(より簡単に)できることなんで、特に欲しいものではないですけどね...

引用返信 [メール受信/OFF] 削除キー/
■14413 / inTopicNo.20)  Re[11]: 比較式の書き方について
□投稿者/ ONnoji -(2024/05/28(Tue) 17:47:38)
    2024/05/29(Wed) 08:46:55 編集(投稿者)
    2024/05/29(Wed) 00:27:21 編集(投稿者)
    2024/05/28(Tue) 23:16:54 編集(投稿者)

    >>クループ項目を指定する際の[項目名].文字nなどといったオプションは、Win桐で初めて導入したものだと思いますよ。
    > 私の記憶でもそうですね。Windows版でも初期にはなかったと思います。「新機能」で見た気がします。
    >>今回の件は、Win桐のユーザインタフェースの問題であって、一括処理コマンドの文法解析の問題ではありませんよ。
    > そもそも「グループ指定」という名称からして行集計用の機能でしょうから「指定できるのが問題」というとらえ方の方が正しい気もしますが、
    > 実際には「比較式でも動作する」状態を見ると「文法解析の実装不備(新形式への対応漏れ)」というのが実情という感じもします。
    > (UIが通してしまう、だけの問題なら検索が実行できないはずなので)

    今回のケースは、UIからエンジンへの部分の問題と捉えるべきだと思いますよ。

    タラレバですが、ひょっとして#sstr( )に読み替えちゃってるのか・・・、妄想妄想。

    従って、一括処理が関与する部分は全くないんですよ。

    だって比較式じゃないんだもん、当然こんな物は通りませんよ。


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

次の20件>

トピック内ページ移動 / << 0 | 1 >>

[このトピックに返信]
Mode/  Pass/

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

- Child Tree -
- Antispam Version -