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

ツリー一括表示

Nomal 配列のリサイズ(要素数変更) /ななーし (22/08/16(Tue) 09:24) #13496
Nomal Re[1]: 配列のリサイズ(要素数変更) /尾形 (22/08/16(Tue) 16:54) #13497
  ├Nomal Re[2]: 配列のリサイズ(要素数変更) /ななーし (22/08/16(Tue) 17:24) #13498 解決済み!
  │└Nomal Re[3]: 配列のリサイズ(要素数変更) /うにん (22/08/17(Wed) 10:14) #13499
  │  └Nomal Re[4]: 配列のリサイズ(要素数変更) /くおんたむ (22/08/18(Thu) 20:54) #13512
  │    └Nomal Re[5]: 配列のリサイズ(要素数変更) /ななーし (22/08/22(Mon) 08:19) #13519
  │      └Nomal Re[6]: 配列のリサイズ(要素数変更) /くおんたむ (22/08/22(Mon) 11:58) #13520
  │        └Nomal Re[7]: 配列のリサイズ(要素数変更) /ななーし (22/08/22(Mon) 15:25) #13522 解決済み!
  └Nomal Re[2]: 配列のリサイズ(要素数変更) /ななーし (22/08/22(Mon) 15:40) #13523 解決済み!
    └Nomal Re[3]: 配列のリサイズ(要素数変更) /ONnoji (22/08/22(Mon) 16:10) #13524


親記事 / ▼[ 13497 ]
■13496 / 親階層)  配列のリサイズ(要素数変更)
□投稿者/ ななーし -(2022/08/16(Tue) 09:24:00)
    桐10s、Windows10,11です。
    いつもお世話になっております。

    配列を利用して行をクリックすると配列(#行番号)でONOFFし、選択行をコピーして読み込むフォームを作りました。その際、メーカー名で絞り込む際、最大数の行がある配列数にしているため、配列をリセットする際に重くなる症状がでていまいました。
    メーカー名を変更した際に表示した行数分に配列をリサイズ(要素数変更)はできるのでしょうか?

    【上記の理由】
    表側にTempを作り、置換でリセット方法の場合、同時使用者がいると登録したつもりが登録されなかった事件が発生し、急遽この方法で対策してます。
[ □ Tree ] 返信 [メール受信/OFF] 削除キー/

▲[ 13496 ] / ▼[ 13498 ] ▼[ 13523 ]
■13497 / 1階層)  Re[1]: 配列のリサイズ(要素数変更)
□投稿者/ 尾形 -(2022/08/16(Tue) 16:54:48)
    どうも、こんにちは

    > 配列をリセットする際に
    変数リセットはどのようにされてますか?


    > 置換でリセット方法の場合、同時使用者がいると登録したつもりが

    過去ログ探したけど、見つからなかった

    桐は、自分が持っている値と違う場合しか
    外部データベースに対して、update命令は出さないようです

    例えば、
    行訂正 [a] = ""
    と書いても
    桐自身が把握している値が [a]="" であれば
    update命令は出さないみたいです



[ 親 13496 / □ Tree ] 返信 [メール受信/OFF] 削除キー/

▲[ 13497 ] / ▼[ 13499 ]
■13498 / 2階層)  Re[2]: 配列のリサイズ(要素数変更)
□投稿者/ ななーし -(2022/08/16(Tue) 17:24:59)
    No13497に返信(尾形さんの記事)
    > どうも、こんにちは
    >
    >>配列をリセットする際に
    > 変数リセットはどのようにされてますか?
    #SETVAR(str,num,val)で配列全体を0に書き換えしてます。

    ちなみに管理工学研究所様より要素数変更は不可との連絡でした。
    残念!表をローカルに書き出し 表でコピー作成で対応します。

    今回の方法はどこかで書籍管理の貸し出し・返却みたいなON/OFFできる
    処理を見つけてそれを使って作成しました。

    >>置換でリセット方法の場合、同時使用者がいると登録したつもりが
    大多人数がその表を見て、この行をコピーしてほしいって使うので同じメーカーを多人数で触った際に、別行が選択されていて余分なものもコピーしたり、置換でリセット掛けた際に自分の選択行がリセットされたのかコピーされなかったりする!って連絡をうけて置換による作業は廃止になりました。

解決済み!
[ 親 13496 / □ Tree ] 返信 [メール受信/OFF] 削除キー/

▲[ 13498 ] / ▼[ 13512 ]
■13499 / 3階層)  Re[3]: 配列のリサイズ(要素数変更)
□投稿者/ うにん -(2022/08/17(Wed) 10:14:40)
    > >>配列をリセットする際に
    >>変数リセットはどのようにされてますか?
    > #SETVAR(str,num,val)で配列全体を0に書き換えしてます。
    >
    > ちなみに管理工学研究所様より要素数変更は不可との連絡でした。
    > 残念!表をローカルに書き出し 表でコピー作成で対応します。

    既存の値が不要なのだから、変数削除して定義しなおせばいいのでは?
[ 親 13496 / □ Tree ] 返信 [メール受信/OFF] 削除キー/

▲[ 13499 ] / ▼[ 13519 ]
■13512 / 4階層)  Re[4]: 配列のリサイズ(要素数変更)
□投稿者/ くおんたむ -(2022/08/18(Thu) 20:54:43)
    どうも、ななーしさん

    的外れかも知れませんが、動的に配列を変更したい場合
    私は次のようにしています。

    Eval "Var 局所, 文字列 { &ほげほげ[" + #Str( #総件数 ) + " }"


    これで、動的に配列要素数を変更できます。
    また、途中で変更になったら、変数を削除してまた、上記の構文で
    再セットしています。

    参考になればと思います。

    ※Eval は コマンドの別名表記です。
[ 親 13496 / □ Tree ] 返信 [メール受信/OFF] 削除キー/

▲[ 13512 ] / ▼[ 13520 ]
■13519 / 5階層)  Re[5]: 配列のリサイズ(要素数変更)
□投稿者/ ななーし -(2022/08/22(Mon) 08:19:10)
    2022/08/22(Mon) 08:39:19 編集(投稿者)

    うにんさん、くおんたむさん回答ありがとうございます。
    イベント処理型でフォームに組み込んだイベントで、コマンドボタンをトリガーで変数削除 &行選択をしようとすると以下のエラーがでてできませんでした。
    KU1048:フォームに組み込まれている状態ではこのコマンドは使用できません

    桐の一括処理の本にもイベントの場合、メインでしか削除はできないとあり、コマンドボタン内の処理に変数削除が起動できないという・・・

    回避策があればいいのですが・・・
[ 親 13496 / □ Tree ] 返信 [メール受信/OFF] 削除キー/

▲[ 13519 ] / ▼[ 13522 ]
■13520 / 6階層)  Re[6]: 配列のリサイズ(要素数変更)
□投稿者/ くおんたむ -(2022/08/22(Mon) 11:58:30)
    > イベント処理型でフォームに組み込んだイベントで、コマンドボタンをトリガーで変数削除 &行選択をしようとすると以下のエラーがでてできませんでした。
    > KU1048:フォームに組み込まれている状態ではこのコマンドは使用できません
    >
    > 桐の一括処理の本にもイベントの場合、メインでしか削除はできないとあり、コマンドボタン内の処理に変数削除が起動できないという・・・

    プログラムのソース内容がどの様になっているかは分かりませんが、
    コマンドボタンのトリガー中であれば、自動変数で宣言すれば良い
    のではないでしょうか?

    ※自動変数であれば、そのコマンドボタンのトリガーが終わればクリアされます。
[ 親 13496 / □ Tree ] 返信 [メール受信/OFF] 削除キー/

