Open Source Dokumentenmanagement
Dokumentation

Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht

Navigation: Dokumentationen agorum core > agorum core JavaScript-API


JavaScript Address API - create

Mit dem Aufruf create legen Sie einzelne Objekte an.

Verwendung


Binden Sie die Bibliothek stets am Anfang eines Skripts ein:

let address = require('address/objects');

create.book


Mit diesem Aufruf legen Sie ein Adressbuch an.

data befüllen Sie wie folgt:

let data = {
  name:        '<Name des Addressbuchs>',
  description: '<Beschreibung des Addressbuchs>',
  target:      '<Objekt, in dem das Addressbuch abgelegt wird>',
               // Wenn target null oder nicht vorhanden ist, wird automatisch
               // /agorum/roi/Files verwendet.
  path:        '<relativer oder absoluter Pfad>'
               // Ein relativer Pfad wird an target angehängt und, 
               // sofern noch nicht vorhanden, angelegt.
};

Zum Anlegen des Adressbuchs existieren folgende Aufrufe:

Aufruf Beschreibung
create Wenn das Adressbuch bereits vorhanden ist, gibt das System kein Adressbuch zurück, sondern erzeugt eine Fehlermeldung.
trycreate Wenn das Adressbuch bereits vorhanden ist, gibt das System das Adressbuch zurück.

Bei target handelt es sich um ein Objekt, das entweder früher oder direkt im Aufruf definiert wurde. Das Objekt ist frei wählbar, sofern nicht näher definiert. 


Beispiel zu target und path

target: objects.find('/agorum/roi/Files/Lehrpersonal'),
//path: null

//target: null,  
path: 'Lehrpersonal'

Dieses Beispiel definiert beides Mal dasselbe Ziel:

Beispiel

let address = require('address/objects');

let data = {
  name:        'Mein erstes Adressbuch',
  description: 'Sammlung aller wichtigen Adressen',
  target:       objects.find('/agorum/roi/Files/Schriftverkehr'),
  // path:      null 
};

let book = address.create('book', data); 
// oder 
// let book = address.tryCreate('book', data);

create.organisation


Mit diesem Aufruf legen Sie eine Firma an.

data befüllen Sie wie folgt:

let data = {
  name:            '<Name der Firma/Organisation>',
  additionalName1: '<Zusatzname 1>', 
  additionalName2: '<Zusatzname 2>',
  customerNumber:  '<Kundennummer>',
  taxNumber:       '<Steuernummer>',
  description:     '<beliebige Beschreibung>',
  target:          '<Objekt, in dem das Addressbuch abgelegt wird>',
                   // Wenn target null oder nicht vorhanden ist, wird automatisch 
                   // /agorum/roi/Files verwendet. 
  path:            '<relativer oder absoluter Pfad>',
                   // Ein relativer Pfad wird an target angehängt
                   // und, sofern noch nicht vorhanden, angelegt.
  salesTaxIdentificationNumber: '<Ust-Id>'
}; 

Beispiel

let address = require('address/objects');
  
let data = {
  name:            'Unsichtbare Universität',
  additionalName1: '',
  additionalName2: '',
  customerNumber:  '12345',
  taxNumber:       '10 321 654 987',
  description:     'Organisation zur Bewahrung des Wissens',
  target:           null,
  path:            'UU/wirklichwissenswert',
  salesTaxIdentificationNumber: 'DE999999999'
};
// Aufruf: 
let organisation = address.create('organisation', data);

create.department


Mit diesem Aufruf legen Sie eine Abteilung an.

data befüllen Sie wie folgt:

let data = {
  name:            '<Name der Abteilung>',
  additionalName1: '<Zusatzname 1>',
  additionalName2: '<Zusatzname 2>',
  customerNumber:  '<Departmentnummer>',
  taxNumber:       '<Steuernummer>',
  description:     '<beliebige Beschreibung>',
  target:          '<Objekt, in dem die Abteilung abgelegt wird>',
  path:            '<relativer oder absoluter Pfad>',
                   // Ein relativer Pfad wird an target angehängt und, 
                   // sofern noch nicht vorhanden, angelegt.
  salesTaxIdentificationNumber: '<Ust-Id>'
};

Beispiel

let address = require('address/objects');
  
let data = {
  name:            'Erzkanzlerei',
  additionalName1: '',
  additionalName2: '',
  customerNumber:  '1337',
  taxNumber:       '99 789 456 123',
  description:     'Abteilung des amtierenden Erzkanzlers',
  salesTaxIdentificationNumber: 'DE777777777'
  //path: null  
};

//Aufruf:
let department = address.create('department', data);

create.person


Mit diesem Aufruf legen Sie eine Person an.

data befüllen Sie wie folgt:

let data = {
  salutation:     '<Anrede>', 
                  // Auswahlmöglichkeiten:  'mr; mrs; mrmrs; family'
                  //(Herr, Frau, Herr und Frau, Familie)
  title:          '<Titel>',
  givenName:      '<Vorname>',
  familyName:     '<Familienname>',
  familyStatus:   '<Familienstatus>',
                  // Auswahlmöglichkeiten: 'unmarried (ledig), 
                  // married (verheiratet), unknown (-)',
  dateOfBirth:    '<Geburtstag (Datum)>',
  description:    '<beliebige Beschreibung>',
  sex:            '<Geschlecht>', 
                  // Auswahlmöglichkeiten: 'male (männlich), female (weiblich), 
                  // unknown (unbekannt)',
  placeOfBirth:   '<Geburtsort>',
  maidenName:     '<Geburtsname>',
  welcomeMessage: '<Sehr geehrter Herr Familienname>',
  target:         '<Objekt, in dem das Addressbuch abgelegt wird>',
                  // Wenn target null oder nicht vorhanden ist, wird automatisch  
                  // /agorum/roi/Files verwendet.
  path:           '<relativer oder absoluter Pfad>'
                  // Ein relativer Pfad wird an target angehängt und, 
                  // sofern noch nicht vorhanden, angelegt.
};

Beispiel

let objects = require('common/objects');
let address = require('address/objects');

let  data = {
  salutation:    'mr',
  title:         'Dr.',
  givenName:     'Alberto',
  familyName:    'Malich',
  familyStatus:  'unmarried',
  dateOfBirth:   new Date('1990-03-01T12:00:00.000+02:00'), 
                 // 01.03.1990
  description:   'Gründer der UU',
  sex:           'male',
  placeOfBirth:  'Ankh-Morkpork',
  maidenName:    'Malich',
  welcomeMessage:'Sehr geehrter Herr Dr. Malich,',
  target:        objects.find('/agorum/roi/Files/Lehrpersonal'),
                 //path:  null
                 //target: null,
  path:          'Lehrpersonal'
};

//Aufruf: 
let person = address.create('person', data); 

create.mail


Mit diesem Aufruf legen Sie eine E-Mail-Adresse an.

data befüllen Sie wie folgt:

let data = {
  mailAddress:        '<email@adresse.com',
  defaultMailAddress: true/false, 
                      //ob Standardmailadresse  
  target:             '<Das Objekt, an das data angehängt werden soll>', 
                      //Muss ein Objekt von dieser Klasse sein:
                      //'D4WADDRESSCONTAINER', 
                      //'D4WADDRESSORGANISATION', 
                      //'D4WADDRESSDEPARTMENT', 
                      //'D4WADDRESSPERSON'
  path:               '<relativer oder absoluter Pfad>'
                      //Ein relativer Pfad wird an target angehängt und, 
                      //sofern noch nicht vorhanden, angelegt.
};

Beispiel

let objects = require('common/objects');
let address = require('address/objects');
  
let data = {
  mailAddress:        'rolf.lang@agorum.com',
  defaultMailAddress: true,
  target:             objects.find('123005') 
};

//Aufruf:
let mail = address.create('mail', data);

create.phone


Mit diesem Aufruf legen Sie eine Telefonnummer an.

data befüllen Sie wie folgt:

let data = {
  type:          '<telephone>',  
                 // Auswahlmöglichkeiten: telephone/mobile/fax 
                 // (siehe csv-Datei: d4w_address_phone_type.csv)
  defaultNumber: true/false, 
                 // ob Standardtelefonnummer
  phoneNumber:   '<Telefonnummer>',
                 //Muss so formatiert werden:
                 // +Land Vorwahl Nummer-Durchwahl 
                 // +Land Vorwahl Nummer          (Wenn es keine Durchwahl gibt)

  target:        '<Das Objekt, an das data angehängt werden soll>',
                 // Muss ein Objekt von dieser Klasse sein: 
                 // 'D4WADDRESSCONTAINER', 
                 // 'D4WADDRESSORGANISATION', 
                 // 'D4WADDRESSDEPARTMENT', 
                 // 'D4WADDRESSPERSON'
                 // Ohne Angabe ist target automatisch: '/agorum/roi/Files/'
  path:          '<relativer oder absoluter Pfad>'
                 // Ein relativer Pfad wird an target angehängt
                 // und, sofern noch nicht vorhanden, angelegt.
};

Beispiel

let address = require('address/objects');
  
let data = {
  type:          'telephone', 
  defaultNumber: true, 
  phoneNumber:   '+49 711 34610-60',
  path:          'Telefonnummern'  
};

//Aufruf:
let phone = address.create('phone', data);

create.link


Mit diesem Aufruf legen Sie eine Verlinkung an.

data befüllen Sie wie folgt:

let data = {
  link:        '<http://www.webseite.com>',
  defaultLink: true/false, 
               // ob Standardlink
  subject:     '<Name des Links, etwa Webseitenname>',
  target:      '<Das Objekt, an das data angehängt werden soll>',
               // Muss ein Objekt von dieser Klasse sein:
               // 'D4WADDRESSCONTAINER',
               // 'D4WADDRESSORGANISATION',
               // 'D4WADDRESSDEPARTMENT',
               // 'D4WADDRESSPERSON'
               // Ohne Angabe ist target automatisch: '/agorum/roi/Files/'
  path:        '<relativer oder absoluter Pfad>'
               // Ein relativer Pfad wird an target angehängt und,   
               // sofern noch nicht vorhanden, angelegt.
};

Beispiel

let objects = require('common/objects');
let beans = require('common/beans');

let address = require('address/objects');

let data = {
  link:        'http://www.agorum.com',
  defaultLink: true,
  subject:     'agorum Homepage',    
  target:      objects.find('258741'), 
  //path:      null  
};

//Aufruf:
let link = address.create('link', data); 

create.info


Mit diesem Aufruf legen Sie eine Zusatzinformation zu einer Person an.

data befüllen Sie wie folgt:

let data = {
  jobTitle:     '<Berufsbezeichnung>Softwareentwicklung',
  activityRate: '<100>',
                // Hier eine Integer-Zahl eingeben, mit wie viel Prozent dieser Job gemacht 
                // wird
  target:       '<Das Objekt, an das data angehängt werden soll>',
                // Muss ein Objekt von dieser Klasse sein:
                // 'D4WADDRESSCONTAINER',
                // 'D4WADDRESSPERSON'
                // Ohne Angabe ist target automatisch: '/agorum/roi/Files/'
  path:         '<relativer oder absoluter Pfad>'
                // Ein relativer Pfad wird an target angehängt 
                // und, sofern noch nicht vorhanden, angelegt.
};

Beispiel

let objects = require('common/objects');
let address = require('address/objects');

let data = {
  jobTitle:     'Softwareentwicklung',
  activityRate: 70,
  target:       objects.find('147852')  
};

//Aufruf:
let info = address.create('info', data);

create.data


Mit diesem Aufruf legen Sie eine Ortsadresse an.

data befüllen Sie wie folgt:

let data = {
  street1:      '<Straßenname>',
  zip:          '<PLZ>',
  city:         '<Ort>',
  state:        '<Bundesland>',
  country:      '<Ländercode>', 
                // (siehe CSV-Datei: d4w_address_data_country.csv)
  postBox:      '<Postboxnummer>',
  zipPostBox:   '<PLZ der Postbox>',
  cityPostBox:  '<Ort der Postbox>',
  houseNumber1: '<Hausnummer>',
  target:       '<Das Objekt, an das data angehängt werden soll>',
                // Muss ein Objekt von dieser Klasse sein:
                // 'D4WADDRESSCONTAINER',
                // 'D4WADDRESSORGANISATION',
                // 'D4WADDRESSDEPARTMENT',
                // 'D4WADDRESSPERSON'
                //  Ohne Angabe ist target automatisch: '/agorum/roi/Files/'
  path:         '<relativer oder absoluter Pfad>'
                // Ein relativer Pfad wird an target angehängt und, 
                // sofern noch nicht vorhanden, angelegt
};

Hinweis: Bei tryCreate wird ein bereits vorhandener Datensatz zurückgegeben. Er wird dabei mit den übergebenen Daten aktualisiert.

Beispiel

let objects = require('common/objects');
let address = require('address/objects');

let data = {
  street1:      'Vogelsangstrasse',
  zip:          '73760',
  city:         'Ostfildern',
  state:        'Baden Württemberg',
  country:      'de',  
  postBox:      '16423',
  zipPostBox:   '73770',
  cityPostBox:  'Denkendorf',
  houseNumber1: '16',
  target:       objects.find('34587')
};

//Aufruf:
let addressData = address.create('data', data); 

create.image


Mit diesem Aufruf legen Sie ein Bild zu einer Person an. Verwenden Sie folgende Bildformate, idealerweise quadratisch in den Abmessungen 512×512 oder 256×256:

data befüllen Sie wie folgt:

let data = {    
  target: '<Das Objekt, an das data angehängt werden soll>',
          // Muss ein Objekt von dieser Klasse sein:
          // 'D4WADDRESSCONTAINER',
          // 'D4WADDRESSPERSON'
          // Ohne Angabe ist target automatisch: '/agorum/roi/Files/'
  path:   '<relativer oder absoluter Pfad>'
          // Ein relativer Pfad wird an target angehängt und, 
          // sofern noch nicht vorhanden, angelegt.
};

Beispiel

let objects = require('common/objects');
let address = require('address/objects');

let data = {    
  target: objects.find('123455') 
};

//Aufruf:
let image = address.create('image', data);

//Inhalt eines Bilds auf das Image streamen
objects.find('/agorum/roi/Files/neuesBild.png').streamContent(image);

// return: image object

Das Bild einer Person aktualisieren

//Objekt (Person) holen
let image = objects.find('1278388').firstAddressImage;

//Inhalt des neuen Bilds auf das Image streamen
objects.find('/agorum/roi/Files/aktualisiertesBild.png').streamContent(image);