(現在 過去ログ68 を表示中)

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

[ 最新記事及び返信フォームをトピックトップへ ]

■10404 / inTopicNo.1)  フォームを使った検索について
  
□投稿者/ unta izumo -(2017/03/10(Fri) 13:36:39)
    Win桐が難しいので、未だにDOS桐(Ver.5)を使用しています。
    いよいよPC98の予備機が払底してきたので、Ver9に乗り換えようと
    思うのですが、調べた結果、Ver5では一括処理を組んでいたところを
    Ver9では、フォームにコマンドボタンを配置して、それをクリックすることで
    イベント機能なり、一括処理なりを立ち上げて処理を実行する…と理解しました。
    この理解で合っているとの前提で質問ですが、例えば顧客名簿のカード型フォーム
    を表示した状態で、検索文字を入力して、それが氏名の一部、あるいは電話番号
    として、それを基に該当顧客を検索、あるいは選択するのには、どうしたら
    よいのでしょうか? 検索文字列入力用のボタンなど設定できますか?
引用返信 [メール受信/ON] 削除キー/
■10405 / inTopicNo.2)  Re[1]: フォームを使った検索について
□投稿者/ 今村 誠 -(2017/03/10(Fri) 15:17:11)
    unta izumoさんこんにちは
    > Win桐が難しいので、未だにDOS桐(Ver.5)を使用しています。
    https://www.kthree.co.jp/kiri/ct_product/kiri10/migration.html
    ↑ここに書いてある注意事項から桐10に移行するためには
    一度桐9か桐9sで桐5の表やレポートやフォームを変換する必要が
    あるようです。
    桐9はWin10には対応していないので、ネットオークションなどで
    早めに購入したほうがいいと思います。
    或いは体験版で桐9の形式にコンバートしたほうが良いと思います。
    検索ダイアログは桐5と大差は無いように思いますが、マウスでひらがな
    や数字を指定できるのはWindowsの便利良いところでしょう。
    メニューもフォームを開いてボタンを押すと得意先などのフォームを
    指定するだけなので、開発は桐5より簡単だと思います。
    まずは体験版で変換して作ってみるのが良いと思います。
    http://www.kthree.co.jp/kiri/try/index.html
引用返信 [メール受信/OFF] 削除キー/
■10406 / inTopicNo.3)  Re[2]: フォームを使った検索について
□投稿者/ たゆー -(2017/03/10(Fri) 21:09:54)
    やはり、同じ質問を見ても、感じるところは異なりますね

    今村さんの返事は「ver5」から「ver9」へのバージョンアップ方法等のご返事でしたが

    私は
    > ・・・例えば顧客名簿のカード型フォーム
    > を表示した状態で、検索文字を入力して、それが氏名の一部、あるいは電話番号
    > として、それを基に該当顧客を検索、あるいは選択するのには、
    ここが質問かと思い、たとえば[連結]とか項目を追加作成し、
    計算式を[氏名]+[電話番号]・・・にしておき、[連結]で検索すれば

    > 検索文字を入力して、それが氏名の一部、あるいは電話番号
    これが可能では?と思いました。

    でも、まず桐のバージョンアップが先ですね

引用返信 [メール受信/OFF] 削除キー/
■10407 / inTopicNo.4)  Re[3]: フォームを使った検索について
□投稿者/ unta izumo -(2017/03/11(Sat) 08:34:14)
    2017/03/11(Sat) 09:30:26 編集(投稿者)

    No10406に返信(たゆーさんの記事)
    操作を間違えて送信しました。
    削除をしようとしましが出来ません。
引用返信 [メール受信/OFF] 削除キー/
■10409 / inTopicNo.5)  Re[4]: フォームを使った検索について
□投稿者/ unta izumo -(2017/03/11(Sat) 09:26:27)
    No10407に返信(unta izumoさんの記事)
    説明の仕方が不十分でした。再度書き直します。

    Ver5では入力された文字列を判断して適切な項目を選び、該当顧客を検索する…
    という一括処理を組んでいました。そこでVer9でも同様の処理をさせたいのですが
    @顧客名簿にある項目を一覧表示するフォームの一部に検索用の項目?を設定して
    そこに入力されたデータを基にイベント等が起動して検索処理を行う…という
    考え方でよいのか?(その場合、顧客名簿の表自体に検索用の項目が必要なのか?
    あるいはフォームのみに設定すればよいのか?、またフォームを開くと真っ先に
    検索用の項目への入力を促すような設定に出来るのか?) あるいは・・・
    A顧客名簿の各項目を表示するフォームに重ねるように別のフォームを開き、
    そこに検索用の文字列を入力する設定にするのか?

    Win桐の基本的な考え方というか、設計の仕方がよく解らないこと、Ver5での
    @画面表示コマンド(メッセージや情報、オペレータへの指示等の表示)
    Aキー入力コマンド(上記の検索文字列等の入力)をVer9に置き換えるには、
    どうすればよいのか?…が分からなくて質問をしているのです。

    *バージョンアップの件は、既にVer10が発売された時点でしています。
    PNG画像が扱えるという点が魅力だったのですが、試した結果、透明部分が
    黒くなってしまい、使い物になりませんでした。なおDOSも7に落として使用
    しています。使用ソフトの互換性の問題からです。もちろん将来的に条件が
    整ったらWin10+桐Ver10に移行しますが、まずVer9で…と考えています。

