Neue Ansicht und neues Portlet hinzufügen
Sie können dem Anwendungsmenü eine neue Ansicht hinzufügen und das entsprechende Portlet erstellen.
Informationen zu diesem Vorgang
Die folgenden Ansichten sind standardmäßig in Sterling Store Engagement verfügbar:
- Auftragserfüllung(
Order_Fulfillment) - Bestandsverwaltung (
Inv_Management) - Kundendienst (
Customer_Service)
Sie können jedoch eine neue Ansicht definieren und entsprechende Portlets erstellen, die Ihren Geschäftsanforderungen entsprechen. Weitere Informationen zum HinzufÃ?gen einer neuen Ansicht in Sterling Business Center finden Sie unter Konfigurieren von Regeln fÃ?r Store Hubs.
Vorgehensweise
- Legen Sie die folgende Ordnerstruktur unter SCREEN_EXTENSIONS_HOME an, falls noch nicht vorhanden.SCREEN_EXTENSIONS_HOME/features/home/portlet-setHinweis:
Die in diesem Schritt bereitgestellte Ordnerstruktur enthält die von der Anwendung bereitgestellten Portlets. Es empfiehlt sich, neue Portlets in demselben Pfad zu erstellen.
- Wechseln Sie zum Ordner SCREEN_EXTENSIONS_HOME/features/home/portlet-set .
- Kopieren Sie portlet-set-extension.module.ts aus <WORKSPACE>/store-frontend/src/app/features/home/portlet-set in den Ordner <WORKSPACE>/store-frontend/store-extensions-src/app/features/home/portlet-set .Wenn portlet-set-extension.module.ts bereits vorhanden ist, darf die Datei nicht kopiert werden. Angepasste Portletkomponenten und -provider werden in dieser Datei deklariert.
- Um ein neues Portlet zu erstellen, führen Sie die folgenden Schritte aus:
- Führen Sie den Befehl aus: ng g c <componentName> --project=store-extensions
--skip-importHinweis: Die Übergabe des Arguments --project=store-extensionsist obligatorisch. Andernfalls wird die Komponente im von der Anwendung bereitgestellten Ordner src (<WORKSPACE>/store-frontend/src) erstellt. Die hier erstellten Dateien werden ignoriert und nicht im Browser wiedergegeben.
- Aktualisieren Sie den Klassennamen der Portletkomponente in Deklarationen
@NgModuleDekorator in portlet-set-extension.module.ts.Hinweis:- Stellen Sie sicher, dass Sie die entsprechenden Portletkomponentenklassen in portlet-set-extension.module.tsimportieren.
- Stellen Sie sicher, dass Sie aus store-extensions-src importieren und nicht aus dem Ordner store-app-build .
- Führen Sie den Befehl aus: ng g c <componentName> --project=store-extensions
--skip-import
- Führen Sie die folgenden Schritte aus, um einen Service oder Provider für die neue Portletkomponente zu erstellen:
- Führen Sie den Befehl aus: ng g s <serviceName>
--project=store-extensionsHinweis: Die Übergabe des Arguments --project=store-extensionsist obligatorisch. Andernfalls wird die Komponente im von der Anwendung bereitgestellten Ordner src (<WORKSPACE>/store-frontend/src) erstellt. Die hier erstellten Dateien werden ignoriert und nicht im Browser wiedergegeben.
- Aktualisieren Sie den Service-oder Providernamen in Providern des
@NgModule-Dekorators in portlet-set-extension.module.ts.
- Führen Sie den Befehl aus: ng g s <serviceName>
--project=store-extensions
- Lesen Sie die Registrierung für View-Portlet. Registrieren Sie das Portlet auf eine der folgenden Arten bei einer Ansicht:
- Registrieren Sie das Portlet für eine neue Ansichtsspezifikation.Wenn Sie beispielsweise ein angepasstes Portlet zur Ansicht '
User_Management' hinzufügen möchten, sieht die JSON-Spezifikation wie folgt aus:{ personaName: ‘User_Management', personaIconClass: 'app-icon-user_mgmt_20', portlets: [ { portletTitleBundleKey: ‘userPortlet.TITLE_UserPortlet', portletSequenceNumber: 4, portletComponent: UserPortletComponent, portletTID: ‘userPortlet', resourceId: 'ISF000004’ } ] } - Registrieren Sie das Portlet bei einer vorhandenen Ansichtsspezifikation.
- Wenn Sie ein angepasstes Portlet zu einer vorhandenen Ansicht hinzufügen möchten, z. B.
Inv_Management, sieht die JSON-Spezifikation wie folgt aus:{ personaName: ‘Inv_Management', portlets: [ { portletTitleBundleKey: ‘userPortlet.TITLE_UserPortlet', portletSequenceNumber: 4, portletComponent: UserPortletComponent, portletTID: ‘userPortlet', resourceId: 'ISF000004’ } ] } - Aktualisieren Sie in der Datei store-customization-impl.ts die Eigenschaft
extensionPersonaConfigListin der JSON-Spezifikation 'portlet-view' wie folgt:static extensionPersonaConfigList: IPersonaConfig[] = [ { personaName: ‘Inv_Management', personaIconClass: ‘app-icon-inventory_mgmt_20’, portlets: [ { portletTitleBundleKey: ‘userPortlet.TITLE_UserPortlet', portletSequenceNumber: 4, portletComponent: UserPortletComponent, portletTID: ‘userPortlet', resourceId: 'ISF000004’ } ] } ];
- Wenn Sie ein angepasstes Portlet zu einer vorhandenen Ansicht hinzufügen möchten, z. B.
Hinweis: Ansichten werden auf Hubebene definiert und sind nicht berechtigungsgesteuert. Wenn Sie jedoch keine Berechtigung für ein Portlet für eine Ansicht haben, wird diese Ansicht nicht im seitlichen Navigationsfenster der Anwendung angezeigt. - Registrieren Sie das Portlet für eine neue Ansichtsspezifikation.