作成者カテゴリ返答の対象
公開
Ota
02/28/2000 07:46 PM
文書リンクアイコン 承認ワークフローでフィールドを入力必須にしたい。
Re:承認ワークフローでフィールドを入力必須にしたい。

びぃ〜さんのおかげで片付いたようですが、びぃ〜さんの発言でちょっといい気になって、
Input Validationを使わない方法を考えてみたので、蛇足ながら一応書いてみます。

1.サブフォームの「申請」アクションの一番最初に、以下の3行を追加します。
FIELD CheckFlg := "0";
@Command ( [ViewRefreshFields] );
@If ( CheckFlg="1"; @Return("") ; "" );

これで、「申請」ボタンが押された時には、最初に CheckFlgが "0"の状態でフォームの
PostRecalcが実行されると思います。
ホントはここでフォームの入力チェック用の共通関数を Callしたかったのですが、でき
ない(?)ようなので、代わりにViewRefreshFieldsを利用してPostRecalcを呼出すよう
にしました。

2.フォームの PostRecalcの中ではフォームの全ての入力項目のチェックを行います。
Sub PostRecalc(Source As Notesuidocument)

Dim Doc As NotesDocument
Set Doc = Source.Document

If Doc.CheckFlg(0) = "" Then <--- 新規申請書作成時の処理
Exit Sub
End If

If Doc.RequesterComments(0) = "" Then <--- 入力チェックの例
Doc.CheckFlg = "1"
MessageBox "申請理由を入力してください。", 64, "Title"
Exit Sub
End If

End Sub

これは、
・申請アクションで真っ先にエラーチェックしたい。
・複数のフィールドのエラーチェックを一個所でまとめたい。
ということで考えてみたのですが、いかがでしょうか?
またしてもロクな動作確認をしてませんので、数時間後に「やっぱりダメでした」の
書込みをする可能性大です。(特にフラグの初期化がうまくイメージできないので、
間違ってると悲惨なことになりそうです。。。)
できれば、これを読んでる皆様に添削をお願いしたいと思います。


[Previous Main Document]
承認ワークフローでフィールドを入力必須にしたい。 (さと)
. . Re: 承認ワークフローでフィールドを入力必須にしたい。 (Ota)
. . . . Re: 承認ワークフローでフィールドを入力必須にしたい。 (びぃ〜)
. . . . . . Re: 承認ワークフローでフィールドを入力必須にしたい。 (Ota)
. . . . . . . . 回答ありがとうございます。 (さと)
. . . . . . . . . . すみません。。 (さと)
. . . . . . . . . . . . Re:承認ワークフローでフィールドを必須入力に (びぃ〜)
. . . . . . . . . . . . . . Re:承認ワークフローでフィールドを必須入力に (さと)
. . . . . . . . . . . . . . . . Re:承認ワークフローでフィールドを必須入力に (びぃ〜)
. . . . . . . . . . . . . . . . . . Re:承認ワークフローでフィールドを入力必須にしたい。 (Ota) * 現在地 *
. . . . . . . . . . . . . . . . . . . . Re:承認ワークフローでフィールドを入力必須にしたい。 (さと)
. . . . . . . . . . . . . . . . . . . . . . Re:承認ワークフローでフィールドを入力必須にしたい。 (さと)
. . . . . . . . . . . . . . . . . . . . 承認WF入力チェックその後 (saho)
[Next Main Document]