[OpenSlides users-de] #307 - Automatic numbering of agenda items

Norman Jäckel mail at normanjaeckel.de
Di Mai 21 20:17:06 CEST 2013


Aha, es zeigt sich das Hauptproblem, bei dem wohl die Meinungen
auseinander gehen und über das wir zuerst entscheiden müssen: die Fixierung.

Ich selbst halte irgendeine Art von Fixierung für zwingend. Häufiges
Szenario ist, das eine Versammlung am Anfang auf Vorschlag des Leiters
eine Tagesordnung beschließt, die zunächst (vielleicht) „sauber“
(durch-)nummeriert ist, also keine Zusatzeinträge mit Suffixen enthält.

Kommt es nach dem Versammlungsbeschluss zu Verschiebungen, Einfügungen
oder Löschungen, zum Beispiel durch Geschäftsordnungsanträge, darf sich
die Nummer der bisherigen Elemente einschließlich der zu verschiebenden
auf keinen Fall automatisch ändern.

An diesem Erfordernis sollten sich alle weiteren Überlegungen messen lassen.

(Über mögliche neue Elemente ist damit noch nichts gesagt und der
Manager kann und soll vielleicht auch die Möglichkeit haben, von Hand im
Detail einzugreifen oder zum Ausgangspunkt zurückzukehren.)

Viele Grüße
Norman

