本文へジャンプ

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む


お客様が developerWorks に初めてサインインすると、プロフィールが作成されます。プロフィールで選択した情報は公開されますが、いつでもその情報を編集できます。お客様の姓名(非表示設定にしていない限り)とディスプレイ・ネームは、投稿するコンテンツと一緒に表示されます。

送信されたすべての情報は安全です。

  • 閉じる [x]

developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む


送信されたすべての情報は安全です。

  • 閉じる [x]

ヒント: Lotus Notes のリッチ・テキスト・フィールドを検証する

Manish K. Prasad, Software Engineer, IBM
Manish K. Prasad is a Software Engineer with the Groupware team in IBM India. His primary area of interest lies in the security features of Lotus Notes applications.

概要: このヒントでは、Lotus Notes のリッチ・テキストの入力フィールドを検証する3つの方法を紹介します。

このシリーズの他の記事を見る

日付:  2005年 12月 20日
レベル:  中級 この記事の原文:  英語
アクティビティー: 5577 ビュー
お気軽にご意見・ご感想をお寄せください: 


このヒントには、Lotus Notesのリッチ・テキスト・フィールドを検証する3つの簡単な方法が記載されています。最初の方法では、任意の文字 (1文字のスペース文字を含む) を受け付けるテキスト・フィールドを検証します。2番目の方法では、少なくとも何らかの非スペース文字を入力しなければならないフィールドを検証します。3番目の方法では、文字が含まれないか、添付ファイル、埋め込みオブジェクト、リンクが含まれる可能性のあるフィールドを検証します。このヒントは、Lotus Domino DesignerおよびLotusScriptを使用したアプリケーション開発の経験がある方を対象として書かれています。

方法1

最初の方法では、フィールドに任意の入力があれば (たとえ1文字のスペース文字だけの場合でも)、フィールドは検証を通過します。この検証では、フィールドが存在するフォームのQuerysaveイベントを使用します。この検証を行うLotusScriptのサンプル・コードを以下に示します。

Sub Querysave(Source As Notesuidocument, Continue As Variant)
            If ( Source.FieldGetText( "rtfield" ) = "" ) Then
                        Messagebox( "Please enter some text." )
                        Call Source.GotoField( "rtfield" )
                        Continue = False
            End If
End Sub

このコードは、rtfieldフィールドで任意の文字をチェックします。フィールドに入力がある場合は (たとえ、それが1つまたは複数のスペース文字であっても)、検証は成功します。フィールドが空の場合、コードはエラー・メッセージを返し、文書を保存しません (ContinueをFalseに設定します)。


方法2

2番目の方法では、リッチ・テキスト・フィールドには、少なくとも1文字の非スペース文字が含まれる必要があります (つまり、1つまたは複数のスペースだけで構成される入力は、受け付けません)。この方法も、フォームのQuerysaveイベントを使用します。

Sub Querysave(Source As Notesuidocument, Continue As Variant)
            
            Dim rtitem As NotesRichTextItem
            Set doc = Source.Document
            Set rtitem = doc.GetFirstItem( "rtfield" )
            Dim text As String
            
            text$ = Source.FieldGetText("rtfield")
            trimmed$ = Trim(text)
            
                        if ( trimmed$ = "") Then
                                    Msgbox "Please enter some text."
                                    Continue = False
                                    source.GotoField("rtfield")
                                    source.Refresh(True)
            Else
                                    Continue = True
            
            End If
End Sub


方法3

3番目の方法では、添付ファイル、埋め込みオブジェクト、またはリンクだけが入力され、文字が含まれないリッチ・テキスト・フィールドを検証します。ここでも、フィールドを含むフォームのQuerysaveイベントを使用します。

Sub Querysave(Source As Notesuidocument, Continue As Variant)

            Dim rtitem As NotesRichTextItem
            Set doc = Source.Document
            Set rtitem = doc.GetFirstItem( "rtfield" )
            Dim text As String
            
            text$ = Source.FieldGetText("rtfield")
            trimmed$ = Trim(text)
            
                        If(doc.Hasembedded)  Then
                                    Continue = True
                                    		
                                    Elseif ( trimmed$ = "") Then
                                    Msgbox "Please enter some text."
                                    Continue = False
                                    source.GotoField("rtfield")
                                    source.Refresh(True)
            Else
                                    Continue = True
                                    
            End If
End Sub

このコードは、検証するフィールドに添付ファイルが存在しない場合でも、文書内のどこかに添付ファイルがあれば機能します。


参考文献

著者について

Manish K. Prasad is a Software Engineer with the Groupware team in IBM India. His primary area of interest lies in the security features of Lotus Notes applications.

不正使用の報告のヘルプ

不正使用の報告

ありがとうございます。 このエントリーは、モデレーターの注目フラグが設定されました。


不正使用の報告のヘルプ

不正使用の報告

不正使用の報告の送信に失敗しました。


developerWorks: サイン・イン


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 利用条件

 


お客様が developerWorks に初めてサインインすると、プロフィールが作成されます。 プロフィールで選択した情報は公開されますが、いつでもその情報を編集できます。 お客様の姓名(非表示設定にしていない限り)とディスプレイ・ネームは、投稿するコンテンツと一緒に表示されます。

表示名をお選びください

developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

(半角英数字で3文字以上31文字以下にする必要があります)


「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 利用条件

 


この記事を評価する

コメント

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Lotus
ArticleID=337904
ArticleTitle=ヒント: Lotus Notes のリッチ・テキスト・フィールドを検証する
publish-date=12202005
author1-email=manprasa@in.ibm.com
author1-email-cc=

タグ

Help
このタグで、My developerWorks のすべてのタイプのコンテンツを見つけるために検索フィールドを使用します。

スライダーバーを使用することで、より多く(少なく)タグを表示します。

人気のタグは、この特定のコンテンツ・ゾーン(例えば、Java テクノロジー、Linux や WebSphere など)に対するトップのタグを表示します。

マイ・タグは、この特定のコンテンツ・ゾーン(例えば、Java テクノロジー、Linux や WebSphere など)に対するお客様ご自身のタグを表示します。

このタグで、My developerWorks のすべてのタイプのコンテンツを見つけるために検索フィールドを使用します。人気のタグは、この特定のコンテンツ・ゾーン(例えば、Java テクノロジー、Linux や WebSphere など)に対するトップのタグを表示します。マイ・タグは、この特定のコンテンツ・ゾーン(例えば、Java テクノロジー、Linux や WebSphere など)に対するお客様ご自身のタグを表示します。