Zum Inhalt

ACPAnteil

Beschreibung - Widget

Dieses Widget ermöglicht es, in tabellarischer Form Anteile an einer bestimmten Partition, z.B. an einem Flurstück, in einem einstellbaren Datumsintervall darzustellen. Diese kann anteilig in Prozent oder in einer Währung erfolgen.

image.png image.png

Beschreibung - Service (Optional)

Der Dienst dient dazu, Verknüpfungen vom Widget „ACPAnteil“ zu entfernen. Unter gewissen Umständen (z.B. beim Erstellen eines Duplikates einer Adresse und dem darauffolgenden Zusammenführen mit der alten Adresse) entstehen obsolete Verknüpfungen. Diese werden durch den Service erfasst und entsprechend entfernt.

Changelog

Changelog hier.

Voraussetzungen

Datenbankanpassungen

  1. Datensatz-Typ erstellen

    • Name: ACP_ACPANTEIL
    • Titel: ACPAnteil
    • Kürzel: ACPANT
    • Dieser Datensatz-Typ ist benutzersensitiv = false
    • Erweiterter Datensatz-Typ = True
      • Datensatz-Typ ist verknüpfbar = True
      • Replikation zulassen = True
      • Datensatz-Typ ist im CAS genesisWorld-Client sichtbar = True
  2. Datenbankfelder erstellen

    Technischer Name Übersetzung Datenfeldtyp Zusätzliches
    FROMDATE Beliebig datetime Format - Datum (tagesgenau)
    TODATE Beliebig datetime Format - Datum (tagesgenau)
    SHARE Beliebig int -
    AdditionalField Beliebig nvarchar(max) Feldname - ADDFIELD
  3. Verknüpfungen erstellen

    Interner Name Datensatz-Typ A Datensatz-Typ B Art Kardinalität Datensatz-Typ A Bezeichnung Datensatz-Typ B Bezeichnung
    ACP_ADR2ANT Adressen ACP_ACPAnteil gerichtet 1:n Eigentümer Eigentumsanteil
    ACP_VER2ADR Verträge Adressen gerichtet m:n Flurstück (Eigentümer) Eigentümer
    ACP_VER2ANT Verträge ACP_ACPAnteil gerichtet 1:n Flurstück (Eigentumsanteil) Eigentumsanteil

Installation Widget

Installationsanleitung finden Sie hier

Update Widget

Updateanleitung finden Sie hier

Konfiguration Widget

Konfigurationsdatei

INFO

In diesem Abschnitt können Datensatztypen, Felder und Verknüpfungsarten konfiguriert werden.
Bitte beachten Sie, dass hier immer die technischen Namen eingetragen werden müssen. Dabei sollten die technischen Namen vollständig in Großbuchstaben geschrieben werden!

ACHTUNG

Bitte bearbeiten Sie niemals die Beispieldatei.
Wenn Sie Anpassungen vornehmen möchten, kopieren Sie die Beispieldatei und benennen Sie sie entsprechend um.

  1. Im Datei-Explorer folgenden Pfad öffnen:

    C:\Program Files (x86)\Common Files\CAS-Software\Server\JavaServices\smartdesign-apps\{@DATENBANKNAME}\smartdesign.base\smartdesign\base\webcontent\{WIDGETNAME}\assets\configs
    
  2. Datei "example-config.json" im selben Ordner kopieren und einen entsprechenden Namen geben.

  3. Kopierte Datei bearbeiten.

Basics

{
    "basics": {
        "images": {
            "check": "check.svg",
            "search": "search-24.svg",
            "delete": "trash.svg"
        }
    }
}
Die Knoten unter "Basics" definieren die Dateinamen für verschiedene Bilder, die in der Benutzeroberfläche verwendet werden.

Beschreibung
  • Check:
    • Beschreibung: Dateiname für die "Speichern"-Schaltfläche.
    • Mögliche Werte: Beliebiger Dateiname.
  • Search:
    • Beschreibung: Dateiname für die "Hinzufügen"-Schaltfläche.
    • Mögliche Werte: Beliebiger Dateiname.
  • Delete:
    • Beschreibung: Dateiname für die "Löschen"-Schaltfläche.
    • Mögliche Werte: Beliebiger Dateiname.


Objects

{
    "objects": {
        "backObj": "ACP_ACPANTEIL",
        "showObj": "ADDRESS"
    }
}
Die Knoten unter "Objects" definieren die Datensatztypen, die das Widget verwendet.

Beschreibung
  • BackObj:
    • Beschreibung: Datensatz-Typ, in dem das Widget die Daten speichert.
    • Mögliche Werte: ACP_ACPANTEIL
  • ShowObj:
    • Beschreibung: Datensatz-Typ, der angezeigt werden soll.
    • Mögliche Werte: ADDRESS; PROJECT


