Re: [TYPO3-german] MySQL -> TS: Select Where Exists

2016-10-30 Diskussionsfäden Dr. Dieter Porth

Hallo Peter

Am 30.10.2016 um 09:49 schrieb Peter Reinboth:

Hallo  Dr. Dieter Porth & TYPO3-German-NG,

am Freitag, 28. Oktober 2016 schrieb Dr. Dieter Porth:


Ein Tutorial zu Fluid für neue TYPO3-Entwickler/Integratoren, dass
didaktisch gut Fluid für TYPO3 erklärt, ist mir bislang noch nicht
aufgefallen - ich habe aber auch nie intensiv danach gesucht.
Vielleicht
kann jemand aus dem Forum hier einen Tipp geben.
  
Bisher  habe  ich  noch  nicht gelesen, dass man mit FLUID DB Abfragen

erstellen kann.
Was ist für dich Fluid? Wenn du sagst, nur die gehören zum Fluid, dann hast du in jedem Fall recht.


Wenn du aber zubilligst, dass die Extention VHS das Fluid um Viewhelper 
erweiterst, dann hast du unrecht.
Was macht in dem Projekt der viewhelper eine Datenbank-Abfrage per Plugin-Aufruf.
Oder nehme aus der 'vhs' den letztendlich seine Datenbankabfrage
"return reset($GLOBALS['TYPO3_DB']->exec_SELECTgetRows('*', $table, 
$sqlIdField . ' = ' . $sqlId));"

von
'typo3conf\ext\vhs\Classes\ViewHelpers\Resource\Record\AbstractRecordResourceViewHelper.php'
erbt.

Wenn du zulässt, dass auch selbst programmierte Viewhelper Teil des 
FLUID-Konzepts sind, dann kannst du auch selbst mit wenigen Zeilen im 
Viewhelper ein Repository instanzieren und auf die gewünschten 
Datensätze des Repository zugreifen.
So wie der das Ergebnis der Datenbank-Abfrage einer Fluid-Variable zuordnen. Der 
Viewhelper würde eine Lazy-DB-Abfrage machen.


Die Frage ist eher, wie konzeptionell sinnvoll es ist und welche Vor- 
und Nachteile sich aus einem solchen Vorgehen ergeben.
Dafür gibt es bislang, wie schon geschrieben, nach meinem Wissen kein 
Tutorial.


Dieter

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


Re: [TYPO3-german] MySQL -> TS: Select Where Exists

2016-10-30 Diskussionsfäden Dr. Dieter Porth

Hallo Philipp,

mit 'neuen' TYPO3-Entwicklern/Integratoren meinte ich diejenigen, die 
kein oder kaum Vorwissen haben.


Die Website http://www.typo3lexikon.de/typo3-tutorials.html ist 
didaktisch sehr gut, weil Stephan es immer sehr gut schafft, Probleme 
plus Lösung auf ihren didaktisch Kern zu reduzieren. Wenn man großes 
Vorwissen hat, kann man durch Überfliegen schnell die Stelle finden, 
welche einen wirklich interessiert.

Für Fluid ist mir eine ähnlich Seite bislang nicht untergekommen.
Die Dokumentation bei https://fluidtypo3.org/ ist sicher kein didaktisch 
gutes Tutorial. Ich, als Entwickler, schaue lieber in den Code der 
jeweiligen Viewhelper der fluidtypo3-Extensions als mir deren 
Dokumentation anzutun.
Vielleicht ist deswegen auch noch nicht klar geworden, welche 
Templating-Prinzipien sie in dem Projekt verfolgen.


Für eine didaktische Templating-Distribution wäre die Extension DCE 
vielleicht interessant. Die Extension ermöglicht das Anlegen von 
Fluid-Templates im Backend, so dass man den Lernenenden die didaktisch 
interessante Möglichkeit bieten kann, dass gerade in Lektion gelernte 
durch eigene Experimente am Code zu verfestigen. Eine didaktische Gefahr 
sehe ich vor allem darin, dass der Lernende die Extension später im 
Produktivbetrieb einsetzen möchte.

