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

Bitte beachten Sie, dass seit TecArt Version 4.10 und aufwärts der SOAP Webservice nicht mehr weiterentwickelt wird. Ab der TecArt Version 5.1 ist der SOAP Webservice nicht mehr unterstützt.

Please note: with the release of TecArt version 4.10 onwards SOAP Webservice will no longer be updated or expanded. With the release of TecArt version 5.1, the soap webservice will be deprecated.

1. WSDL-URI

http://hostname/dirname/soap/index.php?op=offers&wsdl

z.B. https://test.tecart-system.de/soap/index.php?op=offers&wsdl

2. Methoden

2.1. crmgetOffer

Syntax:

array crmgetOffer( string $session_id, int $offer_id )

Beschreibung:

Liefert ein Array von Offer-Objekten mit nur einem Element.

offer_id ist die Offer-ID.

Eigenschaften der zurückgegebenen offer Objekte:

Type(Length)            Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
int                     $id                       Offer-Id 
int                     $ext_id                   Externe ID ( ab Version 4.2 )
int                     $number                   RealNumber des Angebots
string(255)             $shortdesc                Kurzbeschreibung des Angebots
string(255)             $cid                      Contact-Id, Format: Contact-Id:Person-Id
string(255)             $cname                    Kontaktname
string(255)             $category                 Kategorie des Angebots
double                  $amount                   Höhe des Angebots in €
double                  $amount_interval          Intervallhöhe des Angebots in €
int                     $tax                      Steuer des Angebots in Prozent
int                     $date                     Unix-Timestamp der Erstellung
int                     $maturity                 Unix-Timestamp der Angebotsfälligkeit

int                     $status                   Status des Angebots
                                                  0 = offen
                                                  1 = angenommen
                                                  2 = abgelehnt
                                                  3 = abgelöst durch anderes Angebot
                                                  4 = verworfen
int                     $pid                      Project-Id
string(255)             $pname                    Project-Name
string(65535)           $notes                    Notizen

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)             $user13                   Benutzerdefiniertes Feld Nr. 13
string(255)             $user14                   Benutzerdefiniertes Feld Nr. 14
   :                       :                                   :
string(255)             $user80                   Benutzerdefiniertes Feld Nr. 80

Beispiel:

<?php
 
// Get Offer with ID 299
 
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_offers = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=offers&wsdl");
 
   	$result = $client_offers->crmgetOffer($session_id, 299);
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}
 
foreach($result as $offer) {
	foreach($offer as $key => $val) {
    	echo $key." => ".$val."<br>  \n";
        if (is_array($val)) {
			echo serialize($val);
		}
    }
}

2.2. crmgetOffersFrom

Syntax:

array crmgetOffersFrom( string $session_id, int $month, int $year )

Beschreibung:

Liefert ein Array von Offer-Objekten vom gegebenen Zeitpunkt an.

Wennmonthgesetzt ist, werden nur Angebote von dieses Monats zurückgegeben. Setzen Sie ihn auf 0, um alle Monate zurückzubekommen.

WennJahrgesetzt ist, werden nur Angebote von diesem Jahr zurückgegeben. Setzen Sie ihn auf 0, um alle Jahre zu bekommen.

Eigenschaften der zurückgegebenen offer Objekte:

sind die selben wie für crmgetOffer

Beispiel:

<?php
 
// Get all offers 
 
$result = $client_offers->crmgetOffersFrom($session_id, 0, 0);
 
foreach($result as $offer) {
	foreach($offer as $key => $val) {
        echo $key." => ".$val."<br>  \n";
        if (is_array($val)) {
			echo serialize($val);
		}
    }
    echo "<hr/>";
}

2.3. crmgetChangedOffers

Syntax:

array crmgetChangedOffers( string $session_id, int $timestamp )

Beschreibung:

Liefert ein Array von Offer-Objekten, die seit timestamp geändert wurden.

Eigenschaften der zurückgegebenen offer Objekte:

sind die selben wie für crmgetOffer

Beispiel:

<?php
 
// Get Offers modified in the last 30 days
 
$result = $client_offers->crmgetChangedOffers($session_id, time() - 60 * 60 * 24 * 30);
 
foreach($result as $offer) {
  	foreach($offer as $key => $val) {
    	echo "$key => $val<br>  \n";
        if (is_array($val)) {
			echo serialize($val);
		}
    }
    echo "<hr/>";
}

2.4. crmgetChangedOffersLimit

(Version >= 3.0.1549)

Syntax:

array crmgetChangedOffersLimit( string $session_id, int $timestamp, int $count, int $offset )

Beschreibung:

Liefert ein Array von Offer-Objekten zurück, die seittimestamp geändert wurden - begrenzt durch count und Offset.

Eigenschaften der zurückgegebenen offer Objekte:

sind die selben wie für crmgetOffer

Beispiel:

<?php
 
// Get last 10 offers modified in the last 30 days
 
$result = $client_offers->crmgetChangedOffersLimit($session_id, time() - 60 * 60 * 24 * 30, 10, 0);
 
foreach($result as $offer) {
  	foreach($offer as $key => $val) {
    	echo "$key => $val<br>  \n";
        if (is_array($val)) {
			echo serialize($val);
		}
    }
    echo "<hr/>";
}

2.5. crmgetOfferIds

Syntax:

array crmgetOfferIds( string $session_id, int $timestamp )

Beschreibung:

Liefert ein Array von Objekten Offer, die seit timestamp geändert wurden (0 für alle).

Hinweis: Es werden nur Angebote zurückgegeben für die der authentifizierte Benutzer Leseberechtigungen hat.

Eigenschaften:

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

Beispiel:

<?php
 
// Get all offer ids
 
$result = $client_offers->crmgetOfferIds($session_id, 0);
 
foreach($result as $offer) {
  	echo $offer->id."<br>  ";
}

2.6. crmgetOfferIdsString

(Version >= 3.0.1549)

Syntax:

string crmgetOfferIdsString( string $session_id, int $timestamp )

Beschreibung:

Gibt eine Liste von Offer-IDs, die seit timestamp geändert wurde als Doppelpunkt-getrennten String zurück (0 für alle).

Hinweis: Es werden nur Angebote zurückgegeben für die der authentifizierte Benutzer Leseberechtigungen hat.

Beispiel:

<?php
 
// Get all offer ids
 
$result = $client_offers->crmgetOfferIdsString($session_id, 0);
 
$offer_ids = explode(":", $result);
 
foreach($offer_ids as $offer_id) {
	echo $offer_id."<br>  ";
}

2.7. crmaddOffer

Syntax:

int crmaddOffer( string $session_id, crmOfferItem $crmOfferItem )

Beschreibung:

Liefert eine offer_id bei Erfolg, 0 im Fehlerfall.

crmOfferItem kann ein assoziatives Array oder ein Objekt sein.

Eigenschaften von crmOfferItem:

Type(Length)            Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
int                     $number                   RealNumber des Angebots
string(255)             $shortdesc                Kurzbeschreibung des Angebots
string(255)             $cid                      Contact-Id, Format: Contact-Id:Person-Id
int                     $ext_id                   Externe ID ( ab Version 4.2 )
string(255)             $category                 Kategorie des Angebots
double                  $amount                   Höhe des Angebots in €
double                  $amount_interval          Intervalhöhe des Angebots in €
int                     $tax                      Steuer des Angebots in Prozent
int                     $date                     Unix-Timestamp der Erstellung
int                     $maturity                 Unix-Timestamp der Fälligkeit
int                     $status                   Status des Angebots
                                                  0 = offen
                                                  1 = angenommen
                                                  2 = abgelehnt
                                                  3 = abgelöst durch anderes Angebot
                                                  4 = verworfen
int                     $pid                      Project-Id
string(65535)           $notes                    Notizen 

