# ClientWriteProperty\_ManyInputs

## `ClientWriteProperty_ManyInputs` (FB)

FUNCTION\_BLOCK ClientWriteProperty\_ManyInputs

### Kurzbeschreibung

> Aktualisierung von Eigenschaften von BACNET-Objekten ( Schreibender Zugriff )\
> \
> Typische Anwendung: Änderung einer Solltemperatur via BACNET

### Darstellung

<figure><img src="/files/LkOlHieeTiE5PYYkhMEG" alt=""><figcaption></figcaption></figure>

### Schnittstellen

#### Eingänge

| Name                    | Datentyp                                         | Wertebereich | Initialwert                                               | Funktion                                                                                                        |
| ----------------------- | ------------------------------------------------ | ------------ | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| *xEn*                   | BOOL                                             |              | TRUE                                                      | Freigabe / Sperrung der Kommunikation ( TRUE = Freigabe )                                                       |
| ‘itfServer\*            | BACnet.IBACnetServer                             |              |                                                           | Interface-Variable für die Referenzierung des Servers                                                           |
| *eSetpValueMode*        | ClientWriteProperty\_SetpValueMode               |              | ClientWriteProperty\_SetpValueMode.Auto                   | Auswahl der Betriebsart für den Sollwert-Eingang                                                                |
| *ePropertyDataTypeMode* | ClientWriteProperty\_PropertyDataTypeMode        |              | ClientWriteProperty\_PropertyDataTypeMode.Auto            | Auswahl der Betriebsart für den übertragenen Datentyp der Eigenschaft                                           |
| *ePropertyDataType*     | BACnet.CmpBACnet.IEC\_BACNET\_DATA\_TYPE         |              | BACnet.CmpBACnet.IEC\_BACNET\_DATA\_TYPE.DATA\_TYPE\_NULL | Auswahl des übertragenen Datentyps der Eigenschaft in der Betriebsart ePropertyDataTypeMode = ePropertyDataType |
| *rSetpValue*            | REAL                                             |              | 0.0                                                       | Sollwert der Eigenschaft im Format REAL ( Gleitkommazahl gemaess IEEE754 - 32 Bit )                             |
| *xSetpValue*            | BOOL                                             |              | FALSE                                                     | Sollwert der Eigenschaft im Format BOOL                                                                         |
| *sSetpValue*            | STRING\[255]                                     |              | ‘’                                                        | Sollwert der Eigenschaft im Format STRING ( Zeichenkette )                                                      |
| *diSetpValue*           | DINT                                             |              | 0                                                         | Sollwert der Eigenschaft im Format DINT ( 32 BIT, Ganzzahl mit Vorzeichen )                                     |
| *udiSetpValue*          | UDINT                                            |              | 0                                                         | Sollwert der Eigenschaft im Format UDINT ( 32 BIT, Ganzzahl ohne Vorzeichen )                                   |
| *stSetpValue*           | BACnet.CmpBACnet.IEC\_BACNET\_PROPERTY\_CONTENTS |              |                                                           | Sollwert der Eigenschaft im Format IEC\_BACNET\_PROPERTY\_CONTENTS ( Direkte Übergabe an die Schnittstelle )    |
| *xUpdateSetp*           | BOOL                                             |              | FALSE                                                     | Aktualisierung der Sollwerte ( bei jeder ansteigenden Flanke )                                                  |
| *xResError*             | BOOL                                             |              | FALSE                                                     | Rücksetzung des Fehlerausgänge ‘eErrorCodeCom’ und ‘eRepyErrorCode.XXX’ ( bei jeder ansteigenden Flanke )       |

#### Ausgänge

