過去の桐井戸端BBS (桐ver.8)
12287 印刷を実行するときのイベントの書き方 藤野 2001/07/14-13:38
イベント練習のため簡単な表をつくりコマンドボタンで実行している印刷をイベントに登録してやってみました。
上手く動いているのですが、不慣れですので書き方がこれでいいのか不安です。
アドバイスよろしくおねがいします。
 現在編集中のフォームから現在行だけ印刷して終わったら現在行に戻るようにしています

表 送状
 項目 年月日 NO 品名1 数量1 品名2 数量2 ・・・備考

というようにしています。

フォームのボタンは 入力

          印刷

          終了 

        印刷にコマンドボタンで絞込み_行数  現在行
                  レポート印刷  ”送り状”,”する” 
 
としていました。これだとボタンを押すたびに、レポートが表示され印刷をかけなければ成らないので
下記のようにイベントに登録してみました。

名札 メイン
手続き定義開始 印刷::マウス左クリック(長整数 &マウス位置[2],長整数 &明細番号,長整数 &フラグ,参照 長整数 &処理中止)
変数宣言 数値{&行番号}
変数宣言 整数{&確認,&中止}
method @フォーム.描画禁止(1)
method @フォーム.更新モード設定(0)

行番号 &行番号
絞り込み 行数=&行番号
確認 ”この伝票を印刷します よろしいですか?” &確認
条件 (&確認=1) レポート印刷 送状
条件 (&確認=0) 代入 &中止=1
絞り込み解除 1
ジャンプ 行番号=&行番号
method @フォーム.更新モード設定(2)
method @フォーム.描画禁止(0)
手続き定義終了

この書き方でいいのでしょうか
12295 Re:印刷を実行するときのイベントでご指導ください 今村 誠 2001/07/15-00:54
記事番号12287へのコメント
藤野さんこんにちは

>手続き定義開始 印刷::マウス左クリック(長整数 &マウス位置[2],長整数 &明細番
>号,長整数 &フラグ,参照 長整数 &処理中止)
>変数宣言 数値{&行番号}
>変数宣言 整数{&確認,&中止}
>method @フォーム.描画禁止(1)
>method @フォーム.更新モード設定(0)
>
>行番号 &行番号
>絞り込み 行数=&行番号

ここは行数の指定が違うのではないでしょうか。
一覧表フォームなどの場合、行番号は不定です。
伝票でも、繰り返しの行数により、値は変わると思いますので。
現在行だけを印刷したい場合、定数(たとえば 1 )で指定する必要があると思います。
私は良く下記のように現在の表の状態に応じて行数を変更しています。

条件 (#絞り込み状態 =0 ) 絞り込み 行数=1

>確認 ”この伝票を印刷します よろしいですか?” &確認
>条件 (&確認=1) レポート印刷 送状

ここでは部数などを変数にして、コマンドボタンで指定するようにしています。
好みの部類に属するので、こうだということはないと思います。
また印刷はよく使うので、左クリックでなく、送り状印刷()や
プレビュー印刷()等と、一般手続きにして、ライブラリーに登録することが多いです。
12305 Re:印刷を実行するときのイベントでご指導ください 通行人 2001/07/15-10:42
記事番号12287へのコメント
>これだとボタンを押すたびに、レポートが表示され印刷
>をかけなければ成らないので

プレビューするになってます。「しない」にしないと…。


>この書き方でいいのでしょうか

ざっと見渡した感じだと、メッセージを出す必要がなければイベントを書く必要性を感じません。
ジャンプは行マークを活用した方がいい。行番号コマンドはとても重いのです。
絞り込みは印刷確認後にするのがスマート。
あと、絞り込み時の行数が&行番号になってるのはおかしいんじゃないかな?。
現在行ですから、つねに1でいいはずですよね。
12322 ありがとうございました 藤野 2001/07/15-19:16
記事番号12305へのコメント
今村さん、通行人さん、ありがとう御座いました。
イベントや一括処理の勉強中なので大変助かりました。

今後ともよろしくおねがいします

戻る