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

1.1. addOffer

Syntax:

int addOffer( array $offer )

Beschreibung:

Gibt eine offer_id zurück.

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

Eigenschaften von offer array:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
string(50)              $number                   RealNumber des Angebots 
string(255)             $shortdesc                Kurzbeschreibung des Angebots
string(255)             $cid                      Contact-Id, Format: Contact-Id:Person-Id
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                     $tax_eur                  Steuer des Angebots in €
int                     $tax_eur2                 Steuer des Angebots in €
int                     $date                     Unix-Timestamp des Datums
int                     $maturity                 Unix-Timestamp des Fälligkeitsdatums
int                     $maturity_interval        Intervall der Fälligkeit
int                     $pid                      Project-Id
int                     $status                   Status des Angebots
                                                  0 = offen
                                                  1 = angenommen
                                                  2 = abgelehnt
                                                  3 = Losgelöst vom Angebot
                                                  4 = verworfen
int                     $flow_status              Arbeitsschritt des Angebots
                                                  0 = In Bearbeitung
                                                  1 = Erstellt
                                                  2 = Geprüft
                                                  3 = Versendet
                                                  4 = Beantwortet
string(65535)           $notes                    Notizen
int                     $ext_id                   Externe ID
int                     $mandator_id              Mandaten-ID
int                     $client_account_id        Rechnungskonto-ID
int                     $parent                   Elternangebot-ID
int                     $orderid                  Auftrags-ID
int                     $ttid                     Ticket-ID
int                     $is_incoming              Ein-/Ausgehendes Angebot (0 = Ausgehend / 1 = Eingehend)
int                     $autoprice                Preisberechnung (0 = Nein / 1 = Ja)

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
 
$offer = array();
$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';
 