Links

{
    "links": {
        "curr2back": "ACP_VER2ANT",
        "show2curr": "ACP_VER2ADR",
        "show2back": "ACP_ADR2ANT"
    }
}
Die Knoten unter "Links" definieren die Verknüpfungsarten zwischen verschiedenen Datensatztypen.

Beschreibung
  • Curr2Back:
    • Beschreibung: Verknüpfungsart zwischen "CurrObj" und "BackObj".
    • Mögliche Werte: ITDADRDOC; ITDPRJDOC; ...
  • Show2Curr:
    • Beschreibung: Verknüpfungsart zwischen "ShowObj" und "CurrObj".
    • Mögliche Werte: ITDADRDOC; ITDPRJDOC; ...
  • Show2Back:
    • Beschreibung: Verknüpfungsart zwischen "ShowObj" und "BackObj".
    • Mögliche Werte: ITDADRDOC; ITDPRJDOC; ...


Fields

{
    "fields": {
        "shares": {
            "field": "SHARE",
            "type": "PERCENT",
            "currency": "US-DOLLAR",
            "defaultValue": 50,
            "warningUnder100": false
        },
        "fDate": "FROMDATE",
        "tDate": "TODATE",
        "first": "COMPNAME",
        "second": "TOWN1",
        "additionalField": "ADDFIELD"
    }
}
Die Knoten unter "Fields" definieren die Felder, die in den Datensatztypen enthalten sind.

Beschreibung
  • Shares:
    • field:
      • Beschreibung: Feld auf dem "BackObj", das den Anteil speichert.
      • Mögliche Werte: Verschiedene Felder.
    • type:
      • Beschreibung: Art des Anteils.
      • Mögliche Werte: PERCENT.
    • currency:
      • Beschreibung: Währung des Anteils.
      • Mögliche Werte: US-DOLLAR; EURO
    • defaultValue:
      • Beschreibung: Basiswert beim Erstellen neuer "BackObj".
      • Mögliche Werte: Beliebige Nummer.
  • fDate:
    • Beschreibung: Feld auf dem "BackObj", das das Von-Datum speichert.
    • Mögliche Werte: FROMDATE
  • tDate:
    • Beschreibung: Feld auf dem "BackObj", das das Bis-Datum speichert.
    • Mögliche Werte: TODATE
  • first:
    • Beschreibung: Feld auf dem "ShowObj", das als primäre Information angezeigt wird.
    • Mögliche Werte: COMPNAME
  • second:
    • Beschreibung: Feld auf dem "ShowObj", das als sekundäre Information angezeigt wird.
    • Mögliche Werte: TOWN1
  • additionalField:
    • Beschreibung: Zusätzliches Feld auf dem "BackObj", das zusätzliche Informationen speichert.
    • Mögliche Werte: ADDFIELD


RequestedObjectsLimit

{
    "requestedObjectsLimit": 300
}
Der Wert gibt an, wie viele Objekte vom Widget maximal angezeigt werden sollen.

Beschreibung
  • Limit:
    • Beschreibung: Zahl, die angibt, wie viele Objekte vom Widget angezeigt werden sollen.
    • Mögliche Werte: Ganzzahl

App Designer

  1. Loggen Sie sich im genesisWorld SmartDesign ein.
  2. Öffnen Sie die Administrations-App.
  3. Klicken Sie auf den App Designer Abschnitt im linken Teil der Seite.
  4. Klicken Sie im Kästchen Session auf "Aktivieren".
  5. Navigieren Sie im Anschluss in die App wo das Widget eingebunden ist.
  6. Öffnen Sie eine beliebige App und navigieren Sie zu einem beliebigen Datensatz.
  7. Klicken Sie am oberen rechten Rand der Seite auf "Anpassen".
  8. Klicken Sie nun auf das Widget um die Konfiguration zu bearbeiten.

image.png

Parameter Mögliche Werte Beschreibung
Anzeigehöhe 400px Höhe des Widgets
Konfigurationsdatei example-config.json Name und Dateiendung der zu verwendenden Konfigurationsdatei.
Anzeigebreite 400px Breite des Widgets

Übersetzung

Im Standard werden immer Deutsch und Englisch mitgeliefert (de.json; en.json). Anpassungen können in den Dateien vorgenommen werden, jedoch ist zu beachten, dass diese bei einem Update des Widget überschrieben werden.

Pfad zu den Übersetzungsdateien:

C:\Program Files (x86)\Common Files\CAS-Software\Server\JavaServices\smartdesign-apps\{@DATENBANKNAME}\smartdesign.base\smartdesign\base\webcontent\{WIDGETNAME}\assets\lang

