Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core JavaScript-API
Mit dem nachfolgenden Skript erstellen Sie ein Adressbuch. Dabei finden alle in der Dokumentation beschriebenen Funktionen Verwendung und werden kombiniert:
/* global sc */ let address = require('address/objects'); let objects = require('common/objects'); let folder = objects.find('/agorum/roi/Files').createPath('Test-My-First-Address-JS'); let book = address.tryCreate('book', { name: 'Mein erstes Adressbuch', description: 'Beschreibung des Addressbuches', target: folder }); let organisation = address.tryCreate('organisation', { name: 'agorum Software GmbH', additionalName1: 'additionalName1', additionalName2: 'additionalName2', customerNumber: '1234567890', salesTaxIdentificationNumber: 'DE12345654321', taxNumber: '1098754311', description: 'Beschreibung der Firma', target: book }); // Prüfen ob es Data schon gibt für die Organisation let dataOrganisation = address.getMyData(organisation); if (!(dataOrganisation && dataOrganisation[0])) { dataOrganisation = address.create('data', { street1: 'Vogelsangstrasse', zip: '73760', city: 'Ostfildern', state: 'Baden Württemberg', country: 'de', // siehe csv-Datei: d4w_address_data_country.csv postBox: '16423', zipPostBox: '73760', cityPostBox: 'Ostfildern', houseNumber1: '22', target : organisation }); } // Hier prüfen, ob es eine Telefonnummer gibt let apns = address.getPhoneNumbers(organisation, 'telephone', true, true); let telephoneOrganisation = null; if (apns.length > 0) { telephoneOrganisation = objects.find(apns[0].id); } else { telephoneOrganisation = address.create('phone', { type: 'telephone', phoneNumber: '+49 711 3461060', defaultNumber: true, // true oder false target: organisation }); } // Hier prüfen, ob es eine Faxnummer gibt apns = address.getPhoneNumbers(organisation, 'fax', true, true); let faxOrganisation = null; if (apns.length > 0) { faxOrganisation = objects.find(apns[0].id); } else { faxOrganisation = address.create('phone', { type: 'fax', phoneNumber: '+49 711 3461063', defaultNumber: true, // true oder false target: organisation }); } // Hier prüfen, ob es eine Mailadresse gibt let aes = address.getEmails(organisation, true, true); let mailOrganisation = null; if (aes.length > 0) { mailOrganisation = objects.find(aes[0].id); } else { mailOrganisation = address.create('mail', { mailAddress: 'info2@agorum.com', defaultMailAddress: true, // true oder false target: organisation }); } let als = address.getLinks(organisation, true, true); let linkOrganisationOwnTrue = null; if (als.length > 0) { linkOrganisationOwnTrue = objects.find(als[0].id); } else { linkOrganisationOwnTrue = address.create('link', { link: 'https://www.agorum.com', defaultLink: true, // true oder false subject: 'Homepage', target: organisation }); } let alsn = address.getLinks(organisation, true, false); let linkOrganisationOwnFalse = null; if (alsn.length > 0) { linkOrganisationOwnFalse = objects.find(alsn[0].id); } else { linkOrganisationOwnFalse = address.create('link', { link: 'https://www.desk4web.de', defaultLink: false, // true oder false subject: 'desk4web', target: organisation }); } let departmentZSB = address.tryCreate('department', { name: 'Zweigstelle Belgien', target: organisation }); // prüfen ob es data schon gibt für das Department let dataDepartment = address.getMyData(departmentZSB); if (!dataDepartment) { // Durch tryAdd wird data nur einmal angelegt dataDepartment = address.create('data', { description: 'Beschreibung der Adresse', street1: 'Huberstrasse', zip: '65432', city: 'Kulgow', // state: 'Baden Württemberg', country: 'be', // siehe csv-Datei: d4w_address_data_country.csv postBox: '12233', houseNumber1: '28', target: departmentZSB }); } // Hier prüfen, ob es eine Telefonnummer gibt apns = address.getPhoneNumbers(departmentZSB, 'telephone', true, true); let telephonedepartmentZSB = null; if (apns.length > 0) { telephonedepartmentZSB = objects.find(apns[0].id); } else { telephonedepartmentZSB = address.create('phone', { type: 'telephone', phoneNumber: '+32 873 87876876', defaultNumber: true, // true oder false target: departmentZSB }); } // Hier prüfen, ob es eine Faxnummer gibt apns = address.getPhoneNumbers(departmentZSB, 'fax', true, true); let faxdepartmentZSB = null; if (apns.length > 0) { faxdepartmentZSB = objects.find(apns[0].id); } else { faxdepartmentZSB = address.create('phone', { type: 'fax', phoneNumber: '+49 711 3461062', defaultNumber: true, // true oder false target: departmentZSB }); } // Hier prüfen, ob es eine Mailadresse gibt aes = address.getEmails(departmentZSB, true, true); let maildepartmentZSB = null; if (aes.length > 0) { maildepartmentZSB = objects.find(aes[0].id); } else { maildepartmentZSB = address.create('mail', { mailAddress: 'infobelgien@agorum.com', defaultMailAddress: true, // true oder false target: departmentZSB }); } let departmentZSBMB = address.tryCreate('department', { name: 'Marketing Belgien', target: departmentZSB }); let departmentGL = address.tryCreate('department', { name: 'Geschäftsleitung', target: organisation }); let departmentDEV = address.tryCreate('department', { name: 'Entwicklung', target: organisation }); // Personen anlegen // prüfen ob es die Person schon gibt let os = address.getPerson(departmentGL, {givenName: 'Vorname OS', familyName:'Nachname OS' }); if (!os) { os = address.create('person', { salutation: 'mr', // Hier gibt es folgende Auswahl: mr; mrs; mrmrs; family (Herr, Frau, Herr und Frau, Familie) title: 'Dipl.Ing.(FH)', givenName: 'Vorname OS', familyName: 'Nachname OS', dateOfBirth: new Date('1978-09-17T12:00:00.000+02:00'), sex: 'male', maidenName: 'Kurz', description: 'Beschreibung der Person', welcomeMessage: 'Sehr geehrter Herr Nachname OS', target: departmentGL }); } let osInfo = address.getInfo(os); if (!osInfo) { osInfo = address.create('info', { jobTitle: 'Hier steht der Job-Title OS', activityRate: 100, // Hier eine Integer eingeben, mit wieviel Prozent dieser Job gemacht wird target: os }); } // Hier prüfen, ob es eine Mailadresse gibt aes = address.getEmails(os, true, true); let mailOS = null; if (aes.length > 0) { mailOS = objects.find(aes[0].id); } else { mailOS = address.create('mail', { target: os, mailAddress: 'os@agorum.com', defaultMailAddress: true // true oder false }); } // Hier prüfen, ob es eine Telefonnummer gibt apns = address.getPhoneNumbers(os, 'mobile', true, true); let mobileOS = null; if (apns.length > 0) { mobileOS = objects.find(apns[0].id); } else { mobileOS = address.create('phone', { target: os, type: 'mobile', phoneNumber: '+49 171 1234567', defaultNumber: true // true oder false }); } // RL // prüfen ob es die Person schon gibt let rl = address.getPerson(departmentGL, { givenName: 'Vorname RL', familyName: 'Nachname RL' }); if (!rl) { rl = address.create('person', { salutation: 'mr', // Hier gibt es folgende Auswahl: mr; mrs; mrmrs; family (Herr, Frau, Herr und Frau, Familie) title: 'Dipl.Ing.(FH)', givenName: 'Vorname RL', familyName: 'Nachname RL', dateOfBirth: new Date('1978-09-20T12:00:00.000+02:00'), sex: 'male', maidenName: 'Kurz', description: 'Beschreibung der Person', welcomeMessage: 'Sehr geehrter Herr Nachname RL', target: departmentGL }); } let rlInfo = address.getInfo(rl); if (!rlInfo) { rlInfo = address.create('info', { target: rl, jobTitle: 'Hier steht der Job-Title von RL', activityRate: 100 // Hier eine Integer eingeben, mit wieviel Prozent dieser Job gemacht wird }); } // Hier prüfen, ob es eine Mailadresse gibt aes = address.getEmails(rl, true, true); let mailRL = null; if (aes.length > 0) { mailRL = objects.find(aes[0].id); } else { mailRL = address.create('mail', { target: rl, mailAddress: 'rl@agorum.com', defaultMailAddress: true // true oder false }); } // Hier prüfen, ob es eine Telefonnummer gibt apns = address.getPhoneNumbers(rl, 'mobile', true, true); let mobileRL = null; if (apns.length > 0) { mobileRL = objects.find(apns[0].id); } else { mobileRL = address.create('phone', { target: rl, type: 'mobile', phoneNumber: '+49 173 22334455', defaultNumber: true // true oder false }); } // SG // prüfen ob es die Person schon gibt let sg = address.getPerson(departmentZSBMB, { givenName: 'Vorname SG', familyName: 'Nachname SG' }); if (!sg) { sg = address.create('person', { salutation: 'mr', // Hier gibt es folgende Auswahl: mr; mrs; mrmrs; family (Herr, Frau, Herr und Frau, Familie) title: 'Dipl.Ing.(FH)', givenName: 'Vorname SG', familyName: 'Nachname SG', dateOfBirth: new Date('1978-09-20T12:00:00.000+02:00'), sex: 'male', maidenName: 'Kurz', description: 'Beschreibung der Person', welcomeMessage: 'Sehr geehrter Herr Nachname SG', target: departmentZSBMB }); } let sgInfo = address.getInfo(sg); if (!sgInfo) { sgInfo = address.create('info', { target: sg, jobTitle: 'Hier steht der Job-Title von SG', activityRate: 100 // Hier eine Integer eingeben, mit wieviel Prozent dieser Job gemacht wird }); } sgInfo; // Hier prüfen, ob es eine Mailadresse gibt aes = address.getEmails(sg, true, true); let mailSG = null; if (aes.length > 0) { mailSG = objects.find(aes[0].id); } else { mailSG = address.create('mail', { target: sg, mailAddress: 'sg@agorum.com', defaultMailAddress: true // true oder false }); } // Hier prüfen, ob es eine Telefonnummer gibt apns = address.getPhoneNumbers(sg, 'mobile', true, true); let mobileSG = null; if (apns.length > 0) { mobileSG = objects.find(apns[0].id); } else { mobileSG = address.create('phone', { target: sg, type: 'mobile', phoneNumber: '+49 171 1234567', defaultNumber: true // true oder false }); } // FS // prüfen ob es die Person schon gibt let fs = address.getPerson(departmentDEV, { givenName: 'Vorname FS', familyName: 'Nachname FS' }); if (!fs) { fs = address.create('person', { salutation: 'mr', // Hier gibt es folgende Auswahl: mr; mrs; mrmrs; family (Herr, Frau, Herr und Frau, Familie) title: 'Dipl.Ing.(FH)', givenName: 'Vorname FS', familyName: 'Nachname FS', dateOfBirth: new Date('1978-09-20T12:00:00.000+02:00'), sex: 'male', maidenName: 'Kurz', description: 'Beschreibung der Person', welcomeMessage: 'Sehr geehrter Herr Nachname FS', target: departmentDEV }); } let fsInfo = address.getInfo(fs); if (!fsInfo) { fsInfo = address.create('info', { target: fs, jobTitle: 'Hier steht der Job-Title von FS', activityRate: 100 // Hier eine Integer eingeben, mit wieviel Prozent dieser Job gemacht wird }); } // Hier prüfen, ob es eine Mailadresse gibt aes = address.getEmails(fs, true, true); let mailFS = null; if (aes.length > 0) { mailFS = objects.find(aes[0].id); } else { mailFS = address.create('mail', { target: fs, mailAddress: 'fs@agorum.com', defaultMailAddress: true // true oder false }); } // Hier prüfen, ob es eine Telefonnummer gibt apns = address.getPhoneNumbers(fs, 'mobile', true, true); let mobileFS = null; if (apns.length > 0) { mobileFS = objects.find(apns[0].id); } else { mobileFS = address.create('phone', { target: fs, type: 'mobile', phoneNumber: '+49 171 1234567', defaultNumber: true // true oder false }); }