Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Note

Wie aus der Seitenüberschrift ersichtlich, wird diese Seite laufend (bis zur Auslieferung) ergänzt.

Es wird nicht zugesichert, dass die aufgeführten Funktionen auch tatsächlich im Auslieferungsstand enthalten sind.

Es werden keine Termine zur Auslieferung genannt.

Breaking Changes

  • Die Version ist binärinkompatibel
  • DevExpress Version 17.2.6.0
  • Stimulsoft Version 2018.2.3.0

...

In der nächsten Version ändert sich im Bereich "Feld-Attribute anhängen?" für die Eigenschaft "Sichtbarkeit" folgendes Verhalten: Felder mit "Sichtbarkeit = Versteckt" können durch die Eigenschaft "Feld-Attribute anhängen?" nicht mehr geändert werden. Da einige Felder in den Belegerfassungen im Standard auf "Sichtbarkeit = Versteckt" eingestellt sind, aber durchaus auch in den Erfassungen angezeigt werden könnten, werden diese Felder des Standards geändert.

Verkaufsbelegposition

Feld Artikeltyp

strVKBelegPosition

  • Feldtitel von Artikelpositionstyp in Artikeltyp

mdeVKBelegPositionen

  • Zeilennummer von 0 auf 1
  • Sichtbarkeit von Versteckt auf Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

ediVKBelegerfassung

Anlage in Feldgruppe „PositionSonstiges“ mit

  • Position = 0
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

Feld Gesamteigenmasse

strVKBelegPosition

  • Feldtitel von Gesamteigenmasse in Gesamteigenmasse (kg)

mdeVKBelegPositionen

  • Sichtbarkeit von Versteckt auf Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False
  • Schreibschutz? = True

ediVKBelegerfassung

Anlage in Feldgruppe „PositionSonstiges“ mit

  • Position = 0
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

Feld VKGesamtgewicht

strVKBelegPosition

  • Feldtitel von VKGesamtgewicht in Gesamtgewicht (kg)

mdeVKBelegPositionen

  • Sichtbarkeit von Versteckt auf Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

ediVKBelegerfassung

Anlage in Feldgruppe „PositionSonstiges“ mit

  • Position = 0
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

Feld VkGrundpreisMengeneinheit

strVKBelegPosition

  • Feldtitel von VkGrundpreisMengeneinheit in Grundpreiseinheit

mdeVKBelegPositionen

Anlage in Vorlage Standard mit

  • Spaltennummer = 0
  • Zeilennummer = 1
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

ediVKBelegerfassung

Anlage in Feldgruppe „Positionseinheiten“ mit

  • Position = 0
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

Feld VkMengeBasisGrundpreis

strVKBelegPosition

  • Feldtitel von VkMengeBasisGrundpreis in Grundpreisbasis

mdeVKBelegPositionen

Anlage in Vorlage Standard mit

  • Spaltennummer = 0
  • Zeilennummer = 1
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

ediVKBelegerfassung

Anlage in Feldgruppe „Positionseinheiten“ mit

  • Position = 0
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

Feld VkUmrechnungsfaktorGrundpreisME

strVKBelegPosition

  • Feldtitel von VkUmrechnungsfaktorGrundpreisME in BME enthält GrundME

mdeVKBelegPositionen

Anlage in Vorlage Standard mit

  • Spaltennummer = 0
  • Zeilennummer = 1
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

ediVKBelegerfassung

Anlage in Feldgruppe „Positionseinheiten“ mit

  • Position = 0
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

Feld VKMittlererEKPreis

strVKBelegPosition

  • Feldtitel von VKMittlererEKPreis in kalkulatorischer EK
  • Schreibschutz? deaktiviert

Der Schreibschutz wird durch serverseitige Codierung sichergestellt (Feld ist in der ReadOnlyFieldList). Durch die Deaktivierung der Eigenschaft „Schreibschutz?“ wird bei programmatische Änderung des Feldes der Beleg Dirty.

mdeVKBelegPositionen

  • Zeilennummer = 1
  • Feldbreite = 6
  • Sichtbarkeit von Versteckt auf Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

ediVKBelegerfassung

Anlage in Feldgruppe „PositionSonstiges“ mit

  • Position = 0
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

Feld VKRoherloes

