diff --git a/fhem/FHEM/98_structure.pm b/fhem/FHEM/98_structure.pm
index 8cbf3afb6..969f3662f 100755
--- a/fhem/FHEM/98_structure.pm
+++ b/fhem/FHEM/98_structure.pm
@@ -375,6 +375,10 @@ structure_Set($@)
my @devList = split("[ \t][ \t]*", $hash->{DEF});
shift @devList;
+ if(@list > 1 && @list[$#list] eq "reverse") {
+ pop @list;
+ @devList = reverse @devList;
+ }
foreach my $d (@devList) {
next if(!$defs{$d});
if($defs{$d}{INSET}) {
@@ -553,9 +557,13 @@ structure_Attr($@)
Every set command is propagated to the attached devices. Exception: if an
attached device has an attribute structexclude, and the attribute value
matches (as a regexp) the name of the current structure.
- If the set is of the form set <structure> [FILTER=<filter>] <type-specific>
- then :FILTER=<filter> will be appended to the device name in the propagated set for
- the attached devices like this: set
+ If the set is of the form set <structure>
+ [FILTER=<filter>] <type-specific> then
+ :FILTER=<filter> will be appended to the device name in the
+ propagated set for the attached devices like this: set
+
+ If the last set parameter is "reverse", then execute the set commands in
+ the reverse order.
@@ -719,10 +727,14 @@ structure_Attr($@)
set <structure> [FILTER=<filter>] <type-specific>
- wird :FILTER=<filter> bei der Weitergebe der set an jeden Devicenamen wie folgt angehängt:
- set :FILTER=<filter> <type-specific>
+ dessen Attributwert matched als Regexp zum Namen der aktuellen
+ Struktur.set
+ <structure> [FILTER=<filter>] <type-specific> wird
+ :FILTER=<filter> bei der Weitergebe der set an jeden Devicenamen wie
+ folgt angehängt: set :FILTER=<filter>
+ <type-specific>