Die Extension verengt TYPO3 zu stark. Nachteile sind:
- dce lässt nur einfache Fluidtemplates zu (rekursives Templating, also 
Partial im Partial im Partial, geht nicht)

- dce als Hemmschuh bei automatischen Deployment (Website-Update),
- dce ohne dataProcessing im Fluid-Template,
- dce zersplittert HTML-Code in Datenbank und Dateien,
- dce ohne template-Fallback ala 'templatepaths.10',
- dce macht einfache Einbindung von Content-Elemente anderer Extensions 
schwierig,

- ...

Du hast aber sicher recht. Wegen unterschiedlicher Wissensstände kann es 
nie DAS EINE Tutorial geben.
In meiner vorherigen Mail wollte ich diplomatisch bleiben. Ich kenne 
bislang überhaupt KEIN Tutorial über gutes Templating mit Fluid, wobei 
dazu bisher nicht bewusst recherchiert habe.



Mit besten Grüßen
   Dieter

Am 29.10.2016 um 18:32 schrieb Philipp Gampe:

Hi Dieter,

Dr. Dieter Porth wrote:


>Ein Tutorial zu Fluid für neue TYPO3-Entwickler/Integratoren, dass
>didaktisch gut Fluid für TYPO3 erklärt, ist mir bislang noch nicht
>aufgefallen - ich habe aber auch nie intensiv danach gesucht. Vielleicht
>kann jemand aus dem Forum hier einen Tipp geben.

Das hängt so stark von deinem Vorwissen ab, da wird es einfach nicht DAS
EINE Tutorial geben.

Grüße


___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] MySQL -> TS: Select Where Exists

2016-10-30 Diskussionsfäden Peter Reinboth
Hallo  Dr. Dieter Porth & TYPO3-German-NG,

am Freitag, 28. Oktober 2016 schrieb Dr. Dieter Porth:

> Ein Tutorial zu Fluid für neue TYPO3-Entwickler/Integratoren, dass 
> didaktisch gut Fluid für TYPO3 erklärt, ist mir bislang noch nicht 
> aufgefallen - ich habe aber auch nie intensiv danach gesucht.
> Vielleicht

> kann jemand aus dem Forum hier einen Tipp geben.
 
Bisher  habe  ich  noch  nicht gelesen, dass man mit FLUID DB Abfragen
erstellen kann.
-- 
Grüße aus Berlin
Peter Reinboth
 
 
 
 
 
 

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


Re: [TYPO3-german] MySQL -> TS: Select Where Exists

2016-10-29 Diskussionsfäden Philipp Gampe
Hi Dieter,

Dr. Dieter Porth wrote:

> Ein Tutorial zu Fluid für neue TYPO3-Entwickler/Integratoren, dass
> didaktisch gut Fluid für TYPO3 erklärt, ist mir bislang noch nicht
> aufgefallen - ich habe aber auch nie intensiv danach gesucht. Vielleicht
> kann jemand aus dem Forum hier einen Tipp geben.

Das hängt so stark von deinem Vorwissen ab, da wird es einfach nicht DAS 
EINE Tutorial geben.

Grüße
-- 
Philipp Gampe – PGP-Key 0AD96065 – LFCS
TYPO3 CMS Certified Integrator – Certified Developer – Active contributor
TYPO3 ... inspiring people to share!

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] MySQL -> TS: Select Where Exists

2016-10-27 Diskussionsfäden Dr. Dieter Porth

Hallo Peter,

TypoScript nutze ich eigentlich nur noch für Menüs und für einige wenige 
Service-Dienste, wenn die Fluid-Varianten zu aufwendig sind.

Anpassen von
http://blog.teamgeist-medien.de/2014/08/datensaetze-aus-einer-mm-tabelle-mit-dem-typoscript-cobject-content-ausgeben.html
in Kombination mit slide=1
https://docs.typo3.org/typo3cms/TyposcriptReference/ContentObjects/Content/Index.html
http://www.typo3wizard.com/de/artikel/das-content-objekt.html
könnte vielleicht dein Problem lösen. Aber das erfordert viel Gefrickel 
und Frustrationstoleranz, da Fehlermeldungen bei TypoScript eher selten sind


