Erweiterte Änderungen

Dieser Artikel enthält die folgenden Themen:
casm173
Dieser Artikel enthält die folgenden Themen:
Beim Anpassen von Webseiten sollten Sie sich über verschiedene Aspekte im Klaren sein. Dies gilt insbesondere dann, wenn Sie zum Ändern von HTMPL andere Tools als Web Screen Painter nutzen wollen, oder wenn Ihre kundenspezifische Anforderungen außergewöhnlich komplexe Anpassungen verlangen. Es wird dringend empfohlen, CA SDM-Webseiten mithilfe von WSP anzupassen, bevor Sie einen anderen Ansatz ausprobieren. Mit WSP können Sie fast jede erforderliche Anpassung ausführen. Die Software verarbeitet auch Anfragen zur Systemverwaltung wie das Einfügen von Aktualisierungen in das Verzeichnis "site mods" und das Verteilen von veröffentlichten Dateien auf alle Server.
Das Webmodul und sein Cache
Beim Ändern von Webseiten ist es hilfreich, die Struktur der CA SDM-Webserver zu verstehen. Die Web-Schnittstelle verwendet entweder einen J2EE-Servlet-Container wie Tomcat oder einen HTTP-Standardserver wie Apache oder Microsoft Internet Information Server (IIS). Wenn ein Anwender eine CA SDM-Webseite anfordert, ruft der HTTP-Server das verfügbare Programm "pdmweb.exe " auf.
Nachdem das Programm gestartet wurde, stellt "pdmweb.exe" eine Verbindung mit einem CA SDM-Daemon (oder Windows-Dienst) her, der die Web-Engine aufruft. Das Webmodul interpretiert die Anfrage des Benutzers. Für die meisten Anfragen ist es erforderlich, dass das Webmodul nach einer Vorlagendatei (HTMPL) sucht und sie in Standard-HTML überträgt. Für die Übertragung ist es normalerweise erforderlich, dass das Webmodul mit einem CA SDM-Server kommuniziert, um die Datenbank zu lesen oder zu aktualisieren und die Datenbankinformationen in den generierten HTML-Code einzuschließen. Sobald der HTML-Code vollständig ist, sendet ihn die Web-Engine an das Programm "pdmweb.exe", das ihn wiederum zurück an den Browser des Benutzers sendet.
Um die Leistung zu maximieren, liest die Web-Engine jede HTMPL-Datei nur einmal. Nachdem die Datei analysiert und bestimmt wurde, wie sie in HTML übertragen wird, speichert das Webmodul die analysierte Datei in seinem Cache, wodurch die Verarbeitungszeit erheblich reduziert wird, wenn die Datei das nächste Mal angefordert wird. Obgleich der Cache in einer Produktionsumgebung durchaus nützlich ist, kann er in einer Entwicklungsumgebung nachteilig sein, denn Änderungen an HTMPL-Dateien werden erst wirksam, nachdem die Web-Engine neu gestartet oder das Dienstprogramm "pdm_webcache" ausgeführt wurde. In einer Entwicklungsumgebung können Sie dieses Verhalten umgehen, indem Sie die Konfigurationsdateieigenschaft "SuppressHtmplCache" angeben. Allerdings wird empfohlen, den HTMPL-Cache in einer Produktionsumgebung nicht zu deaktivieren. Dies würde sich stark auf die Gesamtleistung der Web-Engine auswirken.
Die Webseiten, die von "pdmweb.exe" bedient werden, werden durch Lesen der HTMPL-Dateien generiert und zum Generieren von HTML verwendet. HTML-Vorlagendateien sind durch das Dateisuffix von ".htmpl" gekennzeichnet. Diese Vorlagendateien können Sie ändern und somit die CA SDM-Webseiten anpassen.
Das Programm "pdm_webcache"
Verwenden Sie das Programm "pdm_webcache", um ein oder mehrere HTMPL-Formulare aus dem Cache des Webmoduls zu entfernen. Dadurch wird das Webmodul gezwungen, diese Formulare von der Diskette abzurufen, wenn sie das nächste Mal verwendet werden, damit die Änderungen an den Formularen wirksam werden.
pdm_webcache [-f form-name] [-g form-group] [-i interface] [-p process] [-v]
  • -f
    form-name
    Gibt den Namen des Formulars, das aus dem Cache entfernt werden soll (z. B detail_cr.htmpl). Sie können "%" (oder "*") als Platzhalterzeichen verwenden, um mehrere Formulare auszuwählen. Zum Beispiel die Spezifikation:
    -f detail%
    wählt alle Detailformulare aus.
    Dieses Argument ist optional. Wenn es weggelassen wird, werden alle Formulare im Cache ausgewählt.
  • -g
    Formulargruppe
    Gibt den Namen der Formulargruppe an, die aus dem Cache entfernt werden soll (z. B. Analytiker). Sie können „%“ (oder „*“) als Platzhalterzeichen verwenden, um mehrere Formulargruppen auszuwählen
    .
    Zum Beispiel die Spezifikation:
    -g Anal%
    wählt alle Formulargruppen aus, die mit „Anal“ beginnen.
    Dieses Argument ist optional. Wenn es weggelassen wird, werden alle Formulargruppen im Cache ausgewählt.
  • -i
    Schnittstelle
    Gibt den Namen der Web-Schnittstelle an, die aus dem Cache entfernt werden soll (z. B. Analytiker, Kunde oder Mitarbeiter). Sie können „%“ (oder „*“) als Platzhalterzeichen verwenden. Zum Beispiel die Spezifikation:
    -i a%
    wählt die Analytikerschnittstelle aus.
    Dieses Argument ist optional. Wenn es weggelassen wird, werden alle Schnittstellen im Cache ausgewählt.
  • -p
    Prozess
    Gibt den Namen des Webmodul-Prozesses an, dessen Cache geändert werden soll (z. B. web:local).
    Dieses Argument ist optional. Wenn es weggelassen wird, werden alle Webmodule ausgewählt.
  • -v
    Gibt die Ausgabe in Textform an. Wenn dieses Argument angegeben ist, führt pdm_webcache den vollen Namen von jedem Formular auf, das aus dem Cache entfernt wurde, und zwar in folgendem Format:
    Schnittstelle
    :
    Formulargruppe
    :
    Formularname
    Dieses Argument ist optional. Wenn es weggelassen ist, gibt pdm_webcache nur die Anzahl an Formularen aus, die aus dem Cache des Webmoduls entfernt wurden.
