Page tree
Skip to end of metadata
Go to start of metadata

API Klassen und deren Funktionen können nur mit TecArt-System Version >= 3.2 genutzt werden

1. Methoden

1.1. addNote

Syntax:

int addNote(array $note, bool $check_exist = false)

Beschreibung:

Fügt eine neue Notiz hinzu. Mit $check_exist kann Dublettenprüfung deaktiviert werden. Standardwert ist "true".

Gibt eine note_id zurück

Wirft CRMExceptions:

    NOTE_EXISTS    - "Note already exists", wenn Prüfung auf date, subject, category eine oder mehrere indentische Einträge zurückgibt
    SAVE_FAILURE   - "Unable to save Note", wenn Insert Sequel an RDBMS fehlschlug 

$note ist ein assoziatives Array

Um Kontakte zuzuweisen müssen Sie die contact id oder einige Eigenschaften des Kontakts ( aus $note_contacts ) übergeben, das System erledigt den Rest.

Eigenschaften von $note array:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int                     ext_id                       Externe ID ( ab Version 4.2 )
string(255)             cid                          Contact-Id (Format: Contact-Id:Person-Id;Contact-Id2:Person-Id2;...) 
int                     pid                          Projekt-Id
int                     ttid                         Ticket-Id
int                     orderid                      Auftrag-Id ( ab Version 4.2 )
int                     date                         Datum und Uhrzeit (Unix-Timestamp)
string(255)             subject                      Betreff der Notiz
string(4000)            note_text                    Notiztext
string(255)             category                     Kategorieeinordnung der Notiz
string(255)             userid                       Userids (Format: User-Id1:User-Id2), -1 for NO userid
int                     rem                          Wiedervorlage (1: wenn an die Notiz erinnert werden soll, 0 wenn nicht)
int                     remtime                      Unix-Timestamp für die Wiedervorlage
int                     private                      Private Notiz (1: wenn die Notiz privat sein soll, 0: wenn öffentlich) (Version >= 3.2.2970)
array                   note_contacts                Array mit contact values

Eigenschaften von $note_contacts array:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int                     ext_id                       Externe ID ( ab Version 4.2 )
string(255)             cid                          Contact Id ( Format: Cid:Pid )
string(128)             firstname                    Vorname 
string(128)             lastname                     Nachname
string(128)             displayname                  Name, der in Listen erscheint 
string(128)             nickname                     Spitzname
string(255)             emailadr1                    Erste E-Mail-Addresse
string(255)             emailadr2                    Zweite E-Mail-Addresse 
int                     email_format                 Bevorzugtes E-Mail-Format 
                                                      0 = Text
                                                      1 = HTML
string(128)             screen_name                  Screen Name, z.B. Messenger-Account 
string(128)             phone_work                   Telefonnummer Arbeit 
string(128)             phone_home                   Telefonnummer Privat 
string(128)             phone_fax                    Faxnummer Arbeit
string(128)             phone_pager                  Pager Nummer 
string(128)             phone_mobil                  Mobilnummer
string(128)             home_address1                Adresszeile privat 1 
string(128)             home_address2                Adresszeile privat 2 
string(128)             home_city                    Stadt
string(128)             home_region                  Region 
string(128)             home_postcode                Postleitzahl 
string(128)             home_country                 Land 
string(128)             home_website                 Persönliche Website 
string(128)             work_title                   Titel auf Arbeit, z.B. CEO 
string(128)             work_department              Abteilung
string(128)             work_organisation            Organisations- oder Firmenname  
string(128)             work_address1                Adresszeile Arbeit 1 
string(128)             work_address2                Adresszeile Arbeit 2 
string(128)             work_city                    Stadt
string(128)             work_region                  Region 
string(128)             work_postcode                Postleitzahl 
string(128)             work_country                 Land 
string(255)             work_website                 Offizielle Firmen-Website 
string(255)             custom1                      Benutzerdefiniertes Feld 1 
string(255)             custom2                      Benutzerdefiniertes Feld 2 
string(255)             custom3                      Benutzerdefiniertes Feld 3 
string(255)             custom4                      Benutzerdefiniertes Feld 4 
string(65535)           notes                        Notizen

Beispiel

<?php
 
