Existe alguna manera de consultar los documentos de mas de una base de datos.?

Sabes que tengo una aplicación que por la cantidad de información que almacena tengo que separarla por años. Ahorita tengo 10 años en 10 bases de datos. Sin embargo tengo que consultar información, de las 10 al mismo tiempo. Incluyendo validaciones.

1 Respuesta

Respuesta

Yo creo que lo mejor es que te hagas un formulario con los campos que quieras buscar,

Y luego hagas las búsquedas en las 10 bases de datos y el resultado lo dejes en una carpeta que sera la que visualices .

Te paso el ejemplo para la búsqueda en una bd.

Una vez que has introducido en el campo el valor a buscar.

Llamas al agente.."búsqueda" .

Abras la carpeta Resultados.

... Te paso el script de hacer la búsqueda y guardar en la carpeta ...

...

Dim session As New NotesSession
Dim db As NotesDatabase
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim view As NotesView
Dim doc As NotesDocument
Dim docActual As NotesDocument
Dim j As Long

Set view = db.GetView("VistaDocumentos")
Set uidoc = workspace.CurrentDocument
uidoc.Refresh
Set docActual=uidoc.Document
clave=docActual.campobusqueda(0)
'clave="Field tucampo=tutexto"

j = view.FTSearch( clave, 0 )
Set doc = view.GetFirstDocument()
While Not(doc Is Nothing)
Call doc.PutInFolder( "CarpetaResultados", True )
Set doc = view.GetNextDocument(doc)
Wend

EL folder puede resideir en una base de datos diferente a la base de datos origen de los datos?

Efectivamente, podrías hacer la selección y podrías copiar los documentos en otra bd que seria la que recogiese los resultados de la búsqueda.

Para darte un solución optima, necesitaría ver exactamente como tienes los datos, las bd y que tipo de búsquedas tendrías que hacer o dejar de hacer.

Si necesitas que te ayude, te puedes poner en contacto conmigo.

.. Perdón.. se me había olvidad el script de ejemplo.

El script para copiar los documentos de la búsqueda a otra bd, seria mas o menos así.

Dim session As New NotesSession
Dim db As NotesDatabase
Dim db2 As New NotesDatabase("","busqueda.nsf")
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument

Set db = session.CurrentDatabase

Set collection = db.FTSearch("Business", 10)
Set doc = collection.GetFirstDocument
If Not doc Is Nothing Then
Call doc.CopyToDatabase(db2)
End If

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas