| 皆様 お世話になっています。(windows7 桐9−2004-sp4です)
先の「書き出し条件名での警告をイベント会話処理で出したい」で、浅はかにも、処理確認をしないまま、安易に「解決済み」にしてしまいました。
くおんたむさん、ありがとうございます。
問題は、表が表示状態になっていないことで、結局、混迷しています。
も少し状況を説明させていただきますので、アドバイスをよろしくお願いします。
処理したい表Aがあり、一覧表で全体をチェックしながら処理する場合と、伝票形式で、特定のグループについて追加処理をする場合とに分けて、フォームを作りました。 (メニューフォームからそれぞれのフォームが開くコマンドボタンを作りました。)
表Aの最終処理後は、必要な絞り込みや置換を行って、項目や日時値の形式、出力順番を固定した状態で、CSV出力します。
その際、処理ミスがないよう書き出し用の表Bを作成し、そこに絞り込んだ表Aを読み込み、表BをCSV書き出ししようとしています。
これらの処理は、メニューフォームから行うつもりで、コマンドボタンをメニューフォームに置いています。(表が割り当てていないフォームです)
そのフォーム上のコマンドボタンに手続実行を設定して処理をしようとしました。
手続実行に含まれる書き出しCSV処理で、書き出しファイルを会話で指定させた時で、同名ファイルがあるときに教えてくれるようにしたいのです。
機能1 :手続名1(表Bまでの読み込み手続:手続名2 引き続き 書き出しCSV,条件名=”CSV書き出し”)
書き出し CSV,条件名="CSV書き出し" , 終了状態= &OK ケース開始 ケース ( &OK =1 ) メッセージボックス "完了" , "終了しました。" アイコン=!, ボタン指定=1, 制御文字展開=する, &確認 ケース ( &OK ≠1 ) メッセージボックス "確認" ,"処理は中止されました。" ,アイコン=! , ボタン指定=5, 制御文字展開=する,&確認 ケース終了
メッセージ、"確認" ,"処理は中止されました。"が出て、無事終了するのですが、同名ファイルが存在したことがわかりません。
トレースすると、同名ファイルのことを警告として出ているようなのですが、画面には表示されず、設定したメッセージがいきなり出ます。
通りすがりさんに教えていただいて、コマンドボタンの機能割り当てで手続を切り離してみました。
機能1 :表Bまでの読み込み手続:手続名2(手続終了時に、表Bは閉じない状態にしました。) 機能2 :書き出しCSV パラメータ:CSV書き出し
が、書き出しを実行してくれません。
表が指定されておらず、わからないのかもと思い、
機能1 :表Bまでの読み込み手続:手続名C(手続終了時に、表Bを保存して閉じた。) 機能2 :表B開く 機能3 :書き出しCSV パラメータ:CSV書き出し
しかし、表Bを開いた状態で止まってしまいました。
メニューフォームのコマンドボタンを押し、ファイル名を指定する以外の会話を入れたくありません。
しかし、指定されたファイル名が存在した場合は、上書きしないで、ファイル名に問題があるのだとコメントしたいです。
以下、前スレッドです。=======
履歴登録した「書き出し 条件名」をイベントの手続き実行で使用しようとしています。 条件の中で、同名ファイルがある場合を「中止」にすると、会話処理のときは、「同名ファイルが存在します。」と警告を出してくれますよね。
あれを、イベントの中でも処理の途中で出す方法はあるのでしょうか?
書き出し CSV,条件名="CSV書き出し" , 終了状態= &OK ケース開始 ケース ( &OK =1 ) メッセージボックス "完了" , "終了しました。" アイコン=!, ボタン指定=1, 制御文字展開=する, &確認 ケース ( &OK ≠1 ) メッセージボックス "確認" ,"処理は中止されました。" ,アイコン=! , ボタン指定=5, 制御文字展開=する,&確認 ケース終了
上記でケース ( &OK ≠1 )に該当すると思われますが、トレースすると、警告として出ているようなのですが、画面には表示されず、設定したメッセージがいきなり出ます。
ちなみに、終了状態を設定せずに行ったときは、画面に警告が出ました。 もちろん、処理の途中で止まった状態になってしまいました。 それで、終了状態に応じてケース処理を入れました。
同名ファイルがあるために、書き出しができないのだということがわかればいいのですが、何か、方法はあるのでしょうか?
|