Menü

Login

Aktuelle Version

Forum > Sitzplanänderungen nach Sitzplaneröffnung *

DOTLAN Intranet / Portal >> Probleme und Fehler > Sitzplanänderungen nach Sitzplaneröffnung
Antwort erstellen
Autor Thema: Sitzplanänderungen nach Sitzplaneröffnung
Jonnyblue
08.02.2009 um 23:00 QuoteProfileSend PM
NEW

Clan: Empfinger Session Club e.V.
Postings: 6

Wir haben mit 300 Usern unsere LAN geplant und dementsprechend auch den Sitzplan gestaltet. Nun wollen wir noch knapp 40 Leute mehr rein lassen, da
1. der Ansturm sehr groß ist und
2. wir noch einige Tische auftreiben konnten

Daher sollte unserem vorhandenen Sitzplan jeweils 2 Plätze bei jeder Reihe hinzugefügt werden.

Ich habe jetzt hier im Forum gesehen, dass es mit SQL gehen sollte, allerdings war da kein sicher funktionierendes Script.

Ich wollte daher fragen was wohl die beste Methode ist um die zusätzlichen Reihen zu implementieren?

- Einen extra Sitzplan dazu mit Übersichtsseite
- Per SQL umscripten
- Von hand alle 171 User umsetzen
- ??? andere Idee

Zur Veranschaulichung des ganzen: http://www.esc-lan.de/dotlan/party/?do=sitzplan
Und es soll nach Platz 16 vor Platz 17 noch zwei Plätze rein, also quasi ein Tisch pro Reihe.

Über vorschläge bin ich jetzt schon sehr dankbar!
 
Griffon
13.02.2009 um 17:27 QuoteProfileSend PM

NEW

Clan: dotlan.net
Postings: 1252

Ja dsa nachträgliche Verändern des Grundplans ist etwas tricky. Aber grundsätzlich mit etwas SQL arbeit machbar. Man muss sich den Plan als riesiges Schachbrett vorstellen. mit X/Y Koordinaten (event_sitzplatz ->col/row). Dazu gibt es eine Plan Definition die sagt wie groß der Plan wirklich ist (event_sitzplan cols/rows)

Im Prinzip geht das wie nun wie folgt.

1) Backup machen

2) Dimensionen ändern
UPDATE event_sitzplan SET rows=rows+4 WHERE id=123

3) Platz machen
UPDATE event_sitzplatz SET rows=rows+4 WHERE rows>30 AND block=123

4) Reihen duplizieren
INSERT INTO event_sitzplan SELECT NULL, block, 30, col, type, status, grp, nr, 0 FROM event_sitzplatz WHERE block=123 AND row=26;
INSERT INTO event_sitzplan SELECT NULL, block, 31, col, type, status, grp, nr, 0 FROM event_sitzplatz WHERE block=123 AND row=27;
INSERT INTO event_sitzplan SELECT NULL, block, 32, col, type, status, grp, nr, 0 FROM event_sitzplatz WHERE block=123 AND row=28;
INSERT INTO event_sitzplan SELECT NULL, block, 33, col, type, status, grp, nr, 0 FROM event_sitzplatz WHERE block=123 AND row=29;

4) Plan über Sitzplan Verwaltung mit Beschriftung und Sitzplätzen füllen.

Wer will kann den Plan auch schon direkt in die DB schreiben wie er aussehen soll. Infüs zu den Elemten (Type/Status) finden sich in der sitzplan_db.txt im Dotlan Paket.

Wie gesagt. Backup nicht vergessen. Und achtet ganz genau darauf was ihr macht. Ein Wenig SQL Wissen sollte schon vorhanden sein.

-------

Warum habe ich das nicht direkt mit in die GUI eingebaut? Weil mir die Gefahr zu groß war das ein unvorsichtiger Admin komplette Reihen löscht und damit im schlimmsten Falle Teile oder alle Reservierungen gelöscht werden könnten.

[Editiert von Griffon am 13.Feb.2009 um 17:27]
 
[ Antwort erstellen ]