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

Mit der Veröffentlichung von TecArt Version 4.10 wird diese Version des REST Webservice nicht weiterentwickelt, steht aber zu Zwecken der Abwärtskompatibilität weiter zur Verfügung. 

With the release of TecArt version 4.10 this version of REST Webservice will no longer receive further development, yet will stay available for reasons of downward compatibility.

1. Aufruf URL

http://hostname/dirname/rest/index.php/vacations

e.g. https://test.tecart-system.de/rest/index.php/vacations

2. Methoden

2.1. crmgetVacationDates

Syntax:

array crmgetVacationDates( array(string $session_id, int $userid, int $year) )

Beschreibung:

Gibt ein Array mit vacation day Objekten zurück.

Wenn userid gegeben ist werden die Urlaubstage dieses Benutzers zurückgegeben ( nur wenn der authentifizierte Benutzer über ausreichende Berechtigungen verfügt). Wenn userid auf 0 gesetzt ist werden die Urlaubstage des authentifizierten Benutzers zurückgegeben.

Wenn year gegeben ist, werden nur Urlaubstage aus diesem Jahr zurückgegeben. Ist year auf 0 gesetzt werden Urlaubstage für das aktuelle Jahr zurückgegeben.

Eigenschaften der zurückgegebenen vacation period Objekte:

Type(Length)            Eigenschaft               Beschreibung
---------------------------------------------------------------------------------------------
int                     $id                       vacation day Id
int                     $start                    Timestamp des Beginns
int                     $stop                     Timestamp des Endes
int                     $createuser               Userid der Erstellung
int                     $createtime               Unix-Timestamp der Erstellung 
int                     $chguser                  Userid der letzten Änderung
int                     $chgtime                  Unix-Timestamp der letzten Änderung
int                     $supervisor               Userid des Abteilungsleiters
int                     $supervisor_date          Unix-Timestamp der letzten Abteilungsleiteränderung 
int                     $chief                    Userid des Geschäftsführers
int                     $chief_date               Unix-Timestamp der letzten Änderung des Geschäftsführers
int                     $kind                     Art des Sonderurlaubs aus der Liste.
int                     $status                   Status der Urlaubsperiode: 
                                                  0 = angefordert
                                                  1 = genehmigt von Abteilungsleiter
                                                  2 = genehmigt
                                                  3 = Sonderurlaub genehmigt
                                                  4 = abgelehnt
                                                  5 = storniert
                                                  6 = krank
                                                  7 = Wunsch
                                                  8 = stornierter Wunsch
int                     $requested                Unix-Timestamp der Anfrage des Nutzers
string(255)             $notes                    Notizen vom Abteilungsleiter oder Geschäftsführer
string(255)             $usernotes                Notizen des Nutzers

Beispiel:

<?php
 
try {
	include_once 'crm_rest_api.php';
 
	$vacations = new crm_rest_api("http://hostname/dirname/rest/index.php/vacations");
 
	//Get vacation days of the year 2008 for user ID 4:
	$result = $vacations->crmgetVacationDates(
		array(
			'session_id'	=> $session_id, 
			'userid'		=> 4, 
			'year'			=> 2008
		)
	);
 
	foreach($result as $vacation) {
		foreach($vacation as $key => $val) {
			echo "$key => $val<br>\n";
		}
		echo "<hr/>";
	}
}
catch (Exception $e) {
	echo 'Exception abgefangen: ' .$e->getMessage(). "\n";
}



2.2. crmgetVacationIds

(Version >= 3.7)

Syntax:

array crmgetVacationIds( array(string $session_id, int $userid, int $year) )

Beschreibung:

Gibt ein Array mit Ids der Urlaubstagen zurück.

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

Wenn userid gegeben ist werden die Urlaubstage-IDs dieses Benutzers zurückgegeben ( nur wenn der authentifizierte Benutzer über ausreichende Berechtigungen verfügt). Wenn userid auf 0 gesetzt ist werden die Urlaubstage-IDs des authentifizierten Benutzers zurückgegeben.