▲[ 13520 ] / 返信無し
■13522 / 7階層)  Re[7]: 配列のリサイズ(要素数変更)
□投稿者/ ななーし -(2022/08/22(Mon) 15:25:28)
    フォームに行に&行選択がリンクしているため、自動変数の場合イベント終了後に削除されてしまい、変数を格納できないかと思います。

    とりあえず該当フォームは発想を逆転させ、1000行以上なら選択させないぞ!もっと検索で絞り込みしな!って感じに対応して1000行の配列なら3秒でリセットするのでこれで行こうという話で落ち着きました。
解決済み!
[ 親 13496 / □ Tree ] 返信 [メール受信/OFF] 削除キー/

▲[ 13497 ] / ▼[ 13524 ]
■13523 / 2階層)  Re[2]: 配列のリサイズ(要素数変更)
□投稿者/ ななーし -(2022/08/22(Mon) 15:40:57)
    ONnojiさん参考プログラムありがとうございます!

    今回は運用で逃げちゃいましたが(局所しか使ってません。共通はメインフォームでのみ宣言(10個のみ)固有は同項目複数条件検索時にのみ使用してます。(基本はSQLの検索で対応しているので2か所だけ固有です。プログラム図を作成し、共有・固有は管理してます)

    以前の一括処理プログラム共通変数が約500個もあり、開く際にPCが悲鳴をあげてたので今回は基本局所or自動以外使わないぞ!共通はフォーム間で記憶しておきたいもの10個以外宣言しない決心で作ってました。

    行セレクタの方法は私も考えてたのですが、SHIFTやCtrll押しながら行選択ってPC初心者不可能なんじゃ・・・と思い辞めました。(当時は絞り込み選択行で同じことを考えてやってました。ただ、過去一括処理開発者がSHIFTやCtrlの同じ悩みからクリック選択式に再開発したログがあったので断念しました)
    行セレクタを複数クリックで選択ができれば完璧でしたが、私の初心者脳では再現できず諦めました。

    本プログラムは何かに使えそうなので大事に保管して何かに利用しようと思います!ありがとうございました。
解決済み!
[ 親 13496 / □ Tree ] 返信 [メール受信/OFF] 削除キー/

▲[ 13523 ] / 返信無し
■13524 / 3階層)  Re[3]: 配列のリサイズ(要素数変更)
□投稿者/ ONnoji -(2022/08/22(Mon) 16:10:17)
    > 行セレクタの方法は私も考えてたのですが、SHIFTやCtrll押しながら行選択ってPC初心者不可能なんじゃ・・・と思い辞めました。
    > 行セレクタを複数クリックで選択ができれば完璧でしたが、私の初心者脳では再現できず諦めました。

    一般的に行セレクタをクリックで選択するというインターフェースには、それに気が付かない人も現れるでしょうね。

    なのでチェックボックスが良いと思いますが、いかんせん面倒ですよ。

    ちなみに、【多遊】さんのHPの観験桐(ダウンロードコーナー)で拙作が紹介されています。

    #201 INF_Framework 第3.3版 改訂版(MkII) 基本セット for 桐9-2012 / 桐9s / 桐10 / 桐10s / 桐sSL

    なお、ブラウザで拙作が表示されない場合には、F5キーを押してブラウザのリロード(更新)をしてください。
       ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

    その中の次のフォームがデザインのご参考になるかもしれませんね。

     FW_チェックボックスINF_Framework.kev
     FW_チェックボックスINF_Framework.tbl
     FW_チェックボックスINF_Framework.wfm

    これは拙作フレームワークのサンプルですので、あくまでも雰囲気だけを味わってください。


    p.s.

    > ONnojiさん参考プログラムありがとうございます!

    すでに[解決済み!]だったので投稿は削除してしまいました。

    リプライありがと。

[ 親 13496 / □ Tree ] 返信 [メール受信/OFF] 削除キー/


Mode/  Pass/

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

- Child Tree -
- Antispam Version -