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

Diese Seite enthält noch nicht alle Informationen bzw. befindet sich aktuell in der Überarbeitung


API Klassen und deren Funktionen können nur mit der TecArt-System Version >= 3.2 genutzt werden

1. Methods

1.1. importCsvString

(Version >= 4.5)

Syntax:

array importCsvString(int $module, string $import_id, string $content, int $action, array $csv_config, array $assignments, array $duplicate_check)

Beschreibung:

Gibt ein Array mit Protokolldaten zum Import zurück.

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

$module - ID des Modules, in welche die Daten importiert werden sollen. Verfügbare IDs sind:

  • 1 - Kontakte

  • 3 - Projekte

  • 4 - Verträge

  • 5 - Angebote

  • 6 - Tickets

  • 9 - Ressourcen

  • 10 - Accounts

  • 12 - Artikel

  • 13 - Rechnungskonten

  • 20 - Aufträge

  • 30 - Kassenbuch-Einträge

$import_id - Alphanumerische ID welche den Importvorgang kennzeichnet, wird zum Abrufen des Import-Logs via getImportLog benötigt

$content - eine CSV-geformter Zeichenkette

$action - der Import-Type, welcher ausgeführt werden soll:

  • 0 - Alle Daten löschen und neue importieren

  • 1 - Nur neue Daten importieren - vorhandene werden nicht geändert

  • 2 - Neue Daten importieren und vorhandene aktualisieren

$csv_config - Konfigurationsoptionen für den Import-Vorgang:

  • delimiter - Trennzeichen zwischen einzelnen Spalten

  • charset - Zeichensatz der CSV-geformter Zeichenkette

  • enclosure - Zeichen zum einschließen von Zeichenketten

  • skip_first - Erste Zeile in Zeichenkette überspringen

  • ticket_section - ID eines Ticket-Bereiches, wenn leer wird Standard-Bereich (nur wenn $module = 6)

  • mandator_id - ID eines Mandaten, wenn leer wird Standard-Mandant verwendet (nur wen $module = 4, 5, 12, 13, 14, 18, 20, 21, 22, 29 oder 30)

  • cashjournal_id - ID eines Kassenbuches (nur wenn $module = 30)

  • secure_delete - "Sicheres löschen" aktivieren oder nicht (Default = 1, nur wenn $action = 0)

$assignments - Feldzuordnung (Zählung beginnt bei 0)

  • Feldname1 als Key ⇒ Position0 als Key

  • Feldname2 als Key ⇒ Position1 als Key

  • FeldnameX als Key ⇒ PositionY als Key

$duplicate_check - Liste von Feldern für Dublettenprüfung, wenn Leer wird Standardeinstellung aus Administration genutzt

Eigenschaften des zurückgegebenen Arrays:

Type     Eigenschaft                    Beschreibung
---------------------------------------------------------------------------------------------
int      $rows_contact_insert           Anzahl eingefügter Kontakte (nur wenn $module = 1)
int      $rows_contact_update           Anzahl aktualisierter Kontakte (nur wenn $module = 1)
int      $rows_person_insert            Anzahl eingefügter Personen (nur wenn $module = 1)
int      $rows_person_update            Anzahl aktualisierter Personen (nur wenn $module = 1)
int      $rows_insert                   Anzahl eingefügter Datensätze (nur wenn $module != 1)
int      $rows_update                   Anzahl aktualisierter Datensätze (nur wenn $module != 1)
int      $rows_not_executed             Anzahl übersprungener oder nicht importierter Datensätze
bool     $import_error_cancellation     Wurde Import abgebrochen, weil durch $import_error_percentage definierte Anzahl nicht importierter Datensätze erreicht wurde
double   $import_error_percentage       Prozentsatz an Datensätzen aus CSV-Daten, bei dessen Überschreitung der Import abgebrochen wird

Beispiel:

<?php
 
$crmapi_import = crmapi::import();
 
$module    = 1;
$import_id = "contact_import_1";
$action    = 2;
 
$content = 'Firma;Straße;Ort;Abteilung;Telefon"TecArt GmbH";"Fischmarkt 5";"Erfurt";"Technik";"+4936130262422"';
 
$csv_config = array(
    'delimiter'        => ";",
    'charset'          => 'utf-8',
    'enclosure'        => '"',
    'ticket_section'   => 0,
    'mandator_id'      => 0,
    'cashjournal_id'   => 0,
    'secure_delete'    => 1,
    'skip_first'       => 1
);
 
$assignments = array(
	'contact_company'		=> 0,
	'contact_street'		=> 1,
	'contact_city'			=> 2,
	'contact_department'	=> 3,
	'contact_phone'			=> 4
);
$duplicate_check = array('contact_company', 'contact_city');
 
try {
    $result = $crmapi_import->importCsvString(
		$module,
		$import_id,
		$content,
		$action,
		$csv_config,
		$assignments,
		$duplicate_check
	);
}
catch (CRMException $e) {
    echo $e->getMessage();
}
 
print_r($result);



1.2. getImportLog

(Version >= 4.5)

Syntax:

array getImportLog(int $module, string $import_id, bool $compress)

Beschreibung:

Gibt eine CSV-formatierte Zeichenkette mit Datensätzen zurück, welche während des Import-Vorgangs in $import_id nicht importiert oder übersprungen wurden.

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

$module - ID des Modules, entspricht den Modulen von importCsvString

$import_id - Alphanumerische ID eines Importvorgangs von importCsvString

$compress - komprimierte, base64-kodierte Rückgabe aktivieren

Beispiel:

<?php
$crmapi_import = crmapi::import();
 
$module    = 1;
$import_id = "contact_import_1";
$compress  = 0;
 
try {
    $result = $crmapi_import->getImportLog($module, $import_id, $compress);
}
catch (CRMException $e) {
    $this->assertTrue(true, $e->getMessage());
}
     
print $result;
  • No labels