Home — Leistungserfassung — KB0409: Texte auf Berichten anpassen

KB0409: Texte auf Berichten anpassen

BESCHREIBUNG

Mit der Hilfe des Bericht-Designers im Berichts-Manager kann der Benutzer auf Berichten die vorgegebenen Texte ändern. Beim erneuten Öffnen des Berichts mit dem Bericht-Designer oder beim Anzeigen des Berichts werden jedoch wieder die ursprünglichen Texte angezeigt.

URSACHE

Die statischen Texte auf den Berichten werden in sogenannten Label-Controls definiert. Die Texte der Original Label-Controls auf den Berichten werden zur Laufzeit dynamisch aus den Sprach-Ressourcen geladen. Dies ist nowendig, damit die Mehrsprachigkeit korrekt funktioniert. Falls die Mehrsprachigkeit für einen Kunden nicht von Bedeutung ist und der Text eines Original Label-Controls anders lauten soll, ist dieses Verhalten nicht erwünscht, da die gemachten Änderungen im Bericht-Designer nicht übernommen werden.

LÖSUNG

Dieser Artikel beschreibt die Schritte, die notwendig sind, um das Überschreiben der Texte von Original Label-Controls zu verhindern. Diese Möglichkeit besteht ab der Version v.4.3 der TimeSafe Leistungserfassung.

Das Vorgehen wird anhand eines Beispiel mit dem Bericht 0001 Stundenrapport beschrieben. Auf diesem Bericht soll anstelle des Texts Zeitraum: der Text Periode: ausgegeben werden.

  1. Melden Sie sich an TimeSafe mit einem Benutzer an, welcher über Vollzugriff auf den Bereich Stammdaten verfügt
  2. Navigieren Sie in der Hauptnavigation auf der linken Seite zum Eintrag Stammdaten
  3. Navigieren Sie in der Hauptnavigation auf der linken Seite zum Eintrag Berichts-Manager
  4. Suchen und selektieren Sie in der Liste auf der rechten Seite den Eintrag 0001 Stundenrapport
  5. Wählen Sie oben im Hauptmenu den Eintrag Bearbeiten… in der Gruppe Bericht-Layout. Alternativ können Sie über das Kontextmenu (rechte Maustaste) den Eintrag Layout bearbeiten wählen
  6. Selektieren Sie im linken Bereich des Berichts das Label-Control mit dem Namen mLabelTitelZeitraum und dem Text Zeitraum:. Auf der rechten Seite im unteren Bereich werden Ihnen nun die Eigenschaften dieses Label-Controls angezeigt.
  7. Navigieren Sie zur Eigenschaft Text und tragen Sie dort den Wert Periode: ein. Wenn Sie diese Änderungen speichern und den Bericht wieder im Desinger öffnen würden, könnten Sie sehen, dass in dem Label-Control wieder der Text Zeitraum: angezeigt würde, da dieser Text dynamisch aus den Sprach-Ressourcen geladen wird.
  8. Selektieren Sie nun die Eigenschaft Tag des Label-Controls und tragen Sie dort den Wert no-replace ein.
  9. Beenden Sie den Dialog mit OK

BEMERKUNGEN

  • Der Wert no-replace kann auch für andere Controls in der Eigenschaft Tag definiert werden, z.B. für Controls vom Typ TextBox.
  • Falls ein Text anders lauten soll und die Mehrsprachigkeit berücksichtigt werden soll, muss der Text zur Laufzeit dynamisch zugewiesen werden. Ein auskommentiertes Beispiel für die Implementierung finden Sie im Script-Code jedes Berichts in der Region Individuelle Übersetzungen im Ereignis ActiveReport_ReportStart
  • Auf den Rechnungsberichten können die Bezeichner, z.B. Projekt, teilweise im Programm vorgegeben werden. Solche Labels sind dadurch erkennbar, dass in der Eigenschaft DataField des Label-Controls etwas definiert ist. Falls für ein Control dieser Art ein anderer Text gesetzt werden soll, muss der Inhalt der Eigenschaft DataField gelöscht werden und in der Eigenschaft Tag der Inhalt no-replace definiert werden.