So ändern Sie HTML-Vorlagen
In der Regel können Sie zwei Arten von Änderungen an HTML-Vorlagen vornehmen:
  • Sie können Änderungen vornehmen, die für den Anwender sichtbar sind, jedoch von der Web-Schnittstelle nicht vor der Anzeige geändert werden. Sie können z. B. eine GIF-Datei mit Ihrem Unternehmenslogo in den Web-Schnittstellenseiten ("Pass Through") einfügen, indem Sie eine Referenz zur entsprechenden Vorlagendatei hinzufügen, oder Sie könnten JavaScript zur Ihrer Seite hinzufügen, um die Eingabe zu validieren. Alle Änderungen, die Sie an der HTMPL-Datei vornehmen, die nicht in einem PDM-Tag enthalten sind, wie im Folgenden definiert, werden unverändert an den HTML-Code übergeben, der an den Anwender zurückgegeben wird.
  • Sie können die ersetzbaren Abschnitte der Vorlagen ändern. Beispielsweise können Sie der Seite "Anfrage - Detail" neue Anwendungsdaten hinzufügen.
Anhand verschiedener Einträge in der Vorlage haben Sie folgende Möglichkeiten:
  • Anzeigen von Informationen aus CA SDM für den Anwender.
  • eine Abfragenseite einrichten.
  • Verknüpfungen zu anderen CA SDM-Seiten mit Hilfe von Verknüpfungs-Tags erstellen.
