0

2つの編集可能な日付ピッカーフィールド(Start_DateとEnd_Date)とボタンを持つフォーム(TrimQuery)があります。ボタンを押すだけで、フィールド(Trim_Date)をポーリングし、(TrimQuery)フォームで指定した日付の間のすべてのドキュメントを表示する別のフォーム(TrimTrack)から既存のビュー(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
4

4 に答える 4

0

選択式で日付範囲を表すことができます。

SF = {SELECT Trim_Date = [} & StartDate.Text & "-" & EndDate.Text & {] & Form = "} & Trimming & {"}
于 2012-04-24T19:43:55.073 に答える
0

ビューの外部で検索を実行する場合(ビューはその場で変更されることは想定されていないため)、全文検索を使用することをお勧めします。NotesDatabase.FTSearch構文はもう少し複雑で、完全には互換性がありません。選択式の可能性があります。データベースが大きくない場合は、NotesDatabase.Searchメソッドを使用することもできます。ビューの場合と同じ構文ですが、順次(=低速)検索を行います。

于 2012-04-25T12:14:04.750 に答える
0

ビューからドキュメントのサブグループを取得する必要があるため、関心のあるビューで全文検索を使用するのが最適です。全文検索の構文は、ここにあります。データベース内のすべてのドキュメントではなく、特定のビューにあるドキュメントのみに関心があるため、データベースFT検索よりもこれをお勧めします。

検索が完了した後、ドキュメントをどのように表示するかについては具体的ではありません。検索結果に使用する唯一の論理UI構造はフォルダーです。そうしないと、データを管理するカスタムUIを作成するための長くて複雑なプロセスに直面します。ビューを検索フォーム自体に埋め込んだり(フォルダをリンクすることもできます)、ダイアログボックスにフォルダを表示したりできます。

フォルダを扱うときは、フォルダの内容を削除してから、データを入力することを忘れないでください。唯一の欠点は、パブリックフォルダーを使用している場合、複数のユーザーが同時にそれを実行することはできないということです。または、最初の使用時にフォルダをプライベートにすることもできます。NotesDocumentCollection.PutAllInFolderとNotesDocumentCollection.RemoveAllFromFolderを確認して、フォルダーの内容を管理するのに役立ててください。

于 2012-04-26T05:21:34.670 に答える
0

LotusScriptを使用してビューの選択式を変更することはありません。主な理由は、このようなコードを使用するとビューのデザインが変更され、サーバーIDで署名されたエージェントを介して行われた場合でも、複数のユーザーがアクセスしていると問題が発生する可能性があるためです。同時に日付ピッカーコード。

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

ベースラインはデータベース内のすべてのタイプのすべてのドキュメントであるため、最初のアプローチとして全文検索を避けます。したがって、データベースが大きい場合やさまざまなタイプのドキュメントが含まれている場合は効率的ではありません。

于 2012-05-15T20:13:15.157 に答える