In diesem Abschnitt werden die SQL-Musterabfragen aufgeführt, die für die Berichterstellung von IBM® Enterprise Records verwendet werden. Diese Beispiele basieren auf den sofort einsatzfähigen Crystal Report-Vorlagen von IBM Enterprise Records.
Die folgende Abfrage gibt geprüfte Ereignisse zurück, die in Schriftstückkategorie-Instanzen unter dem angegebenen Aktenplanknoten und im angegebenen Zeitrahmen aufgetreten sind:
SELECT rc.PathName, ra.DateLastModified, ra.LastModifier, ra.AuditActionType FROM RMAudit ra INNER JOIN RecordCategory rc ON ra.SourceObjectId = rc.Id WHERE ra.DateLastModified >= 20090101T000000Z AND ra.DateLastModified <= 20090131T000000Z AND rc.This INSUBFOLDER '/Records Management/File Plan'
Die folgende Abfrage gibt geprüfte Aktionen von einem bestimmten Benutzer an Schriftstücken in einem bestimmten Aktenplan-Speicherort während eines bestimmten Zeitrahmens zurück:
SELECT ra.DateLastModified, ra.LastModifier, ra.AuditActionType, ri.DocumentTitle, rmf.PathName FROM ((RMAudit ra INNER JOIN RecordInfo ri ON ra.SourceObjectId = ri.Id) INNER JOIN ReferentialContainmentRelationship RCR on ri.This = rcr.Head) INNER JOIN RMFolder rmf ON rcr.Tail = rmf.This WHERE ra.DateLastModified >= 2009-01-01 AND ra.DateLastModified <= 2009-01-12 AND ra.LastModifier = 'rangelj' AND ri.This INFOLDER '/Records Management/File Plan/Cat1'
Die folgende Abfrage gibt Schriftstückordner zurück, die sich unter dem angegebenen Aktenplanknoten befinden und die vom angegebenen Benutzer im angegebenen Zeitrahmen erstellt wurden:
SELECT rf.PathName, rf.DateCreated, l.LocationName As HomeLocation FROM RecordFolder rf LEFT OUTER JOIN Location l ON rf.HomeLocation = l.This WHERE rf.DateCreated >= 2009-01-01 AND rf.DateCreated <= 2009-01-31 AND rf.Creator = 'rangelj' AND rf.This INSUBFOLDER '/Records Management/File Plan'
Beachten Sie die Verwendung von LEFT OUTER JOIN zum Einschluss den Namens jeder HomeLocation-Instanz, die einer bestimmten Schriftstückordnerinstanz zugeordnet sein könnte.
SELECT v.DateClosed, v.ReOpenedDate, v.VolumeName FROM Volume v WHERE v.DateClosed IS NOT NULL AND v.ReOpenedDate IS NOT NULL AND v.Parent = OBJECT('{24D91623-6C0A-4DB7-9C87-5C172F4A09D2}')
Beachten Sie die Verwendung des effizienteren Volume.Parent-Eigenschaftsvergleichs in der WHERE-Klausel anstelle des alternativen Operators INFOLDER.
Die folgende Abfrage gibt Informationen zurück, die Aussonderungszeitplandaten mit Schriftstücken verbinden, die einen zugeordneten Schriftstücktyp verwenden.
SELECT ds.DisposalScheduleName, a1.ActionType, rc.PathName, rcr.ContainmentName, rt.RecordTypeName FROM (((( RecordInfo ri INNER JOIN RecordType rt ON ri.AssociatedRecordType = rt.This ) INNER JOIN DisposalSchedule ds ON rt.DisposalSchedule = ds.This ) LEFT OUTER JOIN Action1 a1 ON ri.CurrentPhaseAction = a1.This ) INNER JOIN ReferentialContainmentRelationship rcr ON ri.This = rcr.Head ) INNER JOIN RMFolder rc ON rcr.Tail = rc.This WHERE ri.IsDeleted = FALSE
Beachten Sie Folgendes: Wenn eine Abfrage mehrere Joins umfasst, müssen diese durch Klammern getrennt sein.
Im Folgenden sehen Sie eine Variante, die Container zurückgibt, die einem angegebenen Aussonderungszeitplan zugeordnet sind.
SELECT rc.PathName, rc.Aggregation, rc.DateCreated, ds.DisposalScheduleName, A1.ActionType FROM (RMFolder rc INNER JOIN DisposalSchedule ds ON rc.DisposalSchedule = ds.This) LEFT OUTER JOIN Action1 a1 ON rc.CurrentPhaseAction = a1.This WHERE rc.IsDeleted = FALSE AND ds.DisposalScheduleName = 'Sch_PreDefDate'
Die folgende Abfrage gibt notwendige Schriftstücke zurück, die zur Aussonderung in einem angegebenen Zeitraum fällig sind:
SELECT ri.VitalRecordNextReviewDate, rc.PathName, rcr.ContainmentName, ri.DateCreated, ri.Creator, ri.VitalRecordReviewDate FROM (RecordInfo ri INNER JOIN ReferentialContainmentRelationship rcr ON ri.This = rcr.Head) INNER JOIN RMFolder rc ON rcr.tail = rc.This WHERE ri.IsDeleted = FALSE AND ri.IsVitalRecord = TRUE AND ri.VitalRecordNextReviewDate >= 2008-01-01 AND ri.VitalRecordNextReviewDate <= 2009-12-31
Die folgende Abfrage findet Schriftstücke, die während eines bestimmten Zeitraums einer bestimmten Rückstellung zugeordnet wurden und die in einem angegebenen Teil des Aktenplans enthalten sind.
SELECT ri.DocumentTitle, ri.DateCreated, rh.HoldName, rhl.DateCreated As HoldEstablishedOn FROM (RecordHold rh INNER JOIN RecordHoldLink rhl ON rh.This = rhl.Tail) INNER JOIN RecordInfo ri ON rhl.Head = ri.This WHERE ri.IsDeleted = FALSE AND rh.HoldName = 'Smith vs. Jones' AND rhl.DateCreated >= 2008-10-01 AND rhl.DateCreated <= 2008-12-31 AND ri.This INSUBFOLDER ('/Records Management/File Plan/ABC')