Dateien, die nicht geändert werden sollten
Gewisse HTMPL-Vorlagen und JavaScript-Dateien enthalten Informationen, die für viele CA SDM-Webformulare erforderlich sind. Die Informationen in diesen Vorlagen sind sowohl versionsabhängig als auch kritisch für die erfolgreiche Operation der CA SDM-Web-Schnittstelle. Deshalb werden diese Dateien immer ersetzt, wenn eine neue Version von CA SDM herausgegeben wird. Durchgeführte Änderungen an diesen Dateien werden nicht aktualisiert.
Die Vorlagen, die von diesen Einschränkungen betroffen sind, lauten folgendermaßen:
  • ahdtop.htmpl
    Enthält Stile, Skripte und JavaScript-Variablen, die in der ganzen CA SDM-Web-Schnittstelle verwendet werden. Diese Datei gehört zum Haupt-Frameset der Web-Schnittstelle und ist während einer Sitzung immer verfügbar. Alle CA SDM-Formulare haben Zugriff auf die JavaScript-Variable „ahdtop“, die auf das Fenster mit „ahdtop.htmpl“ verweist.
  • menu_frames.htmpl
    Definiert das HTML-Frameset, das vom CA SDM-Hauptformular verwendet wird.
  • msg_cat.js
    Enthält den Text aller Meldungen, die in CA SDM-JavaScript-Dateien verwendet werden.
  • reports.htmpl
    Enthält Daten, die für Webberichte erforderlich sind.
  • std_body.htmpl
    Enthält Standardinformationen, die am Anfang des Abschnitts „BODY“ der meisten HTMPL-Vorlagen verwendet werden.
  • std_footer.htmpl
    Enthält Standardinformationen, die am Ende des Abschnitts „BODY“ der meisten HTMPL-Vorlagen verwendet werden.
  • std_head.htmpl
    Enthält Standardinformationen, die am Anfang des Abschnitts „HEAD“ der meisten HTMPL-Vorlagen verwendet werden.
  • styles.htmpl
    Enthält CSS-Stile, die in der ganzen CA SDM-Web-Schnittstelle verwendet werden.
Obwohl Sie diese Dateien nicht direkt ändern können, können Sie zusätzliche Informationen zu ihnen hinzufügen. Jede eingeschränkte Datei "xxx.htmpl" (mit Ausnahme von "menu_frames.htmpl" und "reports.htmpl") weist eine entsprechende Datei "xxx_site.htmpl" auf, die Sie anpassen können. Zum Beispiel können Sie "ahdtop.htmpl" weitere Informationen hinzufügen, indem Sie "ahdtop_site.htmpl" anpassen, oder neue Meldungen hinzufügen, indem Sie "msg_cat_site.js" anpassen.
Die "xxx_site.htmpl"-Datei zu jeder eingeschränkten Datei wird nach der Hauptdatei geladen. So können Sie JavaScript in der Hauptdatei überschreiben oder ändern. Gehen Sie sorgfältig vor, wenn Sie Informationen ändern, da schlecht entworfene Änderungen an diesen Dateien unerwartete Probleme in der gesamten CA SDM-Web-Schnittstelle verursachen können.
Richtlinien für neue HTMPL-Dateien
Sie können Ihre eigenen HTMPL-Dateien zur CA SDM-Web-Schnittstelle hinzufügen. Befolgen Sie diese Richtlinien, um sicherzustellen, dass Ihre HTMPL-Dateien gut mit dem Rest der CA SDM-Schnittstelle interagieren:
  1. Schließen Sie die folgende Anweisung irgendwo im <HEAD>-Abschnitt der Datei ein. Diese Anweisung sollte gegebenenfalls der <TITLE>-Anweisung folgen. Sie definiert mehrere globale JavaScripte-Variablen, die für die CA SDM-Web-Schnittstelle erforderlich sind, und registriert auch Ihre Seite mit dem CA SDM-Fenstermanager:
    <PDM_INCLUDE FILE=std_head.htmpl>
  2. Schließen Sie das folgende Attribut als Teil des <BODY>-Tags der Datei ein. Dieses Attribut unterstützt den CA SDM-Fenstermanager dabei, Ihre Seite zu verfolgen:
    onUnload="deregister_window()"
  3. Schließen Sie die folgende Anweisung am Anfang des <BODY>-Abschnitts Ihrer Datei ein. Das Argument „menubar=no“ ist optional. Wenn es angegeben wird, unterdrückt es die CA SDM-Menüleiste:
    <PDM_INCLUDE FILE=std_body.htmpl [menubar=no]>
  4. Schließen Sie die folgende Anweisung am Ende des <BODY>-Abschnitts Ihrer Datei ein.
    <PDM_INCLUDE FILE=std_footer.htmpl>