Am 21.05.2013 18:48, schrieb Stefan Frauenknecht:
> Hallo Norman,
> 
> du hast völlig Recht. Diese Aufgabe sieht auf dem ersten Blick trivial aus. Der Teufel steckt dann aber im Detail. 
> 
> Deine Fragen:
> 
>> Wie verhält es sich mit den Nummern am Anfang
> 
> Problematisch ist das Verschieben von zusätzlichen Einträgen an den Anfang einer Gliederungsebene. Welche Nummer soll der Punkt bekommen? (Vorschlag siehe unten)
> 
>> und ob und wann kommt es zur Fixierung, ab der das Verschieben der vorhandenen Punkte nicht mehr zu einer Änderung der Nummer führt?
> 
> Die Fixierung der ganzen Agenda ist noch nicht eingebaut. Trotzdem interessante Frage: Soll man nach der Fixierung der Agenda nach einem Umsortieren der Punkte nicht mehr neu nummerieren? Wohl kaum. Also müsste man das Umsortieren nach der Fixierung im jQuery UI verbieten.
> 
>> Kann diese Fixierung wieder aufgehoben werden und welche Folgen soll das haben?
> 
> Nach unserem bisherigem Konzept dürfte das eigentlich nicht sein. Ich denke aber, dass das nicht praktikabel ist. Benutzer machen halt Fehler und müssen diese dann auch beheben können. 
> Und wenn wir das zulassen hat das natürlich Folgen. Aus meiner Sicht wird es dann nämlich richtig wirr. Dann stellt sich die Frage, was der Benutzer mit der Aufhebung der Fixierung bewirken will. Will er einfach einen neuen regulären TO-Punkt hinzufügen? Will er einen bestehenden zusätzlichen Punkt in einen regulären umwandeln? Soll das überhaupt möglich sein?
> 
>> Was passiert mit neuen Tagesordnungspunkten, die erst später (nach oder während einer Fixierung) an irgend einer Stelle erstellt und dann irgendwohin verschoben werden?
> 
> Im Moment ist das kein Problem, die Nummerierung wird einfach neu berechnet. Aus einem 2.7c kann 1.3f werden. Wenn man allerdings einen Punkt an den Anfang einer Gliederungsebene verschiebt, gibt es doch ein Problem mit der Nummerierung.
> 
>>
>> Mit scheint das Problem der zusätzlichen Einträge (solche wie 2.3a) nur aufzutreten, wenn wir wollen, dass nach einer Fixierung erstellte Tagesordnungspunkte wieder einer (der) Automatik unterliegen. Darauf könnte man aber vielleicht verzichten, oder?
> 
> Meinst du, dass nachträglich eingefügte Punkte dann einfach nicht nummeriert werden und der Benutzer dann selber dafür sorgt das dort eine sinnvolle Nummer erscheint? Das ist sicherlich eine Variante, die wir diskutieren sollten.
> 
> Mich stört allerdings die Idee, die Agenda als ganzes fixieren zu können. Mittlerweile frage ich mich, was das dem Benutzer eigentlich ausser Schwierigkeiten bringt. Wir etablieren damit eine Zeitpunktbetrachtung, die in meinen Augen überflüssig ist und nur die Implementierung erschwert. Ich wäre dafür, auf die Fixierung ganz zu verzichten. Stattdessen würde ich vorschlagen, dass das Attribut additional_item (der Klasse Item) immer vom Benutzer setzbar ist. Die Berechnung der Item-Nummer erfolgt dann immer automatisch (siehe unten). Nach meinen Überlegungen ist das der beste Kompromiss zwischen Flexibilität bzw. Handhabbarkeit für den Benutzer, der Einfachheit der Implementierung und der Automatisierung der Nummerierung.
> 
> Bleibt das Problem der Nummerierung eines Items, welches das erste in der Reihe ist. Hier würde ich vorschlagen wie folgt zu verfahren: Wenn der Benutzer ein Item an einer erste Stelle verschiebt, verliert dieses Item die Eigenschaft additional zu sein und erhält die Nummer bspw. 1.1. Alle folgenden Einträge werden entsprechend neu nummeriert. Alternativ könnte ich mir vorstellen, dass das Einfügen an dieser Stelle verboten wird. Ich habe das mal ausprobiert. Leider ohne Erfolg. Die jQuery UI Tabelle scheint an dieser Stelle nicht so flexibel zu sein wie man das bspw. von einer JTable aus Java Swing kennt.
> 
> Grundsätzlich halte ich es auch nicht für besonders gut, viel Logik in den jQuery-Kontet bringen zu müssen. Was auch machen müsste, wenn man die Agenda komplett fixiert. Dann müsste man eigentlich auch das Verschieben von Items verbieten. (Was vermutlich technisch gehen würde)
> 
> 
> Ich fange mal mit ein paar Festlegungen an:
> 
> -> Orga-Items
> 1. Orga-Items werden nicht nummeriert. Da diese Items nach aussen nicht sichtbar sind, würden sie Löcher in der fortlaufenden Nummerierung produzieren.
> 2. Untereinträge von Orga-Items können auch nur Orga-Items sein. Ein Unterpunkt eines Orga-Items kann kein Tagesordnungspunkt sein.
> 
> -> Agenda-Items
> 1. Agenda-Items werden automatisch fortlaufend nummeriert. Format ist 1. - >1.1 -> 1.2 -> 1.3 -> 1.3.1 -> 2. -> 2.1 usw.
> 2. Die Schachtelungstiefe ist beliebig.
> 3. Für die Hauptpunkte (1. 2. 3.) können alternativ römische Zahlen gewählt werden (I. II. III. IV.)
> 4. Fixierte Items erhalten die Nummer des Vorgängers auf der gleichen Gliederungsebene (z.B. 2.3a)
> 5. Fixierte Items, die an erster Stelle auf einer Gliederungsebene eingefügt werden, werden wie normale Agenda-Items behandelt und erhalten die erste Nummer der Ebene (z.B. 2.1).
> 
> 
> So weit, so einfach. Bis auf Punkt 2. Orga-Items und Punkt 5. Agenda-Items funktioniert das jetzt auch so.
> Punkt 2. Orga-Items ist wohl unstrittig.
> Punkt 5. Agenda-Items wäre mein Vorschlag das Nummerierungsproblem zu lösen
> 
> Des Weiteren wäre ich dafür, die komplette Fixierung der Agenda fallen zu lassen.
> 
> 
> 
> Viele Grüße
> Stefan
> 
> 
> .Am 20.05.2013 um 23:03 schrieb Norman Jäckel <mail at normanjaeckel.de>:
> 
>> Lieber Stefan,
>>
>> erstmal vielen Dank für deinen Commit. Konzeptionell ist mir die Sache allerdings noch nicht ganz klar. Können wir vor der weiteren Umsetzung noch mal das genaue Konzept formulieren?
>>
>> Vielleicht können wir dazu eine Wiki-Seite bei Github nutzen.
>>
>> Meine Fragen: Wie verhält es sich mit den Nummern am Anfang und ob und wann kommt es zur Fixierung, ab der das Verschieben der vorhandenen Punkte nicht mehr zu einer Änderung der Nummer führt? Kann diese Fixierung wieder aufgehoben werden und welche Folgen soll das haben? Was passiert mit neuen Tagesordnungspunkten, die erst später (nach oder während einer Fixierung) an irgend einer Stelle erstellt und dann irgendwohin verschoben werden?
>>
>> Mit scheint das Problem der zusätzlichen Einträge (solche wie 2.3a) nur aufzutreten, wenn wir wollen, dass nach einer Fixierung erstellte Tagesordnungspunkte wieder einer (der) Automatik unterliegen. Darauf könnte man aber vielleicht verzichten, oder?
>>
>> Viele Grüße
>> Norman
>>
>> Am 14.05.2013 23:58, schrieb Stefan Frauenknecht:
>>>
>>> Am 14.05.2013 um 20:44 schrieb Emanuel Schütze <emanuel at intevation.de>:
>>>
>>>> Hallo Stefan,
>>>>
>>>> Am 13.05.2013 um 22:43 schrieb Stefan Frauenknecht:
>>>>
>>>>> Ich habe mich mal um die automatische Nummerierung der Agenda Items gekümmert. (https://github.com/OpenSlides/OpenSlides/issues/307)
>>>>
>>>> prima!
>>>>
>>>>> Ich habe noch zwei konzeptionelle Probleme:
>>>>>
>>>>> 1.) Was mache ich mit 'zusätzlichen' Items (z.B. 2.3b), die nachträglich an den Anfang einer Hierarchieebene verschoben werden?
>>>>> Also Item 2.3b wird vor die 2.1 auf der gleichen Ebene verschoben. Grundsätzlich ist es nicht so abwegig am Anfang etwas einfügen zu wollen. Nur wie nummeriere ich diese Items?
>>>>
>>>> Gute Frage. Dazu können doch bestimmt unsere Juristen etwas sagen, was hier übliche Praxis: Norman, Oskar?
>>>>
>>>>
>>>>> 2.) Es ist möglich, dass es reguläre Items als Untereinträge von 'Organisational Items' gibt. Diese erhalten dann für den Benutzer eine verwirrende Nummerierung. Eigentlich ist es klar: Untereinträge von Orga Items müssen auch wieder Orga Items sein. Oder?
>>>>
>>>> Genau: Orga-Items können nur weitere Unter-Orga-Items enthalten.
>>>>
>>>>> Zur Implementierung: Die Nummerierung jedes Items wird aus dem mptt-Modell-Eigenschaften ermittelt. Jedes Item hat ein zusätzliches Attribut (bool) additional_item. Wenn es True ist, erhält das Item die Nummer des Vorgängers auf gleicher Ebene plus einen fortlaufenden Buchstaben. Orga Items erhalten keine Nummerierung.
>>>>
>>>> Ich hab' mal Deinen Branch getestet:
>>>> 'addiontal_item' finde ich etwas irritierend in der Create/Udate-Form, wenn die Nummerierung noch gar nicht fix ist. Ich denke, dass sollte erst angezeigt werden, wenn die Nummerierung nicht mehr verändert werden darf und man trotzdem noch ein Eintrag hinzufügen möchte, oder?. Gibt es eigentlich den "Nummerierung ist fix" Schalter schon?
>>>>
>>>
>>> Ach, den Punkt habe ich vergessen! Nein, den gibt es noch nicht. Ich werde das so machen, dass man die Fixierung nicht wieder aufheben kann. Das additional_item wird dann nur bei Updates angezeigt, nicht beim Create. Das lässt dann das Hintertürchen offen, wenn man doch noch etwas ändern will.
>>>
>>>
>>>>
>>>> Gruß
>>>> Emanuel
>>>>
>>>
>>> Gruß
>>> Stefan
>>>
>>>
>>>
>>>> --
>>>> Emanuel Schütze  |  ++49-541-33 50 83 - 746  |  http://www.intevation.de/
>>>> Intevation GmbH, Neuer Graben 17, 49074 Osnabrück | AG Osnabrück, HR B 18998
>>>> Geschäftsführer: Frank Koormann, Bernhard Reiter, Dr. Jan-Oliver Wagner
>>>>
>>>> _______________________________________________
>>>> OpenSlides users-de mailing list
>>>> users-de at openslides.org
>>>> http://mail.openslides.org/listinfo/users-de
>>>
>>> _______________________________________________
>>> OpenSlides users-de mailing list
>>> users-de at openslides.org
>>> http://mail.openslides.org/listinfo/users-de
>>>
>> _______________________________________________
>> OpenSlides users-de mailing list
>> users-de at openslides.org
>> http://mail.openslides.org/listinfo/users-de
> 
> _______________________________________________
> OpenSlides users-de mailing list
> users-de at openslides.org
> http://mail.openslides.org/listinfo/users-de
> 


More information about the users-de mailing list