Guten Morgen liebe Community,
ich habe seit 2-3 Tagen ein, eigentlich relativ einfaches, Problem. Ich habe eine Extension über den Extension Builder in Typo3 Version 7.6.4 erstellt. Nun greife ich über die Funktion "createAction" des Controllers "ActivityController" auf die Funktion "createNewActivity" das Repositories "ActivityRepository" zu.
(Funktion createAction im Controller ActivityController)
public function createAction(\XYZ\crm\Domain\Model\Activity $newActivity)
{
$customer = $this->request->getArgument('customer');
$this->activityRepository->createNewActivity($newActivity->getType(), $newActivity->getContent(), $customer);
//$this->activityRepository->add($newAcitivity);
$this->redirect('list', 'Acitivity', NULL, array('customer' => $customer), NULL, NULL, 303);
}
(Funktion createNewActivity im ActivityRepository)
public function createNewActivity($type, $content, $customer) {
$query = $this->createQuery();
$sql = "INSERT INTO tx_crm_domain_model_activity
(pid, customer, type, content) VALUES
(12, 3, 2, 'Content_')";
$query->statement($sql);
$result = $query->execute();
return $result;
}
Soweit so gut. Nun enthält die Funktion "createNewActivity" im Repository "ActivityRepository" ein INSERT INTO-Query. Jedoch wird dieses nicht ausgeführt. Ich bekomme weder eine Fehlermeldung, noch wird der Eintrag in der Datenbank erstellt. Die Funktion wird korrekt ausgeführt, echos innerhalb der createNewActivity Beispielsweise werden angezeigt.
Ich weiß, dass die Variante "plain SQL" unter Umständen unsauber ist. Und ich weiß auch, dass die Funktion createNewActivity nicht mit den Übergabeparametern arbeitet. Das ist jedoch dem Umstand verschuldet, dass ich diese als Fehlerquelle ausschließen wollte.
Könnt ihr mir eventuell helfen und sagen was das Problem ist? Da ich mir keinerlei Fehlermeldung ausgeben lassen kann bin ich relativ ratlos.
[edit:] Das Query als solchen kann Problemlos direkt auf der DB ausgeführt würden. Demnach ist kein Tippfehler im SQL die Ursache.