2012-04-24 18 views
0

2つの編集可能な日付ピッカーフィールド(Start_Date & End_Date)とボタンを持つフォーム(TrimQuery)があります。ボタンを押すと、フィールド(Trim_Date)をポーリングして、(TrimQuery)フォームで指定した日付の間にすべてのドキュメントを表示する別のフォーム(Trim Track)から既存のビュー(All Trim Tracking)をプルする必要があります日付ピッカーを使用します。私は以下のコードを掲載しました。日付ピッカーを使用した選択式

2つの日付間でドキュメントを表示する別の方法はありますか?私の問題の大半は、コードで投稿した選択式にあると思いますが、間違っていることがわかります。私は他の例からコードのビットをつかむことを試みた。これを選んでください。私が得ることができるどんな助けにも感謝します。ありがとう。

Sub Click(Source As Button) 

Dim session As New NotesSession 
Dim db As NotesDatabase 
Dim view As NotesView 
Dim workspace As NotesUIWorkspace 
Dim doc As NotesDocument 
Dim uidoc As NotesUIDocument 
Dim StartDate As NotesItem 
Dim EndDate As NotesItem 
Dim Trimming As String 

Trimming = "Trim Track" 

Set StartDate = doc.GetFirstItem("Start_Date") 
Set EndDate = doc.GetFirstItem("End_Date") 
Set uidoc=workspace.CurrentDocument 
Set db=session.CurrentDatabase 
Set view=db.GetView("All Trim Tracking") 

SF = {SELECT Trim_Date = "} & StartDate.Text & "&" & EndDate.Text & {" | (Form = }& Trimming & {")} <==I realize this is incorrect, I don't know the correct formula. 

If StartDate.Text <> "" And EndDate.Text <> "" Then 
view.SelectionFormula = SF 
Else 
view.SelectionFormula="select @all" 
End If 

End Sub 

答えて

0

あなたは選択式で日付の範囲を表現することができます。

SF = {SELECT Trim_Date = [} & StartDate.Text & "-" & EndDate.Text & {] & Form = "} & Trimming & {"} 
0

ビューの外に検索を行いたい場合は(ビューのためにその場で変更することが想定されていない)、あなたの」 dは全文検索をよく使う:NotesDatabase.FTSearch構文は少し複雑で、選択式の可能性と完全には互換性がない。データベースが大きくない場合は、NotesDatabase.Searchメソッドを使用することもできます。ビューと同じ構文ですが、シーケンシャル(=遅い)検索です。

0

ビューからドキュメントのサブグループを取得する必要があるので、興味があるのはFull-text search on the viewです。フルテキスト検索の構文はhereです。データベースFT検索では、データベース内のすべてのドキュメントではなく、特定のビューにあるドキュメントのみに興味があるため、これをお勧めします。

検索が完了したら、文書をどのように表示するかは特定されていません。検索結果に使用する唯一の論理的なUI構造はFolderです。そうでなければ、データを管理するカスタムUIを作成するための長くて複雑なプロセスに直面しています。検索フォーム自体にビューを埋め込むこともできます(フォルダをリンクすることもできます)。dialogboxにフォルダを表示することもできます。

フォルダを扱うときには、フォルダの内容を削除してから入力する必要があります。唯一の欠点は、パブリックフォルダを使用している場合、同時に複数のユーザーを実行できないということです。また、最初に使用するときにフォルダを非公開にすることもできます。フォルダの内容を管理するには、NotesDocumentCollection.PutAllInFolderとNotesDocumentCollection.RemoveAllFromFolderを確認してください。

0

ビューの選択式を変更するのにLotusScriptを使用しません。主にそのようなコードを使用するユーザーはビューのデザインを変更し、サーバーIDで署名されたエージェント経由でも複数のユーザーは日付ピッカーコードに同時にアクセスしていました。

私は必要最小限のソート列数でソートされたビアを作成し、一致するドキュメントの開始をスキャンし、notesViewEntryメソッドを使用して終了します。私はそれを非常に頻繁に使用し、非常に高速で、多数のドキュメントであっても、ユーザーが選択できるリストに簡単に変換できます。

その性質上、ベースラインはデータベース内のすべてのタイプのすべてのドキュメントであるため、データベースが大規模であるか、さまざまなタイプのドキュメントが多数含まれていると効率的でないため、全文検索から遠ざかります。

関連する問題