strVKBelegPosition

  • Feldtitel von VKRoherloes in Roherlös

mdeVKBelegPositionen

  • Zeilennummer = 1
  • Feldbreite = 6
  • Sichtbarkeit von Versteckt auf Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

ediVKBelegerfassung

Anlage in Feldgruppe „PositionSonstiges“ mit

  • Position = 0
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

Einkaufsbelegposition

Feld Artikeltyp

strEKBelegPosition

  • Feldtitel von Artikelpositionstyp in Artikeltyp

mdeEKBelegPositionen

  • Zeilennummer von 0 auf 1
  • Sichtbarkeit von Versteckt auf Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

ediEKBelegerfassung

Anlage in Feldgruppe „PositionSonstiges“ mit

  • Position = 0
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

Feld Gesamteigenmasse

strEKBelegPosition

  • Feldtitel von Gesamteigenmasse in Gesamteigenmasse (kg)

mdeEKBelegPositionen

  • Sichtbarkeit von Versteckt auf Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False
  • Schreibschutz? = True

ediEKBelegerfassung

Anlage in Feldgruppe „PositionSonstiges“ mit

  • Position = 0
  • Sichtbarkeit = Eingeblendet
  • Deaktiviert = True
  • Mit TAB anspringen? = False

Berechtigungen

Da alle Felder von Versteckt auf Eingeblendet umgestellt werden, werden für alle Felder Feldberechtigungen eingetragen.

Die Felder „kalkulatorischer EK“ und „Roherlös“ können kritische Informationen sein. Die Feldberechtigungen dieser Felder werden daher anhand der bereits vergebenen Berechtigungen von „Kalkulation/ Preisfindung“ und „Kalkulation/ Roherlös“ im Datenbankupdate behandelt.

Neuerungen

1:N:M-Beziehungen

Die 1:N:M-Beziehungen ließen sich bereits vorher im AppDesigner definieren. Nun wurde auch die Darstellung auf dem Client, sowie die Behandlung der CRUD-Methoden vom System implementiert.

Die Definition der M-Beziehung erfolgt analog der Definition der N-Beziehung. Die Verknüpfung erfolgt ebenfalls in der Eigenschaft "Detail-Datensätze", nur das die Hinterlegung des Detail-Datensatzes jetzt in der entsprechenden N-Beziehung zu erfolgen hat. Gleiches gilt für die Zuordnung für die UI-Darstellung. Das Multi-Data-Edit-Element der M-Beziehung muss einem Data-Edit-Element der N-Beziehung zugeordnet werden.

Beispiel für einen Stammdatendialog für einen Datensatz

Als Ausgangspunkt nehmen wir das Beispiel "Projektsteuerung" aus Beispiel für die Zusammenhänge der Metadatenobjekte und ergänzen die N-Beziehung "BPKProjektsteuerungMitarbeiter" um einige Felder und legen die M-Beziehung "BPKProjektsteuerungMitarbeiterFehlzeiten" an.

...

Zu einer Projektsteuerung können N-Mitarbeiter hinterlegt werden. Die Anlage der Metadaten werden in dem Beispiel beschrieben, hier kurz die Zusammenfassung:

Datensätze

"recProjektsteuerung" und "recProjektsteuerungMitarbeiter" auf Basis der zugehörigen SQL-Tabellen.

Die 1:N-Beziehung wird in der Eigenschaft "Detail-Datensätze" des Datensatzes "recProjektsteuerung" hinterlegt. Die Datensatz-Beziehung geht über die SteuerungId.

Elemente

"ediProjektsteuerung" und "mdeProjektsteuerungMitarbeiter" auf Basis der Datensätze.

Die 1:N-Beziehung wird in "ediProjektsteuerung" durch die Hinterlegung eines Feldes mit Feldname = virtueller Name der Datensatz-Beziehung, sowie "Typ" des Feldes = "Unterelement" mit Zuweisung von "mdeProjektsteuerungMitarbeiter" definiert.

1:N:M-Beziehung

Vorbereitung

Legen Sie folgende Strings an:

NameIDWert
Fehlzeit0Frei
Fehlzeit1bezahlter Urlaub
Fehlzeit2Resturlaub
Fehlzeit3Weiterbildung
Fehlzeit4Krankheit

Datensatz