Wenn Sie für eine Widget-Integration individuelle Übersetzungen benötigen, erstellen Sie eine Kopie der Standard-Sprachdatei und benennen diese passend zur Konfigurationsdatei des Widgets.

Vorgehen:

  • Konfigurationsdatei: Jedes Widget hat eine eigene Konfigurationsdatei, z.B. example-config.json.
  • Standardsprachdatei: Standardmäßig werden de.json und en.json verwendet.
  • Angepasste Sprachdatei: Erstellen Sie eine Kopie und benennen Sie sie z.B. example-config_de.json für Deutsch.

INFO

Wenn eine angepasste Sprachdatei verwendet wird, müssen die nachfolgenden Parameter in der Konfigurationsdatei des Widget auf true gesetzt werden. Weitere Informationen finden Sie hier.
- useTranslations
- useTranslationsConfiguration

Beispieldatei:

{
    "ACTIVE": "Aktive Eigentumsanteile",
    "INACTIVE": "Inaktive Eigentumsanteile",
    "DELETE": "Eigentumsanteil löschen",
    "OWNER": "Eigentümer",
    "FDATE": "Eigentümer von",
    "TDATE": "Eigentümer bis",
    "SHARES": "Anteile",
    "ADDITIONAL_FIELD": "Zusätzliches Feld",
    "NEW": "Neuen Eigentümer anlegen",
    "NONE_ACTIVE": "Keine aktiven Eigentümer eingetragen.",
    "DEL_QUESTION": "Sind Sie sicher, dass Sie diesen Eigentumsanteil entfernen möchten?",
    "YES": "Bestätigen",
    "NO": "Abbrechen",
    "OVERLAPPING": "Einträge überlagern sich!",
    "TO_MANY_SHARES": "Mehr als 100 Prozent!",
    "TO_LOW_SHARES": "Weniger als 100 Prozent!",
    "NOT_EXISTING_KEYWORD": "Eigentümer existiert nicht mehr.",
    "CANNOT_ADD_MORE": "Sie können keine weiteren Eigentümer hinzufügen."
}

Beschreibung

ACTIVE Beschreibt die Kategorie oder den Status der Eigentumsanteile, die als aktiv betrachtet werden.

INACTIVE Beschreibt die Kategorie oder den Status der Eigentumsanteile, die als inaktiv betrachtet werden.

DELETE Beschreibt die Aktion, einen bestimmten Eigentumsanteil zu löschen.

OWNER Bezeichnet das Feld, das den Eigentümer eines bestimmten Anteils identifiziert.

FDATE Bezeichnet das Feld, das das Datum angibt, an dem eine Person Eigentümer des Anteils wurde.

TDATE Bezeichnet das Feld, das das Datum angibt, bis zu dem eine Person Eigentümer des Anteils war.

SHARES Bezeichnet das Feld, das die Anteile eines bestimmten Eigentümers angibt.

ADDITIONAL_FIELD Ein optionales Feld für zusätzliche Informationen oder Daten.

NEW Beschreibt die Aktion, einen neuen Eigentümer anzulegen.

NONE_ACTIVE Eine Benachrichtigung, die angezeigt wird, wenn keine aktiven Eigentümer eingetragen sind.

DEL_QUESTION Die Frage, die angezeigt wird, wenn ein Benutzer einen Eigentumsanteil löschen möchte.

YES Die Bestätigungsoption für das Löschen eines Eigentumsanteils.

NO Die Option zum Abbrechen des Löschvorgangs eines Eigentumsanteils.

OVERLAPPING Eine Warnung, die angezeigt wird, wenn Einträge sich überlappen.

TO_MANY_SHARES Eine Warnung, die angezeigt wird, wenn die summierten Anteile mehr als 100 Prozent ergeben.

NOT_EXISTING_KEYWORD Eine Benachrichtigung, die angezeigt wird, wenn der Eigentümer nicht mehr existiert.

CANNOT_ADD_MORE Eine Benachrichtigung, die angezeigt wird, wenn keine weiteren Eigentümer hinzugefügt werden können.

Installation Service

Installationsanleitung finden Sie hier

Update Service

Updateanleitung finden Sie hier

Konfiguration Service

Konfigurationsdatei "appsettings.json" befindet sich im folgenden Ordner:

C:\Program Files (x86)\Common Files\CAS-Software\Server\Services\%ServiceName%

Serilog

{
  "Serilog": {
    "Using": [ "Serilog.Sinks.File" ],
    "MinimumLevel": "Information",
    "WriteTo": [
      {
        "Name": "File",
        "Args": {
          "path": "C:\\ACP\\ACPAnteil\\Service\\Logs\\.log",
          "rollingInterval": "Day"
        }
      }
    ]
  }
}

