[TYPO3-german] typoscript Abfrage über zwei Tabellen

Johannes C. Schulz - EnzephaloN IT-Solutions info at enzephalon.de
Thu Mar 27 14:55:51 CET 2014


Hui, das war kompliziert. Es könnte bestimmt auch einfacher gehen, aber hier
die Lösung:

temp.wr < page.headerData.10.wrap

page.headerData.10 >
page.headerData.10 = CONTENT
page.headerData.10 {
  table = tx_eventcal_domain_model_date
  select{
    pidInList = 34
    where = 1=1
    andWhere.data = GP:tx_eventcal_calendar|date
    andWhere.intval = 1
    andWhere.wrap = uid=|
    selectFields = event
    max = 1
  }
  renderObj = COA
  renderObj{
    10 = RECORDS
    10{
      source.field = event
      tables = tx_eventcal_domain_model_event
      conf.tx_eventcal_domain_model_event = TEXT
      conf.tx_eventcal_domain_model_event.field = title
    }
  }
  wrap < temp.wr
}

Ich sichere als erstes den Wrap und lösche dann das Objekt 10.
Danach wird ein neues Objekt 10 als Content erstellt, dessen Ausgabe dann
der title aus der entsprechenden Datenbanktabelle ist.
Am Ende wrappe ich den gespeicherten Wrap wieder um das Objekt 10.

Der vorherige Code konnte wohl nicht klappen, da ich em Objekt-Pfad
"...override" einen CONTENT-Typ geben wollte...

Johannes


-----Ursprüngliche Nachricht-----
Von: typo3-german-bounces at lists.typo3.org
[mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von Johannes C.
Schulz - EnzephaloN IT-Solutions
Gesendet: Donnerstag, 27. März 2014 14:40
An: 'German TYPO3 Userlist'
Betreff: Re: [TYPO3-german] typoscript Abfrage über zwei Tabellen

Hi Joey

Danke für die Tipps. Ich habe den Code geändert, leider aber immer noch
keine Ausgabe:

page.headerData.10.override = CONTENT
page.headerData.10.override {
  table = tx_eventcal_domain_model_date
  select{
    pidInList = 34
    where = 1=1
    andWhere.data = GP:tx_eventcal_calendar|date
    andWhere.intval = 1
    andWhere.wrap = uid=|
    selectFields = event
  }
  cObject = RECORDS
  cObject{
    source.field = event
    tables = tx_eventcal_domain_model_event
    conf.tx_eventcal_domain_model_event = TEXT
    conf.tx_eventcal_domain_model_event.field = title
  }
}

Die Datensätze liegen also in Seite 34 - ich dachte die Angabe der Tabelle
würde reichen.
Das "where = deleted=0" bzw jetzt "where = 1=1" brauche ich, damit das where
gefüllt ist - weglassen kann mans imho nicht.

Jedenfalls funktioniert es leider immer noch nicht :-(

Grüße
Johannes

-----Ursprüngliche Nachricht-----
Von: typo3-german-bounces at lists.typo3.org
[mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von JoH asenau
Gesendet: Donnerstag, 27. März 2014 14:33
An: typo3-german at lists.typo3.org
Betreff: Re: [TYPO3-german] typoscript Abfrage über zwei Tabellen

Am 27.03.2014 14:12, schrieb Johannes C. Schulz - EnzephaloN IT-Solutions:
> Hallo
>
> Sorry, hab gerade einen Fehler gesehen. Der nicht funktionierende Code 
> sieht wie folgt aus:
>
> page.headerData.10.override = CONTENT
> page.headerData.10.override {
>    table = tx_eventcal_domain_model_date
>    select{
>      where = deleted=0

Auf welcher Seite liegen denn die Datensätze?
select nutzt pidInList, was per Default auf "this" steht. Das wäre dann die
aktuelle Seite, was aber vermutlich bei Dir nicht der Fall ist.

Außerdem ist deleted = 0 nicht nötig, weil CONTENT meines Wissens nach nur
sichtbare nicht gelösche Elemente auswählbar macht.

HDH

Joey

--
Wenn man keine Ahnung hat: Einfach mal Fresse halten!
(If you have no clues: simply shut your gob sometimes!) Dieter Nuhr, German
comedian
Xing: http://contact.cybercraft.de
Twitter: http://twitter.com/bunnyfield
TYPO3 cookbook (2nd edition): http://www.typo3experts.com
_______________________________________________
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