| Name                                                            | Datentyp                                   | Wertebereich | Initialwert | Funktion                                                                                                                                                        |
| --------------------------------------------------------------- | ------------------------------------------ | ------------ | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| *dwDeviceID\_Fb*                                                | DWORD                                      |              | 0           | Nummer des BACnet - Zielgerät ( Bereich: 0 - 4194302 ) - Rückmeldung                                                                                            |
| *dwObjectInstance\_Fb*                                          | DWORD                                      |              | 0           | Nummer des Objekts ( Bereich: 0 - 4194303 ) - Rückmeldung                                                                                                       |
| *eObjectType\_Fb*                                               | BACnet.CmpBACnet.IEC\_BACnet\_Object\_Type |              |             | Typ des Objekts - Rückmeldung                                                                                                                                   |
| *ePropertyType\_Fb*                                             | BACnet.CmpBACnet.IEC\_BACNET\_PROPERTY\_ID |              |             | Typ der Eigenschaft - Rückmeldung                                                                                                                               |
| <p><code>\<br/>\*\<br/></code><br><br>eActPropertyDataType’</p> | BACnet.CmpBACnet.IEC\_BACNET\_DATA\_TYPE   |              |             | BACNET - Datentyp der Eigenschaft, automatische Ermittlung anhand von ‘eObjectType’ und ‘ePropertyType’ ( ePropertyDataTypeMode = Auto )                        |
| <p><code>\<br/>\*\<br/></code><br><br>sInputSetpValue’</p>      | STRING                                     |              | ‘’          | Anzeige des Eingangs für den Sollwert der Eigenschaft                                                                                                           |
| <p><code>\<br/>\*\<br/></code><br><br>xRegToServer’</p>         | BOOL                                       |              | FALSE       | Status der Registrierung am BACnet-Server ( TRUE = erfolgreiche Registrierung )                                                                                 |
| <p><code>\<br/>\*\<br/></code><br><br>xConfigObject’</p>        | BOOL                                       |              | FALSE       | Status der Konfiguration des Objekts ( TRUE = erfolgreiche Konfiguration )                                                                                      |
| <p><code>\<br/>\*\<br/></code><br><br>xSuccTransfer’</p>        | BOOL                                       |              | FALSE       | Status des Erfolgs der Aktualisierung des Sollwerts der Eigenhscfat ( TRUE = Übertragung erfolgreich, ansteigende Flanke nach jeder erfolgreichen Übertragung ) |
| <p><code>\<br/>\*\<br/></code><br><br>eState’</p>               | BACnet.CmpBACnet.IEC\_BACNET\_STATUS       |              |             | Status der Kommunikation                                                                                                                                        |
| <p><code>\<br/>\*\<br/></code><br><br>eErrorCodeCom’</p>        | BACnet.CmpBACnet.IEC\_BACNET\_STATUS       |              |             | Aktuellster Kommunikationsfehler                                                                                                                                |
| <p><code>\<br/>\*\<br/></code><br><br>eReplyErrorCode’</p>      | TYPE\_OF\_REPLY\_ERROR\_CODE               |              |             | Aktuellster Kommunikationsfehler in der Antwort auf eine eigene Anfrage                                                                                         |
| <p><code>\<br/>\*\<br/></code><br><br>xAlarm’</p>               | BOOL                                       |              | FALSE       | Sammelstörung ( TRUE = Störung )                                                                                                                                |
| <p><code>\<br/>\*\<br/></code><br><br>xAlarmCom’</p>            | BOOL                                       |              | FALSE       | Sammelstörung - Kommunikation ( TRUE = Störung )                                                                                                                |
| *xBusy*                                                         | BOOL                                       |              |             | Kommunikationsanzeige ( TRUE = Kommunikation )                                                                                                                  |

#### Sollwerte / Parameter