Hinzufügen von benutzerdefinierten Statusinformationen
Viele Kunden möchten ihre eigenen Statusinformationen in die CA SDM-Webseiten einbetten. In diesem Fall muss CA SDM die Statusinformationen an alle nachfolgenden Seiten, die er bedient, bis zur Sitzung des Benutzers weiterleiten. Diese Informationen können mit bedingten Anweisungen in den HTMPL-Dateien abgefragt werden.
Statusinformationen für die Sitzung eines Benutzers werden erhalten, indem das Sonderattribut USER_STATE in Ihren Verknüpfungen oder Formularen eingerichtet wird. Nach dem Senden an die Web-Engine von CA SDM verfügt jede Seite, die dem Anwender angezeigt wird, über die HTMPL-Variable USER_STATE. Diese ist auf den letzten Wert gesetzt, der für USER_STATE gesendet wurde.
Die folgenden Beispiele zeigen, wie Sie einen Eintrag in CA SDM von einem anderen Bereich Ihres Standorts, wie z. B. von Seiten für den Vertrieb einrichten kölnnen:
  • Verwenden von Hyperlinks
    <a href="/CAisd/pdmweb.exe?USER_STATE=Sales">Service Desk</a>
  • Verwenden von Formularen mit ausgeblendeten Feldern
    <form action="http://yourhost.com/CAisd/pdmweb.exe"> <input type=hidden name=USER_STATE value=Sales>
    Klicken Sie auf die Schaltfläche für den Service Desk.
    <input type=submit> </form>
Dann können Sie Ihre HTMPL-Formulare auf der Basis von Statusinformationen anpassen:
<PDM_IF "$USER_STATE" == "Sales">
Benutzerdefinierte Informationen für Vertriebsmitarbeiter
<PDM_ELIF "$USER_STATE" == "Engineering">
Benutzerdefinierte Informationen für Ingenieure
<PDM_ELSE>
Informationen für alle anderen
</PDM_IF>
Direktes Erstellen einer Anfrage von einer Vorlage
Über eine URL können Sie eine Anfrage direkt aus einer Vorlage erstellen.
Beispiel
http://machinename/CAisd/pdmweb.exe?FACTORY=cr+OP=CREATE NEW+PERSID=cr:3106+use_template=1
wobei cr:3106 der persid der Vorlage entspricht.
Vom HTTP-Server verwendete Verzeichnisse
Bei der Standardinstallation von CA SDM werden zwei virtuelle Verzeichnisse für Ihren HTTP-Server definiert:
  • Das virtuelle Verzeichnis "CAisd" zeigt auf das folgende Verzeichnis Ihrer CA SDM-Installation:
    1. Unter Windows:
      installationsverzeichnis
      \bopcfg\www\wwwroot
    2. Unter UNIX: $NX_ROOT/bopcfg/www/wwwroot
  • Das virtuelle Verzeichnis "CAisd/sitemods" zeigt auf das folgende Verzeichnis Ihrer CA SDM-Installation:
    1. Unter Windows:
      installationsverzeichnis
      \site\mods\www\wwwroot
    2. Unter UNIX: $NX_ROOT/site/mods/www/wwwroot
