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.


Diese REST Klasse und deren Funktionen können mit dem TecArt-System ab Version 4.3 genutzt werden.

1. Aufruf URL

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

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

2. Klasse

crmfields

3. Methoden

3.1. crmaddUserfield

Syntax:

int crmaddUserfield ( array(string $session_id, int $module, array $field) )

Beschreibung:

Fügt ein benutzerdefiniertes Feld zum angegebenen Modul hinzu.

Gibt eine field_id beim Erfolg zurück.

$module: Modul des benutzerdefinierten Feldes. Diese Variable muss einen der folgenden Integer-Werte beinhalten:

Wert   Modul
-------------------------------
  1    Kontakte
  2    Personen
  3    Projekte
  4    Verträge
  5    Angebote
  6    Tickets
  9    Ressourcen
 12    Artikel
 13    Rechnungskonten
 14    Ausgangsrechnungen
 15    Zahlungen
 18    Mahnungen
 20    Aufträge
 21    Lieferscheine
 22    Gutschriften
 29    Eingangsrechnungen
 30    Kassenbücher

field ist ein assoziazives Array.

Eigenschaften von field Array:

Type(Length)            Eigenschaft                    Beschreibung
------------------------------------------------------------------------------------------------------------------
string(128)             $label                         angezeigter Feldname 
int                     $type                          Feldtyp
string(255)             $list                          Name der für Dropdown-Listen-Felder anzuzeigenden Liste
int                     $listsave                      Speichertyp für Dropdown-Listen-Felder (0 = Wert, 1 = Index)
string(255)             $stdvalue                      Standardwert
string(255)             $title                         Titel (Quickinfo)
int                     $obligatory                    Pflichtfeld (0 = Nein, 1 = Ja)
int                     $readonly                      Schreibgeschützt (0 = Nein, 1 = Ja)
int                     $size                          Feldgröße (Textlänge für Textfelder, Anzahl Nachkommastellen für Nummernfelder, Höhe für Listenfelder)
int                     $width                         Breite des Feldes in Pixel
int                     $pos                           Position (-1 = fixiert)
int                     $view                          Anzeigen (0 = Nein, 1 = Ja)
int                     $style                         Stil (0 = normal, 1 = fett, 2 = kursiv, 3 = unterstrichen)
int                     $hidelabel                     Bezeichnung ausblenden (0 = Nein, 1 = Ja)
int                     $grid_width                    Initial Spaltenbreite für Anzeige in Grids
int                     $keep_edit                     Bearbeitungsmodus nach Template-Wechsel beibehalten
int                     $listsorttype                  Sortierung von Listenfeldern (0 = Alphabetisch, 1 = Indexwert, 2 = Frei)
string(255)             $clickevent                    Click Event URL für Buttons
int                     $clickevent_new_window         Click Event URL in neuem Fenster öffnen
int                     $clickevent_window_scrollbars  Scrollbars in neuem Fenster anzeigen
int                     $clickevent_window_width       Breite des neuen Fensters in Pixel
int                     $clickevent_window_height      Höhe des neuen Fensters in Pixel
string(255)             $allow_grp                     Doppelpunkt-getrennt Liste der Gruppen-IDs mit Leseberechtigung ('' = Alle)
string(255)             $allow_grp_write               Doppelpunkt-getrennt Liste der Gruppen-IDs mit Schreibberechtigung ('' = Alle)

Feldtypen

Wert   Feldtyp
-------------------------------
  1    Text
  2    Nummer
  3    Datum
  4    Kontrollkästchen
  5    Dropdown-Liste
  6    Dropdown-Liste Mehrfachauswahl
  7    Währung
  8    Kontaktauswahl
  9    Projektauswahl
 10    Button
 11    Dropdown-Liste Template
 12    Ticketauswahl
 13    Vertragsauswahl
 14    Angebotsauswahl
 15    Textbereich
 17    Warengruppenauswahl
 18    Dropdown-Liste Drucklayout
 19    Rechnungskontoauswahl
 20    Artikelauswahl
 21    Auftragsauswahl
 23    Kostenstellenauswahl
 24    Datum mit Uhrzeit

Beispiel

<?php
 
$field = array(
	'type'  => 1,
	'label' => 'Mein Textfeld',
	'pos'   => -1,
	'size'  => 10
);
 
