Hallo,
habe folgendes Problem. Bastele gerade an einer eigenen Extension und da habe ich kleine Probleme im Backend. Dabei handelt es sich dabei vermutlich um die SelectBox. Meine grobe Struktur:
- Kunden
- Adresse
Dabei möchte ich in der Kundenmaske eine Adressauswahlbox anzeigen. Folgendes habe dazu im TCA hinterlegt:
'adresse' => array (
'exclude' => 1,
'label' => 'LLL:EXT:kunden/locallang_db.xml:tx_kunden.adresse',
'config' => array (
'type' => 'select',
'foreign_table' => 'adresse',
'foreign_table_where' => 'AND adresse.pid='.$confArr['adresse_pid'].' AND adresse.addressgroup='.$confArr['kunden_address_typ'].' ORDER BY adresse.last_name',
'iconsInOptionTags' => 1,
'noIconsBelowSelect' => 1,
'maxitems' => 1,
)
),
Alles soweit so gut. Nur habe ich aber ca. 40000 DS in der Tabelle "adresse".:o Das macht es ja unmöglich den Select zu generieren. Nun meine Frage:
Gibt es ne andere Möglichkeit das anders auswählbar zu gestalten oder eventuell etwas zu cachen. Wäre für jede Idee dankbar.
mfg
schittl
Hi!
Wenn du Kunden und Adressen als verschiedene Elemente (also Tabellen) definiert hast, dann kannst Du die Relation zwischen beiden als DB-Relation modellieren. Im Backend hat man dann die Möglichkeit für einen Kunden Adressen auszuwählen, ähnlich wie dies bei dem Dateiauswahldialog im fileadmin möglich ist.
Hier mal ein kleienr Auszug aus einer eigenen Extension (TCA.php), die zwischen einer Tabelle für Urteile eine Verknüpfung zu einer Tabelle mit Aktenzeichen erstellt:
'aktenzeichen' => array (
'exclude' => 0,
'label' => 'LLL:EXT:qcom_bfh_urteile/locallang_db.xml:tx_qcombfhurteile_urteile.aktenzeichen',
'config' => array (
'type' => 'select',
'foreign_table' => 'tx_qcombfhurteile_aktenzeichen',
'foreign_table_where' => 'ORDER BY tx_qcombfhurteile_aktenzeichen.aktenzeichen',
'size' => 10,
'minitems' => 0,
'maxitems' => 99,
'wizards' => array(
'_PADDING' => 2,
'_VERTICAL' => 1,
'add' => array(
'type' => 'script',
'title' => 'Create new record',
'icon' => 'add.gif',
'params' => array(
'table' => 'tx_qcombfhurteile_aktenzeichen',
'pid' => '###CURRENT_PID###',
'setValue' => 'prepend'
),
'script' => 'wizard_add.php',
),
),
)
CU
maxhb
Danke. Dauert nur noch 30 Sekunden. 🙂
Gibt es noch andere Möglichkeiten. Cachen bzw. nachladen(Limit)?