Als ich mit TYPO3 angefangen habe, war Fluid gerade neu in TYPO3 
eingefügt worden. Damals gabe es keine Tutorials für Fluid.
Die Dokumentation von 
https://fluidtypo3.org/documentation/templating-manual/introduction.html 
setzt schon Wissen voraus, wie man mit Fluid umgeht.
Ein Tutorial zu Fluid für neue TYPO3-Entwickler/Integratoren, dass 
didaktisch gut Fluid für TYPO3 erklärt, ist mir bislang noch nicht 
aufgefallen - ich habe aber auch nie intensiv danach gesucht. Vielleicht 
kann jemand aus dem Forum hier einen Tipp geben.


Mit besten Grüßen
  Dieter


Am 27.10.2016 um 17:13 schrieb Peter Reinboth:

Hallo  Dr. Dieter Porth & TYPO3-German-NG,

am Donnerstag, 27. Oktober 2016 schrieb Dr. Dieter Porth:


Ich glaube nicht, das TypoScript explizit die exists-Anweisung
unterstützt. Ich würde daher dein Problem vermutlich in eine
Klasse oder
methode auslagern, mit statement die Abfrage auf PHP-Ebene
durchführen
und das Ergebnis über das USER-Object ins TypoScript reinholen,
wenn es
denn unbedingt sein muss.
Wenn du miit Fluid arbeitest, könntest du analog die Abfrage auch
ins
dataprocessing des Fluidtemplate auslagern, und das Ergebnis
direkt in
eine Variable schreiben.
  


Leider  habe ich bisher von PHP und FLUID so gut gar keine Ahnung. Ich
nutze TYPO3 für mich nur privat.
Es gibt doch bestimmt einen Umweg dies zu bewerkstelligen.


___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


[TYPO3-german] MySQL ->TS: select where exists

2016-10-27 Diskussionsfäden Peter Reinboth

Hallo zusammen,

ich möchte gern eine MySQL anweisung in TS abbilden.
Allerdings verstehe ich nicht, wie ich ein Where Exists abbilden kann. Hat da 
jemand einen Tipp für mich?

Konkret geht es um dieses:

SELECT mother.title FROM sys_categoryAS mother
WHERE exists ( SELECT kind.title FROM sys_category   AS kind

INNER JOIN sys_category_record_mmAS record   ON (kind.uid   = 
record.uid_local)

INNER JOIN tx_news_domain_model_news AS news ON (record.uid_foreign = 
news.uid)

WHERE record.tablenames = 'tx_news_domain_model_news'

AND kind.parent   = mother.uid

AND kind.hidden   = 0

AND kind.deleted  = 0

AND kind.pid  IN (53,58,57,56,55,54)

AND news.hidden   = 0

AND news.deleted  = 0

)
AND mother.parent   = 0
AND mother.hidden   = 0
AND mother.deleted  = 0
AND mother.pid  IN 
(53,58,57,56,55,54)
order by mother.sorting
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] MySQL -> TS: Select Where Exists

2016-10-27 Diskussionsfäden Peter Reinboth
Hallo  Dr. Dieter Porth & TYPO3-German-NG,

am Donnerstag, 27. Oktober 2016 schrieb Dr. Dieter Porth:

> Ich glaube nicht, das TypoScript explizit die exists-Anweisung 
> unterstützt. Ich würde daher dein Problem vermutlich in eine
> Klasse oder

> methode auslagern, mit statement die Abfrage auf PHP-Ebene
> durchführen

> und das Ergebnis über das USER-Object ins TypoScript reinholen,
> wenn es

> denn unbedingt sein muss.

> Wenn du miit Fluid arbeitest, könntest du analog die Abfrage auch
> ins 

> dataprocessing des Fluidtemplate auslagern, und das Ergebnis
> direkt in

> eine Variable schreiben.
 