try {
    $crmapi_offers	= crmapi::offers(); 
    $offer_id		= $crmapi_offers->addOffer($offer);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo $offer_id;
 



1.2. getOffer

Syntax:

array getOffer( int $offer_id )

Beschreibung:

Gibt ein offer array mit einem Element zurück.

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

Eigenschaften des zurückgegebenen offer array:

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                    Kontakt-Name
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                     $tax_eur                  Steuer des Angebots in €
int                     $tax_eur2                 Steuer des Angebots in €
int                     $cdate                    Unix-Timestamp des Datum
int                     $maturity                 Unix-Timestamp des Fälligkeitsdatums
int                     $maturity_interval        Intervall der Fälligkeit
int                     $status                   Status des Angebots
                                                  0 = offen
                                                  1 = angenommen
                                                  2 = abgelehnt
                                                  3 = Losgelöst vom Angebot
                                                  4 = verworfen
int                     $flow_status              Arbeitsschritt des Angebots
                                                  0 = In Bearbeitung
                                                  1 = Erstellt
                                                  2 = Geprüft
                                                  3 = Versendet
                                                  4 = Beantwortet
int                     $pid                      Project-ID
string(255)             $pname                    Projekt-Name
int                     $mandator_id              Mandaten-ID
int                     $client_account_id        Rechnungskonto-ID
int                     $parent                   Elternangebot-ID
int                     $previous_offer           Abgelöstes Angebot-ID
int                     $orderid                  Auftrags-ID
int                     $ttid                     Ticket-ID
int                     $is_incoming              Ein-/Ausgehendes Angebot (0 = Ausgehend / 1 = Eingehend)
int                     $autoprice                Preisberechnung (0 = Nein / 1 = Ja)
string(65535)           $notes                    Notizen

int                     $chguser                  Userid der letzten Änderung 
int                     $chgtime                  Unix-Timestamp der letzten Änderung
int                     $createuser               Userid der Angebotserstellung
int                     $createtime               Unix-Timestamp der Angebotserstellung

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
try {
    $crmapi_offers	= crmapi::offers(); 
    $offer			= $crmapi_offers->getOffer(299);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($offer as $key => $val) {
    echo $key." => ".$val."<br>  \n";
    if (is_array($val)) echo serialize($val);
}



1.3. getOffersFrom

Syntax:

array getOffersFrom(int $month, int $year )

Beschreibung:

Gibt ein offer array vom mit Angeboten seit dem gegebenem Datum zurück.

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

Wenn month gesetzt ist, werden nur Angebote aus diesem Monat zurückgegeben, auf 0 gesetzt werden alle Monate zurückgegeben.

Wenn year gesetzt ist, werden nur Angebote aus diesem Jahr zurückgegeben, auf 0 gesetzt werden alle Jahre zurückgegeben.

Eigenschaften des zurückgegebenen offers array:

sind die selben wie für getOffer

Beispiel:

<?php
 
try {
    $crmapi_offers = crmapi::offers();
   
    // Get all offers 
    $result = $crmapi_offers->getOffersFrom(0, 0);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $offer) {
    foreach($offer as $key => $val) {
        echo $key." => ".$val."<br>  \n";
        if (is_array($val)) {
			echo serialize($val);
		}
    }
    echo "<hr/>";
}



1.4. changeOffer

Syntax:

int changeOffer ( int $offer_id, array $offer )

Beschreibung:

Ändert Eigenschaften eines existierenden Angebots.

Gibt die offer_id zurück.

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

Eigenschaften von $offer array:

sind die selben wie für addOffer

Beispiel:

<?php
 
try {
    $crmapi_offers = crmapi::offers();
   
    $offer = array();
    $offer['shortdesc'] = 'API-Offer changed';
   
    // Change short Beschreibung of offer with ID 299
    $offer_id = $crmapi_offers->changeOffer(299, $offer);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
echo $offer_id;



1.5. getChangedOffers

Syntax:

array getChangedOffers( int $timestamp )

Beschreibung:

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

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

Eigenschaften des zurückgegebenen offer arrays:

sind die selben wie für getOffer

Beispiel:

<?php
 
try {
    $crmapi_offers = crmapi::offers();
   
    // Get Offers modified in the last 30 days
    $result = $crmapi_offers->getChangedOffers( time() - 60 * 60 * 24 * 30 );
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $offer) {
    foreach($offer as $key => $val) {
        echo "$key => $val<br>  \n";
        if (is_array($val)) {
			echo serialize($val);
		}
    }
    echo "<hr/>";
}


1.6. getChangedOffersLimit

Syntax:

array getChangedOffersLimit( int $timestamp, int $count, int $offset )

Beschreibung:

Gibt offer arrays zurück, die seit timestamp geändert wurden, limitiert von count und offset.

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

Eigenschaften des zurückgegebenen offer objects:

sind die selben wie für getOffer

Beispiel:

<?php
 
try {
    $crmapi_offers = crmapi::offers();
   
    // Get last 10 offers modified in the last 30 days
    $result = $crmapi_offers->getChangedOffersLimit( time() - 60 * 60 * 24 * 30, 10, 0 );
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $offer) {
    foreach($offer as $key => $val) {
        echo "$key => $val<br>  \n";
        if (is_array($val)) {
			echo serialize($val);
		}
    }
    echo "<hr/>";
}


1.7. getOfferIds

Syntax:

array getOfferIds( int $timestamp )

Beschreibung:

Gibt ein Array mit offer_ids von Angeboten zurückt, die seit timestamp geändert wurden(0 für alle).

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

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

Eigenschaften:

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

Beispiel:

<?php
 
try {
    $crmapi_offers = crmapi::offers();
 
    // Get all offer ids
    $result = $crmapi_offers->getOfferIds(0);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($result as $id) {
    echo $id."<br>  ";
}



1.8. deleteOffer

Syntax:

void deleteOffer( int $offer_id )

Beschreibung:

Löscht ein Angebot.

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

Beispiel:

<?php
 
try {
    $crmapi_offers = crmapi::offers();
 
    // Delete offer with ID 299
    $result = $crmapi_offers->deleteOffer(299);
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.9. searchOffers

(Version >= 3.4.4704)

Syntax:

array searchOffers(array $search_term, int $timestamp = false, int $count = false, int $offset = 0) 

Beschreibung:

Gibt ein Array mit Angeboteinformationen zurück.

$search_term ist ein assoziatives Array, bei dem der key das Feld zum Suchen und der value der Suchstring ist. Sie können ein %-Zeichen am Anfang und/oder Ende der Zeichenfolge als Platzhalter verwenden.

$timestamp ist die Unix-Zeit, wann das Angebot geändert wurde.

$count ist die maximale Anzahl, die zurückgegeben wird.

$offset ist die Offset Position der Ergebnisse, die zurückgegeben werden sollen.

Ab Version > 3.5 gibt's das Parameter $sort, um das Ergebnis zu sortieren.

Eigenschaften des $sort Array:

key            value                  Beschreibung
---------------------------------------------------------------------------------------------
cdate          ASC|DESC               Abschlussdatum sortieren

Eigenschaften des zurückgegebenen Array: die gleichen wie für getOffer

Beispiel:

<?php
 
try {
    $crmapi_offers = crmapi::offers();
 
    // Get the first 10 offers with subject like 'CRM' AND expiration date is 30.11.2011 AND have changed since 01.11.2011
    $search = array( 'shortdesc'  => '%CRM%', 'maturity' => '1322607600' );
 
    $offers  = $crmapi_offers->searchOffers($search, 1320102000, 10, 0);
 
    // Get all offers and order by cdate 'DESC'
    $search = array( 'shortdesc'  => '%');
 
    $offers  = $crmapi_offers->searchOffers($search, 1320102000, 10, 0, array('cdate'=>'DESC'));
 
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach( $offers as $key => $val) {
    echo "$key => $val<br/>\n";
}



1.10. getOfferFields

(Version >= 3.5)

Syntax:

array getOfferFields() 

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                       Name des Feldes in der Datenbank
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 {
    $crmapi_offers	= crmapi::offers();  
    $fields			= $crmapi_offers->getOfferFields();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach( $fields as $key => $val) {
    echo $key ." => ". $val['label'] ."<br/>";
}



1.11. toContract

(Version >= 4.1)

Syntax:

int toContract($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 ein Array von Artikel-IDs aus der Artikelliste eines Angebotes. (optional)

Beispiel:

<?php
 
try {
    $result = $crmapi_offers->toContract($offer_id);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo "ID des neuen Vertrags ist $result";



1.12. createFollowUp

(Version >= 4.1)

Syntax:

int createFollowUp($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 ein Array von Artikel-IDs aus der Artikelliste eines Angebotes. (optional)

Beispiel:

<?php
 
try {
    $result = $crmapi_offers->createFollowUp($offer_id);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo "ID des Folgeangebotes ist $result.";



1.13. mergeToContract

(Version >= 4.1)

Syntax:

int mergeToContract($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 ein Vertrag erzeugt werden soll.

$contract_id ist die ID des Angebots, welches zum Zielvertrag hinzugefügt werden soll.

$article_list_ids ist ein Array von Artikel-IDs aus der Artikelliste eines Angebotes. (optional)

Beispiel:

<?php
 
try {
    $result = $crmapi_offers->mergeToContract($offer_id, $contract_id);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo $result;



1.14. gotoNextFlowStatus

(Version >= 4.1)

Syntax:

void gotoNextFlowStatus($offer_id) 

Beschreibung:

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

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

Beispiel:

<?php
 
try {
    $crmapi_offers->gotoNextFlowStatus($offer_id);
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.15. unlockOffer

(Version >= 4.1)

Syntax:

array unlockOffer(int $offer_id)

Beschreibung:

Gibt ein Angebot zur Bearbeitung wieder frei. Gibt im Erfolgsfall 1 zurück.

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

Beispiel:

<?php
 
try {
    $result = $crmapi_offers->unlockOffer($offer_id);
 
    echo $result;
}
catch (CRMException $e) {
    echo $e->getMessage();
}

1.16. getIdByExtId

(Version >= 4.2)

Syntax:

array getIdByExtId( string $external_id )

Beschreibung

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

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

Eigenschaften des zurückgegebenen offer ids array:

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

Beispiel:

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


1.17. getAllExtIds

(Version >= 4.2)

Syntax:

array getAllExtIds( string $external_id )

Beschreibung

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

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

Eigenschaften des zurückgegebenen offer ids array:

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

Beispiel:

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


1.18. getPermission

(Version >= 4.2.12362)

Syntax:

array getPermission( int $offer_id )

Beschreibung:

Gibt ein assoziatives $permissions array mit den Berechtigungen für das Angebot mit der gegebenen $offer_id zurück.

Wirft eine CRMException im Fehlerfall.

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_offers	= crmapi::offers(); 
    $permissions	= $crmapi_offers->getPermission('123');
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
foreach($permissions as $type => $permission) {
 
    echo "Type: $type<br/>\n";
 
    foreach($permission as $single_id => $single_permissions) {
 
        echo "User id/Group id: $single_id<br/>\n";
 
		foreach($single_permission as $permission_type => $permission_set) {
			echo "$permission_type => $permission_set<br/>\n";
		}
    }
}



1.19. setPermission

(Version >= 4.2.12362)

Syntax:

boolean setPermission( array $permission)

Beschreibung:

Setzt die Berechtigungen für ein einzelnes Angebot.

Gibt true bei Erfolg zurück.

Wirft eine CRMException im Fehlerfall.

Eigenschaften von $permissions array:

Type(Length) Key Value


int offer_id Offer-ID 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_offers	= crmapi::offers(); 
    $permission		= array(
		'offer_id'	=> 1234,
		'users'		=> array(
			'55' => array('read' => -1, 'write' => -1, 'delete' => -1)
		),
 		'groups' => array(
			'33' => array('read' => -1, 'write' => -1, 'delete' => -1)
		),
	);
 
    $success = $crmapi_offers->setPermission($permission);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo $success;



1.20. getArticles

(Version >= 4.1)

Syntax:

array getArticles($offer_id)

Beschreibung:

Gibt Artikelliste des Angebotes zurück.

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

Beispiel:

<?php
 
try {
    $articles = $crmapi_offers->getArticles($offer_id);
   
    foreach($articles as $article) {
        foreach($article as $key => $val) {
            echo "$key => $val<br>\n";
        }
    }
    echo "<hr/>";
 
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.21. addArticleToList

(Version >= 4.1)

Syntax:

array addArticleToList($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 = $crmapi_offers->addArticleToList($offer_id, 10);    
    echo $success;
 
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.22. addTextToList

(Version >= 4.1)

Syntax:

array addTextToList($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 = $crmapi_offers->addTextToList($offer_id, 'Das ist ein Text');
    echo $success;
 
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.23. addSpecialToList

(Version >= 4.1)

Syntax:

array addSpecialToList($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 = $crmapi_offers->addSpecialToList($offer_id, $data);
    echo $success;
 
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.24. addGrouplineToList

(Version >= 4.1)

Syntax:

array addGrouplineToList($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 = $crmapi_offers->addGrouplineToList($offer_id, $data);
    echo $success;
 
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.25. addMultipleToList

(Version >= 4.1)

Syntax:

array addMultipleToList($offer_id, $crmMultipleListItems)

Beschreibung:

Fügt der Artikelliste des Angebotes mehrere 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 addArticleToList, addTextToList, addSpecialToList und addGrouplineToList. Die Unterscheidung erfolgt über das Feld "type".

Eigenschaften:

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

Beispiel:

<?php
 
try {
 
    $items = array();
 
    $items[] = array('type' => 'article', 'id' => 10);
    $items[] = 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[] = $specialItem;
 
    $data = array(
        'quantity'     => 3,
        'name'         => 'API Groupline',
        'description'  => 'API Groupline',
        'taxrate'      => 19,
        'discount'     => 100,
        'interval'     => 1,
        'type'         => 'groupline'
        );
    $items[] = $specialItem;
   
 
    $success = $crmapi_offers->addMultipleToList($offer_id, $items);
 
    echo $success;
 
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.26. removeArticleFromList

(Version >= 4.1)

Syntax:

array removeArticleFromList($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 = $crmapi_offers->removeArticleFromList($offer_id, 11);
   
    echo $success;
 
}
catch (CRMException $e) {
    echo $e->getMessage();
}



1.27. 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::offers();
    $fields  = array('realnumber', 'cdate');
    // adding an offer will execute an exists-check looking for identical values in fields "realnumber" and "cdate" 
    // 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.28. 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::offers();
    $fields = $api->getDuplicatecheckConfig();
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
echo print_r($fields, true);
  • No labels