---
title: "Datensätze per RECORD einlesen und an bestimmter Stelle splitten"
url: "https://www.typo3.net/d/87236-datensaetze-per-record-einlesen-und-an-bestimmter-stelle-splitten"
source: "typo3.net"
tags: ["TYPO3","TypoScript","Frage"]
created: "2009-02-24"
last_reply: "2009-03-11"
replies: 2
solved: false
page: 1
pages: 1
lang: "de"
---

# Datensätze per RECORD einlesen und an bestimmter Stelle splitten

TYPO3 › TypoScript · 2 Antworten · gestartet 2009-02-24

## Eröffnungsbeitrag

**nk36** · 2009-02-24 · [Beitrag #1](https://www.typo3.net/d/87236-datensaetze-per-record-einlesen-und-an-bestimmter-stelle-splitten/1)

hallo,
ich lese die Datensätze einer bestimmten Tabelle per Typoscript aus und will gerne nach jedem Xten Datensatz einen neuen Div-Container beginnen. Ist das über Typoscript möglich und wenn wie?
zur Veranschaulichung mal ein Beispiel:
reguläre Ausgabe

```html
<div class="box">
  <p>Titel 1</p>
  <p>Titel 2</p>
  <p>Titel 3</p>
  <p>Titel 4</p>
</div>
```

So will ich es gerne haben:

```html
<div class="box">
  <p>Titel 1</p>
  <p>Titel 2</p>
</div>
<div class="box">
  <p>Titel 3</p>
  <p>Titel 4</p>
</div>
```

die Datensätze lese ich über RECORDS:

```typoscript
20= RECORDS
20.wrap = <div class="box">|</div>
20.source.current=1
20.tables = tt_content
20.conf.tt_content = COA
20.conf.tt_content {
# ...
}
```

kann ich irgendwie den Index der aktuellen Reihe auslesen?
dann würde das wahrscheinlich über if abfragen klappen

Danke!

## Antworten

### [#2](https://www.typo3.net/d/87236-datensaetze-per-record-einlesen-und-an-bestimmter-stelle-splitten/2) · kraftb · 2009-02-26

Hallo !

Ja. Das sollte klappen (ungetestet) - wenn du zum beispiel folgerndermassen deinen Inhalt ausgibst (im RECORDS objekt):

```typoscript
20.conf.tt_content = COA
20.conf.tt_content {
	dataWrap = <p>{field:title}</p>
}
```

dann solltest du mit folgender änderung ein bei 1 beginnende nummerierung erhalten:

```typoscript
dataWrap = <p>{cobj:parentRecordNumber}: {field:title}</p>
```

nun könntest du "klug" mit prioriCalc und dem modulo operator "%" (siehe "Modulo" auf wikipedia) nach jedem "xten" element ein neues div beginnen. ca. so (ungetestet):

```typoscript
20 = RECORDS
20 {
	tables = tt_content
	wrap = <div class="box">|</div>
	source.current=1
	conf.tt_content = COA
	conf.tt_content {
		prepend = TEXT
		prepend {
			value = </div><div class="box">
			# wenn z.B. das 3. Element ausgegeben wird (parentRecordNumber = 3)
			# dann ergibt: (3-1) = 2 ... und 2 % 2 == 0
			if.isFalse.dataWrap = ({cobj:parentRecordNumber}-1) % 2
			if.isFalse.prioriCalc = intval
			# jedoch nicht beim allerersten objekt (parentRecordNumber = 1) ausführen
			# denn: (1-1) % 2 => 0 ..
			# also: parentRecordNumber > 1
			if.isGreaterThan.data = parentRecordNumber
			if.value = 1
		}
		dataWrap = <p>|</p>
	} 
}
```

Wie gesagt: ungetestet - aber das wäre die Lösung die ich wählen würde. Eventuell bedard das "if" konstrukt im "prepend" etwas finetuning. Im Prinzip wird halt nur nachgesehen - ist die aktuelle position durch zwei teilbar (oder besser gesagt - das element vor der aktuellen position (-1) - und wenn dies der fall ist, wird VOR dem aktuellen <p>|</p> noch ein </div><div class="box"> eingefügt ...

und da das ganze ja sowieso in einem wrap = <div class="box">|</div> sitzt, passt es auch mit dem <div> davor und danach ...  8-)

grüsse,
Bernhard

### [#3](https://www.typo3.net/d/87236-datensaetze-per-record-einlesen-und-an-bestimmter-stelle-splitten/3) · nk36 · 2009-03-11

hi,
nun komm ich endlich zum testen.
Es klappt nicht auf anhieb (jedes element wird nun mit der div.box gewrappt), aber du hast mir mit cobj:parentRecordNumber schon sehr geholfen!
ich werd da jetzt mal ein bisschen rumprobieren.
danke!

ps. auch fuer deine wunderbare kb_shop extension!!

---

Quelle: „Datensätze per RECORD einlesen und an bestimmter Stelle splitten“, typo3.net, https://www.typo3.net/d/87236-datensaetze-per-record-einlesen-und-an-bestimmter-stelle-splitten
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