引用返信 [メール受信/OFF] 削除キー/
■10410 / inTopicNo.6)  Re[5]: フォームを使った検索について
□投稿者/ 今村 誠 -(2017/03/11(Sat) 09:48:22)
    unta izumoさんこんにちは桐は持っていらっしゃるのですね。
    > @顧客名簿にある項目を一覧表示するフォームの一部に検索用の項目?を設定して
    > そこに入力されたデータを基にイベント等が起動して検索処理を行う…という
    > 考え方でよいのか?
    >(その場合、顧客名簿の表自体に検索用の項目が必要なのか?

    常に検索する項目しだいかと思います。

    > またフォームを開くと真っ先に検索用の項目への入力を促すような
    > 設定に出来るのか?)

    フォームのオブジェクトの属性に開始時実行ボタンという設定があるので
    そこに作成したボタンを指定すればフォームを開くと同時に検索します。

    > A顧客名簿の各項目を表示するフォームに重ねるように別のフォームを開き、
    > そこに検索用の文字列を入力する設定にするのか?

    そういうことも出来ます。
    その場合[電話]の場合テンキーボタンのフォームを作ったり
    [ふりがな]の場合Atokの文字列パレットのようなひらがな一覧表も
    便利いいと思います。

    > @画面表示コマンド(メッセージや情報、オペレータへの指示等の表示)
    > Aキー入力コマンド(上記の検索文字列等の入力)をVer9に置き換えるには、

    キー入力コマンドは桐9や10でもありますよ。
    ただ一文字ごとに絞り込むためにはフォームでのイベントは必須ですね。
    画面表示は無いので別途フォームの作成が必要でしょう。
    キー入力をさせるより検索や絞り込みダイアログが良くないですか?
    以下は桐の標準機能の検索F6や絞り込みF10の作成例です。

    ボタンだけで絞り込みたい場合は
    →|機能名|パラメーター
    1|表示 |確定する
    2|フォーカス移動|"t連結"
    3|絞り込み_比較式|
    でテキストボックスに移動して絞り込み出来ます。

    [連結]が非表示項目であればイベントを使うと以下の
    手順で絞込みや検索でダイアログでデータの表示が
    出来ます。
    まずコマンドボタンを作ります。
    →|機能名|パラメーター
    1|表示 |確定する
    2|手続き実行|"会話で絞り込み","連結","か","含む"

    [絞り込み:値]ダイアログボックスを出して、[連結]が
    「か」で始まる行を絞り込みます。

    会話絞り込み 値,[連結], { "か", 先頭一致, する }\
    , 終了状態 = &OK

    手続き定義開始 会話で絞り込み(文字列 &項目,文字列 &初期,文字列 &方法)
     変数宣言 整数{&OK}
     会話絞り込み 値,&項目, { &初期,&方法,する }\
     , 終了状態 = &OK
    手続き定義終了

    パラメーターは変数で指定できますが「会話絞り込み」
    等のコマンドは変数には指定できません。
    桐には「コマンド」という便利なコマンドがあります。
    コマンドの別名 eval
    イベントでの使用 ○可能
    ■説明
    <文字列式>で指定した文字列を一括処理コマンドとして
    実行します。

    たとえば絞り込みと検索を同じ手続きで使用したい場合
    呼び出すときの手続き名を以下のようにします。

    2|手続き実行|"会話","絞り込み","連結","か","含む"
    2|手続き実行|"会話","検索","連結","か","先頭一致"

    Proc 会話(Str &検絞,Str &項目,Str &初期,Str &方法)
     変数宣言 整数{&OK}
     コマンド "会話"+&検絞+" 値,["+&項目+"],{"""\
     +&初期+""","+&方法+",する},終了状態 = &OK"
    End

引用返信 [メール受信/OFF] 削除キー/
■10414 / inTopicNo.7)  Re[5]: フォームを使った検索について
□投稿者/ ONnoji -(2017/03/11(Sat) 13:01:20)
    2017/03/11(Sat) 13:09:20 編集(投稿者)
    2017/03/11(Sat) 13:03:30 編集(投稿者)


    > Ver5では入力された文字列を判断して適切な項目を選び、該当顧客を検索する…
    > という一括処理を組んでいました。

    おっと、高級な仕様ですね。

    [入力文字解析]のロジックはGUIだからといって違いはないですよ。

    違うのはロジックではなくてユーザインタフェースの方です。

    以下にABCの3通りのデザインを示しますので参考にしてください。

    なお、変数には組み込み変数:&STR を使いますが、これはあくまでも参考例です。

    すべて参考です。細かいところはご自身でお試しください。

    > そこでVer9でも同様の処理をさせたいのですが
    > @顧客名簿にある項目を一覧表示するフォームの一部に検索用の項目?を設定して
    > そこに入力されたデータを基にイベント等が起動して検索処理を行う…という
    > 考え方でよいのか?(その場合、顧客名簿の表自体に検索用の項目が必要なのか?

    <Aデザイン>

    一覧表形式のフォームのヘッダ部にソースに組み込み変数:&STR を指定したテキストボックスを用意して、

    このテキストボックスの[ソース値更新]イベントハンドラから、

    [入力文字解析]のプロシージャと[解除→絞込み]のプロシージャをコールする。

    DOS桐の帳票では、変数を直接編集できなかったけれど、Win桐のフォームではソースに変数を指定したテキストボックスで変数を編集出来る。

    ※この違いはとてつもなく大きいが、気が付かない人が非常に多い。つまり、DOS桐の帳票は不便だったんですよ。

    このデザインはシンプルで、直感的に判りやすくて優れています。

    > あるいはフォームのみに設定すればよいのか?、またフォームを開くと真っ先に
    > 検索用の項目への入力を促すような設定に出来るのか?) あるいは・・・

    <Bデザイン>

    Nullフォームのソースに変数を指定したテキストボックスの[ソース値更新]イベントハンドラから

    別の一覧表形式のフォームをモーダルフォームとして呼び出す。

    しかし、<Aデザイン>の一覧表形式のフォームのヘッダ部にソースに変数を指定したテキストボックスを利用する方が、

    直感的に理解できて優れていると思います。


    > A顧客名簿の各項目を表示するフォームに重ねるように別のフォームを開き、
    > そこに検索用の文字列を入力する設定にするのか?

    <Cデザイン>

    一覧表形式のフォームのヘッダ部のコマンドボタンを実行して、別のNullフォームをモーダルフォームとして呼び出して、

    Nullフォームのソースに組み込み変数:&STRを指定したテキストボックスで文字列を編集して、

    モーダルフォームが閉じられた後、それが実行(つまりキャンセル動作でない)ならば、

    一覧表形式のフォームで組み込み変数:&STR を[入力文字解析]して、[解除→絞込み]のプロシージャをコールする。


     ◇ ◇ ◇ ◇ ◇ ◇

    人それぞれに好みがあると思いますが、<Aデザイン>がシンプルで何よりも判りすく優れています。

    次が<Cデザイン>ですが、これは<Aデザイン>のバリエーションです。

    <Bデザイン>はメニューと結果を表示するものですが、直感的に判り難いと思いますよ。


     ◇ ◇ ◇ ◇ ◇ ◇

    <蛇足>

    > Win桐の基本的な考え方というか、設計の仕方がよく解らないこと、Ver5での
    > @画面表示コマンド(メッセージや情報、オペレータへの指示等の表示)
    > Aキー入力コマンド(上記の検索文字列等の入力)をVer9に置き換えるには、
    > どうすればよいのか?…が分からなくて質問をしているのです。

    [画面表示]コマンドも[キー入力]コマンドもキャラクターベースのインタフェースです。

    これらの古いコマンドに1対1で対応する新しいGUIのコマンドはありません。

    ※ちなみにWin桐で[画面表示]コマンドと[キー入力]コマンドを使っているようでは停滞するだけで進歩しません。

    GUIのインターフェースはウィンドウを基本単位にします。※ウィンドウシステムなのだから当然。

    つまり、古いキャラクターベースのインタフェースの画面は、GUIのインターフェースではチャイルド・ウィンドウに置き換わります。

    チャイルド・ウィンドウからパラメータ入力のためにモーダルなフォームをダイアログボックスとして利用します。

    と、馴れてしまえば簡単ですが、長年DOS桐の画面を見ていた人には、頭の切り替えが難しいことが多いです。

    まず、DOS桐の一括処理を離れて、桐以外のWindowsアプリケーションをじっくりと眺めてください。

    そうすれば、Windowsアプリケーションには共通したGUIのインターフェースがあることに気付くはずです。

    しかし、DOS桐の一括処理を念頭にして執着していると、いつまで経ってもGUIのインターフェースに気付きません。

    例えるなら、和室をそのまんま洋室に改造しようとしても無理ということです。


引用返信 [メール受信/OFF] 削除キー/
■10415 / inTopicNo.8)  フォームの活用法は、自由度が高そうですが・・・
□投稿者/ unta izumo -(2017/03/11(Sat) 14:33:57)
    No10410に返信(今村 誠さんの記事)

    > フォームのオブジェクトの属性に開始時実行ボタンという設定があるので
    > そこに作成したボタンを指定すればフォームを開くと同時に検索します。

    ・・・上の文は、フォームを開くと同時に検索でなく、先に検索文字列の入力を促して、
    文字列が入力されリターンキーを押すと同時に検索が始まる…との理解でOKですか?

    > キー入力をさせるより検索や絞り込みダイアログが良くないですか?
    > 以下は桐の標準機能の検索F6や絞り込みF10の作成例です。
    >
    > ボタンだけで絞り込みたい場合は
    > →|機能名|パラメーター
    > 1|表示 |確定する
    > 2|フォーカス移動|"t連結"
    > 3|絞り込み_比較式|
    > でテキストボックスに移動して絞り込み出来ます。
    >
    > [連結]が非表示項目であればイベントを使うと以下の
    > 手順で絞込みや検索でダイアログでデータの表示が
    > 出来ます。
    > まずコマンドボタンを作ります。
    > →|機能名|パラメーター
    > 1|表示 |確定する
    > 2|手続き実行|"会話で絞り込み","連結","か","含む"
    >
    > [絞り込み:値]ダイアログボックスを出して・・・・

    これ以下の文は、今のところ理解不能に近いです。もう少しフォームの解説書を
    読んでから、実際に試して見ます。

    いずれにしても自由度の高い活用法が、フォームにはありそうだ…と感じています。
    今後ともご教授のほど、よろしくお願いします。

    最後にひとつだけ・・・Win桐の場合は、最初にメインとなるフォームを呼び出して、そこからいろんな処理を、さらに呼び出す…というようなシステムを作るのが
    一般的だと理解してよいのでしょうか? 今の所そんなイメージでとらえています。
引用返信 [メール受信/OFF] 削除キー/
■10416 / inTopicNo.9)  分りやすい説明、ありがとうごさ゛います。
□投稿者/ unta izumo -(2017/03/11(Sat) 14:48:42)
    No10414に返信(ONnojiさんの記事)

    非常にわかりやすい説明です。ただし、Win桐の機能に関する部分は、すんなりと
    理解できたわけではありませんが、全体的な考え方というか概念的な部分は
    理解できたように思います。

    この記事などを参考に、具体的なモノを少し作り上げた時点で、再度ご教授
    願えれば幸いとおもいます。ありがとうございました。

解決済み!
引用返信 [メール受信/OFF] 削除キー/
■10417 / inTopicNo.10)  Re[7]: 分りやすい説明、ありがとうごさ゛います。
□投稿者/ ONnoji -(2017/03/11(Sat) 15:05:13)
    2017/03/11(Sat) 16:01:43 編集(投稿者)
    2017/03/11(Sat) 15:23:27 編集(投稿者)
    2017/03/11(Sat) 15:17:53 編集(投稿者)
    2017/03/11(Sat) 15:15:50 編集(投稿者)

    > Win桐の機能に関する部分は、すんなりと理解できたわけではありませんが、
    > この記事などを参考に、具体的なモノを少し作り上げた時点で、再度ご教授
    > 願えれば幸いとおもいます。

    フォームだけでアプリケーションが作れるのか?

    答えは Yes.です。

    手前味噌ですが、拙作HPがご参考になれば幸いです。

    桐のイベント道場のトップ
    http://www.geocities.jp/siliconvalley_bay_7565/


    なお、フォームアプリケーションの独習書はこちら

    §1 三角形の面積を求める|フォームアプリケーション入門|桐のイベント道場
    http://www.geocities.jp/siliconvalley_bay_7565/guide01.htm

    §1から§9までさらっと読むだけで知識が豊富になりますよ。


    コラムなどはこちら
     ↓
    コラム7 桐V5一括処理をフォームアプリケーションに変更する|桐のイベント道場
    http://www.geocities.jp/siliconvalley_bay_7565/column07.htm

    イベント初心者講座 その1|桐のイベント道場
    http://www.geocities.jp/siliconvalley_bay_7565/compleat_angler_part1.htm


    <蛇足>

    百聞は一見にしかず。

    たゆーさんのHPのいまは桐だけ(ダウンロード一覧)
    http://tayu.o0o0.jp/download/
    から、拙作フォームアプリケーションがダウンロードできます。

    #171 ランチャー ※わざわざメニューのフォームを作らずともメニューの代用になりますよ。
    #172 IPSフォーム
    #173 イベント処理の整形ユーティリティ

    いずれの拙作も学習者用に記述していませんので、内容を見ても判り難いです。

    ただし、こんなことが出来るんだという参考にはなると思いますよ。


    <さらに蛇足>

    ユーザインターフェース|桐雑談 - ブログ版−桐のイベント道場 - Yahoo!ブログ
    http://blogs.yahoo.co.jp/siliconvalley_bay_7565/folder/1560793.html?sk=0&sv=%A5%E6%A1%BC%A5%B6%A5%A4%A5%F3%A5%BF%A1%BC%A5%D5%A5%A7%A1%BC%A5%B9&m=lc


引用返信 [メール受信/OFF] 削除キー/
■10418 / inTopicNo.11)  Re[7]: フォームの活用法は、自由度が高そうですが・・・
□投稿者/ 今村 誠 -(2017/03/11(Sat) 15:43:52)
    unta izumoさんこんにちは
    > ・・・上の文は、フォームを開くと同時に検索でなく、先に検索文字列の入力を
    > 促して、文字列が入力されリターンキーを押すと同時に検索が始まる…との
    > 理解でOKですか?

    フォームが開いてから自動的に検索や絞り込みの桐の標準のダイアログが表示
    されて、先頭一致や含むや含まないなどのオプションが選択できるということ
    です。
     文字列入力後にEnterやOKをクリックすればその後に会話処理が始まるという
    わけです。
     検索や絞込みまでは一覧表で希望のデータ行をクリック後にボタンに画面を
    切り替える機能「フォームの選択」でカード画面に変えるのも良いでしょう。

    > 最後にひとつだけ・・・Win桐の場合は、最初にメインとなるフォームを
    > 呼び出して、そこからいろんな処理を、さらに呼び出す…というような
    > システムを作るのが一般的だと理解してよいのでしょうか?
    > 今の所そんなイメージでとらえています。

    メインメニューフォームで共通変数を定義してフォームで使用する表を
    指定して開くフォームを指定します。
    メニューに処理する分だけボタンが必要になります。
    たとえば得意先.tblと仕入先.tblを作り販売管理.tblと仕入管理.tbl
    現金出納帳.tblを3つのフォームで使うのであれば
    オブジェクト名|得意先登録
    標題|得意先登録
    →|機能|機能パラメータリスト
    1|表示|確定する
    2|なし|#代入(&Sopfile,"得意先.tbl")
    3|開く|"得意先.wfm"
    4|閉じる|
    オブジェクト名|仕入先登録
    標題|仕入先登録
    →|機能|機能パラメータリスト
    1|表示|確定する
    2|なし|#代入(&Sopfile,"仕入先.tbl")
    3|開く|"得意先.wfm"
    4|閉じる|

    開いた処理フォームの閉じるボタンやフォーム終了イベントに
    必ずメニューフォームを開くようにしないと元に戻れません。
    表編集ではボタンを作れないので、メインメニューに戻れないので、
    それなりのフォームを作るか常にメニューフォームを最小化して定期
    的にタイマーイベントで開いている表が無い場合にメニューフォームを
    復元する工夫がいるでしょう。

    最初のメニューフォームを一括から起動するなら表でもフォームでも
    必ず一括に戻るので監視するとかメニューフォームを呼び出すなどの
    処理は必要ありません。
    ボタンの「閉じる」は「一括に戻る」を選ぶと良いでしょう。
    「開く」のボタンも当然必要ありませんが、開く表とフォームの情報
    は変数に代入しておいたほうが一括処理は作りやすいかもしれません。

    一括処理のサンプルは私のページにあります。
    メニューフォームでなく簡易メニューです。
    得意先もあったように思いますが、参考になるかは判りません。

    フォームだけですむなら一括から入る必要はなくバージョンアップは
    簡単に終わるでしょう。
     このサイトのリンクに紹介されているページを是非訪れて
    勉強してください。
引用返信 [メール受信/OFF] 削除キー/
■10420 / inTopicNo.12)  ご教示のサイト拝見させてもらいました。
□投稿者/ unta izumo -(2017/03/12(Sun) 07:06:40)
    No10417に返信(ONnojiさんの記事)

    ご教示のサイト拝見しましたが、Win桐は、エクセルとワードへのデータの受け渡し
    とDMやチケット類の印刷以外には利用していないため、知識不足で理解困難です。
    じっくりと、「フォームアプリケーションの独習書」の事例を試しながら
    理解を深めていきたいと思います。

    * 別スレットを立てるべきかとも思いましたが・・・・・

    Win桐とDOS桐についての私の考え方…間違っているでしょうか?

    小売業を営んでおり、日常のデータ入力は全て販売スタッフが交代でしています。
    DOS桐のシステムは業務の流れが線状に分岐し、今何の処理をやっているのかの
    理解が比較的しやすいと思います。それでも予期せぬ操作をしてしまい、パニクる
    事が多々あり、その都度電話で呼び出されます。その為出来る限り、どんな場面
    でも、[ESC]の連打でスタート画面である顧客検索画面に戻れるように設定して
    います。日常の業務についてはDOS桐で何ら不便を感じていません。
    しいて言えば、1画面に表示できる情報量が少ない事。カラー写真が表示出来ない
    事。ダイレクトメール等の販促場面での活用にデータのやり取りが多少不便な事。
    ・・・くらいです。なお、入力や検索画面でのサポートや誤入力防止のため、数千行
    の一括処理のうち1/3位が、情報表示、アドバイス、指示などの画面表示に
    使われている状態になっています。(長年付け加えた結果)

    そこで、Win桐に移行する場合、如何に自由度を制限するか…が最大の課題になる
    のではと考えています。誤操作で、桐以外のソフトを立ち上げてしまう可能性も
    考えられるのですから…。これをクリアする事が、とても荷が重いため、今まで
    Win桐は発売当初から購入していつつ、移行に踏み切れなかった理由です。

    ・・・私の本心としては、今の高性能のパソコンでDOS桐がそのまま動いてくれれば、
    どんなによいか!!・・・という気持ちです。
引用返信 [メール受信/OFF] 削除キー/
■10421 / inTopicNo.13)  メニューでなく、フォームからスタートさせます。
□投稿者/ unta izumo -(2017/03/12(Sun) 07:26:18)
    No10418に返信(今村 誠さんの記事)

    ONnojiさんへの返信にも書きましたが、スタート画面はメニューでなく顧客検索画面
    がベストです。業務上の都合で、利用が一番多いのがその画面だからです。そのから
    買上商品情報、お支払状況その他の情報を検索表示するのが日常的活用場面だからです。
    その画面の周囲にでもメニューを張り付けて、他の処理を実行するスタイルが良いのでは
    と考えています。

    いずれにしてもメニューは必要ですので、勉強して活用させていただきます。
    今後ともよろしくお願いします。
引用返信 [メール受信/OFF] 削除キー/
■10422 / inTopicNo.14)  Re[9]: ご教示のサイト拝見させてもらいました。
□投稿者/ ONnoji -(2017/03/12(Sun) 09:55:01)
    2017/03/12(Sun) 10:08:14 編集(投稿者)
    2017/03/12(Sun) 09:58:54 編集(投稿者)
    2017/03/12(Sun) 09:55:21 編集(投稿者)

    > ご教示のサイト拝見しましたが、Win桐は、エクセルとワードへのデータの受け渡しとDMやチケット類の印刷以外には利用していないため、知識不足で理解困難です。
    > じっくりと、「フォームアプリケーションの独習書」の事例を試しながら理解を深めていきたいと思います。

    Win桐には、DOS桐に存在しなかった新しい機能があります。

    新しい機能は、試して経験すれば理解できます。

    新しい機能に対しては誰でも最初は初心者です。最初から何もかも理解している人はいませんよ。

    > 小売業を営んでおり、日常のデータ入力は全て販売スタッフが交代でしています。
    > DOS桐のシステムは業務の流れが線状に分岐し、今何の処理をやっているのかの理解が比較的しやすいと思います。
    > それでも予期せぬ操作をしてしまい、パニクる事が多々あり、その都度電話で呼び出されます。
    > その為出来る限り、どんな場面でも、[ESC]の連打でスタート画面である顧客検索画面に戻れるように設定しています。
    > 日常の業務についてはDOS桐で何ら不便を感じていません。

    [ESC]の連打でスタート画面に戻るをGUIのウィンドウで考えると

    <行き>
    スタート画面 → モーダルなフォーム …(必要ならばさらに)… → モーダルなフォーム

    <帰り>
    モーダルなフォームでOKまたはキャンセル動作 → スタート画面

    キャンセル動作はESCキー一発で行えます。つまり、ESCキー一発でモーダルなフォームは閉じられてしまいます。

    例えば、次のようなコマンドボタンの場合

       機能名    機能パラメータリスト   
    [1]表示
    [2]モーダルフォーム  フォームファイル名 ※文字列型の変数でも指定可能
    [3]手続き実行 prcほげほげ
    [4]なし

    モーダルなフォームでESCキーを押すと、モーダルなフォームは閉じられますが、
    [3]手続き実行 prcほげほげ は実行されません。

    もちろん、キャンセルでなければ、[3]手続き実行 prcほげほげ を実行します。


    なお、コマンドボタンのヘルプでは、「キャンセル(ESCキーなどによる破棄終了)時には中止する」とありますが、
    このキャンセルとは、[3]手続き実行 prcほげほげ を実行しないという意味です。
    実に判り難いヘルプで参りますが…
    ※添付画像を参照

    ※なお、独習書では[フォーム呼び出し]コマンドでモーダルフォームを開いていますが、
    ※[フォーム呼び出し]コマンドよりも[コマンドボタンの機能名:モーダルフォーム]の方が取り扱いが簡単です。
    ※独習書を執筆した時点ではこの点に気が付いていなかったのですが、最近では[コマンドボタンの機能名:モーダルフォーム]を推奨しています。
    ※同様に[ウィンドウ作成]コマンドは、[コマンドボタンの機能名:開く]を強く推奨します。

    ※詳しくはこちら
    ※  ↓
    ※ウィンドウ関係のコマンド ( ソフトウェア ) - ブログ版−桐のイベント道場 - Yahoo!ブログ
    http://blogs.yahoo.co.jp/siliconvalley_bay_7565/57414018.html

    その他、

    ・スタート画面は、チャイルドで最大化して操作します。※フォームの属性で最大化を指定できます。
    ・モーダルなダイアログは、コマンドボタンの機能:モーダルフォームで開いたフォームです。
    ・モーダルなフォームは、チャイルドのフォームでも自動的にポップアップのフォームになります。

    ※チャイルドとポップアップ、モーダルとモードレスという用語は必ず覚えてください。
    ※独習書:§6 フォームのウインドウの形式 §3 モーダルフォーム


    > なお、入力や検索画面でのサポートや誤入力防止のため、数千行の一括処理のうち1/3位が、
    > 情報表示、アドバイス、指示などの画面表示に使われている状態になっています。(長年付け加えた結果)

    仰るとおりで、DOS桐の一括処理の場合には、全体の1/3位が画面周りの処理に使われているのが普通です。

    Win桐では、画面表示コマンドを使いませんので、一気に行数が減りますよ。

    情報表示、アドバイス、指示などは、フォームのテキストボックス(またはラベル)オブジェクトで表示出来ます。

    なお、点滅は無理です。点滅など些細な事にこだわっているといつまで経ってもゴールにたどり着けません。

    些細な違いにこだわらずに、Win桐らしいアプローチをしてください。

    > そこで、Win桐に移行する場合、如何に自由度を制限するか…が最大の課題になるのではと考えています。
    > 誤操作で、桐以外のソフトを立ち上げてしまう可能性も考えられるのですから…。
    > これをクリアする事が、とても荷が重いため、今までWin桐は発売当初から購入していつつ、移行に踏み切れなかった理由です。

    MS-Windowsはウィンドウシステムなので、Win桐以外のソフトを立ち上げてしまうのは防止できないですね。

    タスクバーをクリックするように教育するしかありません。

    > ・・・私の本心としては、今の高性能のパソコンでDOS桐がそのまま動いてくれれば、
    > どんなによいか!!・・・という気持ちです。

    ハイ、愚痴は承りました。

    NECに大金を支払ってPC98のリバイバルをお願いしましょう。(^^♪

    でも、それではコストパフォーマンスが悪すぎますね。(T_T)

    > スタート画面はメニューでなく顧客検索画面がベストです。
    > 業務上の都合で、利用が一番多いのがその画面だからです。
    > そのから買上商品情報、お支払状況その他の情報を検索表示するのが日常的活用場面だからです。
    > その画面の周囲にでもメニューを張り付けて、他の処理を実行するスタイルが良いのではと考えています。
    > いずれにしてもメニューは必要ですので、勉強して活用させていただきます。

    律儀にメニューを作る必要はないですよ。

    ただし、スタート画面を開くランチャーは有った方が便利だと思います。

    #171 ランチャー を是非お試しください。

    ランチャーにスタート画面を登録すれば、それがメニューの代用になりますよ。

    ※ランチャーは自身を最小化して待機しますので、スタート画面と重なることはありません。

    さらに、ランチャーのフォームのショートカットをデスクトップに置けば、ショートカット一発でランチャーが起動しますよ。

    なお、イベント処理の整形ユーティリティは、DOS桐の一括処理も整形できます。これもお試しください。

    DOS桐とWin桐の一括処理エディタはとても貧弱なので、イベント処理の整形ユーティリティを併用すると効果的ですよ。

    > たゆーさんのHPのいまは桐だけ(ダウンロード一覧)
    > http://tayu.o0o0.jp/download/
    > から、拙作フォームアプリケーションがダウンロードできます。
    >
    > #171 ランチャー ※わざわざメニューのフォームを作らずともメニューの代用になりますよ。
    > #172 IPSフォーム
    > #173 イベント処理の整形ユーティリティ



440×605 => 182×250

2017-03-12-01.JPG
/61KB
引用返信 [メール受信/OFF] 削除キー/
■10423 / inTopicNo.15)  Re[9]: ご教示のサイト拝見させてもらいました。
□投稿者/ まさやん -(2017/03/12(Sun) 10:38:57)
    2017/03/12(Sun) 11:25:14 編集(投稿者)

    > そこで、Win桐に移行する場合、如何に自由度を制限するか…が最大の課題になる
    > のではと考えています。誤操作で、桐以外のソフトを立ち上げてしまう可能性も
    > 考えられるのですから…。これをクリアする事が、とても荷が重いため、今まで
    > Win桐は発売当初から購入していつつ、移行に踏み切れなかった理由です。
    >
    > ・・・私の本心としては、今の高性能のパソコンでDOS桐がそのまま動いてくれれば、
    > どんなによいか!!・・・という気持ちです。

    こんにちは
    わたしも 桐5からWIN桐に移行したとき 同じ考えで 躊躇してた時期がありました。

    大まかに言うと データの計算式や内部での処理 は問題なく移行できました。
    (表の仕様が変わっていないので当たり前ですが。)
    こんなに簡単に移行できた・とびっくりしたくらいです

    問題は おっしゃってた通りフォームの点でした。
    フォームは そのまま移行できるのもありますし(WIN桐9から再定義で読込む(今読み込めるのか確認していませんが(桐8で可能でした)))
    新たに作ったほうがいい場合もあります。

    >誤操作で、桐以外のソフトを立ち上げてしまう可能性も考えられるのですから…。

    この点については
    オブジェクト操作 というコマンドが ありまして
    コマンドボタンを 使用不可状態に 指定できます。
    つまり 行編集状態にする前に オブジェクト操作で 誤操作しそうなボタン類を
    使えない状態にして 編集することができますので 誤操作は減ると思います。
    キー操作禁止 という設定もできます。

    結果的に WIN桐にして良かったです。
    フォームの作成も座標軸の計算しないぶん気がだいぶ楽になりました。

    もちろん イベントがすごく便利で その方がくみやすくていいのですが、
    いままでの 一括の資産があるのでしたら それはそれで有効に活用したらいいと思います。

    使用帳票 → ウインドウ作成

    帳票形式会話(読み方が違うかも) → ウインドウ会話
    (場合によっては 機能キー でしょりしているかも)
    そこからの 条件式から色々と変更しなくてはなりませんが。

    案ずるより・・何とかです。

    なにかでつまづいたら 桐質問掲示板があるじゃないですか。
    イベントで始めるもよし  今までの一括を有効に活用するのもよし。

    >[ESC]の連打でスタート画面である顧客検索画面に戻れるように設定して
    います。

    これも イベントでも できますし
    一括では  ウインドウ会話で   許可作業=な,更新=禁止  の設定をすれば
    終了状態の変数に ESC リターン の番号が取得できますので
    今までやっていたように出来ます。

    長くなってしまいましたが 先ほど話した  案ずるよりなんとかです。
    試してみてください。

    これから始めるのは イベント処理から始めた方が率はいいと思います。
    今まで作ってきたのも有効に使えるものがありますので その点は心配なく。
引用返信 [メール受信/OFF] 削除キー/
■10424 / inTopicNo.16)  この掲示板たよりに勉強します。
□投稿者/ unta izumo -(2017/03/12(Sun) 16:33:56)
    No10423に返信(まさやんさんの記事)

    > 結果的に WIN桐にして良かったです。

    > 案ずるより・・何とかです。

    > なにかでつまづいたら 桐質問掲示板があるじゃないですか。

    どこかで講習でも受けないと無理かと思っていましたが、この掲示板を頼りに
    勉強しながら作って見ます。

    ・・・でも、Ver5のシステムを組んだ時は若かったからよかったけど、歳を取ると
    頭も働かなくなるし(ONnojiさんにまた愚痴かと言われそう) 誰か近くに同好?の士
    がいて、一緒に勉強できると良いですけどね。

    ちなみに私は、出雲大社のおひざ元に住んでいます。出雲市から松江市辺りに住んで
    いる方がおられたら是非一緒に勉強させて下さい。

引用返信 [メール受信/OFF] 削除キー/
■10425 / inTopicNo.17)  Re[9]: ご教示のサイト拝見させてもらいました。
□投稿者/ 通りすがり -(2017/03/12(Sun) 18:24:41)
    > そこで、Win桐に移行する場合、如何に自由度を制限するか…が最大の課題になる
    > のではと考えています。誤操作で、桐以外のソフトを立ち上げてしまう可能性も
    > 考えられるのですから…。これをクリアする事

    お決まりの方法です、いわゆる KIOSKフォームと呼ばれています
    業務フォームで画面全部を覆ってしまう、コンビニ業務端末のイメージ

    *最初のスタートフォームを、オーバーラップ・最大化・タイトルバーなし、にします
    (必ず、閉じるボタンを設置してね)
    *キーボードのwindowsキー無効はレジストリ設定で

引用返信 [メール受信/OFF] 削除キー/
■10426 / inTopicNo.18)  Re[9]: ご教示のサイト拝見させてもらいました。
□投稿者/ まさやん -(2017/03/12(Sun) 18:51:21)
    2017/03/12(Sun) 18:53:22 編集(投稿者)

    通りすがりさんの記事 プラス

    私も ほとんど『要らない』の設定をしています。

    これは 余計なものを表示させないためのものです。
    通りすがりさんの言う通り 勿論 閉じる コマンドは別に設定しています。

    これは最初の販売メニューですので カード型
    売上帳とかの伝票形式には スクロールバーは明細に設定しています。
    あとはほとんど同じです。
603×380 => 250×157

1489312281.png
/22KB
引用返信 [メール受信/OFF] 削除キー/
■10427 / inTopicNo.19)  Re[10]: ご教示のサイト拝見させてもらいました。
□投稿者/ unta izumo -(2017/03/12(Sun) 21:07:25)
    No10426に返信(まさやんさんの記事)

    キオスク方式とやらも含め、参考にさせて貰おうと思いますが、現在の所、
    これ以上情報を戴いても混乱する一方なので、少しづつ実際のフォム画面を
    作りながら、皆さんのスレットを読み返して、理解を深めようと思います。

    ご教示ありがとうございました。

解決済み!
引用返信 [メール受信/OFF] 削除キー/
■10428 / inTopicNo.20)  Re[10]: 最後の追加情報
□投稿者/ ONnoji -(2017/03/13(Mon) 09:54:37)
    2017/03/13(Mon) 10:05:13 編集(投稿者)
    2017/03/13(Mon) 09:59:51 編集(投稿者)
    2017/03/13(Mon) 09:57:13 編集(投稿者)

    > 現在の所、これ以上情報を戴いても混乱する一方なので、
    > 少しづつ実際のフォム画面を作りながら、皆さんのスレットを読み返して、理解を深めようと思います。

    一気に多くの情報が届いても、消化できませんよね。

    これが最後の追加情報です。

    オシマイです。リプライ不要で願います。

    1.[コマンドボタンの機能名:モーダルフォーム]が万能だと思ったらば早合点です。

    > > その為出来る限り、どんな場面でも、[ESC]の連打でスタート画面である顧客検索画面に戻れるように設定しています。
    > > 日常の業務についてはDOS桐で何ら不便を感じていません。
    >
    > [ESC]の連打でスタート画面に戻るをGUIのウィンドウで考えると
    >
    > <行き>
    > スタート画面 → モーダルなフォーム …(必要ならばさらに)… → モーダルなフォーム
    >
    > <帰り>
    > モーダルなフォームでOKまたはキャンセル動作 → スタート画面
    >
    > キャンセル動作はESCキー一発で行えます。つまり、ESCキー一発でモーダルなフォームは閉じられてしまいます。
    >
    > 例えば、次のようなコマンドボタンの場合
    >
    >    機能名    機能パラメータリスト
    > [1]表示
    > [2]モーダルフォーム  フォームファイル名 ※文字列型の変数でも指定可能
    > [3]手続き実行 prcほげほげ
    > [4]なし
    >
    > モーダルなフォームでESCキーを押すと、モーダルなフォームは閉じられますが、
    > [3]手続き実行 prcほげほげ は実行されません。
    >
    > もちろん、キャンセルでなければ、[3]手続き実行 prcほげほげ を実行します。
    >
    >
    > なお、コマンドボタンのヘルプでは、「キャンセル(ESCキーなどによる破棄終了)時には中止する」とありますが、
    > このキャンセルとは、[3]手続き実行 prcほげほげ を実行しないという意味です。
    > 実に判り難いヘルプで参りますが…
    > ※添付画像を参照
    >
    > ※なお、独習書では[フォーム呼び出し]コマンドでモーダルフォームを開いていますが、
    > ※[フォーム呼び出し]コマンドよりも[コマンドボタンの機能名:モーダルフォーム]の方が取り扱いが簡単です。
    > ※独習書を執筆した時点ではこの点に気が付いていなかったのですが、最近では[コマンドボタンの機能名:モーダルフォーム]を推奨しています。
    > ※同様に[ウィンドウ作成]コマンドは、[コマンドボタンの機能名:開く]を強く推奨します。
    >
    > ※詳しくはこちら
    > ※  ↓
    > ※ウィンドウ関係のコマンド ( ソフトウェア ) - ブログ版−桐のイベント道場 - Yahoo!ブログ
    > ※http://blogs.yahoo.co.jp/siliconvalley_bay_7565/57414018.html
    >
    > その他、
    >
    > ・スタート画面は、チャイルドで最大化して操作します。※フォームの属性で最大化を指定できます。
    > ・モーダルなダイアログは、コマンドボタンの機能:モーダルフォームで開いたフォームです。
    > ・モーダルなフォームは、チャイルドのフォームでも自動的にポップアップのフォームになります。
    >
    > ※チャイルドとポップアップ、モーダルとモードレスという用語は必ず覚えてください。
    > ※独習書:§6 フォームのウインドウの形式 §3 モーダルフォーム

    ↑これを読んで、[コマンドボタンの機能名:モーダルフォーム]が万能だと思ったらば早合点です。

    確かに、[フォーム呼び出し]コマンドよりもはるかに扱いが簡単です。

    それは取り扱いが簡単なのであって、決して万能という意味ではありません。

    キャンセルの時には次の機能名を実行しないので便利だというだけです。

    これが[フォーム呼び出し]コマンドだと、if ... else ... end が必要になってしまいます。

    だから[コマンドボタンの機能名:モーダルフォーム]が便利なんです。

    でもそれだけでは不十分なんです。

     ◇ ◇ ◇ ◇ ◇ ◇ ◇

    [コマンドボタンの機能名:モーダルフォーム]だけで十分な人もいるでしょうけれど、

    実際には、変数の受け渡し機能が必要になってくるものなのです。

    例えると、手続き定義開始の 参照 データ型 変数名 のように、変数を渡して、加工された値を受け取る。

    これを、呼び出し元と呼び出されたフォームの間で行うという意味です。

    組み込み変数を使う方法は独習書で解説しています。

    しかし、組み込み変数の種類も限られているし、なるべくスコープの狭い変数を使いたいのです。

    従って、局所変数の受け渡しが理想です。

    これは独習書のレベルでは難易度が高すぎるので解説できません。



    2.手間を勘案するならば、将来性も考慮するべきです

    DOS桐の一括処理のロジックは流用できます。

    流用できないのはウィンドウシステムとしてのインターフェースです。

    DOS桐ユーザの一括処理の資産を継承しようという目的で桐ver.7方式の一括処理が残っています。

    ※桐ver.7方式の一括処理が桐ver.8以降、現在まで引き継がれています。

    しかし、桐ver.7方式の一括処理の存在意義はもう無きに等しいと思いますよ。

    ウィンドウシステムとしてのインターフェースを作る。

    同じ手間だったら、フォームアプリケーションをお奨めします。

    手間を勘案するならば、将来性も考慮するべきです。


    3.コンビニ業務端末のイメージ

    >>そこで、Win桐に移行する場合、如何に自由度を制限するか…が最大の課題になる
    >>のではと考えています。誤操作で、桐以外のソフトを立ち上げてしまう可能性も
    >>考えられるのですから…。これをクリアする事
    >
    > お決まりの方法です、いわゆる KIOSKフォームと呼ばれています
    > 業務フォームで画面全部を覆ってしまう、コンビニ業務端末のイメージ
    >
    > *最初のスタートフォームを、オーバーラップ・最大化・タイトルバーなし、にします
    > (必ず、閉じるボタンを設置してね)

    なるほど、コンビニ業務端末のイメージですか。

    フォームアプリケーションが完成したら、スタート画面をオーバーラップウィンドウにしても良いかもしれません。

    しかし、あくまでも完成したらです。

    なぜならば、スタート画面をオーバーラップウィンドウにしてしまうと、恐ろしくデバッグがやり難いです。

    開発中は、フォームの再定義・イベント処理の書き直しが頻繁にあります。

    トレース出力ウィンドウも利用します。

    しかし、オーバーラップウィンドウにしてしまうと、これらに対して非常に手間がかかりったり、実行できなかったりします。

    > (必ず、閉じるボタンを設置してね)

    これは Alt + F4 でオーバーラップウィンドウも閉じると思いますよ。

    > *キーボードのwindowsキー無効はレジストリ設定で

    レジストリまでいじる必要があるでしょうか?

    これは個人の好みですから、レジストリは自己責任ですね。

    私だったらレジストリに手を出さないです。


    <追記>

    私の仕事場の連中も相当なPC音痴ですが、わざわざ KIOSKフォームにするほどではありません。

    きっと、これは喜ぶべきことなんでしょうね。



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

次の20件>

トピック内ページ移動 / << 0 | 1 >>

[このトピックに返信]
Mode/  Pass/

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

- Child Tree -
- Antispam Version -