Beschreibung
  • Using:
    • Beschreibung: Konfiguriert die verwendeten Serilog-Sinks.
    • Mögliche Werte: Array von Strings, die die Serilog-Sinks repräsentieren.
  • MinimumLevel:
    • Beschreibung: Legt das minimale Log-Level fest.
    • Mögliche Werte: Log-Level wie "Information", "Debug", "Warning", "Error", etc.
  • WriteTo:
    • Beschreibung: Konfiguriert die Ausgabeziele für das Loggen.
    • Mögliche Werte: Array von Objekten, die die Konfiguration für jedes Ausgabeziel enthalten.


genesisWorldConfiguration

{
  "genesisWorldConfiguration": {
    "Username": "",
    "Password": "",
    "Database": "",
    "CASAPIKey": "",
    "BaseURL": ""
  }
}
Die Unterknoten „Username“, „Password“, „Database“ und „CASAPIKey“ sind alle Base64- kodiert. Sprich diese Werte müssen vor der Eingabe in Base64 umgewandelt werden. Dazu lassen sich einige Tools verwenden, darunter: - Base64

Beschreibung
  • Username:
    • Beschreibung: Beinhaltet den Benutzernamen, unter welchen der Service laufen soll.
    • Mögliche Werte: Beliebiger Benutzername mit ausreichenden Rechten.
  • Password:
    • Beschreibung: Beinhaltet das Passwort für den zuvor definierten Benutzer.
    • Mögliche Werte: Passwort für den Benutzer.
  • Database:
    • Beschreibung: Die Datenbank, in welcher der Service die Verknüpfungen löschen soll.
    • Mögliche Werte: Name der Datenbank.
  • CASAPIKey:
    • Beschreibung: Ein von der CAS ausgestellter Schlüssel, der die Verwendung der API authorisiert.
    • Mögliche Werte: Gültiger API-Schlüssel.
  • BaseURL:
    • Beschreibung: Die URL zum API-Endpunkt von genesisWorld.
    • Mögliche Werte: Gültige URL.


serviceOptions

{
  "serviceOptions": {
    "refreshInterval": 5,
    "links": [
      {
        "originDataObjecttype": "ADDRESS",
        "middleDataObjecttype": "ACP_ACPANTEIL",
        "targetDataObjecttype": "ADDRESS",
        "originToMiddle": "ACP_ADR2BACK_03",
        "middleToTarget": "ACP_BACK2ADR_01",
        "targetToOrigin": "ACP_ADR2ADR_02"
      }
    ]
  }
}

Beschreibung
  • refreshInterval:
    • Beschreibung: Ein Intervall, in dem der Service arbeiten soll. Dieser wird in Minuten angegeben.
    • Mögliche Werte: Ganze Zahlen, die die Anzahl der Minuten darstellen.
  • links:
    • Beschreibung: Ein Array mit zu überwachenden Verknüpfungen.
    • Mögliche Werte:
      • originDataObjecttype:
        • Beschreibung: Ausgangsdatensatz, auf dem sich das ACPAnteil-Widget befindet.
        • Mögliche Werte: Verschiedene Datensatztypen.
      • middleDataObjecttype:
        • Beschreibung: Datensatz, der im ACPAnteil-Widget für die Speicherung der Anteile genutzt wird.
        • Mögliche Werte: Verschiedene Datensatztypen.
      • targetDataObjecttype:
        • Beschreibung: Datensatz, der im ACPAnteil-Widget als Anzeigedatensatz genutzt wird.
        • Mögliche Werte: Verschiedene Datensatztypen.
      • originToMiddle:
        • Beschreibung: Verknüpfungsart zwischen dem Ausgangs- und Speicherungsdatensatz.
        • Mögliche Werte: Verschiedene Verknüpfungsarten.
      • middleToTarget:
        • Beschreibung: Verknüpfungsart zwischen dem Speicherungs- und Anzeigedatensatz.
        • Mögliche Werte: Verschiedene Verknüpfungsarten.
      • targetToOrigin:
        • Beschreibung: Verknüpfungsart zwischen dem Anzeige- und Ausgangsdatensatz.
        • Mögliche Werte: Verschiedene Verknüpfungsarten.


ServiceConfig

{
  "ServiceConfig": {
    "DisplayName": "ACPAnteilService",
    "ServiceName": "ACPAnteilService",
    "ServiceDescription": "A service to remove unused links to share-objects, that occur due to the duplicate check system of genesisWorld."
  }
}

Beschreibung
  • DisplayName:
    • Beschreibung: Der anzuzeigende Name des Dienstes.
    • Mögliche Werte: Beliebiger Text.
  • ServiceName:
    • Beschreibung: Der interne Name des Dienstes.
    • Mögliche Werte: Beliebiger Text.
  • ServiceDescription:
    • Beschreibung: Eine Beschreibung des Dienstes.
    • Mögliche Werte: Beliebiger Text.