Reporting

<< Click to Display Table of Contents >>

Navigation:  Allgemeine Fragen >

Reporting

 

Fragen und Antworten zum Thema OMNITRACKER ↦ Allgemeine Fragen ↦ Reporting:

 

CR-Viewer: Warum sieht ein Report an zwei verschiedenen Rechnern unterschiedlich aus, obwohl die benutzen Schriftarten auf beiden Rechnern vorhanden sind?

CR-Viewer stellt das Dokument so dar wie es auf dem Ausdruck durch den Standarddrucker erscheint. Man kann die Option No printer einstellen, um eine Drucker-unabhängige Ansicht herbeizuführen.

 

Wo/Wie erhält man die Crystal Reports Runtime Components zum Betrachten von Reports?

Das Setup-Programm für die Crystal-Reports-Laufzeitdateien ist nicht mehr im normalen OMNITRACKER-Setup enthalten. Sie müssen zum Betrachten von Reports ein separates Setup installieren (siehe Release Notes). Dieses Setup steht Ihnen nur zur Verfügung, wenn Sie Crystal Reports über OMNINET erworben haben. Gehen Sie dazu in den Download-Bereich unseres Support-Portals, das Sie über ff. Link erreichen:

https://support.omninet.de

Dort finden Sie weiterführende Informationen und den Link auf die Download-Seite von SAP.

Zu OMNITRACKER V10 und späteren Versionen:

Laden Sie sich von dieser Seite die neuste Version der Crystal Reports Runtime in der 32-bit Version (unabhängig von der Bitness des OMNITRACKER Systems) herunter. Die Installation der Runtimes ist auf jedem Client notwendig, der Reports ausführen möchte. Wenn Sie neue Reports erstellen oder bestehende Reports anpassen möchten, so müssen Sie die Crystal Reports Designer Application installieren. Beides (Designer application sowie SAP Crystal Reports Runtime Engine) können Sie auf Ihrem Rechner installieren.

Für OMNITRACKER Versionen vor V10:

Zum Betrachten von Reports über einen OMNITRACKER Windows Client, das OMNITRACKER Web Gateway oder auf dem OMNITRACKER Server müssen Sie entweder das Crystal Reports Redist Install package oder die Crystal Reports Designer application installieren.

 

Wie versendet man Reports ohne den OMNITRACKER Server zu belasten?

  • Ein server-seitiges Skript startet ein externes VB-Skript und wird direkt nach dem Start beendet.
  • Das externe VB-Skript eröffnet eine Session am OMNITRACKER server (per MakeSessionEx) und erzeugt die Report-Aufgabe per OtTask.Execute.
Dadurch wird eine normale Client-Anwendung "simuliert" ohne den Server zu belasten, denn im Fehlerfall ist nur die Client-Anwendung betroffen und nicht die Serverumgebung. Nachfolgend ein Beispiel wie die Skripte in etwa aufgebaut werden:

Set WshShell = CreateObject(\WScript.Shell\)

WshShell.Run (\C:\myexternalscript.vbs\)

und das externe VB-Skript: (C:\myexternalscript.vbs)

Set objApp = CreateObject(\OtAut.OtApplication\)
Set objSess = objApp.MakeSession(\MyOT-Server.com\, 5085, \DailyReportUser\, \Password\)

' Task \daily report incidents\

Set objFso = CreateObject(\Scripting.FileSystemObject\)
strTmpName = objFso.GetTempName + \.xls\

Set objFld = objSess.RequestFolders(\Incidents\)
Set objTask = objFld.Tasks(\daily report incidents\)
objTask.Execute objFld.CreateRequestList, strTmpName, 3

' Mail to group \Recipients daily incident report\

Set recipients = objSess.CreateEmailAddresses
recipients.AddUserOrGroup objSess.Groups(\Recipients daily incident report\), 1

Set attachments = objSess.CreateEmailAttachments
attachments.AddFile strTmpName, \DailyIncidentReport.xls\

objSess.SendEmailToMultipleRecipients recipients, \Daily Incident Report\, _\Attachment: Daily Incident Report.\, attachments

objFso.DeleteFile strTmpName

 

Crystal Report Viewer: Warum erscheint der Fehler Missing report or database file, wenn ein Report gestartet wird?

Wir haben diese Fehlermeldung bisher meist in Verbindung mit Win7-Rechnern bei Kundeninstallationen erhalten.

Hier hatte es sich im Regelfall um einen (vermuteten) Fehler in der Installations-/Upgraderoutine der RunTime-Komponente gehandelt, der durch eine komplette Neuinstallation (Nicht "Repair-Modus") des OMNITRACKER-Clients beseitigt werden konnte. Dabei die Neuinstallation unbedingt als derjenige User durchführen, bei dem der Fehler produziert wurde.

 

Wie lassen sich in einem Crystal Report fehlende Zeilenumbrüche bei formatierten Textfeldern beeinflussen?

Setzen Sie in den Spalteneigenschaften des Exportschemas (des formatierten Textfeldes) die Option "Formatierte Textfelder exportieren... für Crystal Reports".

Dann muss ein Nachbearbeitungsskript hinzugefügt werden, das alle nicht umgebrochenen Leerzeichen ersetzt. (&nbsp;) Grund: Alle Leerzeichen werden als nicht umbrechende Leerzeichen an Crystal Reports übergeben -> kein Zeilenumbruch.

Beispiel für das Nachbearbeitungsscript:

Dim db, recordset, fieldvalue
Set db = Export.Database
Set recordset = db.CreateRecordset("SELECT Description FROM Requests", 3) 'otsRsetReadWrite

Do While Not recordset.EOF
If Not IsNull(recordset.Field("Description")) Then
recordset.Edit
fieldvalue = recordset.Field("Description")
fieldvalue = Replace(fieldvalue, " ", " ") ' here non breaking spaces are replaced by blanks
recordset.Field("Description") = ActiveSession.Application.ConvertFormattedToCrystalReportsHtml(fieldvalue)
recordset.Update
End If
recordset.MoveNext
Loop

recordset.Close