App Generator
Beschreibung
Mit dieser App können mittels einer auszuwählenden Vorlage neue Apps bzw. neue Module generiert werden. Sie ist damit Teil der Apps, mit der man neue Apps erstellen kann:
- App ableiten
- App kopieren
- App generieren
Funktionalität
App Generator
In diesem Fenster werden alle Angaben gemacht, um den App Generator starten zu können.
Feld | Beschreibung |
---|---|
App | |
: App Beschreibung | - |
: : Deutsch | Beschreibung der App in deutscher Sprache. Dieser Text wird als deutsche App-Überschrift übernommen. |
: : Englisch | Beschreibung der App in englischer Sprache. Dieser Text wird als englische App-Überschrift übernommen. |
: Klasse | - |
: : Klassenname |
Auswahl der Klasse, die mit der/den neu zu generierenden App(s) bearbeitet werden soll. Sollten in der Lasche "Widget Komponenten" Datenfelder angegeben werden, werden diese als Eingabe- bzw. Ausgabefelder mit dieser Klasse als Klassenfilter generiert. Es kann auch keine Klasse angegeben werden, dann können allerdings a priori auch keine Felder ausgewählt werden. Der hier angegebene Klassenname wird dazu genutzt, um automatisch den Namen der Kern-Nachricht zu generieren (siehe auch nächstes Feld). Sollte beim Generieren einer Nachricht diese bereits bekannt sein, wird an die Nachricht ein "_NEU" hinten drangestellt. |
: : Nachricht |
Kern-Nachricht, um die zu generierende(n) App(s) aufrufen zu können. Aus dieser Kern-Nachricht (z.B. TESTOBJECT) werden automatisch nach Bedarf die Nachrichten EDIT_TESTOBJECT, LIST_TESTOBJECT, SELECT_TESTOBJECT und PRINT_TESTOBJECT erstellt und entsprechend weiterverarbeitet. Standarmäßig ist die Nachricht der Klassenname ohne das führende "CX_": z.B. für die Klasse CX_CUSTOMER ergibt sich die Kern-Nachricht zu CUSTOMER, der Aufruf der Bearbeitungs-App erfolgt mittels EDIT_CUSTOMER, der Aufruf der Listen-App mit LIST_CUSTOMER; usw.. Die hier angegebene Nachricht darf im System noch nicht definert sein. Man kann sich eine neue Nachricht generieren lassen, wenn man das Feld leert und Eingabe drückt. |
: : Objektname (Variable) |
Der Objektname wird als Name der Variablen für ein Objekt der ausgewählten Klasse herangezogen. Daher ergibt sich dieser Variablenname im Standard immer aus dem Klassennamen, z.B. in der Form CX_PURCHASE_REQUISITION -> purchaseRequisition. Man kann sich den Variablennamen generieren lassen, wenn man das Feld leert und Eingabe drückt. |
: Vorlage | - |
: : Muster |
Je nach Typ der ausgewählten Klasse werden bestimmte - für diesen Klassentyp optimierte - Modul Vorlagen angezeigt. Ist z.B. keine Klasse ausgewählt, kann man nur die "Einfaches Bearbeitungsfenster" Vorlage auswählen, ist die Klasse aber z.B. vom Typ einer Partnerrolle (CX_PARTNER_CAST) kann zusätzlich die Vorlage "Geschäftsobjekt" oder die Vorlage "Partnerrolle" ausgewählt werden. Je nach ausgewählter Vorlage, werden die nachfolgenden Felder automatisch mit den Namen der Vorlagedateien (.gen) gefüllt. Diese können mit eigenen, speziellen Vorlagen überschreiben werden. |
: : Basismodul | Vorlagedatei des Basismoduls. |
: : Editier App | Vorlagedatei für das Bearbeitungsmodul. Das Bearbeitungsmodul wird vom Basismodul automatisch abgeleitet. |
: : Listen App | Vorlagedatei für das Modul zum Anlisten der Objekte der zu bearbeitenden Klasse. Das Listenmodul wird vom Basismodul automatisch abgeleitet. |
: : Selektier App | Vorlagedatei für das Modul zum Auswählen von Objekten der zu bearbeitenden Klasse. Das Selektiermodul wird vom Basismodul automatisch abgeleitet. |
: : Druckmodul | Vorlagedatei zum Ausdrucken der Daten von Objekten der zu bearbeitenden Klasse. |
: : Workflow | Sollte die ausgewählte Klasse vom Typ eines Belegs sein (CX_TRANSACTION), wird hier die Vorlagedatei zum Erstellen eines Workflows hinterlegt. |
: : TXN Beschreibung | Sollte die ausgewählte Klasse vom Typ eines Belegs sein (CX_TRANSACTION), wird hier die Vorlagedatei zum Erstellen der Transaktionsbeschreibungen hinterlegt. |
: : Verzeichnis | Verzeichnis, aus welchem die Vorlagedateien gelesen werden. |
: Generierte Dateien | |
: : Basismodul | Ausgabe des Namens des zukünftig generierten Basismoduls. |
: : Editier App | Ausgabe des Namens des zukünftig generierten Bearbeitungsmoduls. |
: : Listen App | Ausgabe des Namens des zukünftig generierten Listenmoduls. |
: : Selektier App | Ausgabe des Namens des zukünftig generierten Selektiermoduls. |
: : Druckmodul | Ausgabe des Namens des zukünftig generierten Druckmoduls. |
Ausgabe Verzeichnisse | - |
Neue AppsWarehouse App | Wird diese Lasche ausgewählt, werden die neu erstellen Apps/Module als Teil des Standard AppsWarehouse integriert |
: Verzeichnis | Standard AppsWarehouse Verzeichnis. |
: Modul Interface | Standard Modul Interface des AppsWarehouse. |
: Message Interface | Standard Message Interface des AppsWarehouse. |
: TXN + WFL Verzeichnis | Standard Verzeichnis der Transaktions- und Workflowbeschreibungen des Standard AppsWarehouse. |
Neue Produkt App | Wird diese Lasche ausgewählt, werden die neu erstellen Apps/Module als Teil eines Produkts des Standard AppsWarehouse integriert |
: Verzeichnis | Verzeichnis für Projekt spezifische Apps und Module. |
: Modul Interface | Projekt Modul Interface. |
: TXN + WFL Verzeichnis | Verzeichnis der Projekt spezifischen Transaktions- und Workflowbeschreibungen. |
Neue Klienten App | Wird diese Lasche ausgewählt, werden die neu erstellen Apps/Module als Teil der Klienten/Kunden spezifischen Anpassungen und Erweiterungen des Standard AppsWarehouse integriert |
: Verzeichnis | Verzeichnis für Klienten/Kunden spezifische Apps und Module. |
: Modul Interface | Klienten/Kunden Modul Interface. |
: TXN + WFL Verzeichnis | Verzeichnis der Klienten/Kunden spezifischen Transaktions- und Workflowbeschreibungen. |
Widget Komponenten | |
Liste | Liste von Datenfeldern, für die in den generierten Fenstermasken Typ-konforme entsprechende Ein-, Ausgabefelder und Listenspalten generiert werden. |
Knopf | Beschreibung |
---|---|
App | |
Zurück | Die App wird geschlosssen. |
Generiere App | Die Module werden entsprechend der vorher gemachten Eingaben generiert. |
Widget Komponenten | |
Einfügen | - |
: Datenfelder aus Datenkonnektoren |
Es öffnet sich die Auswahlmaske für Datenfelder aus Datenkonnektoren. Die selektierte Klasse (s.o.) wird vorausgewählt und die im Datenkonnektor beschriebenen Datenfelder können ausgewählt werden. Sollte diese Klasse (noch) keinen Datenkonnektor haben, ist die Liste leer. Man kann auch einen anderen Datenkonnektor auswählen, allerdings muss dieser mit der selektierten Klasse kompatibel sein, d.h. der Datenkonnektor muss zu der C++Basis Klasse gehören, von der (auch) die selektierte Klasse abgeleitet ist. |
: Objekt Datenmember und Slots | Es öffnet sich die Maske zur Auswahl der Datenmember der seklektierten Klasse und/oder der allgemein im System zugänglichen Slots (dynamischen Datenfelder). |
Entfernen | Die in der Liste selektierten Datenfelder werden aus der Liste entfernt. |
Modul Vorlagen
Im folgenden sehen Sie eine Liste der vorgefertigten Modul Vorlagen und derem gedachten Einsatzzweck.
Name | Beschreibung | Generierte Module |
---|---|---|
Einfaches Bearbeitungsfenster |
Eine App mit einem Fenster und den Knöpfen zum Auswählen und Speichern von Objekten (der mit dem Generator vorher bestimmten Klasse). Häufig müssen bestimmte Datenfelder nachgepflegt werden, die Standard-Pflegemasken der davon betroffenen Objekte sind für solche gezielten Pflegearbeiten aber meist zu umfangreich. Mit dem Auswahlknopf dieser App öffnet sich die Standard-Selektionsmaske der betroffenen Objekte, einzelne Objekte können darin ausgewählt, die Datenfelder gepflegt und die Änderungen wieder in der Datenbank gespeichert werden. Auch können die betroffenen Objekte aus anderen Apps in die neu generierte App zum Pflegen der Daten gedroppt werden. Diese App kann für alle Klassen generiert werden. |
Bearbeitungs-App |
Einfaches Selektionsfenster |
Eine App zum Selektieren von Objekten (der mit dem Generator vorher bestimmten Klasse). Die Standard-Selektionsmaske der betroffenen Objekte kann für manche Aufgaben zu umfangreich sein, die mit dieser Vorlage generierte App dient dazu, sich eine passendere Selektionsmaske zusammenzustellen. Diese App kann für alle Klassen generiert werden. |
Selektions-App |
Geschäftsobjekt |
Apps zum voll umfänglichen Bearbeiten von Geschäftsobjekten (der mit dem Generator vorher bestimmten Klasse). Diese App kann für alle die Klassen generiert werden, die von der Geschäftsobjekte Klasse CX_BUSINESS_OBJECT abgeleitet sind. Wegen der Besonderheit der Zuordnung der Partnerrollen Klasse CX_PARTNER_CAST zur Partner Klasse CX_PARTNER und der Teilerollen Klasse CX_ITEM_CAST zur Teile Klasse CX_ITEM gibt es für diese Rollen-Klassen auch eigene Modul Vorlagen (s.u.). |
Provider Modul mit Bearbeitungs-, Listen- und Selektions-App |
Partnerrolle |
Apps zum voll umfänglichen Bearbeiten von Partnerrollen-Objekten (der mit dem Generator vorher bestimmten Klasse). Diese App kann für alle die Klassen generiert werden, die von der Geschäftsobjekte Klasse CX_PARTNER_CAST abgeleitet sind. |
Provider Modul mit Bearbeitungs-, Listen- und Selektions-App |
Teilerolle |
Apps zum voll umfänglichen Bearbeiten von Teilerollen-Objekten (der mit dem Generator vorher bestimmten Klasse). Diese App kann für alle die Klassen generiert werden, die von der Geschäftsobjekte Klasse CX_ITEM_CAST abgeleitet sind. |
Provider Modul mit Bearbeitungs-, Listen- und Selektions-App |
Verwandte Themen
Technische Dokumentation
Implementation
-
Klassen
_
Qualitätssicherung
_
App Generator
Modulname
appGeneratorEdit.app
Security
Neben der Beschränkung der Zugriffsrechte über die Klasse und deren Datenfelder kann das Modul über einige der empfangenen Messages in seiner Nutzung beschränkt werden.
Message | Parameter | Funktion | Security |
---|---|---|---|
EDIT_APP_GENERATOR |
Message | Parameter | Funktion | Empfangs-Modul |
---|---|---|---|
CYBER_ENTERPRISE_SET | |||
LOAD_TXN_DESCRIPTOR_BY_FILE | |||
LOAD_WORK_FLOW_BY_FILE | |||
SELECT_DATA_FIELD | |||
SELECT_META_CLASS | |||
SELECT_SLOT |