Wenn year gegeben ist, werden nur Urlaubstage-IDs aus diesem Jahr zurückgegeben. Ist year auf 0 gesetzt werden Urlaubstage-IDs für das aktuelle Jahr zurückgegeben.

Beispiel:

<?php
 
try { 
	include_once 'crm_rest_api.php';
 
	$vacations = new crm_rest_api("http://hostname/dirname/rest/index.php/vacations");
 
	//Get vacation ids of the year 2008 for user ID 4:
	$result = $vacations->crmgetVacationIds(
		array(
			'session_id'	=> $session_id, 
			'userid'		=> 4, 
			'year'			=> 2008
		)
	);
 
	foreach($result as $id) {
		echo "ID: " .$id. "<br>\n";
	}
}
catch (Exception $e) {
	echo 'Exception abgefangen: ' .$e->getMessage(). "\n";
}



2.3. crmgetVacationById

(Version >= 3.7)

Syntax:

array crmgetVacationById( array( string $session_id, int $id) )

Beschreibung:

Gibt ein Array mit Info eines Urlaubstages anhand der $id zurück.

Eigenschaften der zurückgegebenen vacation array:

sind die selben wie crmgetVacationDates

plus

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int                     $userid                      Benutzer Id

Beispiel:

<?php
 
try {
	include_once 'crm_rest_api.php';
   
	$vacations = new crm_rest_api("http://hostname/dirname/rest/index.php/vacations");
 
	//Get vacation with id = 123
	$vacation = $vacations->crmgetVacationById(
		array(
			'session_id'	=> $session_id, 
			'id'			=> 123
		)
	);
 
	foreach($vacation as $key => $val) {
		echo "$key => $val<br>\n";
	}
 
	echo "<hr/>";
}
catch (Exception $e) {
	echo 'Exception abgefangen: ' .$e->getMessage(). "\n";
}



2.4. crmsearchVacations

(Version >= 3.7)

Syntax:

array crmsearchVacations( array(string $session_id, array $search_terms, int $count, int $offset) )

Beschreibung:

Gibt ein Array mit Urlaubstages anhand der Suchkriterien zurück.

Eigenschaften des $search_terms Array:

Type(Length)            Eigenschaft                  Beschreibung
---------------------------------------------------------------------------------------------
int                     year                         Das Jahr
int                     status                       Status der Urlaubsperiode: 
                                                         0 = angefordert
                                                         1 = genehmigt von Abteilungsleiter
                                                         2 = genehmigt
                                                         3 = Sonderurlaub genehmigt
                                                         4 = abgelehnt
                                                         5 = storniert
                                                         6 = krank
                                                         7 = Wunsch
                                                         8 = stornierter Wunsch
int                     userid                       Das Benutzer-ID
int                     department                   Das Abteilung-ID

Eigenschaften der zurückgegebenen vacation array:

sind die selben wie crmgetVacationByID

Beispiel:

<?php
 
try {
	include_once 'crm_rest_api.php';
   
	$vacations = new crm_rest_api("http://hostname/dirname/rest/index.php/vacations");
 
	//Get the first 10 vacations of department with id = 5 and for the year 2013
	$search_terms	= array( 'year' => 2013, 'department' => 5 );
	$vacations		= $vacations->crmsearchVacations(
		array(
			'session_id'	=> $session_id, 
			'search_terms'	=> $search_terms, 
			'count'			=> 10, 
			'offset'		=> 0
		)
	);
 
	foreach($vacations as $vacation) {
		foreach($vacation as $key => $val) {
			echo "$key => $val<br>\n";
		}
 
		echo "<hr/>";
	}
}
catch (Exception $e) {
	echo 'Exception abgefangen: ' .$e->getMessage(). "\n";
}
  • No labels