Leider  habe ich bisher von PHP und FLUID so gut gar keine Ahnung. Ich
nutze TYPO3 für mich nur privat.
Es gibt doch bestimmt einen Umweg dies zu bewerkstelligen.
-- 
Grüße aus Berlin
Peter Reinboth
 
 
 
 
 
 

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


Re: [TYPO3-german] MySQL -> TS: Select Where Exists

2016-10-27 Diskussionsfäden Dr. Dieter Porth

Hi Peter,

Du möchtest also die Titel alle Oberkategorien haben, deren Nachfolger 
in Neuigkeiten verwendet werden.  Wenn es unbedingt Typoscript sein 
muss, würde ich mich mit 'slide' beschäftigen. Wahrscheinlich gibt es 
ein Configuration, die deinen Ansprüchen genügt.


Ich glaube nicht, das TypoScript explizit die exists-Anweisung 
unterstützt. Ich würde daher dein Problem vermutlich in eine Klasse oder 
methode auslagern, mit statement die Abfrage auf PHP-Ebene durchführen 
und das Ergebnis über das USER-Object ins TypoScript reinholen, wenn es 
denn unbedingt sein muss.


Wenn du miit Fluid arbeitest, könntest du analog die Abfrage auch ins 
dataprocessing des Fluidtemplate auslagern, und das Ergebnis direkt in 
eine Variable schreiben.


Mit besten Grüßen
 Dieter


Am 27.10.2016 um 14:44 schrieb Peter Reinboth:

Hallo TYPO3-German-NG,

ich möchte gern eine MySQL Abfrage in TS portieren.
Allerdings  scheitere  ich  schon  am  Anfang. Ich habe bisher im Netz
keinen Hinweis gefunden, wie man ein Select Where Exists in TypoScript
abbildet.
Kann mir da bitte jemand weiterhelfen?

Konkret geht es um folgende SQL Abfrage:
SELECT mother.title FROM sys_categoryAS mother
 WHERE exists ( SELECT kind.title FROM sys_category   AS kind

 INNER JOIN sys_category_record_mmAS record   ON (kind.uid   = 
record.uid_local)

 INNER JOIN tx_news_domain_model_news AS news ON (record.uid_foreign = 
news.uid)

 WHERE record.tablenames = 'tx_news_domain_model_news'

 AND kind.parent   = mother.uid

 AND kind.hidden   = 0

 AND kind.deleted  = 0

 AND kind.pid  IN (53,58,57,56,55,54)

 AND news.hidden   = 0

 AND news.deleted  = 0

 )
 AND mother.parent   = 0
 AND mother.hidden   = 0
 AND mother.deleted  = 0
 AND mother.pid  IN 
(53,58,57,56,55,54)
 order by mother.sorting



___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


[TYPO3-german] MySQL -> TS: Select Where Exists

2016-10-27 Diskussionsfäden Peter Reinboth
Hallo TYPO3-German-NG,

ich möchte gern eine MySQL Abfrage in TS portieren.
Allerdings  scheitere  ich  schon  am  Anfang. Ich habe bisher im Netz
keinen Hinweis gefunden, wie man ein Select Where Exists in TypoScript
abbildet.
Kann mir da bitte jemand weiterhelfen?

Konkret geht es um folgende SQL Abfrage:
SELECT mother.title FROM sys_categoryAS mother
WHERE exists ( SELECT kind.title FROM sys_category   AS kind

INNER JOIN sys_category_record_mmAS record   ON (kind.uid   = 
record.uid_local)

INNER JOIN tx_news_domain_model_news AS news ON (record.uid_foreign = 
news.uid)

WHERE record.tablenames = 'tx_news_domain_model_news'

AND kind.parent   = mother.uid

AND kind.hidden   = 0

AND kind.deleted  = 0

AND kind.pid  IN (53,58,57,56,55,54)

AND news.hidden   = 0

AND news.deleted  = 0

)
AND mother.parent   = 0
AND mother.hidden   = 0
AND mother.deleted  = 0
AND mother.pid  IN 
(53,58,57,56,55,54)
order by mother.sorting

-- 
Grüße aus Berlin
Peter Reinboth
 
 
 
 
 
 

___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german