[TYPO3-german] Anwendung der Ext:phpexcel_service

Johannes C. Laxander jc at laxander.com
Sat Jun 6 11:28:46 CEST 2015


Lieber Renzo,

schön, mal wieder von dir zu lesen! Danke für deine Erklärung.

Da ich nicht nur Excel-Dateien auf der Website darstellen möchte, sondern Daten in eine Excel-Tabelle exportieren muss, muss ich in meiner Extension also Code schreiben. Mein Problem ist im Moment noch, was die Besonderheit eines "Service for TYPO3" ist. In der Doku http://docs.typo3.org/typo3cms/extensions/phpexcel_service/  steht:

"It is very easy to integrate PHPExcel to your projects. The extension provides a service for TYPO3, which helps you to instanciate the PHPExcel library."

Und als Beispiel ist angegeben:

/* @var $phpExcelService/ $phpExcelService = 3::makeInstanceService('phpexcel'); $phpExcel = $phpExcelService->getPHPExcel();

Ich hab das im Controller jetzt mal so umgesetzt:

/**
 * action export cruises to excel sheet
 * 
 * @var $phpExcelService/ 
 * @return void
 */
public function exportExcelAction() {

/* Create new PHPExcel object  */
$phpExcelService = 3::makeInstanceService('phpexcel');
$objPHPExcel = $phpExcelService->getPHPExcel();

Ich konnte es so aber noch nicht testen, weil ich Moment an einem anderen Fehler hängen bleibe: "The action "exportExcel" (controller "Cruise") is not allowed by this plugin". In der ext_localconf.php steht drin:

\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
	'VENDOR' . $_EXTKEY,
	'MyExtension',
	array(
		'Controller' => 'list,searchForm,searchResult,exportExcel',
	),
	// non-cacheable actions
	array(
		'Controller' => '',
	)
); 

Wo also liegt der Fehler? Da komme ich auch ohne Sommerhitze schon ganz schön ins Schwitzen ;)

Gruß, Johannes.

-----Ursprüngliche Nachricht-----
Von: typo3-german-bounces at lists.typo3.org [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von Renzo Bauen
Gesendet: Freitag, 5. Juni 2015 22:15
An: typo3-german at lists.typo3.org
Betreff: Re: [TYPO3-german] Anwendung der Ext:phpexcel_service

Lieber Johannes

PHPExcel ist eine PHP Bibliothek, die dazu dient, Excel-Dateien zu erstellen, zu lesen und zu bearbeiten.
D.h. wenn Du eine Excel-Datei erstellen willst, dann braucht es sowas wie hier
(https://phpexcel.codeplex.com/wikipage?title=Examples&referringTitle=Requirements) auf der Webiste des PHPExcel-Projektes dargestellt.
So wie es aussieht, kommst Du da nicht um eigenen PHP-Code herum. Mit den Beispielen auf der erwähnten Projektseite sollte das aber eigentlich kein Problem sein.
Wenn Du lediglich Excel-Dateien auf deiner Website darstellen willst, ist das aber glaube ich mit Kanonen auf Spatzen geschossen. Da gibt es z.B. die Ext cag_tables, die sowas ohne viel Programmierung kann.

Liebe Grüsse und ein schönes Wochenende
Renzo

--
conPassione gmbh
CH-3661 Uetendorf
+41 33 345 00 92

Am Donnerstag, den 04.06.2015, 11:20 +0200 schrieb Johannes C. Laxander:

> Hallo,
> 
>  
> 
> die Extension installiert die Library PHPExcel und macht sie für TYPO3
> verfügbar. Soweit bin ich dabei. Meine PHP Kenntnisse und Erfahrungen sind
> aber eher bescheiden, und deshalb hakt es im Moment noch bei der Anwendung.
> In der knappen Doku steht folgendes drin:
> 
>  
> 
> ---
> 
> Example: ``` /* @var $phpExcelService/ $phpExcelService =
> 3::makeInstanceService('phpexcel'); $phpExcel =
> $phpExcelService->getPHPExcel();
> 
>  
> 
> // Your excel magic goes here...
> 
>  
> 
> /** @var \PHPExcel_Writer_Excel2007 $excelWriter */
> 
> $excelWriter = $phpExcelService->getInstanceOf('PHPExcel_Writer_Excel2007',
> $phpExcel);
> 
> $excelWriter->save('...');
> 
> ---
> 
>  
> 
> Wie muss ich die Library in mein Extbase Script einbinden, damit ich sie
> nutzen kann?
> 
>  
> 
> <?php
> 
> namespace VENDOR\MyExtension\Controller;
> 
>  
> 
> class CruiseController extends
> \TYPO3\CMS\Extbase\Mvc\Controller\ActionController {
> 
> ...
> 
> /*
> 
> * Daten einlesen die in einem Excel Sheet ausgegeben werden sollen...
> 
> */
> 
> ...
> 
> /*
> 
> * Excel Sheet generieren
> 
> */
> 
> ...???
> 
> }
> 
> ?>
> 
>  
> 
> Wer kann mir hierbei bitte weiterhelfen?
> 
> Johannes.
> 
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german



More information about the TYPO3-german mailing list