Legen Sie den Datensatz "recProjektsteuerungMitarbeiterFehlzeiten" mit Hilfe des Assistenten "Tabelle importieren" (BPKProjektsteuerungMitarbeiterFehlzeiten) an.

  • Ändern Sie "Primärschlüsseltyp 1" auf "TAN-basierend auf Tabelle 1"
  • Ändern Sie den "Titel" des Feldes "DatumVon" auf "Von"
  • Ändern Sie den "Titel" des Feldes "DatumBis" auf "Bis"
  • Ändern Sie den Datentyp der Felder "DatumVon" und "DatumBis" von "DateTime" auf "Date"
  • Ändern Sie den Datentyp des Feldes "Fehlzeit" von "Integer" auf "Indizierter String" und weisen Sie die angelegten Strings zu.
N:M-Beziehung

Hinterlegen Sie in der Eigenschaft "Detail-Datensätze" des Datensatzes "recProjektsteuerungMitarbeiter" folgende Daten:

...

Damit ist die 1:N:M-Beziehung auf Seiten der Datensätze definiert.

Element

Die M-Beziehung muss einem Data-Edit-Element der N-Beziehung zugeordnet werden. In diesem Beispiel existiert kein "Bearbeiten-Dialog" für die Mitarbeiter, da die 1:N-Zuordnung nur aus der Hinterlegung von Mitarbeiternummern besteht. Für die Beschreibung der 1:N:M-Beziehung sind die nachfolgenden Änderungen an der Tabelle "recProjektsteuerungMitarbeiter" ohne Belang. Da aber dieses Beispiel auch für Beispiel für die Zusammenhänge der Metadatenobjekte verwendet werden soll, wollen wir zuerst die 1:N-Beziehung komplementieren.

...

Damit haben wir den Bearbeiten-Dialog für die 1:N-Beziehung implementiert.

N:M-Beziehung

Legen Sie das Kontextmenü "ProjektsteuerungMitarbeiterFehlzeiten" an.

...

  • "Funktionstitel" = "Bearbeiten"
  • "Funktionskurztitel" = "Bearbeiten"
  • "Position in Sortierung" = "1"
  • "Schaltflächenposition" = "1"
  • "Funktionsaufruf" = "DatensatzBearbeiten.Sage.System"
  • "Child-Element" = "ediProjektsteuerungMitarbeiterFehlzeiten.<partnerid>.<loesungid>"
  • "für Wawi?" aktivieren

Beispiel für eine Erfassung

Zu einer Verkaufsposition können beliebig viele Zusatztexte und/oder Zusatzwerte erfasst werden. Eine weitere Tiefe soll dieses Beispiel aber nicht haben. Es werden noch das Laden, Speichern und eine Aktion auf einen Eintrag codiert.

...

Note
titleHinweis für Developer Partner

WDB-Eintrag 203334:

Anhang Beispiel_1NM_Belegposition_81.rar

Mehrere umschaltbare Navigations-Elemente im Daten-Edit-Element

...

Die Eigenschaft "Navigations-Element" ist ab der Version 8.1 eine 1:N-Beziehung und wird daher in einem Zusatzdialog hinterlegt (Beispiel ediAdressenstamm.Sage.System):

Image Added

Werden mehr als ein Navigations-Element in einem Daten-Edit-Element hinterlegt, wird vom System in der Applikation die Schaltfläche "Bearbeiten" hinzugefügt. Über diese Schaltfläche kann ein Navigations-Element gewählt werden:

Image Added

Für eine programmatische Umstellung steht der Makro-Befehl "NavigationUmschalten" zur Verfügung. (Makrobefehle)

Navigations-Elemente können an Standard-Daten-Edit-Elemente angehängt werden. Dabei wird aber ein Listen-Element nur angehängt, wenn dem Standard-Daten-Edit-Element bereits mindestens 1 Navigations-Element zugeordnet ist.

Die Definition des Primary-Keys in den Schlüsselfeldern der Datenquelle muss bei allen Datenquellen identisch sein.

Kontextmenüeinträge von Listen-Elementen werden nach dem folgenden Verfahren zusammengeführt:

Grundsätzliche Vorgehensweise