string(255)             $user13                   Benutzerdefiniertes Feld Nr. 13
string(255)             $user14                   Benutzerdefiniertes Feld Nr. 14
   :                       :                                   :
string(255)             $user80                   Benutzerdefiniertes Feld Nr. 80

Beispiel:

<?php
 
// Add new offer
 
class offer 
{
	public $number;
    public $cid;
    public $pid;
    public $shortdesc;
    public $amount;
    public $amount_interval;
    public $tax;
    public $date;
    public $maturity;
    public $status;
    public $category;
    public $notes;
    public $user13;
    public $user14;
}
 
$offer = new offer();
$offer->shortdesc		= 'Webservice Development';
$offer->amount       	= 899.50;
$offer->amount_interval = 89.95;
$offer->tax      		= 19;
$offer->date       		= 1203030000;
$offer->maturity     	= 1203807600;
$offer->notes      		= 'test';
$offer->status     		= 1;
$offer->user13     		= 'xxx';
$offer->user14     		= 'yyy';
$offer->pid      		= 360;
$offer->cid      		= '5485:5336';
 
$offer_id = $client_offers->crmaddOffer($session_id, $offer);
echo $offer_id;

2.8. crmaddOffers

Syntax:

boolean crmaddOffers( string $session_id, crmOfferItems $crmOfferItems )

Beschreibung:

Fügt mehrere Angebote mit einem Webservices-Methode-Aufruf hinzu.

Liefert 1 bei Erfolg, 0, im Fehlerfall

Eigenschaften von crmOfferItems:

Type(Length)            Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
crmOfferItems           $crmOfferItems            array mit crmOfferItem Objekte

Beispiel:

<?php
 
// Add multiple offers
 
$offer1 = array(
	'shortdesc' => 'Test1',
    'cid'   => '5485:5336',
    'date'    => 1203030000,
    'maturity'  => 1203807600
);
 
$offer2 = array(
	'shortdesc' => 'Test2',
    'cid'   => '5351:5202',
    'date'    => 1202943600,
    'maturity'  => 1203202800
);
 
$offers = array('crmOfferItems' => array($offer1, $offer2));
 
$success = $client_offers->crmaddOffers($session_id, $offers);
if ($success === false) {
	echo "Error adding offers.";
}

2.9. crmchangeOffer

Syntax:

int crmchangeOffer ( string $session_id, int $offer_id, crmOfferItem $crmOfferItem )

Beschreibung:

Ändert Eigenschaften eines vorhandenen Angebots.

Liefert die offer_id bei Erfolg, 0 im Fehlerfall.

crmOfferItem kann ein assoziatives Array oder ein Objekt sein.

Eigenschaften von crmOfferItem:

sind die selben wie für crmaddOffer

Beispiel:

<?php
 
// Change short Beschreibung of offer with ID 299
 
$offer['shortdesc'] = 'WebService-Offer changed';
 
$offer_id = $client_offers->crmchangeOffer($session_id, 299, $offer);
echo $offer_id;




2.10. crmchangeOffers

Syntax:

boolean crmchangeOffers ( string $session_id, crmOfferItems $crmOfferItems )

Beschreibung:

Ändert Eigenschaften vorhandener Angebote.

Liefert 1 bei Erfolg, 0 im Fehlerfall.

Eigenschaften von crmOfferItems:

sind die selben wie für crmaddOffers

Beispiel:

<?php
 
$offer1 = array(
	'id'    	=> 370,
    'shortdesc' => 'ChangeTest Webservice Development',
    'user13'  	=> 'test'
);
 
$offer2 = array(
	'id'    	=> 325,
    'shortdesc' => 'Webservice Development'
);
 
$offers = array('crmOfferItems' => array($offer1, $offer2));
 
$success = $client_offers->crmchangeOffers($session_id, $offers);
if ($success === false) {
	echo "Error editing offers.";
}
 

2.11. crmdeleteOffer

Syntax:

boolean crmdeleteOffer( string $session_id, int $offer_id )