| Name                 | Datentyp                                   | Wertebereich | Initialwert                                                       | Funktion                                                                                                                                          |
| -------------------- | ------------------------------------------ | ------------ | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| **tTimeUpdateSetp**  | TIME                                       |              | T#0s                                                              | Updateintervall für die Vorgänge, die durch den Eingang ‘xUpdateSetp’ beeinflusst werden ( 0 = kein automatisches Update, > 0 zyklisches Update ) |
| **dwDeviceID**       | DWORD                                      |              | 4096                                                              | Nummer des BACnet - Zielgerät ( Bereich: 0 - 4194302 )                                                                                            |
| **dwObjectInstance** | DWORD                                      |              | 1                                                                 | Nummer des Objekts ( Bereich: 0 - 4194303 )                                                                                                       |
| **eObjectType**      | BACnet.CmpBACnet.IEC\_BACnet\_Object\_Type |              | BACnet.CmpBACnet.IEC\_BACnet\_Object\_Type.OBJ\_ANALOG\_OUTPUT    | Typ des Objekts                                                                                                                                   |
| **ePropertyType**    | BACnet.CmpBACnet.IEC\_BACNET\_PROPERTY\_ID |              | BACnet.CmpBACnet.IEC\_BACNET\_PROPERTY\_ID.PROP\_PRESENT\_VALUE   | Typ der Eigenschaft                                                                                                                               |
| **diWritePriority**  | BACnet.CmpBACnet.IEC\_BACNET\_SIGNED       |              | 16                                                                | Priorität der Eigenschaft ( 1 = höchste, 16 = niedrigste Priorität )                                                                              |
| **ePropertyCharSet** | BACnet.CmpBACnet.IEC\_BACNET\_STRING\_TYPE |              | BACnet.CmpBACnet.IEC\_BACNET\_STRING\_TYPE.BACNET\_STRING\_UTF\_8 | Zeichensatz der Eigenschaft                                                                                                                       |
| **udiTimeoutFB**     | UDINT                                      |              | 5\*1000\*1000                                                     | Zeitdauer des Timeout für die Instanz des FB BACnet.BACnetClientWriteProperty ( in Mikrosekunden, 0 = kein Timeout, CBML ETrigATo )               |
| **rDevPlus**         | REAL                                       |              | 0.0                                                               | Maximale positive Abweichung der Eingangsvariable ‘rSetpValue’ ( Typ: REAL ) vor der Auslösung der Aktualisierung des Sollwerts                   |
| **rDevMinus**        | REAL                                       |              | 0.0                                                               | Maximale negative Abweichung der Eingangsvariable ‘rSetpValue’ ( Typ: REAL ) vor der Auslösung der Aktualisierung des Sollwerts                   |

### Funktionsbeschreibung

#### Allgemeines

Dieser Funktionsbaustein überträgt Sollwerte von Eigenschaften per BACNET-Kummunikation ( schreibender Zugriff ).\
Die Auswahl des Sollwert-Eingangs erfolgt durch den Eingang ‘eSetpValueMode’ ( Default = Auto ).\
Die Auswahl des BACNET-Datentyps erfolgt durch den Eingang ‘ePropertyDataTypeMode’ ( Default = Auto ).\
Am Ausgang ‘eActPropertyDataType’ steht der aktuelle BACNET-Datentyp zur Verfügung.\
Am Ausgang ‘sInputSetpValue’ steht der aktuell ausgewählte Eingang für den Sollwert zur Verfügung.

#### Freigabe / Sperrung der Kommunikation

Die Freigabe / Sperrung der Kommunikation erfolgt über den Eingang ‘xEn’ ( Default = TRUE = Freigabe ).\
Bei jeder ansteigenden Flanke am Eingang ‘xEn’ wird eine Übertragung des Sollwerts mit den aktuellen Einstellungen ausgelöst.\
Im gesperrten Zustand nehmen die Ausgänge ab ‘xRegToServer’ abwärts vordefinierte Zustände ein, gleichzeitig erfolgt eine Abmeldung vom Server.

#### Eingang ‘eSetpValueMode’

