過去の桐井戸端BBS (桐ver.8)
17828 フォームにおいて同じ項目で自動複写する場合としない場合の使い分けはできるのでしょうか? カベタニ 2002/11/01-16:33
こんにちは。よろしく御願いします。

表の項目属性で自動複写というのがありますが、
同じ表のなかで、自動複写する場合としない場合の使い分けは
出来るのでしょうか?(もちろん同じ項目で)

実際はカード形式のフォーム上にコマンドボタンを2つおいて
新規入力の際に自動複写する場合と全ての項目を空欄にして入力する場合を使い分けたいのですが、
なかなかいい方法が見つかりません。

何かいい案がありましたら教えて下さい。
よろしく御願いいたします。
17840 Re:自動複写 ONnoji 2002/11/02-12:06
記事番号17828へのコメント
カベタニさん、こんにちは。

このご質問にはなかなかリプライ(返信)が付きませんね。

>表の項目属性で自動複写というのがありますが、
>同じ表のなかで、自動複写する場合としない場合の使い分けは
>出来るのでしょうか?(もちろん同じ項目で)

表( .tbl )の[自動複写]を有効にしたり無効にしたりするのは、無理そうです。

代わりに、表( .tbl )の[挿入初期値式]を使う方法を考えてみました。

<表( .tbl )の設定>

まず、表定義の[項目属性]ウィンドウの[入力]タブの[挿入初期値式]に次の式を指定してください。

#条件選択( &実行リターン,#直前値( [項目名],#未定義 ),1,#未定義 )

※ [項目名]は前後に角かっこ( [ ] )が必要です。
※角かっこ( [ ] )の中には"実際の項目名を入れる"か、"まったく文字を入れない"でください。
※空白文字も文字として扱われます。見えないからといって文字が無いわけではありません。
※[&実行リターン]は桐の組み込み変数(整数)です。
※これは桐V5との互換性を保持するための変数で通常は利用しません。

<フォームのコマンドボタン>

次に、コマンドボタンをふたつ作ってください。

オブジェクト名は仮に cmd直前複写ON と cmd直前複写OFF としましょう。

オブジェクト名:cmd直前複写ON
標題       :直前複写ON
   機能名       機能パラメータリスト
[1]なし        #代入( &実行リターン, 1 ) ← 値はイチ
[2]なし
[3]なし
[4]なし

オブジェクト名:cmd直前複写OFF
標題       :直前複写OFF
   機能名       機能パラメータリスト
[1]なし        #代入( &実行リターン, 0 ) ← 値はゼロ
[2]なし
[3]なし
[4]なし

これらのボタンを実行すると、
組み込み変数の[&実行リターン]の値が、イチになったりゼロになったりするというわけです。
そうすると…

>実際はカード形式のフォーム上にコマンドボタンを2つおいて
>新規入力の際に自動複写する場合と全ての項目を空欄にして入力
>する場合を使い分けたいのですが、

この例は自動複写もどき(実際には直前行の項目値を複写)ですが、
カベタニさんのイメージに近づいたのではないでしょうか。

コマンドボタンだけでもいろいろできますね。(^^ゞ
外していたらすいません。

<追伸>

なお、今回の例をそのまま真似て良しとせず、
ご自身で[組み込み変数]や[変数の種類]や[変数の有効範囲]などについて
桐のヘルプやマニュアルをぜひ調べてください。

また、#条件選択( )関数や#直前値( )関数や#代入( )関数についても
桐のヘルプやマニュアルをぜひ調べてください。

17863 Re:自動複写 カベタニ 2002/11/05-14:20
記事番号17840へのコメント
ONnojiさんいつもありがとうございます。
ご指示いただいた方法でうまくいきました。

コマンドボタンですが、機能名はなしで、機能パラメータリストのみ指定するという発想が私にはありませんでした。(爆)
ただあったとしても、このような式がとても考えられるとは思いませんが…
マニュアルやヘルプを参考にしてがんばります。

*桐5では一括処理で対処していたことがWINDOWS版ならコマンドボタンでいろいろと出来そうですね。

17864 Re:自動複写 ONnoji 2002/11/05-17:22
記事番号17863へのコメント
カベタニさん、こんにちは。

>ご指示いただいた方法でうまくいきました。
>コマンドボタンですが、機能名はなしで、機能パラメータリストのみ指定するという
>発想が私にはありませんでした。(爆)
>ただあったとしても、このような式がとても考えられるとは思いませんが…

私も最初は#代入( )関数が使えるなんて想像もしていませんでした。
この掲示板の記事や桐のサンプルで使えることが判ったという次第です。(^^ゞ

>マニュアルやヘルプを参考にしてがんばります。
>*桐5では一括処理で対処していたことがWINDOWS版ならコマンドボタンでいろいろと
> 出来そうですね

欲張らなければ、フォームのコマンドボタンだけでもかなりのことができますね。(^^ゞ

桐のサンプルのフォームも参考になるかもしれませんよ。

C:\K3\KIRIV8\Sample\例題\フォーム\*.wfm

C:\K3\KIRIV8\Sample\桐たんす\*.wfm

戻る