Durch Formular Raumstempel neue Eigenschaft geben

Fragen, Anmerkungen und Hilfestellung zu DESITE MD/CUSTOM/SHARE

Durch Formular Raumstempel neue Eigenschaft geben

Beitragvon Matthias Heidecker » Fr 6. Jul 2018, 07:33

Hallo, ich versuche durch ein Formular jedem Raumstempel eine neue Eigenschaft zugeben.

In meinem Formular wählt der Nutzer durch auswählen von Checkboxen Gewerke aus.
Diese Checkboxen sind vorher aus einem Array erzeugt worden.
-siehe Code unten-

Nun sollen alle Raumstempel des gesamten Bauwerks beim clicken eines Buttons (weiter) eine Eigenschaft erhalten mit dem Namen des ausgewählten Gewerkes und dem Wert „nicht erledigt“

Dafür möchte ich erst alle Raumstempel auswählen. Durch Filtern nach ArchiCADProperties:Oberfläche; mit dem Wert Raumstempel.
Und diesen eine neue Eigenschaft mit dem Namen der ausgewählten
Checkbox (Gewerk) und dem Wert „nicht erledigt“ hinzugefügt:


Hat jemand einen Code, der ähnliches macht oder kann mir jemand die ersten Schritte und die richtigen API durchgeben?

Code: Alles auswählen
<script>
    };
    var meineGewerke = ["Erdarbeiten",
                        "Landschaftsbauarbeiten",
                        "Mauerarbeiten",
                        "Beton- und Stahlbetonarbeiten",
                        "Gerüstarbeiten",
                        "Febsterbarbeiten",
                        "Verglasungsarbeiten",
                        "Trockenbauer-Wand"];

var i;
for (i = 0; i < meineGewerke.length; i++) {
document.write('<input type="checkbox" id="myCheck'+i+'" name="gewerk-'+i+'" value="gewerk-'+i+'">'+meineGewerke[i]+'<br>');
}
document.write('<input type="button" id="auswerten" value="weiter"><div id="ausgabe">Hier erscheint die Ausgabe</div>');
document.write("<table>");
</script>
Matthias Heidecker
 
Beiträge: 3
Registriert: Fr 1. Jun 2018, 10:33

Re: Durch Formular Raumstempel neue Eigenschaft geben

Beitragvon jochen.hanff » So 8. Jul 2018, 15:06

hallo,
zunächst würde ich empfehlen das formular dynamisch mit jQuery aufzubauen (select).
das setzen von attributwerten kann man mit der methode desiteAPI.setPropertyValue() machen.
man muss dazu den ID des objekts, das attribut (name/datentyp) und den wert übergeben.
http://cloud.ceapoint.com/html-api-2.2/ ... f927cc1f9e
die objekte kann man in einem iterator speichern. einen iterator kann man aus einem filter erzeugen.
http://cloud.ceapoint.com/html-api-2.2/ ... 211bf1f70b
gruß
jh
jochen.hanff
 
Beiträge: 163
Registriert: Do 4. Dez 2014, 18:46
Wohnort: Essen


Zurück zu DESITE MD / CUSTOM / SHARE

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste

cron