Die Betriebsart des Sollwert-Eingangs wird durch diesen Eingang wie folgt ausgewählt. Sie legt den Eingang fest, der auf Veränderungen des\
Sollwerts hin überwacht wird. In der Betriebsart ‘Auto’ wird der Eingang durch den Zustand des Ausgangs ‘eActPropertyDataType’ automatisch\
festgelegt ( durch die Parameter ‘eObjectType’ und ‘ePropertyType’ ). In der Betriebsart ‘Auto’ und gleichzeitiger Betriebsart ePropertyDataTypeMode = ePropertyDataType\
wird automatisch der Eingang ‘stSetpValue’ ausgewählt.

| *eSetpValueMode*        | Funktion                                          | Hinweise                                |
| ----------------------- | ------------------------------------------------- | --------------------------------------- |
| None                    | Auslösung der Übertragung gesperrt                |                                         |
| Auto                    | Auswahl des Eingangs durch ‘eActPropertyDataType’ |                                         |
| rSetpValue              | Handbetrieb - Eingang ‘rSetpValue’                |                                         |
| xSetpValue              | Handbetrieb - Eingang ‘xSetpValue’                |                                         |
| sSetpValue\_String      | Handbetrieb - Eingang ‘sSetpValue’                | Modus: Zeichenkette ( CHAR\_STRING )    |
| sSetpValue\_Bit\_String | Handbetrieb - Eingang ‘sSetpValue’                | Modus: Bit-Zeichenkette ( BIT\_STRING ) |
| diSetpValue             | Handbetrieb - Eingang ‘diSetpValue’               |                                         |
| udiSetpValue            | Handbetrieb - Eingang ‘udiSetpValue’              |                                         |
| stSetpValue             | Handbetrieb - Eingang ‘stSetpValue’               | Direktzugriff auf die Schnittstelle     |

#### Eingang ‘ePropertyDataTypeMode’

Die Betriebsart des BACNET-Datentyps wird durch diesen Eingang wie folgt ausgewählt. Sie legt den BACNET-Datentype fest, der im UDP-Telegramm\
übertragen wird. In der Betriebsart ‘Auto’ wird der BACNET-Datentyp automatisch durch die Parameter ‘eObjectType’ und ‘ePropertyType’ ausgewählt.\
In der Betriebsart ‘ePropertyDataType’ und gleichzeitiger Betriebsart eSetpValueMode = Auto wird automatisch der Eingang ‘stSetpValue’ ausgewählt.

| *ePropertyDataTypeMode* | Funktion                                                                              | Hinweise |
| ----------------------- | ------------------------------------------------------------------------------------- | -------- |
| None                    | Auslösung der Übertragung gesperrt                                                    |          |
| Auto                    | Festlegung des BACNET-Datentyps durch die Parameter ‘eObjectType’ und ‘ePropertyType’ |          |
| ePropertyDataType       | Handbetrieb - Eingang ‘ePropertyDataType’                                             |          |

#### Löschung von Einträgen im Prioritätsarray

Die gewünschte Löschung ( z.B. ist das Arrayelement 16 mit dem Wert 100.0 beschrieben ) der Eintragung einesd Array-Elements wird vorgenommen, indem\
der aktuelle Wert NULL ( = 0 ) ist und der zu übertragende Datentyp auf DATA\_TYPE\_NULL gesetzt wird:\
\
eSetpValueMode = ‘udiSetpValue’\
udiSetpValue = 0\
ePropertyDataTypeMode := ‘ePropertyDataType’\
ePropertyDataType = DATA\_TYPE\_NULL\
\
Nach der erfolgreichen Übertragung ist z.B. das Arrayelement 16 mit dem Wert NULL beschrieben und somit nicht mehr wirksam.

#### Auslösung einer Übertragung

Die Übertragung des Sollwerts der Eigenschaft kann wie folgt ausgelöst ( Voraussetzung: xRegToServer = TRUE )\\