Beschreibung:

Löscht ein Angebot. Liefert 1 bei Erfolg, 0 im Fehlerfall.

Beispiel:

<?php
 
// Delete offer with ID 299
 
$success = $client_offers->crmdeleteOffer($session_id, 299);
if (!$success) {
	echo "Unable to delete offer.";
}




2.12. crmdeleteOffers

Syntax:

boolean crmdeleteOffers( string $session_id, string $offer_ids )

Beschreibung:

Löscht Angebote. Liefert 1 bei Erfolg, 0 im Fehlerfall.

offer_ids ist ein Doppelpunkt -getrennte Zeichenfolge mit dem Angebots IDs.

Beispiel:

<?php
 
//Delete multiple offers with ID 299, 300 and 301
 
$offer_ids = "299:300:301";
    
$success = $client_offers->crmdeleteOffers($session_id, $offer_ids);
   
if (!$success) {
	echo "Unable to delete offers.";
}
else echo "Success!<br>";

2.13. crmsearchOffers

(Version >= 3.4.5398)

Syntax:

array crmsearchOffers ( string $session_id, crmsearchOffersItems $crmsearchOffersItems, int $timestamp, int $count, int $offset )

Beschreibung:

Liefert ein Array mit Offer-Objekten.

crmsearchOffersItems 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.

timestamp Unix-Timestamp der letzten Änderung.

Elemente von crmsearchOffersItems werden mit 'AND' verknüpft.

Elemente von crmsearchOffersItemValues werden mit 'OR' verknüpft.

Eigenschaften von crmsearchOffersItems:

Type(Length)      Eigenschaft                             Beschreibung
------------------------------------------------------------------------------------------- 
string(255)       $field                                  Feldname
string(255)       $crmsearchOffersItemValues              Objekt mit Suchvariable. 

Eigenschaften von crmsearchOffersItemValues:

Type(Length)      Eigenschaft                             Beschreibung
------------------------------------------------------------------------------------------- 
string(255)       $value                                  Suchvariable

Eigenschaften der zurückgegebenen array:

sind die selben wie für crmgetOffer

Beispiel :

<?php
 
//Example 1:  Get 5 offer with name LIKE 'tecart' AND notes LIKE '%crm%'.
$search['crmsearchOffersItems'] = array(
	array(
		'field'						=> 'shortdesc', 
		'crmsearchOffersItemValues' => array(array('value' => 'tecart'))
	), 
  	array(
		'field' 					=> 'notes',
		'crmsearchOffersItemValues' => array(array('value' => '%crm%'))
	) 
);
 
//Example 2:  Get 5 offer with name LIKE '%crm%' OR LIKE 'tecart'
$search['crmsearchOffersItems'] = array( 
	array(
		'field'						=> 'shortdesc', 
		'crmsearchOffersItemValues' => array(
			array('value' => '%crm%'),
  			array('value' => 'tecart')
		)
	)
);
 
$result = $client_offers->crmsearchOffers($session_id, $search, false, false, 0);
 
foreach($result as $offer) {
	print_r($offer);
}




2.14. crmgetOfferFields

(Version >= 3.5)

Syntax:

array crmgetOfferFields( string $session_id )

Beschreibung:

Gibt ein Array mit Information der Feldern für Angebot 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:

<?php

try {

	$fields = $client_offers→crmgetOfferFields($session_id); 
} 
catch (CRMException $e) {

  	echo $e->getMessage();
}

foreach( $fields as $val) {

  	echo $val->field ."<br/>";
}

?>



2.15. crmToContract

(Version >= 4.1)

Syntax:

int crmToContract($session_id, $offer_id, $article_list_ids = false)

Beschreibung:

Erzeugt einen Vertrag aus einem Angebot und gibt bei Erfolg dessen ID zurück.

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

$offer_id ist die ID des Angebots, aus dem ein Vertrag erzeugt werden soll.