try {
    $note = array(
		'cid'           => '',
		'date'          => time(),
		'subject'       => 'Mary and her lamb',
		'note_text'     => "Mary had a little lamb",
		'pid'           => 0,
		'orderid'       => 15,
		'category'      => "miscellaneous",
		'rem'           => 1,
		'remtime'       => (time()+86400),
		'note_contacts' => array(
			array(
				'firstname' => 'John',
				'lastname'  => 'Smith',
				'emailadr1' => 'j.smith@dont-spam-me.de'
            ),
            array(
				'firstname' => 'Ethel',
				'lastname'  => 'Jones'
            )
        )
    );
    $crmapi_notes = crmapi::notes();
    $note_id      = $crmapi_notes->addNote($note);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo $note_id;


1.2. getNote

Syntax:

array getNote( int $note_id )

Beschreibung:

Gibt Daten einer Notiz mit übergebener note id zurück.

Wirft CRMException:

NOTE_404 - "Note ID <int> not found"

Eigenschaften des Rückgabe Array $note array:

sind die gleichen wie für getNotes

Beispiel:

<?php
try {
    $crmapi_notes = crmapi::notes();
 
    //Get note with id 5457:
    $result = $crmapi_notes->getNote(5457);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo print_r($result, true);



1.3. updateNote

Syntax:

int updateNote( int $noteid, array $note)

Beschreibung:

Ändert Eigenschaften einer bestehenden Notiz.

Gibt eine $note_id zurück.

Wirft CRMExceptions:

NOTE_404 - "Note ID <int> not found", wenn übergebene ID nicht gefunden wird

SAVE_FAILURE - "Unable to save Note", wenn Speicherung in RDBMS fehlschlug

Eigenschaften von $note array:

identisch zu addNote

Beispiel:

<?php
try {
    $crmapi_notes = crmapi::notes();
     
    $note = array(
        'subject'    => 'updated note subject'
    );
 
    $result = $crmapi_notes->updateNote( 9228, $note );
}    
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo "Successfully changed note with id 9228.<br/>\n"; 



1.4. getNotes

Syntax:

array getNotes(int $userid, int $day = 0, int $month = 0, int $year = 0)

Beschreibung:

Gibt Array mit allen Notizen zurück, die unter den übergebenen Parametern gefunden werden konnten.

Wirft CRMExceptions:

OUT_OF_MEM - "Too many contact/person results, memory limit of <int> bytes exceeded", wenn zu viele untergeordnete Kontaktdaten abgerufen werden

Wenn $userid gegeben ist, werden Notizen für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn $userid auf -1 gesetzt wird, werden alle Notizen für den authentifizierten Nutzer zurückgegeben.

Wenn $day, $month und $year gegeben sind, werden nur Notizen für den entsprechenden Tag 00:00 - 23:59:59 zurückgegeben.

Wenn $month und $year gegeben sind, werden nur Notizen für den entsprechenden Monat zurückgegeben.

Wenn $year gegeben ist, werden nur Notizen für das entsprechende Jahr zurückgegeben.

Sie können $day auf 0 setzen um den kompletten Monat zu sehen oder $day und $month auf 0 setzen um das komplette Jahr zu sehen oder $day, $month und $year auf 0 setzen um alle Anrufe zu sehen.

Eigenschaften der zurückgegebenen $notes array:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int                     id                           Note-Id
int                     ext_id                       Externe ID ( ab Version 4.2 )
int                     pid                          Project-Id 
int                     ttid                         Ticket-Id
int                     orderid                      Auftrag-Id ( ab Version 4.2 )
string(255)             cid                          Contact-Id (Format: Contact-Id:Person-Id;Contact-Id2:Person-Id2;...) 
string(255)             subject                      Betreff der Notiz
string(4000)            note_text                    Notiztext
string(255)             category                     Kategorien, Format: Category1; Category2; ... 
string(255)             userid                       Userids (Format: User-Id1:User-Id2
array                   seen                         Array mit User-IDs, welche die Notiz min. einmal im geöffnet haben
int                     chguser                      Userid der letzten Änderung
int                     chgtime                      Unix-Timestamp der letzten Änderung 
int                     createuser                   Userid der Erstellung
int                     createtime                   Unix-Timestamp der Erstellung
int                     rem                          Wiedervorlage (1: an die Notiz wird erinnert, and 0: an die Notiz wird nicht erinnert)
int                     remtime                      Unix-Timestamp der Wiedervorlage
int                     private                      Private Notiz (1: die Notiz ist privat, und 0: Notiz ist öffentlich) (Version >= 3.2.2970)
array                   note_contacts                Array mit verbundenen Kontakt-Daten
array                   note_projects                Array mit verbundenem Projekt ( CRM>=3.4.5096 )

Eigenschaften von $note_contacts array:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
string(255)             cid                          Contact Id ( Format: Cid:Pid )
int                     ext_id                       Externe ID ( ab Version 4.2 )
string(128)             firstname                    Vorname
string(128)             lastname                     Nachname
string(128)             displayname                  Name, der in Listen erscheint 
string(128)             nickname                     Spitzname
string(255)             emailadr1                    First E-Mail-Address 
string(255)             emailadr2                    Second E-Mail-Address 
int                     email_format                 Preferred Format 
                                                      0 = Text
                                                      1 = HTML
string(128)             screen_name                  Screen Name, e.g. Messenger-Account 
string(128)             phone_work                   Phone Number at Work 
string(128)             phone_home                   Phone Number at Home 
string(128)             phone_fax                    Fax Number at Work 
string(128)             phone_pager                  Pager Number 
string(128)             phone_mobil                  Cellular Number
string(128)             home_address1                Home Address Line 1 
string(128)             home_address2                Home Address Line 2 
string(128)             home_city                    Hometown 
string(128)             home_region                  Home Region 
string(128)             home_postcode                Home ZIP 
string(128)             home_country                 Home Country 
string(128)             home_website                 Personal Website 
string(128)             work_title                   Title at Work, e.g. CEO 
string(128)             work_department              Department
string(128)             work_organisation            Org- or Company Name  
string(128)             work_address1                Work Address Line 1 
string(128)             work_address2                Work Address Line 2 
string(128)             work_city                    Work City 
string(128)             work_region                  Work Region 
string(128)             work_postcode                Work ZIP 
string(128)             work_country                 Work Country 
string(255)             work_website                 Offical Company Website 
string(255)             custom1                      Custom Field 1 
string(255)             custom2                      Custom Field 2 
string(255)             custom3                      Custom Field 3 
string(255)             custom4                      Custom Field 4 
string(65535)           notes                        Notes
string                  picture                      Contact Picture Data - base64 encoded
int                     chguser                      Userid of last modification 
int                     chgtime                      Unix-Timestamp of last modification 
int                     createuser                   Userid of task creation 
int                     createtime                   Unix-Timestamp of task creation 

Eigenschaften von $note_projects array:

Type(Length)      Eigenschaft             Beschreibung
-------------------------------------------------------------------
int               pid                     Project-Id 
int               ext_id                  Externe ID ( ab Version 4.2 )
string(255)       name                    Projektname 
string(50)        number                  Projektnummer 
string(255)       url                     URL des Projekts (Website) 
int               start                   Startdatum & Zeit als Unix-Timestamp 
int               stop                    Stopdatum & Zeit als Unix-Timestamp 
int               done                    Fertigstellung in Prozent
double            budget                  Projektbudget
string(65535)     notes                   Projektnotizen
int               leader                  Projektleiter Userid  
int               substitute              Stellv. Projektleiter Userid 
string(65535)     shortnotes              Projekt Kurzbeschreibung
int               invoice                 Rechnung erstellt? Mögliche Werte: 0, 1
int               priority                Priorität, Mögliche Werte: -1 = niedrig, 0 = normal, 1 = hoch
string(255)       category                Projektkategorien, Format: Category1:Category2:... 
int               chguser                 Userid der letzten Änderung
int               chgtime                 Unix-Timestamp der letzten Änderung 
int               createuser              Userid der Erstellung
int               createtime              Unix-Timestamp der Erstellung
string(255)       user19                  Benutzerdefiniertes Feld Nr. 19
string(255)       user20                  Benutzerdefiniertes Feld Nr. 20
   :                  :                           :
string(255)       user80                  Benutzerdefiniertes Feld Nr. 80 

Beispiel:

<?php
$crmapi_notes = crmapi::notes();
 
//Get all Calls for 10.10.2013:
$result = $crmapi_notes->getNotes(-1, 10, 10, 2013);
 
foreach($result as $note) {
 
    foreach($note as $key => $val) {
        echo "$key => $val<br>\n";
        if (is_array($val) && count($val) print_r($val);
    }
}


1.5. getNotesList

(Version >= 4.4)

Syntax:

array crmapi_notes->getNotesList(int $timestamp = 0)

Beschreibung:

Gibt ein Array mit allen Notizen zurück, die ab dem gegebenen Datum angelegt worden sind und als persönliche Notizen des angemeldeten Anwenders gelten.

Notizen gelten als persönliche Notiz, wenn das Objekt keine Zuordnung zu einem Projekt, Ticket, Auftrag oder Kontakt besitzt und der angemeldete Anwender in der Liste der betreffenden Benutzer eingetragen ist.

$timestamp ist ein Unix-Timestamp. Wenn übergeben, werden nur persönliche Notizen zurückgegeben, die seit dem gegebenen Zeitstempel angelegt worden sind.

Eigenschaften der zurückgegebenen $notes array:

sind identisch mit getNotes

Wirft CRMExceptions:

OUT_OF_MEM - "Too many contact/person results, memory limit of <int> bytes exceeded", wenn zu viele untergeordnete Kontaktdaten abgerufen werden

Beispiel:

<?php
 
try {
    $crmapi_notes = crmapi::notes();
 
    //Get all personal notes starting at date 10.10.2013:
    $timestamp = mktime(0, 0, 0, 10, 10, 2013);
    $result = $crmapi_notes->getNotesList($timestamp);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
foreach($result as $note) {
   
    foreach($note as $key => $val) {
        echo "$key => $val<br>  \n";
        if (is_array($val) && count($val) print_r($val);
    }
}



1.6. getNotesFrom

Syntax:

array crmapi_notes->getNotesFrom(int $userid, int $day = 0, int $month = 0, int $year = 0) 

Beschreibung:

Gibt ein Array mit allen Notizen ab dem gegebenem Datum bis zum derzeitigen Unix Timestamp Maximum zurück (Stand Feb. 2014 Timestamp max: 12/31/2037).

Wenn $userid gegeben ist, werden Notizen für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn $userid auf 0 gesetzt wird, werden alle Notizen für den authentifizierten Nutzer zurückgegeben.

Wenn $day, $month und $year gegeben sind, werden Notizen ab dem tagesgenauen Datum zurückgegeben.

Wenn $month und $year gegeben sind, werden nur Notizen ab dem entsprechenden Monat zurückgegeben.

Wenn $year gegeben ist, werden Notizen ab 1. Jan. des entsprechenden Jahres zurückgegeben.

Eigenschaften der zurückgegebenen $notes array:

sind identisch mit getNotes

Beispiel:

<?php
 
try {
    $crmapi_notes = crmapi::notes();
 
    //Get all notes starting at date 10.10.2013:
    $result = $crmapi_notes->getNotesFrom(-1, 10, 10, 2013);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
foreach($result as $note) {
   
    foreach($note as $key => $val) {
        echo "$key => $val<br>  \n";
        if (is_array($val) && count($val) print_r($val);
    }
}



1.7. getChangedNotes

Syntax:

array getChangedNotes(int $userid, int $timestamp, int $limit = 0, int $offset = 0, boolean $personal_only = false)

Wirft CRMException:

OUT_OF_MEM - "Too many contact/person results, memory limit of <int> bytes exceeded", wenn zu viele untergeordnete Kontaktdaten abgerufen werden

Beschreibung:

Gibt ein Array mit Notizen zurück, die seit timestamp geändert wurden.

Wenn $userid gegeben ist, werden Notizen für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn $userid auf 0 gesetzt wird, werden alle Notizen für den authentifizierten Nutzer zurückgegeben.

Parameter $personal_only bewirkt die Rückgabe ausschließlich dem angemeldeten Benutzer zugehöriger Notizen, einschließlich der als privat markierten. Dabei wird Parameter $userid ignoriert.

Eigenschaften von returned note objects:

sind identisch wie für getNotes

Beispiel:

<?php
try {
    $crmapi_notes = crmapi::notes();
 
    // Get Notes modified within the last 30 days limited to 15 results
    // using the optional limit and offset parameters is highly recommended !
    $result    = $crmapi_notes->getChangedNotes(0, time() - 60 * 60 * 24 * 30, 15);
 
    foreach($result as $note) {
        foreach($note as $key => $val) {
            echo "$key => $val<br>\n";
            if (is_array($val) && count($val) print_r($val);
        }
    }
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.8. getNoteIds

Syntax:

array getNoteIds( int $userid, int $timestamp ) 

Beschreibung:

Gibt ein Array mit Note-Ids für Notizen zurück, die seit timestamp verändert wurden.

Wirft CRMException:

PERM_DENIED - "PERMISSION DENIED", wenn aktiver Benutzer keinen Zugriff auf Notiz Funktion hat und nicht der Gruppe Administrator angehört

Wenn $userid gegeben ist, werden Anrufe für den User nur zurückgegeben, wenn der authentifizierte Benutzer Leseberechtigungen hat. Wenn $userid auf 0 gesetzt wird, werden alle Anrufe für den authentifizierten Nutzer zurückgegeben.

Beispiel:

<?php
try {
    $crmapi_notes = crmapi::notes();
 
    //Get note ids modified within the last 30 days:
    $result = $crmapi_notes->getNoteIds(0, time() - (86400 * 30) );
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $id) {
    echo "$id<br>  \n";
}

1.9. deleteNote

Syntax:

boolean deleteNote( int $note_id ) 

Beschreibung:

Löscht Notiz mit der gegebenen note ID.

Wirft CRMException:

DEL_FAILURE - "Failed to delete Note ID <int>"

Beispiel:

<?php
try {
    $crmapi_notes	= crmapi::notes();
	$result			= $crmapi_notes->deleteNote( 9228 );
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo "Successfully deleted note 9228.\n"; 



1.10. getIdByExtId

(Version >= 4.2)

Syntax:

array getIdByExtId( string $external_id ) 

Beschreibung

Liefert interne ID(s) von Notizen mit der übergebenen externen ID zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

Eigenschaften des zurückgegebenen note ids array:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int			            $id			                 Task-Id 

Beispiel:

<?php
 
try {   
    $crmapi_notes	= crmapi_notes::notes();   
    $result			= $crmapi_notes->getIdByExtId(12345);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $id) {   
    echo $id."<br>  ";
}
 



1.11. getAllExtIds

(Version >= 4.2)

Syntax:

array getAllExtIds() 

Beschreibung

Liefert eine Liste aller externen IDs in Notizen zurück.

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

Eigenschaften des zurückgegebenen note ids array:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int			$id			      externe Task-Id 

Beispiel:

<?php
 
try {   
    $crmapi_notes	= crmcrmapi_notes::notes();   
    $result			= $crmapi_notes->getAllExtIds();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $id) {   
    echo $id."<br>  ";
}



1.12. setReadFlag

(Version >= 4.4)

Syntax:

boolean setReadFlag(int $note_id, int $user_id = 0)

Beschreibung:

Fügt eine User ID der "gelesen" Liste eines Notiz Objektes hinzu.

$note_id muß immer eine ID eines Notiz Objektes sein.

Mit optionaler $user_id kann eine User ID spezifiziert werden. Wird $user_id ausgelassen oder mit $user_id = 0 übergeben, wird die ID des angemeldeten Anwenders verwendet.

Wirft CRMException:

INVALID_NOTE_ID => 'Webservice: Invalid Note ID given'

Beispiel:

<?php
 
try {   
    $crmapi_notes = crmcrmapi_notes::notes();
    // mark note with ID 1337 as read for logged-in user
    $success = $crmapi_notes->setReadFlag(1337);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
if ($success) {
    echo 'successfully marked as seen';
}
else {
    echo 'unable to mark this note as seen';
}



1.13. setDuplicatecheckConfig

(Version >= 4.4)

Syntax:

boolean|string CRMException message setDuplicatecheckConfig( [array( [string <fieldname>, string <fieldname>...]) | NULL] )

Beschreibung:

Ermöglicht eine temporäre Überschreibung der Dublettenprüfungsfelder für die Laufzeit der angemeldeten Session.

Standardübergabe ist ein leeres Array, was gleichbedeutend mit einer nicht stattfindenden Dublettenprüfung ist.

Zurückgesetzt werden kann die temporäre Dublettenprüfung Feldkonfiguration, wenn NULL anstatt eines Array übergeben wird.

Beispiel:

<?php
 
try {   
    $api     = crmapi::notes();
    $fields  = array('date', 'subject');
    // adding a note will execute an exists-check looking for identical values in fields "date" and "subject" 
    // and will result in an "object already exists" trigger
    $success = $api->setDuplicatecheckConfig($fields);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo ($success === true ? 'override successful' : $success);



1.14. getDuplicatecheckConfig

(Version >= 4.4)

Syntax:

array | string CRMException message getDuplicatecheckConfig( )

Beschreibung:

Gibt Array mit aktueller Feldkonfiguration der Dublettenprüfung zurück.

Sollte aktuell keine temporäre Überschreibung der Feldkonfiguration aktiv sein (siehe setDuplicatecheckConfig), wird die durch die Administration konfigurierte Feldliste als Array zurückgegeben.

Beispiel:

<?php
 
try { 
    $api    = crmapi::notes();
    $fields = $api->getDuplicatecheckConfig();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo print_r($fields, true);



1.15. getPermissions

(Version >= 4.5.17365)

Syntax:

array getPermissions( array $note_ids ) 

Beschreibung:

Gibt ein assoziatives $objects_permissions array mit den Berechtigungen für die Notizen mit den gegebenen $note_ids zurück.

Wirft eine CRMException im Fehlerfall.

Eigenschaften von $objects_permissions array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  Note ID
array		   Value                Array mit $permissions array

Eigenschaften von $permissions array:

Type(Length)	Key           Value       
-------------------------------------------------------------------------------
array		user_perm     Array mit $user_permission arrays
array		group_perm    Array mit $group_permission arrays

Eigenschaften von $user_permission array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  User's ID
array		   Value                read:   1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        write:  1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        delete: 1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Eigenschaften von $group_permission array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  Group's ID
array		   Value                read:   1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        write:  1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        delete: 1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Beispiel:

<?php
 
try {
    $crmapi_notes = crmapi::notes(); 
    $permissions  = $crmapi_notes->getPermissions( array(15, 20, 100) );
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
print_r($permissions);



1.16. setPermissions

(Version >= 4.5.17365)

Syntax:

array setPermissions( array $objects_permissions ) 

Beschreibung:

Setzt die Berechtigungen für mehrere Notizen

Setzt eine Lizenz mit Aktivitätenrechten und aktivierte Aktivitätenrechte für dieses Modul voraus.

Wirft eine CRMException im Fehlerfall.

Eigenschaften von $objects_permissions array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  Note ID
array		   Value                Array mit $permissions array

Eigenschaften von $permissions array:

Type(Length)	   Key                  Value       
-------------------------------------------------------------------------------
array		   users                Array mit $user_permission arrays
array		   groups               Array mit $group_permission arrays

Eigenschaften von $user_permission array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  User's ID
array		   Value                read:   1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        write:  1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        delete: 1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Eigenschaften von $group_permission array:

Type(Length)	   Eigenschaft          Beschreibung
-------------------------------------------------------------------------------
int                Key                  Group's ID
array		   Value                read:   1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        write:  1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
                                        delete: 1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Beispiel:

<?php
 
try {
    $crmapi_notes = crmapi::notes(); 
    $permissions  = array(
		81941 => array(
			'users'  => array(
				'56' => array('read' => -1, 'write' => -1, 'delete' => -1)
			),
			'groups' => array(
				'4'  => array('read' => -1, 'write' => -1, 'delete' => -1)
			)
		),
		79331 => array(
			'groups' => array(
				'4'  => array('read' => -1, 'write' => -1, 'delete' => -1)
			)
		)
	);
 
    $crmapi_notes->setPermissions($permissions);
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.17. getsearchfilteredNotes

(Version >= 4.7.20468)

Syntax:

array getsearchfilteredNotes(int $filter_id, string $search = "", int $count = 0, int $offset = 0, array $fields = false)

Beschreibung:

Gibt ein Array mit Notizen zurück, die dem angegebenen Suchfilter und Suchbegriff entsprechen, limitiert von count und offset.

Der Parameter search repräsentiert die Eingabe im Suchfeld im CRM (Platzhalter <#search_field#> in Filterbedingungen)

Über den Parameter fields können die zurückgegeben Felder eingeschränkt werden (false = alle Felder)

Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen.

Hinweis: Es werden nur Notizen und Felder zurückgegeben, für die der authentifizierte Nutzer Leseberechtigungen hat.

Eigenschaften:

Das sind dieselben wie für getNotes, evtl eingeschränkt nach Parameter fields.

Beispiel:

<?php
 
try {   
	$crmapi_notes = crmapi::notes();
 
	// Liefert die Felder Betreff und Notiztext und die Dauer der ersten 10 gefundenen Notizen, die dem Suchfilter 5 ohne eingegebenen Suchbegriff entsprechen
	$result = $crmapi_notes->getsearchfilteredNotes(5, "", 10, 0, array('subject', 'note_text'));
 
	// Liefert alle Felder aller Notizen, die dem Suchfilter 5 mit eingegebenen Suchbegriff "test" entsprechen
	$result = $crmapi_notes->getsearchfilteredNotes(5, 'test', 0, 0, false);
}
catch (CRMException $e) {
	echo $e->getMessage();
}
 
print_r($result);
  • No labels