Die Unterverzeichnisse unter diesen virtuellen Verzeichnissen sind:
Unterverzeichnis
Inhalt
css
Stylesheets
help
Hilfe zur Web-Schnittstelle
html
HTML-Dateien
img
Grafikdateien
scripts
JavaScript
sitemods
Seitendefinierte Anpassungen
Wenn Sie eine angepasste Version einer der Dateien im Verzeichnis "css", "html", "img" oder "scripts" erstellen möchten, wird empfohlen, dass Sie die Datei im Verzeichnis "/CAisd" nicht aktualisieren. Speichern Sie die Datei stattdessen im entsprechenden Unterverzeichnis von "/CAisd/sitemods". Wenn Sie z. B. ein Stylesheet im Verzeichnis "/CAisd/css" ändern möchten, speichern Sie die angepasste Version im Verzeichnis "/CAisd/sitemods/css". Wenn das Webmodul eine HTMPL-Datei analysiert, modifiziert es automatisch Dateinamen, die mit $CAisd beginnen, so dass sie auf "sitemods" verweisen, wenn die Datei in einem Unterverzeichnis von "sitemods" existiert.
Die Verwendung des Verzeichnisses "/CAisd/sitemods" weist folgende Vorteile auf:
  • Sie ermöglicht das Verfolgen der verteilten Dateien, die Sie geändert haben.
  • Sie bietet den einfachen Zugriff auf die ursprüngliche Version, wenn eine Frage oder ein Problem auftritt.
  • Sie vereinfacht das Verfahren zum Installieren der Wartung oder einer neuen Version, da bei der Installation von CA SDM nichts in das Verzeichnis "/CAisd/sitemods" eingefügt wird.
Das Unterverzeichnis "/CAisd/sitemods/help" ist nicht vorhanden. Da es sich bei den Hilfedaten um standardmäßige HTML-Dateien (keine HTMPL-Vorlagen) handelt, kann das Webmodul die Dateireferenzen nicht dynamisch ändern. Wenn eine Anpassung der Hilfedaten erforderlich ist, müssen Sie die Änderungen in "/CAisd/help" vornehmen.
Das HTML-Unterverzeichnis enthält ein paar häufig verwendete Dateien, die vom Webmodul nicht verarbeitet werden müssen und die Leistung verbessern können, wenn sie im Cache des Browsers gespeichert werden. Wenn Sie eine angepasste Version einer beliebigen dieser Dateien erstellen, prüfen Sie die Datei sorgfältig auf Referenzen zu anderen angepassten Dateien. Da keine Verarbeitung durch das Webmodul stattfindet, müssen Sie gegebenenfalls manuell eine Referenz auf das Verzeichnis "sitemods" einfügen.
Download von PDF-Anhängen
Wenn Sie einen PDF-Anhang herunterladen und in CA SDM anzeigen möchten, wird die PDF-Datei möglicherweise nicht richtig dargestellt, oder es wird ein leeres Fenster angezeigt. Dies kann nach der Aktualisierung von Adobe Acrobat auf Version 7.0 oder 8.0 vorkommen. Führen Sie folgende Schritte aus, um die PDF-Datei korrekt in CA SDM anzuzeigen:
  1. Legen Sie für den Parameter
    forceDecompressOnDownload
    in "$NX_ROOT\bopcfg\www\CATALINA_BASE\webapps\CAisd\WEB-INF\web.xml" die Einstellung JA fest.
    Linux: $NX_ROOT ist "/opt/CAisd".
  2. Starten Sie die CA SDM-Dienste neu.