$article_list_ids ist eine Doppelpunkt-getrennte Liste von Artikel-IDs aus der Artikelliste eines Angebotes. (optional)

Beispiel:

<?php

try {

  	$result = $client_offers->crmToContract($session_id, $offer_id);
} 
catch (SOAPFault $f) {

  	print $f->faultstring;
}

echo "ID des neuen Vertrags ist $result";

?>



2.16. crmToOrder

(Version >= 4.2)

Syntax:

int crmToOrder($session_id, $offer_id, $article_list_ids = false)

Beschreibung:

Erzeugt einen Auftrag aus einem Angebot und gibt bei Erfolg dessen ID zurück.

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

$offer_id ist die ID des Angebots, aus dem ein Auftrag erzeugt werden soll.

$article_list_ids ist eine Doppelpunkt-getrennte Liste von Artikel-IDs aus der Artikelliste eines Angebotes. (optional)

Beispiel:

<?php

try {

	$result = $client_offers->crmToOrder($session_id, $offer_id);
} 
catch (SOAPFault $f) {

	print $f->faultstring;
}

echo "ID des neuen Auftrags ist $result";

?>

2.17. crmCreateFollowUp

(Version >= 4.1)

Syntax:

int crmCreateFollowUp($session_id, $offer_id, $article_list_ids = false)

Beschreibung:

Erzeugt ein Folgeangebot aus einem bestehenden Angebot und gibt bei Erfolg dessen ID zurück.

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

$offer_id ist die ID des Angebots, aus dem ein Folgeangebots erzeugt werden soll.

$article_list_ids ist eine Doppelpunkt-getrennte Liste von Artikel-IDs aus der Artikelliste eines Angebotes. (optional)

Beispiel:

<?php

try {

	$result = $client_offers->crmCreateFollowUp($session_id, $offer_id);
} 
catch (SOAPFault $f) {

	print $f->faultstring;
}

echo "ID des Folgeangebotes ist $result.";

?>



2.18. crmMergeToContract

(Version >= 4.1)

Syntax:

int crmMergeToContract($session_id, $offer_id, $contract_id, $article_list_ids = false)

Beschreibung:

Fügt ein Angebot zu einem Vertrag hinzu. Gibt die ID Zielvertrags zurück.

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

$offer_id ist die ID des Angebots, aus dem die Daten gezogen werden sollen.

$contract_id ist die ID des Vertrages, zu dem die Daten hinzugefügt werden sollen.

$article_list_ids ist eine Doppelpunkt-getrennte Liste von Artikel-IDs aus der Artikelliste eines Angebotes. (optional)

Beispiel:

<?php
try {

  	$result = $client_offers->crmMergeToContract($session_id, $offer_id, $contract_id);
} 
catch (SOAPFault $f) {

	print $f->faultstring;
}

echo $result;

?>



2.19. crmMergeToOrder

(Version >= 4.2)

Syntax:

int crmMergeToOrder($session_id, $offer_id, $order_id, $article_list_ids = false)

Beschreibung:

Fügt ein Angebot zu einem Auftrag hinzu. Gibt die ID Zielauftrags zurück.

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

$offer_id ist die ID des Angebots, aus dem die Daten gezogen werden sollen.

$order_id ist die ID des Auftrags, zu dem die Daten des Angebotes hinzugefügt werden soll.

$article_list_ids ist eine Doppelpunkt-getrennte Liste von Artikel-IDs aus der Artikelliste eines Angebotes. (optional)

Beispiel:

<?php

try {

	$result = $client_offers->crmMergeToOrder($session_id, $offer_id, $contract_id);
} 
catch (SOAPFault $f) {

	print $f->faultstring;
}

echo $result;

?>

2.20. crmGotoNextFlowStatus

(Version >= 4.1)

Syntax:

void crmGotoNextFlowStatus($session_id, $offer_id)

Beschreibung:

Setzt den Bearbeitungsstand des angegebenen Angebotes um eine Stufe nach oben.

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

Beispiel:


<?php

try {

  	$client_offers->crmGotoNextFlowStatus($session_id, $offer_id);
} 
catch (SOAPFault $f) {

	print $f->faultstring;
}




2.21. crmUnlockOffer

(Version >= 4.1)

Syntax:

int crmUnlockOffer($session_id, $offer_id)

Beschreibung:

Gibt ein Angebot zur Bearbeitung wieder frei. Gibt im Erfolgsfall die ID des Angebots zurück.

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

Beispiel:

<?php
 
try {
	$result = $client_offers->crmUnlockOffer($session_id, $offer_id);
    echo $result;
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}




2.22. crmgetIdByExtId

(Version >= 4.2)

Syntax:

array crmgetIdByExtId( string $session_id, int $ext_id )

Beschreibung

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

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

Eigenschaften der zurückgegebenen offer Objekte:

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

Beispiel:

<?php
 
try {
  	$result = $client_offers->crmgetIdByExtId($session_id, 12345);
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}
 
foreach($result as $id) {
   
    echo $id."<br>  ";
}




2.23. crmgetAllExtIds

(Version >= 4.2)

Syntax:

array crmgetAllExtIds( string $session_id )

Beschreibung

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

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

Eigenschaften der zurückgegebenen offer Objekte:

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

Beispiel:

<?php
 
try { 
  	$result = $client_offers->crmgetAllExtIds($session_id);
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}
 
foreach($result as $id) {
   
    echo $id."<br>  ";
}




2.24. crmgetPermission

(Version >= 4.2.12362)

Syntax:

array crmgetPermission ( string $session_id, int $offer_id )

Beschreibung:

Gibt ein Array mit einem Element des Typs crmgetPermissionResult zurück.

Eigenschaften von crmgetPermissionResult:

Type(Length)      Eigenschaft                     Beschreibung
---------------------------------------------------------------------------------------
array             $crmUserPermissionElements   Array mit crmUserPermissionElement Objekte
array             $crmGroupPermissionElements  Array mit crmGroupPermissionElement Objekte

Eigenschaften von crmUserPermissionElement:

Type(Length)      Eigenschaft                     Beschreibung
---------------------------------------------------------------------------------------
int               $id                          Userid
int               $read                        1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $write                       1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $delete                      1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert

Eigenschaften von crmGroupPermissionElement:

Type(Length)      Eigenschaft                     Beschreibung
---------------------------------------------------------------------------------------
int               $id                          Groupid
int               $read                        1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $write                       1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $delete                      1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert 

Beispiel:

<?php
 
$result		= $client_offers->crmgetPermission($session_id, 4742);
$permission = $result[0];
 
echo "Users:<br>";
 
foreach($permission->crmUserPermissionElements as $userperm) {
     
	echo "Userid: {$userperm->id}<br>  ";
    echo "Read:   {$userperm->read}<br>  ";
    echo "Write:  {$userperm->write}<br>  ";
    echo "Delete: {$userperm->delete}<br>  ";
}

2.25. crmsetPermission

(Version >= 4.2.12362)

Syntax:

boolean crmsetPermission ( string $session_id, crmPermission $crmPermission )

Beschreibung:

Setzt die Berechtigungen eines einzelnen Kontakts.

Eigenschaften von crmPermission:

Type(Length)      Eigenschaft                     Beschreibung
---------------------------------------------------------------------------------------
int               $offer_id                         Offer Id
array             $crmUserPermissionElements   Array mit crmUserPermissionElement Objekte
array             $crmGroupPermissionElements  Array mit crmGroupPermissionElement Objekte

Eigenschaften von crmUserPermissionElement:

Type(Length)      Eigenschaft                     Beschreibung
---------------------------------------------------------------------------------------
int               $id                          Userid
int               $read                        1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $write                       1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $delete                      1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert 

Eigenschaften von crmGroupPermissionElement:

Type(Length)      Eigenschaft                     Beschreibung
---------------------------------------------------------------------------------------
int               $id                          Userid
int               $read                        1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $write                       1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert
int               $delete                      1 = gesetzt, 0 = nicht gesetzt, -1 = verweigert 

Beispiel:

<?php
 
class user_permission 
{     
    public $id;
    public $read;
    public $write;
    public $delete;
       
    function __construct($id, $r, $w, $x)
    {
  		$this->id = $id;
    	$this->read = $r;
      	$this->write = $w;
      	$this->delete = $x;
    }
}
 
$crmPermission = array(
	'offer_id' 					=> 4742, 
	'crmUserPermissionElements' => array(new user_permission(4, 1, 1, -1))
);
$result = $client_offers->crmsetPermission($session_id, $crmPermission);

2.26. crmGetArticles

(Version >= 4.1)

Syntax:

array crmGetArticles($session_id, $offer_id)

Beschreibung:

Gibt Artikelliste des Angebotes zurück.

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

Beispiel:

<?php
 
try {
  	$articles = $client_offers->crmGetArticles($session_id, $offer_id);
   
    foreach($articles as $article) {
    	foreach($article as $key => $val) {
  			echo "$key => $val<br>\n";
  		}
    }
    echo "<hr/>";
 
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}

2.27. crmAddArticleToList

(Version >= 4.1)

Syntax:

array crmAddArticleToList($session_id, $offer_id, $article_id)

Beschreibung:

Fügt den Artikel mit der übergebenen ID zu einem Angebot hinzu. Im Erfolgsfall wird 1 zurückgegeben.

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

Beispiel:

<?php
 
try {
  	$success = $client_offers->crmAddArticleToList($session_id, $offer_id, 10);    
    echo $success;
 
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}

2.28. crmAddTextToList

(Version >= 4.1)

Syntax:

array crmAddTextToList($session_id, $offer_id, $text)

Beschreibung:

Fügt einen Artikel-Text zu einem Angebot hinzu. Im Erfolgsfall wird 1 zurückgegeben.

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

Beispiel:

<?php
 
try {
  	$success = $client_offers->crmAddTextToList($session_id, $offer_id, 'Das ist ein Text');
    echo $success;
 
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}

2.29. crmAddSpecialToList

(Version >= 4.1)

Syntax:

array crmAddSpecialToList($session_id, $offer_id, $crmBillingItem)

Beschreibung:

Fügt einen Sonderartikel zu einem Angebot hinzu. Im Erfolgsfall wird 1 zurückgegeben.

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

crmBillingItem kann ein assoziatives Array oder ein Objekt sein.

Eigenschaften:

Typ             Eigenschaft                          Beschreibung
---------------------------------------------------------------------------------------------
int             $quantity                            Menge
string          $realnumber                          Artikelnummer
string          $name                                Bezeichnung
int             $taxrate                             Steuersatz-Index
double          $discount                            Rabatt
int             $interval                            Abrechnungszeitraum-Index
string          $description                         Beschreibung
int             $ext_id                              Externe ID ( ab Version 4.2 )

Beispiel:

<?php
 
try {
	$data = array(
    	'quantity'		=> 10,
       	'realnumber' 	=> '100001',
       	'name'   		=> 'API Special Article',
       	'description'  	=> 'API Special Article',
       	'taxrate'    	=> 19,
       	'discount' 		=> 100,
       	'interval' 		=> 1
     );
 
   	$success = $client_offers->crmAddSpecialToList($session_id, $offer_id, $data);
   	echo $success;
 
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}

2.30. crmAddGrouplineToList

(Version >= 4.1)

Syntax:

array crmAddGrouplineToList($session_id, $offer_id, $crmBillingItem)

Beschreibung:

Fügt eine Gruppenzeile zu einem Angebot hinzu. Im Erfolgsfall wird 1 zurückgegeben.

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

crmBillingItem kann ein assoziatives Array oder ein Objekt sein.

Eigenschaften:

Typ             Eigenschaft                          Beschreibung
---------------------------------------------------------------------------------------------
int             $quantity                             Menge
string          $name                                 Bezeichnung
int             $taxrate                              Steuersatz-Index
double          $discount                             Rabatt
int             $interval                             Abrechnungszeitraum-Index
string          $description                          Beschreibung
int             $ext_id                              Externe ID ( ab Version 4.2 )

Beispiel:

<?php
 
try {
	$data = array(
    	'quantity' 		=> 3,
       	'name'   		=> 'API Groupline',
       	'description'  	=> 'API Groupline',
       	'taxrate'    	=> 19,
       	'discount' 		=> 100,
       	'interval' 		=> 1
    );
 
	$success = $client_offers->crmAddGrouplineToList($session_id, $offer_id, $data);
   	echo $success;
 
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}



2.31. crmAddMultipleToList

(Version >= 4.1)

Syntax:

array crmAddMultipleToList($session_id, $offer_id, $crmMultipleListItems)

Beschreibung:

Fügt der Artikelliste des Angebotes 0mehrere Artikel, Texte und/oder Gruppenzeilen hinzu. Im Erfolgsfall wird 1 zurückgegeben.

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

crmMultipleListItems ist ein Array von Artikeln, die Eigenschaften sind die selben wie crmAddArticleToList, crmAddTextToList, crmAddSpecialToList und crmAddGrouplineToList. Die Unterscheidung erfolgt über das Feld "type".

Eigenschaften:

Typ             Eigenschaft                          Beschreibung
---------------------------------------------------------------------------------------------
array           $crmMultipleListItems                Artikelliste

Beispiel:

<?php
 
try {
 
	$items = array();
 
   	$items['crmMultipleListItems'][] = array('type' => 'article', 'id' => 10);
   	$items['crmMultipleListItems'][] = array('type' => 'text','text' => 'API-AddMultiple Text');
 
   	$specialItem = array(
  		'quantity'  	=> 10,
  		'realnumber'  	=> '100001',
  		'name'    		=> 'API Special Article',
  		'description' 	=> 'API Special Article',
  		'taxrate' 		=> 19,
  		'discount'  	=> 100,
  		'interval'  	=> 1,
  		'type'    		=> 'special'
  	);    
    $items['crmMultipleListItems'][] = $specialItem;
 
   	$data = array(
     	'quantity' 		=> 3,
     	'name'   		=> 'API Groupline',
     	'description'  	=> 'API Groupline',
     	'taxrate'    	=> 19,
     	'discount' 		=> 100,
     	'interval' 		=> 1,
     	'type'   		=> 'groupline'
   	);
   	$items['crmMultipleListItems'][] = $specialItem;
  
   	$success = $client_offers->crmAddMultipleToList($session_id, $offer_id, $items);
 
   	echo $success;
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}

2.32. crmRemoveArticleFromList

(Version >= 4.1)

Syntax:

array crmRemoveArticleFromList($session_id, $offer_id, $article_id)

Beschreibung:

Löscht den Artikel mit der angegeben ID aus der Artikelliste des Angebotes. Im Erfolgsfall wird 1 zurückgegeben.

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

Beispiel:

<?php
 
try {
  	$success = $client_offers->crmRemoveArticleFromList($session_id, $offer_id, 11);
    echo $success;
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}

2.33. 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:

<?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_offers = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=offers&wsdl");
 	$fields  = array('fields' => implode(',', array('realnumber', 'cdate')) );
   	$success = $client_offers->crmsetDuplicateConfig($session_id, $fields);
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}
 
echo ($success == 1 ? 'override successful' : $success);

2.34. 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:

<?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_offers = new SOAPClient("https://test.tecart-system.de/soap/index.php?op=offers&wsdl");
 
   	$fields = $client_offers->crmgetDuplicateConfig($session_id);
}
catch (SOAPFault $f) {
  	print $f->faultstring;
}
 
$fields = explode(',', $fields);
echo print_r($fields, true);


  • No labels