try {
	include_once 'crm_rest_api.php';
	/* @var $logon crmlogon */
	$logon  = new crm_rest_api("http://hostname/dirname/rest/index.php/logon");    
	/* @var $fields crmfields */
	$fields = new crm_rest_api("http://hostname/dirname/rest/index.php/fields");
 
	$session_id = $logon->crmLogin( array('username' => 'test', 'password' => 'test') );
	$field_id   = $fields->crmaddUserfield( array('session_id' => $session_id, 'module' => 1, 'field' => $field) );
} 
catch (CRMException $e) {
	echo $e->getMessage();
}
 
echo $field_id;



3.2. crmchangeUserfield

Syntax:

bool crmchangeUserfield ( array(string $session_id, int $module, int $field_id, array $field) )

Beschreibung:

Ändert die Eigenschaften eines benutzerdefiniertes Feldes.

Gibt true beim Erfolg zurück.

$module: Modul des benutzerdefinierten Feldes. (Eigenschaften siehe crmaddUserfield)

$field_id: ID des zu ändernden Feldes.

$field ist ein assoziatives Array. (Eigenschaften siehe crmaddUserfield)

Beispiel

<?php
 
$field = array(
	'type'  => 7, 
	'label' => 'Mein Währungsfeld',
	'size'  => 2
);
 
try {
	include_once 'crm_rest_api.php';
 
	$logon  = new crm_rest_api("http://hostname/dirname/rest/index.php/logon");    
	$fields = new crm_rest_api("http://hostname/dirname/rest/index.php/fields");
 
	$session_id = $logon->crmLogin( array('username' => 'test', 'password' => 'test') );
	$field_id   = $fields->crmchangeUserfield(
		array(
			'session_id'	=> $session_id,
			'module'		=> 1,
			'field_id'		=> 30,
			'field'			=> $field
		)
	);
} 
catch (CRMException $e) {
	echo $e->getMessage();
}



3.3. crmremoveUserfield

Syntax:

bool crmremoveUserfield ( array(string $session_id, int $module, int $field_id) )

Beschreibung:

Löscht ein benutzerdefiniertes Feld.

Gibt true beim Erfolg zurück.

$module: Modul des benutzerdefinierten Feldes. (Eigenschaften siehe crmaddUserfield)

$field_id: ID des zu löschenden Feldes.

Beispiel

<?php
 
try {
	include_once 'crm_rest_api.php';
 
	$logon  = new crm_rest_api("http://hostname/dirname/rest/index.php/logon");    
	$fields = new crm_rest_api("http://hostname/dirname/rest/index.php/fields");
 
	$session_id = $logon->crmLogin( array('username' => 'test', 'password' => 'test') );
	$field_id   = $fields->crmremoveUserfield( array('session_id' => $session_id, 'module' => 1, 'field_id' => 30) );
} 
catch (CRMException $e) {
	echo $e->getMessage();
}



3.4. crmgetFieldByID

Syntax:

array crmgetFieldByID ( array(string $session_id, int $module, int $field_id) )

Beschreibung:

Gibt ein Objekt mit einem Feld-Element zurück.

$module: Modul des benutzerdefinierten Feldes. (Eigenschaften siehe crmaddUserfield)

$field_id: ID des Feldes.

Eigenschaften des zurückgegebenen Feld-Elements:

Type(Length)            Eigenschaft                    Beschreibung
------------------------------------------------------------------------------------------------------------------
int                     $id                            ID des Feldes
string(128)             $label                         angezeigter Feldname 
string(128)             $field                         Name des Feldes
int                     $type                          Feldtyp
string(255)             $list                          Name der für Dropdown-Listen-Felder anzuzeigenden Liste
int                     $listsave                      Speichertyp für Dropdown-Listen-Felder (0 = Wert, 1 = Index)
string(255)             $stdvalue                      Standardwert
string(255)             $title                         Titel (Quickinfo)
int                     $obligatory                    Pflichtfeld (0 = Nein, 1 = Ja)
int                     $readonly                      Schreibgeschützt (0 = Nein, 1 = Ja)
int                     $size                          Feldgröße (Textlänge für Textfelder, Anzahl Nachkommastellen für Nummernfelder, Höhe für Listenfelder)
int                     $width                         Breite des Feldes in Pixel
int                     $pos                           Position (-1 = fixiert)
int                     $view                          Anzeigen (0 = Nein, 1 = Ja)
int                     $style                         Stil (0 = normal, 1 = fett, 2 = kursiv, 3 = unterstrichen)
int                     $hidelabel                     Bezeichnung ausblenden (0 = Nein, 1 = Ja)
int                     $grid_width                    Initial Spaltenbreite für Anzeige in Grids
int                     $keep_edit                     Bearbeitungsmodus nach Template-Wechsel beibehalten
int                     $listsorttype                  Sortierung von Listenfeldern (0 = Alphabetisch, 1 = Indexwert, 2 = Frei)
int                     $chguser                       User-Id der letzten Änderung
int                     $chgtime                       Unix-Timestamp der letzten Änderung
string(255)             $clickevent                    Click Event URL für Buttons
int                     $clickevent_new_window         Click Event URL in neuem Fenster öffnen
int                     $clickevent_window_scrollbars  Scrollbars in neuem Fenster anzeigen
int                     $clickevent_window_width       Breite des neuen Fensters in Pixel
int                     $clickevent_window_height      Höhe des neuen Fensters in Pixel
string(255)             $allow_grp                     Doppelpunkt-getrennt Liste der Gruppen-IDs mit Leseberechtigung ('' = Alle)
string(255)             $allow_grp_write               Doppelpunkt-getrennt Liste der Gruppen-IDs mit Schreibberechtigung ('' = Alle)

Beispiel

<?php
 
try {
	include_once 'crm_rest_api.php';
 
	$logon  = new crm_rest_api("http://hostname/dirname/rest/index.php/logon");    
	$fields = new crm_rest_api("http://hostname/dirname/rest/index.php/fields");
 
	$session_id = $logon->crmLogin( array('username' => 'test', 'password' => 'test') );
	$field      = $fields->crmgetFieldByID( array('session_id' => $session_id, 'module' => 1, 'field_id' => 30) );
	$field      = get_object_vars($field);
 
	foreach ($field as $key => $val) {
		echo $key ." => ". $val ."<br>";
	}
} 
catch (CRMException $e) {
	echo $e->getMessage();
}



3.5. crmgetFieldByName

Syntax:

array crmgetFieldByName ( array(string $session_id, int $module, string $fieldname) )

Beschreibung:

Gibt ein Objekt mit einem Feld-Element zurück.

$module: Modul des benutzerdefinierten Feldes. (Eigenschaften siehe crmaddUserfield)

$fieldname: Name des Feldes.

Eigenschaften des zurückgegebenen Feld-Elements siehe crmgetFieldByID

Beispiel

<?php
 
try {
	include_once 'crm_rest_api.php';
 
	$logon  = new crm_rest_api("http://hostname/dirname/rest/index.php/logon");    
	$fields = new crm_rest_api("http://hostname/dirname/rest/index.php/fields");
 
	$session_id = $logon->crmLogin( array('username' => 'test', 'password' => 'test') );
	$field      = $fields->crmgetFieldByName( array('session_id' => $session_id, 'module' => 1, 'fieldname' => 'user30') );
	$field      = get_object_vars($field);
 
	foreach ($field as $key => $val) {
		echo $key ." => ". $val ."<br>";
	}
} 
catch (CRMException $e) {
	echo $e->getMessage();
}



3.6. crmgetUserfields

Syntax:

array crmgetUserfields ( array(string $session_id, int $module) )

Beschreibung:

Gibt ein Objekt mit einer Liste der benutzerdefinierten Felder des Moduls zurück.

$module: Modul des benutzerdefinierten Feldes. (Eigenschaften siehe crmaddUserfield)

Beispiel

<?php
 
try {
	include_once 'crm_rest_api.php';
 
	$logon  = new crm_rest_api("http://hostname/dirname/rest/index.php/logon");    
	$fields = new crm_rest_api("http://hostname/dirname/rest/index.php/fields");
 
	$session_id = $logon->crmLogin( array('username' => 'test', 'password' => 'test') );
	$userfields = $fields->crmgetUserfields( array('session_id' => $session_id, 'module' => 1) );
	$userfields = get_object_vars($userfields);
 
	foreach ($userfields as $key => $val) {
		echo $key ." => ". $val ."<br>";
	}
} 
catch (CRMException $e) {
	echo $e->getMessage();
}
  • No labels