* jede ansteigende Flanke am Eingang ‘xEn’
* jede ansteigende Flanke am Eingang ‘xUpdateSetpn’
* zyklisch im Intervall ‘tTimeUpdateSetp’ ( Default: T#0s )
* einmalig nach jedem Download
* einmalig nach jeder Änderung der Konfiguration
* einmalig nach jeder Änderung am aktiven Eingang

#### Konfiguration des BACNET-Objekts

Das BACNET-Objekt wird durch die folgenden Parameter eindeutig festgelegt:\\

* Geräteadresse ‘dwDeviceID’
* Objektadresse ‘dwObjectInstance’
* Objekttyp ‘eObjectType’
* Eigenschaftstyp ‘ePropertyType’
* Schreibpriorität ‘diWritePriority’
* Timeout für den FB ‘udiTimeoutFB’

#### Eingang ‘rSetpValue’

Die Übertragung des Sollwerts der Eigenschaft wird ausgelöst ( Voraussetzung: xRegToServer = TRUE ), falls die Änderung den\
Parameter ‘rDevPlus’ überschreitet, bzw. den Parameter ‘rDevMinus’ unterschreitet.

#### Eingang ‘stSetpValue’

Bei diesem Eingang handelt es sich um einen Direktzugriff auf die interne Schnittstelle der Übertragung. ( Datentyp = BACnet.CmpBACnet.IEC\_BACNET\_PROPERTY\_CONTENTS )\
Es muss daher im CFC dafür Sorge getragen werden, dass alle Strukturelemente richtig initialisiert werden !!!\
Die Übertragung des Sollwerts der Eigenschaft wird ausgelöst ( Voraussetzung: xRegToServer = TRUE ), falls mindestens eine Änderung in der\
Struktur erkannt worden ist.

#### Ausgang ‘sInputSetpValue’

An diesem Ausgang steht permanent der aktuelle Eingang für den Sollwert als String zur Verfügung.

#### Ausgang ‘xRegToServer’

An diesem Ausgang steht permanent der Status der internen Verbindung zum BACNET-Server zur Verfügung. Der erfolgreiche Verbindungsaufbau zum Server\
ist dabei Voraussetzung zur Übertragung des Sollwerts.

#### Ausgang ‘xConfigObject’

An diesem Ausgang steht permanent der Status der erfolgreichen Konfiguration des BACNET-Objekts zur Verfügung.

#### Ausgang ‘xSuccTransfer’

An diesem Ausgang steht permanent der Status der BACNET-Übertragung zur Verfügung. Nach jeder erfolgreichen Übertragung wird hier\
eine ansteigende Flanke erzeugt.

#### Anzeige von Störungen

Die Anzeige von Störungen erfolgt am Sammelausgang ‘xAlarm’ ( = TRUE ).\
Er beinhaltet hier nur die Kommunikationsstörungen ( Zeitverzögerung: gc\_Parameters.gc\_tOnDelayxAlarmCom, Default = 60s ) ( Ausgang ‘xAlarmCom’ ).\
Am Ausgang ‘eErrorCodeCom’ steht im Falle eines Kommunikationsfehlers ein erklärender Text für die Ursache zur Verfügung. Es wird dort stets die\
Ursache des letzten Kommunikationsfehlers angezeigt.\
Am Ausgang ‘eReplyErrorCode’ steht im Falle eines Fehlers im Antworttelegramm ein erklärender Text für die Ursache zur Verfügung.

#### Ausgang ‘xBusy’

Dieser Ausgang signalisiert die aktive Übertragung des Sollwerts ( = TRUE ).

### Beispiel

<figure><img src="/files/2WruBAXm9UupO3FuYzpe" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/U5pKWZBXBv2NGZDrkf4j" alt=""><figcaption></figcaption></figure>

### CODESYS

InOut:

| Scope       | Name                    | Type                                            | Initial                                                           | Comment                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ----------- | ----------------------- | ----------------------------------------------- | ----------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Input       | `xEn`                   | `BOOL`                                          | TRUE                                                              | Freigabe / Sperrung der Kommunikation ( TRUE = Freigabe )                                                                                                                                                                                                                                                                                                                                                                                           |
| Input       | `itfServer`             | `BACnet.IBACnetServer`                          |                                                                   | Interface-Variable für die Referenzierung des Servers                                                                                                                                                                                                                                                                                                                                                                                               |
| Input       | `eSetpValueMode`        | ClientWriteProperty\_SetpValueMode              | ClientWriteProperty\_SetpValueMode.Auto                           | <p>Auswahl der Betriebsart für den Sollwert-Eingang<br>0 = Keine<br>1 = Automatik-Betrieb ( der Eingang wird automatisch ausgewählt )<br>2 = Hand-Betrieb: Eingang ‘rSetpValue’<br>3 = Hand-Betrieb: Eingang ‘xSetpValue’<br>4 = Hand-Betrieb: Eingang ‘sSetpValue’<br>5 = Hand-Betrieb: Eingang ‘diSetpValue’<br>6 = Hand-Betrieb: Eingang ‘udiSetpValue’<br>7 = Hand-Betrieb: Eingang ‘stSetpValue’ ( Direkte Übergabe an die Schnittstelle )</p> |
| Input       | `ePropertyDataTypeMode` | ClientWriteProperty\_PropertyDataTypeMode       | ClientWriteProperty\_PropertyDataTypeMode.Auto                    | <p>Auswahl der Betriebsart für den übertragenen Datentyp der Eigenschaft<br>0 = Keine<br>1 = Automatik-Betrieb ( der Datentyp wird automatisch ausgewählt )<br>2 = Hand-Betrieb: Eingang ‘ePropertyDataType’</p>                                                                                                                                                                                                                                    |
| Input       | `ePropertyDataType`     | `BACnet.CmpBACnet.IEC_BACNET_DATA_TYPE`         | BACnet.CmpBACnet.IEC\_BACNET\_DATA\_TYPE.DATA\_TYPE\_NULL         | <p>Auswahl des übertragenen Datentyps der Eigenschaft in der<br>Betriebsart ePropertyDataTypeMode = ePropertyDataType</p>                                                                                                                                                                                                                                                                                                                           |
| Input       | `rSetpValue`            | `REAL`                                          | 0.0                                                               | <p>Sollwert der Eigenschaft im Format REAL ( Gleitkommazahl<br>gemaess IEEE754 - 32 Bit )</p>                                                                                                                                                                                                                                                                                                                                                       |
| Input       | `xSetpValue`            | `BOOL`                                          | FALSE                                                             | Sollwert der Eigenschaft im Format BOOL                                                                                                                                                                                                                                                                                                                                                                                                             |
| Input       | `sSetpValue`            | `STRING(255)`                                   | ‘’                                                                | Sollwert der Eigenschaft im Format STRING ( Zeichenkette )                                                                                                                                                                                                                                                                                                                                                                                          |
| Input       | `diSetpValue`           | `DINT`                                          | 0                                                                 | <p>Sollwert der Eigenschaft im Format DINT ( 32 Bit, Ganzzahl<br>mit Vorzeichen )</p>                                                                                                                                                                                                                                                                                                                                                               |
| Input       | `udiSetpValue`          | `UDINT`                                         | 0                                                                 | <p>Sollwert der Eigenschaft im Format UDINT ( 32 Bit, Ganzzahl<br>ohne Vorzeichen )</p>                                                                                                                                                                                                                                                                                                                                                             |
| Input       | `stSetpValue`           | `BACnet.CmpBACnet.IEC_BACNET_PROPERTY_CONTENTS` |                                                                   | <p>Sollwert der Eigenschaft im Format<br>IEC\_BACNET\_PROPERTY\_CONTENTS ( Direkte Übergabe an die<br>Schnittstelle )</p>                                                                                                                                                                                                                                                                                                                           |
| Input       | `xUpdateSetp`           | `BOOL`                                          | FALSE                                                             | <p>Aktualisierung der Sollwerte ( bei jeder ansteigenden Flanke<br>)</p>                                                                                                                                                                                                                                                                                                                                                                            |
| Input       | `xResError`             | `BOOL`                                          | FALSE                                                             | <p>Rücksetzung des Ausgang ‘eError’ ( bei jeder ansteigenden<br>Flanke )</p>                                                                                                                                                                                                                                                                                                                                                                        |
| Output      | `dwDeviceID_Fb`         | `DWORD`                                         |                                                                   | <p>Nummer des BACnet - Zielgerät ( Bereich: 0 - 4194302 ) -<br>Rückmeldung</p>                                                                                                                                                                                                                                                                                                                                                                      |
| Output      | `dwObjectInstance_Fb`   | `DWORD`                                         |                                                                   | Nummer des Objekts ( Bereich: 0 - 4194303 ) - Rückmeldung                                                                                                                                                                                                                                                                                                                                                                                           |
| Output      | `eObjectType_Fb`        | `BACnet.CmpBACnet.IEC_BACnet_Object_Type`       |                                                                   | Typ des Objekts - Rückmeldung                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Output      | `ePropertyType_Fb`      | `BACnet.CmpBACnet.IEC_BACNET_PROPERTY_ID`       |                                                                   | Typ der Eigenschaft - Rückmeldung                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Output      | `eActPropertyDataType`  | `BACnet.CmpBACnet.IEC_BACNET_DATA_TYPE`         |                                                                   | <p>Bacnet-Datentyp der Eigenschaft<br>Automatische Ermittlung anhand von ‘eObjectType’ und ‘ePropertyType’ ( ePropertyDataTypeMode = Auto )<br>Manuelle Vorgabe über den Eingang ‘ePropertyDataType’ ( ePropertyDataTypeMode = ePropertyDataType )<br>Übergabe an das Element ‘tag’ der Struktur IEC\_BACNET\_PROPERTY\_CONTENTS<br>Unmittelbare Übertragung im UDP-Telegramm</p>                                                                   |
| Output      | `sInputSetpValue`       | `STRING`                                        | ‘’                                                                | Anzeige des Eingangs für den Sollwert der Eigenschaft                                                                                                                                                                                                                                                                                                                                                                                               |
| Output      | `xRegToServer`          | `BOOL`                                          |                                                                   | <p>Status der Registrierung am BACnet-Server ( TRUE =<br>erfolgreiche Registrierung )</p>                                                                                                                                                                                                                                                                                                                                                           |
| Output      | `xConfigObject`         | `BOOL`                                          |                                                                   | <p>Status der Konfiguration des Objekts ( TRUE = erfolgreiche<br>Konfiguration )</p>                                                                                                                                                                                                                                                                                                                                                                |
| Output      | `xSuccTransfer`         | `BOOL`                                          | FALSE                                                             | <p>Status des Erfolgs der Aktualisierung des Sollwerts der<br>Eigenhscfat ( TRUE = Übertragung erfolgreich )</p>                                                                                                                                                                                                                                                                                                                                    |
| Output      | `eCBMState`             | `BACnet.CmpBACnet.IEC_BACNET_STATUS`            |                                                                   | <p>CBM - Status der Kommunikation ( Aktualisierung: Zustände<br>DONE, ERROR und ABORT )</p>                                                                                                                                                                                                                                                                                                                                                         |
| Output      | `eComState`             | ClientWriteProperty\_ComStates                  |                                                                   | <p>Status der Kommunikation ( Aktualisierung: Zustände<br>No\_Execution, Target\_Device\_Searching, Request\_Sending,<br>Reply\_Waiting, Finishing )</p>                                                                                                                                                                                                                                                                                            |
| Output      | `eErrorCodeCom`         | `BACnet.CmpBACnet.IEC_BACNET_STATUS`            |                                                                   | Aktuellster Kommunikationsfehler                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Output      | `eReplyErrorCode`       | TYPE\_OF\_REPLY\_ERROR\_CODE                    |                                                                   | <p>Aktuellster Kommunikationsfehler in der Antwort auf eine<br>eigene Anfrage</p>                                                                                                                                                                                                                                                                                                                                                                   |
| Output      | `xAlarm`                | `BOOL`                                          |                                                                   | Sammelstörung ( TRUE = Störung )                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Output      | `xAlarmCom`             | `BOOL`                                          |                                                                   | Sammelstörung - Kommunikation ( TRUE = Störung )                                                                                                                                                                                                                                                                                                                                                                                                    |
| Output      | `xBusy`                 | `BOOL`                                          |                                                                   | Kommunikationsanzeige ( TRUE = Kommunikation )                                                                                                                                                                                                                                                                                                                                                                                                      |
| Input Const | `rDevMinus`             | `REAL`                                          | 0.0                                                               | <p>Maximale negative Abweichung der Eingangsvariable<br>‘rSetpValue’ ( Typ: REAL ) vor der Auslösung der<br>Aktualisierung des Sollwerts</p>                                                                                                                                                                                                                                                                                                        |
| Input Const | `rDevPlus`              | `REAL`                                          | 0.0                                                               | <p>Maximale positive Abweichung der Eingangsvariable<br>‘rSetpValue’ ( Typ: REAL ) vor der Auslösung der<br>Aktualisierung des Sollwerts</p>                                                                                                                                                                                                                                                                                                        |
| Input Const | `udiTimeoutFB`          | `UDINT`                                         | ((5 \* 1000) \* 1000)                                             | <p>Zeitdauer des Timeout für die Instanz des FB<br>BACnet.BACnetClientWriteProperty ( in Mikrosekunden, 0 =<br>kein Timeout, CBML ETrigATo )</p>                                                                                                                                                                                                                                                                                                    |
| Input Const | `ePropertyCharSet`      | `BACnet.CmpBACnet.IEC_BACNET_STRING_TYPE`       | BACnet.CmpBACnet.IEC\_BACNET\_STRING\_TYPE.BACNET\_STRING\_UTF\_8 | Zeichensatz der Eigenschaft                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Input Const | `diWritePriority`       | `BACnet.CmpBACnet.IEC_BACNET_SIGNED`            | 16                                                                | <p>Priorität der Eigenschaft ( 1 = höchste, 16 = niedrigste<br>Priorität )</p>                                                                                                                                                                                                                                                                                                                                                                      |
| Input Const | `ePropertyType`         | `BACnet.CmpBACnet.IEC_BACNET_PROPERTY_ID`       | BACnet.CmpBACnet.IEC\_BACNET\_PROPERTY\_ID.PROP\_PRESENT\_VALUE   | Typ der Eigenschaft                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| Input Const | `eObjectType`           | `BACnet.CmpBACnet.IEC_BACnet_Object_Type`       | BACnet.CmpBACnet.IEC\_BACnet\_Object\_Type.OBJ\_ANALOG\_OUTPUT    | Typ des Objekts                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| Input Const | `dwObjectInstance`      | `DWORD`                                         | 1                                                                 | Nummer des Objekts ( Bereich: 0 - 4194303 )                                                                                                                                                                                                                                                                                                                                                                                                         |
| Input Const | `dwDeviceID`            | `DWORD`                                         | 4096                                                              | Nummer des BACnet - Zielgerät ( Bereich: 0 - 4194302 )                                                                                                                                                                                                                                                                                                                                                                                              |
| Input Const | `tTimeUpdateSetp`       | `TIME`                                          | TIME#0ms                                                          | <p>Updateintervall für die Vorgänge, die durch den Eingang<br>‘xUpdateSetp’ beeinflusst werden</p>                                                                                                                                                                                                                                                                                                                                                  |

Methods:

> CHECK\_BUFFER\_CHANGE

> FB\_Exit

Structure:

* CHECK\_BUFFER\_CHANGE (Method)
* FB\_Exit (Method)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://support.powerio.com/hub/codesys-hvac/hvac-bacnet2-library/funktionsbausteine/client-objekte/clientwriteproperty_manyinputs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
