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

■14053 / 1階層)  対象表が更新中またはグループ操作中のためこのコマンドは使用できません
□投稿者/ ONnoji -(2023/12/01(Fri) 10:20:46)
    > メイン&サブフォームでのエラーです。
    >
    > メイン=発注.TBX サブ=発注明細.TBX リンクは[伝票番号]です。
    >
    > メインフォームで印刷のコマンドボタンで
    > 発注.TBLを印刷用の表に読み込ませています。
    > その後印刷が完了する旨のチェックを、行訂正で[印刷]=1としています。
    > メインフォームでどこかの項目を訂正した後印刷すると
    >
    > 上記の行訂正で「対象表が更新中またはグループ操作中のためこのコマンドは使用できません!」と表示されます。

    [桐−ヘルプ]を見ると、
    [行訂正]コマンドは、イベントでの使用では[編集対象表が表示状態のときのみ操作可能]とあります。

    なので、まず次のようにフォームの更新モードを確かめることをおススメします。

    なお、桐9-2012等から桐10sに変換したフォームのオブジェクト名は半角の"フォーム"で、
    桐10s等で新規に作成したフォームのオブジェクト名は全角の"フォーム"です。

    手続き定義開始 cmdTestClick( )
     変数宣言 自動,整数{ &mode }

     メソッド呼び出し  @フォーム.更新モード取得( &mode )
     確認 #str( &mode )

     **サブフォームの更新モードを調べる場合にはこちら
     **メソッド呼び出し  @サブフォームのオブジェクト名.@フォーム.更新モード取得( &mode )
     **確認 #str( &mode )

    手続き定義終了

    エラーが表示されるのは、表示モード(つまりゼロ)以外の値の場合だと思います。

    対策としては、

    1.表示モードに遷移してから 行訂正 [印刷] = 1 を実行する

    または

    2.if文で
      更新モードが表示モード(つまりゼロ)の時に 行訂正   [印刷] = 1 を実行する
      (else)それ以外の時に、           項目値代入 [印刷] = 1 を実行する

    p.s.

    おススメは1.の方法です。
    何故ならば、表示モード以外で実行するとエラーになるコマンドがたくさんあるからです。

    13 コマンドボタンでプロシージャを実行する|フォームアプリケーション教書 第1部
    http://silicon7565.html.xdomain.jp/guide/guide_Part1.htm#section13

    > ■表示モードに遷移してからプロシージャを実行する
    >  プロシージャ内で実行するコマンド・メソッドは、表示モードでしか実行できないものが多いです。
    > そのために、呼び出したプロシージャ内で、[更新モード設定]メソッドで表示モードにすることも出来ますが、
    > 次のように[機能名:表示]を加えることで、簡単に表示モードに遷移出来ます。


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

→Re[2]: 対象表が更新中またはグループ操.. /篤姫
 
前の記事(元になった記事) 次の記事(この記事の返信)
上記関連ツリー

Nomal 対象表が更新中またはグループ操作中のた.. / 篤姫 (23/11/30(Thu) 22:04) #14052
Nomal 対象表が更新中またはグループ操作中のた.. / ONnoji (23/12/01(Fri) 10:20) #14053 ←Now
  └Nomal Re[2]: 対象表が更新中またはグループ操.. / 篤姫 (23/12/01(Fri) 13:38) #14055 解決済み!

All 上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信

Mode/  Pass/

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

- Child Tree -
- Antispam Version -