Bausteine anpassen > Dienste anpassen
Dienste anpassen
Sie können die in den PTC Bausteinen bereitgestellten Dienste anpassen, um Ihre eigene Logik zu implementieren. Dazu müssen Sie einen neuen Baustein erstellen, der aus dem PTC Baustein erweitert wird, und den Dienst im Manager-Ding für Ihren neuen Baustein überschreiben. Die Dienste in einem Baustein können auf der Seite Dienste des Manager-Dings für den Baustein angezeigt werden.
Beachten Sie beim Anpassen von Diensten Folgendes:
Wenn der Code von Diensten geändert wird, kann dies zu verlängerten Verarbeitungszeiten oder zu erhöhtem Berechnungsaufwand und somit zu einer verringerten Leistung führen.
Als optimale Vorgehensweise sollten Sie eher Back-End-Dienste als benutzeroberflächenbezogene Dienste anpassen.
Dienste anpassen
Führen Sie die folgenden Schritte aus, um einen Dienst anzupassen:
1. Bestimmen Sie, welcher Baustein den Dienst enthält, den Sie anpassen möchten. Dies lässt sich leicht anhand des Namens des Manager-Dings ermitteln, unter dem sich der Dienst befindet. Beispiel: Wenn sich der Dienst unter dem Ding PTC.StatusImpl.Manager befindet, ist er in dem Baustein PTC.StatusImpl enthalten.
2. Erstellen Sie einen neuen Baustein, der sich von dem PTC Baustein aus erweitert, der den Dienst enthält, den Sie anpassen möchten.
Führen Sie die folgenden Schritte aus, um den neuen Baustein zu erstellen:
a. Erstellen Sie ein neues Projekt. Verwenden Sie ein eindeutiges Präfix für Ihr Projekt, z.B. den Namen Ihres Unternehmens. Das Präfix "PTC" ist für Entitäten reserviert, die von PTC bereitgestellt werden. Erstellen Sie für dieses Beispiel ein Projekt mit dem Namen MyCompany.StatusImpl. Fügen Sie für jede neue Dingvorlage, jedes neue Ding oder jede andere Entität, die Sie für diesen Baustein erstellen, Ihr neues Projekt als Wert Projekt auf der Seite Allgemeine Informationen für die Entität hinzu.
b. Erstellen Sie eine neue Dingvorlage in Ihrem Projekt, die PTC.DefaultConfiguration.EntryPoint_TT als Basis-Dingvorlage verwendet. Nennen Sie die neue Dingvorlage für dieses Beispiel MyCompany.StatusImpl.EntryPoint_TT.
c. Erstellen Sie ein neues Ding in Ihrem Projekt, das die in Schritt 2.b erstellte Dingvorlage als Basis-Dingvorlage verwendet. Nennen Sie das neue Ding für dieses Beispiel MyCompany.StatusImpl.EntryPoint.
d. Erstellen Sie eine neue Dingvorlage in Ihrem Projekt, die die Manager-Dingvorlage aus dem PTC Baustein, von dem aus erweitert wird, als Basis-Dingvorlage verwendet. Nennen Sie die neue Dingvorlage für dieses Beispiel MyCompany.StatusImpl.Manager_TT, und verwenden Sie PTC. StatusImpl.Manager_TT als deren Basis-Dingvorlage.
e. Erstellen Sie ein neues Ding in Ihrem Projekt, das die in Schritt 2.d erstellte Dingvorlage als Basis-Dingvorlage verwendet. Nennen Sie das neue Ding für dieses Beispiel MyCompany.StatusImpl.Manager, und verwenden Sie MyCompany.StatusImpl.Manager_TT als dessen Basis-Dingvorlage.
3. Fügen Sie sämtliche Konfigurationen aus dem Manager-Ding vom ursprünglichen Benutzeroberflächen-Baustein zum Manager-Ding für Ihren neuen Baustein hinzu.
a. Navigieren Sie zum Manager-Ding, das Sie in Schritt 2.e erstellt haben, in diesem Beispiel MyCompany.StatusImpl.Manager.
b. Fügen Sie unter Konfiguration die gleichen Konfigurationen hinzu, die auf der Seite Konfiguration für das Manager-Ding des ursprünglichen Bausteins enthalten sind, in diesem Beispiel PTC.StatusImpl.Manager.
4. Registrieren Sie das Manager-Ding des neuen Bausteins als den Manager, der anstelle des Managers aus dem PTC Baustein, von dem aus Ihr Baustein erweitert wurde, verwendet werden soll.
a. Navigieren Sie zu dem Ding PTC.Base.Manager.
b. Suchen Sie unter Konfiguration nach der Konfigurationstabelle DefaultGlobalManagerConfiguration.
c. Klicken Sie in der Zeile mit dem Wert für managerThingName, der dem Manager des PTC Bausteins entspricht, von dem aus Ihr Baustein erweitert wurde, auf Bearbeitungssymbol.
Klicken Sie für dieses Beispiel auf Bearbeitungssymbol in der Zeile mit dem Wert managerThingName für PTC.StatusImpl.Manager.
d. Legen Sie im Bearbeitungsfenster das Feld manageThingName auf den Namen des Manager-Dings für den Baustein fest, den Sie in Schritt 2.e erstellt haben.
e. Klicken Sie auf Festlegen, um den neuen Wert festzulegen.
f. Klicken Sie auf Speichern, um die Änderungen an dem Ding PTC.Base.Manager zu speichern.
5. Überschreiben Sie den Dienst, um die benutzerdefinierte Logik zu implementieren.
a. Navigieren Sie zu der Manager-Dingvorlage für Ihren Baustein. Navigieren Sie in diesem Beispiel zu der Dingvorlage MyCompany.StatusImpl.Manager_TT.
b. Suchen Sie unter Dienste den Dienst, den Sie anpassen möchten, und klicken Sie auf Symbol zum Überschreiben, um den Dienst zu überschreiben.
c. Nehmen Sie im Skript-Editor die Änderungen am Code vor, die für die Implementierung der benutzerdefinierten Logik erforderlich sind.
d. Klicken Sie auf Fertig, um die Änderungen am Dienst zu speichern.
e. Klicken Sie auf Speichern, um die Änderungen am Manager-Ding zu speichern.
Dienste in einem Benutzeroberflächen-Baustein anpassen
Wenn der Dienst, den Sie überschreiben, ein Dienst für einen Benutzeroberflächen-Baustein ist, führen Sie die folgenden Schritte aus:
1. Erstellen Sie einen neuen Baustein, der aus dem PTC Baustein erweitert wird, in diesem Beispiel den Baustein PTC.ProductionDashboard.
Führen Sie die folgenden Schritte aus, um den neuen Baustein zu erstellen:
a. Erstellen Sie ein neues Projekt. Verwenden Sie ein eindeutiges Präfix für Ihr Projekt, z.B. den Namen Ihres Unternehmens. Das Präfix "PTC" ist für Entitäten reserviert, die von PTC bereitgestellt werden. Erstellen Sie für dieses Beispiel ein Projekt mit dem Namen MyCompany.ProductionDashboard. Fügen Sie für jede neue Dingvorlage, jedes neue Ding oder jede andere Entität, die Sie für diesen Baustein erstellen, Ihr neues Projekt als Wert Projekt auf der Seite Allgemeine Informationen für die Entität hinzu.
b. Erstellen Sie eine neue Dingvorlage in Ihrem Projekt, die PTC.Base.ComponentEntryPoint_TT als Basis-Dingvorlage verwendet. Nennen Sie die neue Dingvorlage für dieses Beispiel MyCompany.ProductionDashboard.EntryPoint_TT.
c. Erstellen Sie ein neues Ding in Ihrem Projekt, das die in Schritt 1.b erstellte Dingvorlage als Basis-Dingvorlage verwendet.
d. Erstellen Sie eine neue Dingvorlage in Ihrem Projekt, die die Manager-Dingvorlage aus dem PTC Baustein, von dem aus erweitert wird, als Basis-Dingvorlage verwendet. Nennen Sie die neue Dingvorlage für dieses Beispiel MyCompany.ProductionDashboard.Manager_TT und verwenden Sie PTC.ProductionDashboard.Manager_TT als Basis-Dingvorlage.
e. Erstellen Sie ein neues Ding in Ihrem Projekt, das die in Schritt 1.d erstellte Dingvorlage als Basis-Dingvorlage verwendet. Nennen Sie das neue Ding für dieses Beispiel MyCompany.ProductionDashboard.Manager und verwenden Sie MyCompany.ProductionDashboard.Manager_TT als Basis-Dingvorlage.
2. Überschreiben Sie den Dienst, um die benutzerdefinierte Logik zu implementieren.
a. Navigieren Sie zu der Manager-Dingvorlage für Ihren Baustein. Navigieren Sie in diesem Beispiel zu der Dingvorlage MyCompany.ProductionDashboard.Manager_TT.
b. Suchen Sie unter Dienste den Dienst, den Sie anpassen möchten, und klicken Sie auf Symbol zum Überschreiben, um den Dienst zu überschreiben.
c. Nehmen Sie im Skript-Editor die Änderungen am Code vor, die für die Implementierung der benutzerdefinierten Logik erforderlich sind.
d. Klicken Sie auf Fertig, um die Änderungen am Dienst zu speichern.
e. Klicken Sie auf Speichern, um die Änderungen am Manager-Ding zu speichern.
3. Aktualisieren Sie die Eigenschaft manager im Haupt-Mashup für diese Benutzeroberfläche, um auf das Manager-Ding des neuen Bausteins zu verweisen. Dies bewirkt, dass die Mashups, die von diesem Haupt-Mashup aufgerufen werden, keine Dienste vom Manager des ursprünglichen Bausteins, sondern Dienste von Ihrem neuen Manager ausführen.
Bei dem Haupt-Mashup handelt es sich um das Mashup, das geladen wird, wenn die Menüoption für den Baustein im Lösungs-Navigationsmenü ausgewählt wird. Der Haupt-Mashup-Name befindet sich in der Tabelle MenuConfiguration auf der Seite Konfiguration des Manager-Dings des Bausteins. Es handelt sich um den menuItemMashupName aus der Zeile mit dem Wert MasterMenuNavigation für menuName. Beispielsweise ist PTC.ProductionDashboard.MainFrame_MU das Haupt-Mashup für den Produktions-Dashboard-Baustein.
a. Navigieren Sie zum Haupt-Mashup für den Benutzeroberflächen-Baustein.
b. Duplizieren Sie das Mashup. Wenn Sie z.B. das Haupt-Mashup für den Produktions-Dashboard-Baustein duplizieren, nennen Sie es MyCompany.ProductionDashboard.MainFrame_MU. Ändern Sie den Wert Projekt auf der Seite Allgemeine Informationen für Ihr Mashup in das Projekt, das Sie in Schritt 1.a erstellt haben.
c. Klicken Sie auf Konstruktion, um das Mashup im Mashup Builder anzuzeigen.
d. Wählen Sie im Explorer die oberste Ebene des Mashups aus.
e. Ändern Sie unter Eigenschaften die Eigenschaft manager so, dass sie auf den Manager des neuen Bausteins verweist, den Sie in Schritt 1.e erstellt haben.
f. Klicken Sie auf Speichern, um das Mashup zu speichern.
4. Fügen Sie sämtliche Konfigurationen aus dem Manager-Ding vom ursprünglichen Benutzeroberflächen-Baustein zum Manager-Ding für Ihren neuen Baustein hinzu.
a. Navigieren Sie zum Manager-Ding, das Sie in Schritt 1.e erstellt haben, in diesem Beispiel MyCompany.ProductionDashboard.Manager.
b. Fügen Sie unter Konfiguration die gleichen Konfigurationen hinzu, die auf der Seite Konfiguration für das Manager-Ding des ursprünglichen Bausteins enthalten sind, in diesem Beispiel PTC.ProductionDashboard.Manager. Fügen Sie insbesondere die Konfigurationen aus den Tabellen MashupConfiguration und DefaultConfiguration hinzu.
5. Bearbeiten Sie die Menüoption im Lösungs-Navigationsmenü, um das duplizierte Haupt-Mashup zu starten. Weitere Informationen finden Sie unter Lösungsmenü anpassen.
6. Stellen Sie sicher, dass alle Lesezeichen für das ursprüngliche Mashup, alle Dienste sowie andere Mashups, die das ursprüngliche Mashup direkt aufrufen, so aktualisiert werden, dass sie das duplizierte Mashup verwenden, das Sie in Schritt 3.b erstellt haben.
Dienste von Modellogik-Dingformen anpassen
Die PTC Modellogik-Dingformen aus verschiedenen Bausteinen werden von Dingvorlagen in den Baustein PTC.MfgModel für die Anlagenmodell-Entitäten (Unternehmen, Region, Standort, Bereich, Arbeitszentrum und Arbeitseinheit) implementiert. Sie können Dienste überschreiben, die von PTC Modellogik-Dingformen auf einzelnen Anlagendingen geerbt wurden, oder den Dienst auf der Dingvorlage für einen Anlagenmodell-Typ überschreiben, um diesen Dienst für alle Dinge dieses Anlagenmodell-Typs zu ändern.
Um zu bestimmen, ob ein Dienst von einer Modellogik-Dingform geerbt wird, sehen Sie sich die Seite Dienste der durch PTC bereitgestellten Dingvorlage für den Anlagentyp an, in dem der Dienst enthalten ist. Die Seite Dienste identifiziert die Entitäten, aus denen Dienste geerbt werden.
Führen Sie die folgenden Schritte aus, um einen Dienst zu überschreiben, der von einer Modellogik-Dingform geerbt und für eine Dingvorlage für einen Anlagentyp verwendet wird:
1. Erstellen Sie einen neuen Baustein, der aus dem PTC Baustein erweitert wird, in diesem Beispiel den Baustein PTC.MfgModel.
Führen Sie die folgenden Schritte aus, um den neuen Baustein zu erstellen:
a. Erstellen Sie ein neues Projekt. Verwenden Sie ein eindeutiges Präfix für Ihr Projekt, z.B. den Namen Ihres Unternehmens. Das Präfix "PTC" ist für Entitäten reserviert, die von PTC bereitgestellt werden. Erstellen Sie für dieses Beispiel ein Projekt mit dem Namen MyCompany.MfgModel. Fügen Sie für jede neue Dingvorlage, jedes neue Ding oder jede andere Entität, die Sie für diesen Baustein erstellen, Ihr neues Projekt als Wert Projekt auf der Seite Allgemeine Informationen für die Entität hinzu.
b. Erstellen Sie eine neue Dingvorlage in Ihrem Projekt, die PTC.Base.ComponentEntryPoint_TT als Basis-Dingvorlage verwendet. Nennen Sie die neue Dingvorlage für dieses Beispiel MyCompany.MfgModel.EntryPoint_TT.
c. Erstellen Sie ein neues Ding in Ihrem Projekt, das die in Schritt 1.b erstellte Dingvorlage als Basis-Dingvorlage verwendet.
* 
Wenn Sie auch die im Manager-Ding für einen PTC Baustein enthaltenen Dienste anpassen, befolgen Sie die Anweisungen zum Anpassen der Dienste, die in den vorherigen Abschnitten gefunden wurden, einschließlich Erstellen der Manager-Dingvorlage und des Manager-Dings für Ihren neuen Baustein.
2. Erstellen Sie ein Duplikat der Dingvorlage, für die Sie den Dienst überschreiben möchten.
a. Navigieren Sie auf die ursprüngliche Anlagenmodell-Dingvorlage, in diesem Beispiel PTC.MfgModelDefaultWorkunit_TT.
b. Duplizieren Sie die Dingvorlage. Nennen Sie die duplizierte Dingvorlage für dieses Beispiel MyCompany.MfgModelDefaultWorkunit_TT. Ändern Sie den Wert Projekt auf der Seite Allgemeine Informationen für Ihr Mashup zu dem Projekt, das Sie in Schritt 1.a erstellt haben.
c. Klicken Sie auf Speichern, um die duplizierte Dingvorlage zu speichern.
3. Überschreiben Sie den Dienst, um die benutzerdefinierte Logik zu implementieren.
* 
Überschreiben Sie Dienste nur in Ihrer duplizierten Dingvorlage. Überschreiben Sie keine Dienste in den Dingvorlagen im Baustein PTC.MfgModel und fügen Sie dort auch keine Dienste hinzu.
a. Suchen Sie in der duplizierten Dingvorlage, die in Schritt 2.c erstellt wurde, unter Dienste den Dienst, den Sie anpassen möchten, und klicken Sie auf Symbol zum Überschreiben, um den Dienst zu überschreiben. Wenn das Symbol für diesen Dienst nicht vorhanden ist, kann der Dienst nicht überschrieben werden.
b. Nehmen Sie im Skript-Editor die Änderungen am Code vor, die für die Implementierung der benutzerdefinierten Logik erforderlich sind.
c. Klicken Sie auf Fertig, um die Änderungen am Dienst zu speichern.
d. Klicken Sie auf Speichern, um die Änderungen an der Dingvorlage zu speichern.
4. Aktualisieren Sie die Modelltyp-Konfiguration, um Ihre neue Dingvorlage zu verwenden.
a. Navigieren Sie zum Ding PTC.MfgModel.Manager.
b. Suchen Sie unter Konfiguration in der Konfigurationstabelle ModelTypeConfiguration die Zeile für den Anlagenmodell-Typ, dessen Dingvorlage Sie in Schritt 3 dupliziert haben, und klicken Sie auf Symbol zum Überschreiben, um die Zeile zu bearbeiten.
c. Ändern Sie den Wert thingTemplate zur duplizierten Dingvorlage, die Sie in Schritt 3 erstellt haben, in diesem Beispiel MyCompany.MfgModelDefaultWorkunit_TT.
d. Klicken Sie auf Speichern, um die Änderungen am Manager-Ding zu speichern.
* 
Im vorherigen Verfahren wird die Dingvorlage geändert, die für Dinge eines bestimmten Anlagenmodell-Typs verwendet wird. Damit die Änderungen wirksam werden, müssen alle vorhandenen Anlagendinge dieses Modelltyps entweder mit der neuen Modelltyp-Dingvorlage neu erstellt werden, oder der Dienst muss auch für die einzelnen Anlagendinge angepasst werden.
PTC empfiehlt, dass Codeänderungen wie diese auf der Ebene der Dingvorlage statt auf der Ebene einzelner Dinge vorgenommen werden.
Führen Sie die folgenden Schritte aus, um einen Dienst zu überschreiben, der von einer Modellogik-Dingform für ein einzelnes Anlagending geerbt wurde:
1. Navigieren Sie zum Anlagending.
2. Suchen Sie unter Dienste den Dienst, den Sie anpassen möchten, und klicken Sie auf Symbol zum Überschreiben, um den Dienst zu überschreiben.
3. Nehmen Sie im Skript-Editor die Änderungen am Code vor, die für die Implementierung der benutzerdefinierten Logik erforderlich sind.
4. Klicken Sie auf Fertig, um die Änderungen am Dienst zu speichern.
5. Klicken Sie auf Speichern, um die Änderungen am Anlagending zu speichern.
War dies hilfreich?