CX_PARTNER

Klassenhierarchie
Beschreibung:

Natürliche und juristische Personen sind Partner, die durch Zuordnung beliebig vieler Partner-Typen spezialisiert werden können. Eine natürliche oder juristische Person kann mehrere Eigenschaften gleichzeitig besitzen, sie kann z.B. Kunde und Lieferant sein, oder für verschiedene Artikelgruppen (auch mehrfacher) Interessent sein.

Es stehen folgende Klassen zur Verfügung:

Partner Objekttyp
Person CX_PERSON
Unternehmen CX_CORPORATION
Bank CX_BANK
Kreditkarten-Institut CX_CREDIT_CARD_COMPANY
Sozialversicherung CX_SOCIAL_INSURANCE
Behörde CX_AGENCY
Finanzamt CX_TAX_AUTHORITY

Partner gehören zu den realen Objekten, da sie in Form von Personen, 
Behörden oder Firmen tatsächlich vorkommen.
Diese Informationen sind für alle nach aussen hin gleich.

Auch Niederlassungen sind zunächst Partner-Objekte, eine Relation
untereinander wird über Structure Objekte gebaut:
Sie können entweder über normale CX_STRUCTURE Objekte abgebildet werden,
die NICHT in den normalen REP gestellt werden (sollte) [ über SetPattern
einstellen !] oder über dynamisch abgeleitete PseudoClass Objekte.

Beispiel: CX_BRANCHES (branches.mod und custoedt.mod)

Konzern-Strukturen des Mandanten werden ebenfalls über Structure
Objekte modelliert. (PseudoClass: CX_CORPORATE_GROUP)

Dazu müssen zum einen Strukturen mit Partner-Objekten geschaffen werden,
zum anderen die gerade interessierende Struktur angemeldet werden
(CX_BUSINESS_OBJECT::RegisterStructure(s)(structure(s))).
Weiter mit:
MasterObject()
SubObjects(level)
(s.auch Partner-Cast Objekte)

CX_PARTNER
==========

Feste Datenfelder:
name
languageEnum
partnerControl
access

Dynamische Datenfelder:
currencyEnum
salutation

CX_CORPORATION:CX_PARTNER
=========================

Feste Datenfelder:
vatID

Diese Partner Objekte halten ihren Ort, ausser den Personen auch noch
ihre Angestellten.

Jeder Partner hat Zugänge: Liste access aus CX_ACCESS Objekten.
Mit Funktion Access() wird mehrstufig nach best. Objekt-Typen
gesucht.

Über den Ort (CX_ADDRESS Objekt) wird taxEnum gesteuert: Steuer In-oder
Ausländer.

CX_PERSON:CX_PARTNER
====================

Feste Datenfelder:
sexEnum
title
firstName
birthday

Dynamische Datenfelder:
middleNames
Namenszusatz (Jr., Sr., ...)


Unterschiede bestehen in der Relation, die das eigene Unternehmen
zu den Partnern hat, also in der Rolle, die der Partner zu einem 
selbst spielt. Um diese zu modellieren, werden Objekte vom Typ 
CX_PARTNER_CAST eingesetzt.

Casts des gleichen Typs können auch mehrfach vorkommen, z.B. mehrere
Kundennummern zum gleichen Lieferanten, o.ä.

Bei einer Partner-Hierarchie kann ein cast irgendwo auch in einer höher
gelegenen Hierarchie Stufe sein. (z.B. der gleiche CX_CUSTOMER cast 
für alle Niederlassungen)

Einige casts:
Fremde Angestellte/Sachbearbeiter: CX_EMPLOYEE
Eigene: CX_EMPLOYEE oder abgeleitete
Kunden, Lieferanten
Mandanten
EDV-Benutzer
Anfrage, Wettbewerber, ....

Funktionen: Customer()
Supplier()

Code-Beispiel:
...

Verwendung in AppsWH
Modul Kurzbeschreibung
partner.mod Partner Basismodul
partnedt.mod Partner Editiermodul
partnsel.mod Partner Selektionsmodul
favourit.mod Favoriten