複写機能(Ctrl+D)で前行コピーする。
お世話になります。
Ctrl+D 前行コピーについてですが、明細で行うと照会した項目についてはコピーできるのですが
数量や金額がコピーできません。
どのような条件でコピーができるのでしょうか。
また、数量や金額もコピーできるようにしたいので複写機能を自分で作ることは可能でしょうか。
-
Ctrl+Dはキーボード割り付けがそのようになっていれば
新規レコード入力時、前行の1項目ずつ複写出来て便利だし作りこみなしに使えるので
お客様にも教えています。
その明細行が5項目あれば
先頭行にパーキングしている時だけある操作やボタンクリックで
「Ctrl+D」を5回繰り返すイベントを実行する!なんてのも有りなんですかね。
やった事ないですし、実験もしていませんし無責任モードです。
もしかすると前行まるごとコピーみたいな機能が作りこみ無しで実行出来ると
なお良さそうですが、そのような機能があるのか知りません。 -
nkmtさん、コメントありがとうございます。
Ctrl+Dは前行の1項目が複写できるという機能なんですね!
てっきり、1行丸々コピーできるものだと思っておりました。
商品コード欄でCtrl+Dをして商品名などがコピー出来ていたのは照会リンクで紐づいていたからのようです。
>先頭行にパーキングしている時だけある操作やボタンクリックで
「Ctrl+D」を5回繰り返すイベントを実行する!なんてのも有りなんですかね。とても素晴らしいアイデアですね!一度この構想をお借りして作成してみようと思います。
ありがとうございます。
-
繰り返すは、FILL関数の力も借りられるかもしれません。
-
nkmtさん、ありがとうございます!
今の段階ではFILL関数を使うのは難しそうですが、考えてみます。
-
yamamoto様
イベント システム=F1
アクション KbPut( Fill( 'Ctrl+D'KBD, 5 ) ) 条件=STAT(0,'C'MODE)といった実験は成功しました。
-
nkmtさん、ありがとうございます!
この一つの式の中で沢山勉強になりました。
キー操作を式の中で指定する方法が分からず、行き詰まっていたのでこういったやり方があるのかと感動しました。
また、疑問なのですが5回同じ動作を繰り返すとなるとてっきりパークしているコントロール内で5回動作するという認識だったのですがFill関数を使用することで次項目に移動することができるのでしょうか。
-
Ctrl+D という操作をすると、前行の項目を複写して、次の項目に移動してくれるのが普通の動きなので
KbPut( Fill( 'Ctrl+D'KBD, 5 ) ) と操作すると、
5項目複写になります。簡単な表形式のデータメンテPGで実験成功しております。 -
nkmtさん、ありがとうございます。
そういうことなのですね!理解できました。
私の方でもPGに早速組み込ませて頂きまして綺麗に動作しました。
ありがとうございました!
-
当方としても新規行への前行複写機能を思いつく事が出来て良かったです。
機会があれば盛り込みたいと思いました。 -
そのようにおっしゃって頂き、ありがとうございます!
今後もご教示の程よろしくお願い致します。
サインインしてコメントを残してください。
コメント
10件のコメント