Da das Menü als ganzes im Data-Edit-Element angezeigt wird (das Menü vom Data-Edit-Element selbst, das Menü von der Liste und das Menü von der Liste-Selektion), wird es nach wie vor bereits Serverseitig komplett zusammengebaut und zum Client geschickt.
Der Client filtert dann über eine Herkunftsangabe die nicht von der aktuell eingestellten Liste stammenden Einträge aus.

Mischen der Menüs

Verwendet das Daten-Edit-Element mehrere Navigationselemente, so können deren Menüs verschiedene Menüeinträge enthalten.
Das Mischen funktioniert dann wie folgt:

  • Sobald in einem Navigationselement ein gleichnamiger Eintrag gefunden wird, wird er im Haupt-Menü ersetzt und die Herkunft vermerkt (wie bisher).
  • Weitere gleichnamige Einträge in einem folgenden Navigationselement werden nicht mehr ersetzt, aber an dem bereits gemergten Eintrag ebenfalls die Herkunft vermerkt.
  • Zur Laufzeit: Stammt ein gemergter Menüeintrag im Haupt-Menü nicht aus dem aktiven Navigationselement, wird er herausgefiltert.

Schnelländerung Metadaten

Beim Bearbeiten von Feldern gibt es die neue Option (Menüband im Register Metadaten, oder im PopUp-Menü) "Werte übernehmen". Um geänderte Werte in andere Felder zu übernehmen, geht man wie folgt vor:

  • Man ändert ein oder mehrere Werte eines Feldes im Arbeits- oder Eigenschaftsbereich
  • Man markiert die Felder im Arbeitsbereich, die die eben geänderten Werte übernehmen sollen.
  • Es wird ein Dialog mit den Änderungen angezeigt. Einzelne, nicht allgemein gültige Änderungen, können in diesem Dialog ausgeklammert (Checkbox deaktivieren) werden.

Makrobefehl "AuskunftÖffnen"

Mit dem neuen Makrobefehl "AuskunftÖffnen" kann eine Auskunft direkt ohne Umweg nach Access geöffnet werden. Damit vereinfacht sich auch die Übergabe von Parametern.

Note

Die Funktionsaufrufe "gbOpenAuskunft" und "gbOpenAuskunftParameter" entfallen NICHT.

Beispiel "Auskunft Umsatzliste aus dem Kontextmenü der Position der Verkaufsbelegerfassung"

Folgende Metadaten sind anzulegen:

...

Makrobefehle (Partner- und Lösung-ID entsprechend Ihren Daten, komplette Beschreibung unter Makrobefehle)

ZeileBefehlParameter 1Parameter 2
1AuskunftÖffnenmdtStatVK.100065830.AuskunftArtikelnummer:=[Artikelnummer];AuspraegungsHandle:=[AuspraegungsHandle];Kunde:=[$Parent.A0Konto]

...

Note

In diesem Beispiel wird eine Auskunft aufgerufen. Es ist kein "Zusatzdialog" zur Erfassung. Der Platzhalter "$Me($IndexSelected)" bezieht sich auf den Kontext "Belegposition" und nicht auf selektierte Datensätze der Auskunft. Eine Verbindung zwischen dem Kontextmenü der Auskunft und dem Kontextmenü der Belegposition gibt es nicht.

Dynamische Datenreferenz

Bisher konnte eine Datenreferenz in den folgenden Varianten angelegt, bzw. durch zusätzliche Eigenschaften eines Feldes kontextbezogen gefiltert werden:

...

Ab der Version 8.1 kann nun an den Geschäftsprozess einer Datenreferenz kontextbezogen eine Parameterliste übergeben werden. Die Parameter stehen in der zu implementierenden Klasse "BusinessProcessBase" in der Property "ServiceParameters" zur Verfügung. Die Parameter werden in der Eigenschaft "Datenreferenz-Parameter" in der üblichen Syntax (Art:=1;Typ:=[Typ];Kahn:="Kahn ""Der Titan""") hinterlegt.

Sonstiges

  • Neue ReportAfterPrint-DCM beim tatsächlichen Druck
  • Neue Eigenschaft „Dialoggruppe“ für Data-Edit-Parts und Master-Detail-Parts (wird für Erweiterungen der Listen (Stichwort "intelligente Listen") benötigt (gehört zum System der Sage 100))
  • Umbenennen von Elementen und Felder komplett überarbeitet