Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
webservices:soap_webservices:projects [2017/02/07 17:25]
maik [crmgetProjectFields]
webservices:soap_webservices:projects [2020/05/06 14:11] (aktuell)
d0dge
Zeile 1: Zeile 1:
 ====== Projects ====== ====== Projects ======
  
-===== WSDL-URI ====== +Bitte besuchen Sie unsere neue Entwickler-Dokumentation unter [[https://docs.tecart.de/display/public/WIKI/Projects+SOAP]]
- +
- +
-<​code>​http://​hostname/​dirname/​soap/​index.php?​op=projects&​wsdl</​code>​ +
- +
-z.B. [[https://test.tecart-system.de/soap/index.php?​op=projects&​wsdl|https:​//test.tecart-system.de/​soap/​index.php?​op=projects&​wsdl]] +
- +
- +
-===== Methoden ====== +
- +
- +
- +
-==== crmcountProjects ===== +
- +
-**Syntax**:​ +
-  int crmcountProjects( string $session_id ) +
- +
-**Beschreibung**:​ +
- +
-Liefert die Gesamtzahl der Projekte. +
- +
- +
-**Beispiel**:​ +
-<sxh php> +
- +
-<?php +
- +
-ini_set("​soap.wsdl_cache_enabled",​ "​0"​);​ +
- +
-try { +
-  $client_logon = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=logon&​wsdl"​);​ +
-     ​$session_id = $client_logon->​crmLogin('​test',​ '​test'​);​ +
-     if (!$session_id) die("​invalid login"​);​ +
- +
-   ​$client_projects = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=projects&​wsdl"​);​ +
- +
-   echo $client_projects->​crmcountProjects($session_id);​ +
-+
-catch (SOAPFault $f) { +
-  print $f->​faultstring;​ +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmsearchProjects ===== +
- +
-**Syntax**:​ +
-  array crmsearchProjects( string $session_id,​ string $search, string $category, int $count ) +
- +
-**Beschreibung**:​ +
- +
-Liefert ein Array mit Projekt-Objekten. +
- +
- +
-//search// ist ein freier Suchtext. +
- +
- +
-//​category//​ ist die Kategorie des Projekts, stellen Sie sie auf -1 um sie zu deaktivieren. +
- +
- +
-//count// ist die maximale Anzahl von Ergebnissen,​ die zurückgegeben werden soll. +
-  +
- +
-**Eigenschaften der zurückgegebenen project Objekte**:​ +
-   +
-  Type(Length) ​ Eigenschaft ​    ​Beschreibung +
-  ------------------------------------------------------------------- +
-  int           ​$pid ​           Project-Id +
-  string(255) ​  ​$name ​          ​Projektname  +
-  string(50) ​   $number ​        ​Projektnummer  +
-  int           ​$leader ​        ​Userid Projektleiter/​in +
-  int           ​$start ​         Unix-Timestamp des Beginns +
-  int           ​$stop ​          ​Unix-Timestamp des Endes +
-  int           ​$done ​          ​Fertigstellung in Prozent +
- +
- +
-**Beispiel**:​ +
-<sxh php> +
- +
-<?php +
- +
-$result = $client_projects->​crmsearchProjects($session_id,​ '​crm',​ -1, 5); +
- +
-foreach($result as $project) { +
-  echo "​{$project->​pid},​ {$project->​name},​ {$project->​number},​ {$project->​done}<​br> ​ \n"; +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmadvancedSearchProjects ===== +
- +
- +
-(Version >= 3.4.5398) +
- +
-**Syntax**:​ +
-  array crmadvancedSearchProjects ( string $session_id,​ crmsearchProjectItems $crmsearchProjectItems,​ int $count, int $offset, string $sort_name ) +
- +
-**Beschreibung**:​ +
- +
-Liefert ein Array mit Projekt-Objekten. +
- +
-//​crmsearchContactItems//​ ist ein Objekt mit Suchparametern. +
- +
- +
-//count// ist die maximale Anzahl an Ergebnissen,​ die zurückgegeben werden soll. +
-  +
- +
-//offset// ist die Offset-Position der Ergebnisse, die zurückgegeben werden sollen. +
-  +
- +
-//​sort_name//​ sort_name ist die Sortierung, wie die Projektnamen sortiert werden sollen. '​ASC'​ => Projektname aufsteigend Sortieren '​DESC'​ => Projektname absteigend Sortieren. +
- +
- +
- ​Elemente von //​crmsearchProjectItems//​ werden mit '​AND'​ verknüpft. +
- +
- +
- ​Elemente von //​crmsearchProjectItemValues//​ werden mit '​OR'​ verknüpft. +
- +
- +
-**Eigenschaften von ****//​crmsearchProjectItems//​**:​ +
-   +
-  Type(Length) ​     Eigenschaft ​                            ​Beschreibung +
-  -------------------------------------------------------------------------------------------  +
-  string(255) ​      ​$field ​                                 Feldname +
-  string(255) ​      ​$value ​                                 Suchvalue +
- +
- +
-**Eigenschaften von ****//​crmsearchProjectItemValues//​**:​ +
-   +
-  Type(Length) ​     Eigenschaft ​                            ​Beschreibung +
-  -------------------------------------------------------------------------------------------  +
-  string(255) ​      ​$value ​                                 Suchvariable +
- +
- +
-**Eigenschaften der zurückgegebenen array**: +
- +
-sind die selben wie für **[[#​crmgetProject]]** +
- +
- +
-**Beispiel **: +
-<sxh php> +
- +
-<?php +
- +
-//Example 1:  Get 5 projects with name LIKE '​%crm%'​ AND budget LIKE '​2000',​ sorting by name ascending +
-$search['​crmsearchProjectItems'​] = array( array('​field'​ => '​name', ​  '​crmsearchProjectItemValues'​ => array(array('​value'​ => '​%crm%'​))),​  +
-  array('​field'​ => '​budget',​ '​crmsearchProjectItemValues'​ => array(array('​value'​ => '​2000'​))) ); +
- +
-//Example 2:  Get 5 offer with name LIKE '​%crm%'​ OR LIKE '​tecart',​ sorting by name ascending +
-$search['​crmsearchProjectItems'​] = array( array('​field'​ => '​name',​ '​crmsearchProjectItemValues'​ => array(array('​value'​ => '​%crm%'​),​ +
-  array('​value'​ => '​tecart'​))) ); +
- +
-$result = $client_projects->​crmadvancedSearchProjects($session_id,​ $search, 5, 0, '​ASC'​);​ +
- +
-foreach($result as $project) { +
-  print_r($project);​ +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmgetProject ===== +
- +
-**Syntax:​** +
-  array crmgetProject( string $session_id,​ int $pid ) +
- +
-**Beschreibung**:​ +
- +
-Liefert ein Array von Projekt-Objekten mit nur einem Element. +
- +
- +
-//pid// ist die Project-Id. +
- +
- +
-**Eigenschaften**:​ +
-   +
-  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 ​              ​Timestamp des Beginns +
-  int               ​$stop ​               Timestamp des Endes +
-  int               ​$done ​               Fertigstellung in Prozent +
-  double ​           $budget ​             Projektbudget +
-  string(65535) ​    ​$notes ​              ​Projekt-Notizen +
-  int               ​$leader ​             Userid Projektleiter/​in +
-  int               ​$substitute ​         Userid Stellv. Projektleiter/​in  +
-  string(65535) ​    ​$shortnotes ​         Projektkurzbeschreibung +
-  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:​** +
-<sxh php> +
- +
-<?php +
- +
-// Get Project with id 258 +
-$result = $client_projects->​crmgetProject($session_id,​ 258); +
- +
-foreach($result as $project) { +
-  echo $project->​pid."​ "​.$project->​name."​ "​.date("​Y-m-d",​ $project->​chgtime)."<​br> ​ "; +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmgetChangedProjects ===== +
- +
-**Syntax:​** +
-  array crmgetChangedProjects( string $session_id,​ int $timestamp ) +
- +
-**Beschreibung**:​ +
- +
-Liefert ein Array von  Projekt-Objekten,​ die seit //​timestamp//​ geändert wurden. +
- +
- +
-Hinweis: Es wereden nur Projekte zurückgegeben für die der authentifizierte Benutzer Leseberechtigungen hat. +
- +
- +
-**Eigenschaften**:​ +
- +
-sind die selben wie für **[[#​crmgetProject]]** +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-$result = $client_projects->​crmgetChangedProjects($session_id,​ 1176208357);​ +
- +
-foreach($result as $project) { +
-  echo "​{$project->​pid},​ {$project->​name},​ {$project->​number},​ {$project->​done}<​br> ​ \n"; +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmgetChangedProjectsLimit ===== +
- +
- +
-(Version >= 3.0.1549)  +
- +
-**Syntax:​** +
-  array crmgetChangedProjectsLimit( string $session_id,​ int $timestamp, int $count, int $offset ) +
- +
-**Beschreibung**:​ +
- +
-Liefert ein Array von Projekt-Objekten zurück, die seit //​timestamp//​ geändert wurden, begrenzt durch count und Offset. +
- +
- +
-Hinweis: Es wereden nur Projekte zurückgegeben für die der authentifizierte Benutzer Leseberechtigungen hat. +
- +
- +
-**Eigenschaften**:​ +
- +
-sind die selben wie für **[[#​crmgetProject]]** +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-$result = $client_projects->​crmgetChangedProjectsLimit($session_id,​ 1176208357, 10, 10); +
- +
-foreach($result as $project) { +
-  echo "​{$project->​pid},​ {$project->​name},​ {$project->​number},​ {$project->​done}<​br> ​ \n"; +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmaddProject ===== +
- +
-**Syntax:​** +
-  int crmaddProject( string $session_id,​ crmProjectItem $crmProjectItem ) +
- +
-**Beschreibung**:​ +
- +
-Fügt ein Projekt hinzu +
- +
- +
-Liefert eine project_id bei Erfolg, 0 im Fehlerfall. +
- +
- +
-//​crmProjectItem//​ kann ein assoziatives Array oder ein Objekt sein. +
- +
- +
-**Eigenschaften von ****//​crmProjectItem//​**:​ +
-   +
-  Type(Length) ​     Eigenschaft ​         Beschreibung +
-  ------------------------------------------------------------------- +
-  string(255) ​      ​$name ​               Projekt-Name +
-  string(50) ​       $number ​             Projekt Nummer  +
-  string(255) ​      ​$url ​                URL des Projekts (Website)  +
-  int               ​$start ​              ​Timestamp des Beginns +
-  int               ​$stop ​               Timestamp des Endes +
-  int               ​$done ​               Fertigstellung in Prozent +
-  double ​           $budget ​             Projektbudget +
-  string(65535) ​    ​$notes ​              ​Projektnotizen +
-  int               ​$leader ​             Userid Projektleiter +
-  int               ​$substitute ​         Userid stellv. Projektleiter +
-  string(65535) ​    ​$shortnotes ​         Project Kurznotizen +
-  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               ​$ext_id ​             Externe ID ( ab Version 4.2 ) +
-  string(255) ​      ​$user19 ​             Benutzerdefiniertes Feld Nr. 19 +
-  string(255) ​      ​$user20 ​             Benutzerdefiniertes Feld Nr. 20 +
-     : ​                 :                           : +
-  string(255) ​      ​$user80 ​             Benutzerdefiniertes Feld Nr. 80  +
- +
- +
-**Beispiel 1:** +
-<sxh php> +
- +
-<?php +
- +
-$project = array('​name' ​       => '​WebService-Projekt',​ +
-  '​url' ​        => '​http://​www.tecart.de',​ +
-                  '​start' ​      => mktime(0, 0, 0, 5, 11, 2007), +
-                  '​stop' ​       => mktime(0, 0, 0, 5, 31, 2007), +
-                  '​done' ​       => 30, +
-                  '​budget' ​     => 120000, +
-                  '​notes' ​      => '​Notizen hier',​ +
-                  '​leader' ​     => 5, +
-                  '​user21' ​     => "​333"​);​ +
- +
-$project_id = $client_projects->​crmaddProject($session_id,​ $project);​ +
-echo $project_id;​ +
- +
-?> +
- +
-</​sxh>​ +
- +
-**Beispiel 2:** +
-<sxh php> +
- +
-<?php +
- +
-class project { +
-   +
-     ​public $name; +
-     ​public $url; +
-     ​public $start; +
-     ​public $stop; +
-     ​public $done  = 0; +
- +
-   ​function __construct($name,​ $url, $start) +
-   { +
-       ​$this->​name ​ = $name; +
-       ​$this->​url ​  = $url; +
-       ​$this->​start = $start; +
-       ​$this->​stop ​ = $start ​(365 * 24 * 3600); ​   +
-   } +
-+
- +
-$project = new project('​WebService-Projekt',​ '​http://​www.tecart.de',​ mktime(0, 0, 0, 5, 11, 2007)); +
- +
-$project_id = $client_projects->​crmaddProject($session_id,​ $project);​ +
-echo $project_id;​ +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmaddProjects ===== +
- +
- +
-(Version >= 3.0.1549)  +
- +
-**Syntax**:​ +
-  boolean crmaddProjects( string $session_id,​ crmProjectItems $crmProjectItems ) +
- +
-**Beschreibung**:​ +
- +
-Fügt mehrere Projekte mit einem Webservices-Methode-Aufruf hinzu. +
- +
- +
-Liefert 1 bei Erfolg, 0 im Fehlerfall. +
- +
- +
-**Eigenschaften von ****//​crmProjectItems//​**:​ +
-   +
-  Type(Length) ​           Eigenschaft ​              ​Beschreibung +
-  --------------------------------------------------------------------------------------------- +
-  crmProjectItems ​       $crmProjectItems ​          array mit crmProjectItem Objekte +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-// Add multiple projects +
- +
-$project1 = array('​name' ​       => '​WebService-Projekt 1', +
-  '​url' ​        => '​http://​www.tecart.de',​ +
-                   '​start' ​      => mktime(0, 0, 0, 5, 11, 2009), +
-                   '​stop' ​       => mktime(0, 0, 0, 5, 31, 2009), +
-                   '​done' ​       => 30, +
-                   '​budget' ​     => 120000, +
-                   '​notes' ​      => '​Notizen hier',​ +
-                   '​leader' ​     => 5, +
-                   '​user21' ​     => "​333"​);​ +
- +
-$project2 = array('​name' ​       => '​WebService-Projekt 2', +
-  '​url' ​        => '​http://​www.equitania.de',​ +
-                   '​start' ​      => mktime(0, 0, 0, 5, 11, 2009), +
-                   '​stop' ​       => mktime(0, 0, 0, 5, 15, 2009), +
-                   '​done' ​       => 50, +
-                   '​budget' ​     => 120000, +
-                   '​notes' ​      => '​Notizen hier',​ +
-                   '​leader' ​     => 5, +
-                   '​user21' ​     => "​333"​);​ +
- +
-$projects = array('​crmProjectItems'​ => array($project1,​ $project2));​ +
- +
-$success = $client_projects->​crmaddProjects($session_id,​ $projects);​ +
-if ($success === false) echo "Error adding projects.";​ +
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmChangeProject ===== +
- +
-**Syntax:​** +
-  int crmChangeProject( string $session_id,​ int $project_id,​ crmProjectItem $crmProjectItem ) +
- +
-**Beschreibung**:​ +
- +
-Ändert Eigenschaften eines bestehenden Projekts. +
- +
- +
-Liefert die project_id bei Erfolg, 0 im Fehlerfall. +
- +
- +
-//​crmProjectItem//​ kann ein assoziatives Array oder ein Objekt sein. +
- +
- +
-**Eigenschaften von ****//​crmProjectItem//​**:​ +
-sind die selben wie für **[[#​crmaddProject]]** +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-$project['​name'​] = '​WebService-Projekt changed';​ +
- +
-$project_id = $client_projects->​crmChangeProject($session_id,​ $project_id,​ $project);​ +
-echo $project_id;​ +
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmchangeProjects ===== +
- +
- +
-(Version >= 3.0.1549)  +
- +
-**Syntax**:​ +
-  boolean crmchangeProjects ( string $session_id,​ crmProjectItems $crmProjectItems ) +
- +
-**Beschreibung**:​ +
- +
-Ändert Eigenschaften vorhandener Projekte. +
- +
- +
-Liefert 1 bei Erfolg, 0 im Fehlerfall. +
- +
- +
-**Eigenschaften von ****//​crmProjectItems//​**:​ +
- +
-sind die selben wie für **[[#​crmaddProject]]** +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-$project1 = array('​id' ​         => 516, +
-  '​name' ​       => '​WebService-Projekt 1a', +
-                   '​url' ​        => '​http://​www.xatec.de',​ +
-                   '​start' ​      => mktime(0, 0, 0, 5, 11, 2009), +
-                   '​stop' ​       => mktime(0, 0, 0, 5, 31, 2009), +
-                   '​done' ​       => 30, +
-                   '​budget' ​     => 120000, +
-                   '​notes' ​      => '​Notizen geändert',​ +
-                   '​leader' ​     => 3, +
-                   '​user21' ​     => "​444"​);​ +
- +
-$project2 = array('​id' ​         => 517, +
-  '​name' ​       => '​WebService-Projekt 2a', +
-                   '​url' ​        => '​http://​www.clever-crm.de',​ +
-                   '​start' ​      => mktime(0, 0, 0, 5, 11, 2009), +
-                   '​stop' ​       => mktime(0, 0, 0, 5, 15, 2009), +
-                   '​done' ​       => 80, +
-                   '​budget' ​     => 120000, +
-                   '​notes' ​      => '​Notizen hier',​ +
-                   '​leader' ​     => 5, +
-                   '​user21' ​     => "​555"​);​ +
- +
-$projects = array('​crmProjectItems'​ => array($project1,​ $project2));​ +
- +
-$success = $client_projects->​crmchangeProjects($session_id,​ $projects);​ +
-if ($success === false) echo "Error editing projects.";​ +
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmdeleteProject ===== +
- +
-**Syntax:​** +
-  boolean crmdeleteProject( string $session_id,​ int $project_id ) +
- +
-**Beschreibung**:​ +
- +
-Löscht ein Projekt. Liefert 1 bei Erfolg, 0 im Fehlerfall. +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-$success = $client_projects->​crmDeleteProject($session_id,​ $project_id);​ +
-if (!$success) echo "​Unable to delete project.";​ +
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmdeleteProjects ===== +
- +
- +
-(Version >= 3.0.1549)  +
- +
-**Syntax:​** +
-  boolean crmdeleteProjects( string $session_id,​ string $project_ids ) +
- +
-**Beschreibung**:​ +
- +
-Löscht mehrere Projekte. Liefert 1 bei Erfolg, 0 im Fehlerfall. +
- +
- +
-//​project_ids//​ ist ein Doppelpunkt-getrennter String mit dem Projekt-IDs. +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-//Delete multiple projects with ID 91, 92 and 101 +
- +
-$project_ids = "​91:​92:​101";​ +
-  +
-$success = $client_projects->​crmdeleteProjects($session_id,​ $project_ids);​ +
-  +
-if (!$success) echo "​Unable to delete projects.";​ +
-else echo "​Success!<​br>";​ +
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmgetProjectIds ===== +
- +
-**Syntax:​** +
-  array crmgetProjectIds( string $session_id,​ int $timestamp ) +
- +
-**Beschreibung**:​ +
- +
-Liefert ein Array von Projekt-Objekten,​ die seit //​timestamp//​ geändert wurden. +
- +
- +
-Hinweis: Es wereden nur Projekte zurückgegeben für die der authentifizierte Benutzer Leseberechtigungen hat. +
- +
- +
-**Eigenschaften**:​ +
-   +
-  Type(Length) ​     Eigenschaft ​         Beschreibung +
-  ------------------------------------------------------------------- +
-  int               ​$id ​                 Project-Id  +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-$result = $client_projects->​crmgetProjectIds($session_id,​ 0); +
- +
-foreach($result as $project) { +
-  echo $project->​id."<​br> ​ "; +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmgetProjectIdsString ===== +
- +
- +
-(Version >= 3.0.1549)  +
- +
-**Syntax:​** +
-  string crmgetProjectIdsString( string $session_id,​ int $timestamp ) +
- +
-**Beschreibung**:​ +
- +
-Gibt eine Liste von Projekt-IDs die seit //​timestamp//​ geändert wurden als Doppelpunkt-getrennte Zeichenfolge zurück. +
- +
- +
-Hinweis: Es werden nur Projekte zurückgegeben für die der authentifizierte Benutzer Leseberechtigungen hat. +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-$result = $client_projects->​crmgetProjectIdsString($session_id,​ 0); +
- +
-$project_ids = explode(":",​ $result); +
- +
-foreach($project_ids as $project_id) { +
-  echo $project_id."<​br> ​ "; +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmgetProjectMembers ===== +
- +
- +
-(Version >= 3.4.5347) +
- +
-**Syntax:​** +
- +
- array crmgetProjectMembers( string $session_id,​ int $pid )  +
- +
-**Beschreibung:​**  +
- +
-Gibt ein Array mit Information aller Mitglieder von einem Projekt zurück.  +
- +
- +
-Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen. +
- +
- +
-**Eignenschaften von ****//​zurückgegebenen//​**** array**: +
-   +
-  Type(Length) ​     Eigenschaft ​            ​Beschreibung +
-  ------------------------------------------------------------------- +
-  string ​           $type                   Type des Mitgliedes : '​contact'​ oder '​user'​ +
-  int               ​$cid ​                   Kontakt ID mit dem Format '​cid:​pid'​ +
-  int               ​$uid ​                   User ID in CRM +
-  string ​           $name                   Der Kontaktname,​ wenn das Mitglied ein Kontakt ist. +
-                                            Vorname Nachname, wenn das Mitglied ein Person oder ein TecArt-System Benutzer ist. +
-  string ​           $email ​                 Die Emailaddresse +
-  string ​           $phone ​                 Telefon +
-  string ​           $mobile ​                ​Mobile nummer +
-  string ​           $fax                    Telefax +
- +
- +
-**Beispiel:​** +
- +
-<sxh php> +
-<?php +
- +
-try { +
-  +
-    $members = $client_projects->​crmgetProjectMembers($session_id,​ 7); +
-+
-catch (CRMException $e) { +
-    echo $e->​getMessage();​ +
-+
- +
-foreach( $members as $key => $val) { +
-    echo $val['​name'​] ."<​br/>";​ +
-+
- +
-?> +
-</​sxh>​ +
- +
---------------- +
- +
- +
-==== crmgetProjectFields ===== +
- +
- +
-(Version >= 3.4.5348) +
- +
-**Syntax:​** +
- +
- array crmgetProjectFields( string $session_id )  +
- +
-**Beschreibung:​**  +
- +
-Gibt ein Array mit Information der Feldern für Projekt zurück. Die Info enthält die Felder in der Datenbank, die angezeigte Namen und die Typen der Felder. +
- +
- +
-Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen. +
- +
- +
-**Eignenschaften von ****//​zurückgegebenen//​**** array**: +
-   +
-  Typ(Länge) ​             Eigenschaft ​              ​Beschreibung +
-  --------------------------------------------------------------------------------------------- +
-  string(255) ​            ​Key ​                      ​Fortlaufende Nummer +
-  array(255) ​             Value                     Array mit  +
-                                                    label: der angezeigte Name des Feldes +
-                                                    field: Name des Feldes in der Datenbank +
-                                                    type:  Typ des Feldes +
- +
- +
-**Beispiel:​** +
- +
-<sxh php> +
-<?php +
- +
-try { +
-  +
-    $fields = $client_projects->​crmgetProjectFields($session_id);​ +
-+
-catch (CRMException $e) { +
-    echo $e->​getMessage();​ +
-+
- +
-foreach( $fields as $val) { +
-    echo $val->​field ."<​br/>";​ +
-+
- +
-?> +
-</​sxh>​ +
---------------- +
- +
- +
-==== crmgetIdByExtId ===== +
- +
- +
-(Version >= 4.2) +
- +
-**Syntax:​** +
- +
- array crmgetIdByExtId( string $session_id,​ int $ext_id )   +
- +
-**Beschreibung** +
- +
-Liefert interne ID(s) eines Projekts mit der übergebenen externen ID zurück. +
- +
- +
-Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen. +
- +
- +
-**Eigenschaften der zurückgegebenen ****//​project Objekte//​**:​ +
-   +
-  Type(Length) ​           Eigenschaft ​                 Beschreibung +
-  --------------------------------------------------------------------------------------------- +
-  int $id  ​     Project-Id  +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-try { +
-  $result = $client_projects->​crmgetIdByExtId($session_id,​ 12345); +
-+
-catch (SOAPFault $f) { +
-  print $f->​faultstring;​ +
-+
- +
-foreach($result as $id) { +
-   +
-     echo $id."<​br> ​ "; +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
-------- +
- +
- +
-==== crmgetAllExtIds ===== +
- +
- +
-(Version >= 4.2) +
- +
-**Syntax:​** +
- +
- array crmgetAllExtIds( string $session_id )   +
- +
-**Beschreibung** +
- +
-Liefert eine Liste aller externen IDs in Projekten zurück. +
- +
- +
-Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen. +
- +
- +
-**Eigenschaften der zurückgegebenen ****//​project Objekte//​**:​ +
-   +
-  Type(Length) ​           Eigenschaft ​                 Beschreibung +
-  --------------------------------------------------------------------------------------------- +
-  int $id  ​     externe Project-Id  +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-try {  +
-  $result = $client_projects->​crmgetAllExtIds($session_id);​ +
-+
-catch (SOAPFault $f) { +
-  print $f->​faultstring;​ +
-+
- +
-foreach($result as $id) { +
-   +
-     echo $id."<​br> ​ "; +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
-------- +
- +
- +
-==== crmsetDuplicateConfig ===== +
- +
- +
-(Version >= 4.4) +
- +
-**Syntax:​** +
-  int | string <​errormessage>​ crmDuplicateConfig( string $session_id,​ crmDuplicatecheckFields $crmDuplicatecheckFields ) +
- +
-**Beschreibung:​** +
- +
-Ermöglicht eine temporäre Überschreibung der Dublettenprüfungsfelder für die Laufzeit der angemeldeten Session. +
- +
- +
-**Eigenschaften des zu übergebenden ****//​crmDuplicatecheckFields Objektes//​**:​ +
-   +
-  Type(Length) ​           Eigenschaft ​                 Beschreibung +
-  --------------------------------------------------------------------------------------------- +
-  string $fields  ​    ​implodiertes Array ( implode(',',​ $myFields) ) mit gewünschten Feldern,  +
-   ​    auf die eine Dublettenprüfung angewendet werden soll; +
-   ​    wenn Eigenschaft auf NULL gesetzt wird, wird Override zurückgesetzt +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-ini_set("​soap.wsdl_cache_enabled",​ "​0"​);​ +
- +
-try { +
-  $client_logon = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=logon&​wsdl"​);​ +
-     ​$session_id = $client_logon->​crmLogin('​test',​ '​test'​);​ +
-     if (!$session_id) die("​invalid login"​);​ +
- +
-   ​$client_projects = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=projects&​wsdl"​);​ +
- +
-   ​$fields ​ = array('​fields'​ => implode(',',​ array('​date',​ '​note_text'​)) ); +
-   ​$success = $client_projects->​crmsetDuplicateConfig($session_id,​ $fields); +
-+
-catch (SOAPFault $f) { +
-  print $f->​faultstring;​ +
-+
- +
-echo ($success == 1 ? '​override successful'​ : $success).'​ +
-'; +
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmgetDuplicateConfig ===== +
- +
- +
-(Version >= 4.4) +
- +
-**Syntax:​** +
-  string crmgetDuplicateConfig( string $session_id ) +
- +
-**Beschreibung:​** +
- +
-Gibt implodiertes Array als Zeichenkette mit aktueller Feldkonfiguration der Dublettenprüfung zurück. +
- +
- +
-Sollte aktuell keine temporäre Überschreibung der Feldkonfiguration aktiv sein (siehe **[[#​crmsetDuplicateConfig]]**),​ wird die durch die Administration konfigurierte Feldliste zurückgegeben. +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-ini_set("​soap.wsdl_cache_enabled",​ "​0"​);​ +
- +
-try { +
-  $client_logon = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=logon&​wsdl"​);​ +
-     ​$session_id = $client_logon->​crmLogin('​test',​ '​test'​);​ +
-     if (!$session_id) die("​invalid login"​);​ +
- +
-   ​$client_projects = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=projects&​wsdl"​);​ +
- +
-   ​$fields = $client_notes->​crmgetDuplicateConfig($session_id);​ +
-+
-catch (SOAPFault $f) { +
-  print $f->​faultstring;​ +
-+
- +
-$fields = explode(',',​ $fields); +
-echo ''​.print_r($fields,​ true).'';​ +
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmgetProjectsByCidPid ===== +
- +
- +
-(Version >= 4.4.15648) +
- +
-**Syntax:​** +
-  array crmgetProjectsByCidPid( string $session_id,​ int $cid, int $pid ) +
- +
-**Beschreibung**:​ +
- +
-Liefert ein Array von Projekt-Objekten,​ bei denen der Kontakt im ID $cid oder die Person mit ID $pid Mitglied ist. +
- +
- +
-Hinweis: Es wereden nur Projekte zurückgegeben für die der authentifizierte Benutzer Leseberechtigungen hat. +
- +
- +
-**Eigenschaften**:​ +
- +
-sind die selben wie für **[[#​crmgetProject]]** +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
-  $client_logon = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=logon&​wsdl"​);​ +
-     ​$session_id = $client_logon->​crmLogin('​test',​ '​test'​);​ +
-     if (!$session_id) die("​invalid login"​);​ +
- +
-   ​$client_projects = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=projects&​wsdl"​);​ +
- +
-   // Get all projects with member contact id 123 +
-   ​$result = $client_projects->​crmgetProjectsByCidPid($session_id,​ 123, 0); +
- +
-   // Get all projects with member person id 456 +
-   ​$result = $client_projects->​crmgetProjectsByCidPid($session_id,​ 0, 456); +
- +
-foreach($result as $project) { +
-  echo "​{$project->​pid},​ {$project->​name},​ {$project->​number},​ {$project->​done}<​br> ​ \n"; +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmaddContact ===== +
- +
- +
-(Version >= 4.4.15648) +
- +
-**Syntax:​** +
-  int crmaddContact( string $session_id,​ int $cid, int $pid ) +
- +
-**Beschreibung**:​ +
- +
-Fügt einen Kontakt oder eine Person den Mitgliedern eines Projektes hinzu. Liefert ID des Projektmitgliedes bei Erfolg, 0 im Fehlerfall. +
- +
- +
-//cid// ist die Kontact/​Personen-Id (z.B.: "​1234"​ oder "​1234:​5678"​) +
- +
- +
-//pid// ist die Projekt-Id +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
-  $client_logon = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=logon&​wsdl"​);​ +
-     ​$session_id = $client_logon->​crmLogin('​test',​ '​test'​);​ +
-     if (!$session_id) die("​invalid login"​);​ +
- +
-   ​$client_projects = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=projects&​wsdl"​);​ +
- +
-   // Fügt Kontakt 123 dem Projekt 5 als Mitglied hinzu +
-   ​$success = $client_projects->​crmaddContact($session_id,​ 123, 5); +
-   if (!$success) echo "​Unable to add project member.";​ +
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmremoveContact ===== +
- +
- +
-(Version >= 4.4.15648) +
- +
-**Syntax:​** +
-  boolean crmremoveContact( string $session_id,​ int $id ) +
- +
-**Beschreibung**:​ +
- +
-Entfernt ein Mitglied aus einem Projekt. +
- +
- +
-//id// ist die Id des Projektmitgliedes +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
-  $client_logon = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=logon&​wsdl"​);​ +
-     ​$session_id = $client_logon->​crmLogin('​test',​ '​test'​);​ +
-     if (!$session_id) die("​invalid login"​);​ +
- +
-   ​$client_projects = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=projects&​wsdl"​);​ +
- +
-   ​$success = $client_projects->​crmremoveContact($session_id,​ 12); +
-   if (!$success) echo "​Unable remove project member.";​ +
- +
-?> +
- +
-</​sxh>​ +
- +
----- +
- +
- +
-==== crmgetsearchfilteredProjects ===== +
- +
- +
-(Version >= 4.5.16630) +
- +
-**Syntax:​** +
-  array crmgetsearchfilteredProjects( string $session_id,​ int $filter_id, string $search, int $count, int $offset, string $fields ) +
- +
-**Beschreibung**:​ +
- +
-Gibt ein Array mit Projekt-Objekten 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 (""​ = alle Felder) +
- +
- +
-Im Falle eines Fehlers wird eine CRMException mit mehr Fehlerdetails geworfen. +
- +
- +
-Hinweis: Es werden nur Projekte und Felder zurückgegeben,​ für die der authentifizierte Nutzer Leseberechtigungen hat. +
- +
- +
-**Eigenschaften der zurückgegebenen ****//​Projekt-Objekte//​**:​ +
-   +
-  Type(Length) ​           Eigenschaft ​              ​Beschreibung +
-  --------------------------------------------------------------------------------------------- +
-  int                     ​$pid ​                     Projekt-ID +
-  array                   ​$ProjectFields ​           Array mit ProjectField Objekten - Feldnamen und deren Werte +
- +
- +
-**Eigenschaften von ****//​ProjectField//​**:​ +
-   +
-  Type(Length) ​           Eigenschaft ​              ​Beschreibung +
-  --------------------------------------------------------------------------------------------- +
-  string(255) ​            ​$field ​                   Name des Projekt-Feldes +
-  string(255) ​            ​$value ​                   Wert des Projekt-Feldes +
- +
- +
-**Beispiel:​** +
-<sxh php> +
- +
-<?php +
- +
-ini_set("​soap.wsdl_cache_enabled",​ "​0"​);​ +
- +
-try { +
- +
-   ​$client_logon ​   = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=logon&​wsdl"​);​ +
-   ​$client_projects = new SOAPClient("​https://​test.tecart-system.de/​soap/​index.php?​op=projects&​wsdl"​);​ +
-   ​$session_id ​     = $client_logon->​crmLogin('​test',​ '​test'​);​ +
- +
-   if (!$session_id) die("​invalid login"​);​ +
- +
-   // Liefert die Felder name und realnumber der ersten 10 Projekte, die dem Suchfilter 5 ohne eingegebenen Suchbegriff entsprechen +
-   ​$result = $client_projects->​crmgetsearchfilteredProjects($session_id,​ 5, //, 10, 0, '​name,​realnumber'​);//​ +
- +
-   // Liefert alle Felder aller Projekte, die dem Suchfilter 5 mit eingegebenen Suchbegriff "​test"​ entsprechen +
-   ​$result = $client_projects->​crmgetsearchfilteredProjects($session_id,​ 5, '​test',​ 0, 0, //);// +
- +
-   ​print_r($result);​ +
-+
-catch (SOAPFault $f) { +
-  print $f->​faultstring;​ +
-+
- +
-?> +
- +
-</​sxh>​ +
- +
----- +