Item value not showing on sitemap

So I am on OpenHAB v3.2.0 on OpenSUSE 15.3 (Raspberry Pi 4B) and I have created a new item:

openhab> openhab:items list WxTemperatureTrend                                                                                                                                                                                                                                
WxTemperatureTrend (Type=NumberItem, State=-0.07 °C, Label=Outside temperature trend, Category=temperature, Tags=[Temperature, Point], Groups=[WxCurrent])

…and a rule to update its value (uses JavaScript binding):

configuration: {}
triggers:
  - id: "1"
    configuration:
      itemName: WxCurrent_Current_Temperature
    type: core.ItemStateChangeTrigger
  - id: "2"
    configuration:
      itemName: WxForecast_ForecastHours03_Temperature
    type: core.ItemStateChangeTrigger
conditions: []
actions:
  - inputs: {}
    id: "3"
    configuration:
      type: application/javascript;version=ECMAScript-2021
      script: >
        function main () {
            const v1 = items.getItem("WxForecast_ForecastHours03_Temperature").rawState;
            const v0 = items.getItem("WxCurrent_Current_Temperature").rawState;
            const diff = v1 - v0;
            const hours = 3; // Difference between forecast and current timestamps
            const trend = Math.round((diff/hours)*100)/100;
            items.getItem("WxTemperatureTrend").postUpdate(trend);
        };


        main();
    type: script.ScriptAction

Here’s just the script, with proper highlighting:

function main () {
    const v1 = items.getItem("WxForecast_ForecastHours03_Temperature").rawState;
    const v0 = items.getItem("WxCurrent_Current_Temperature").rawState;
    const diff = v1 - v0;
    const hours = 3; // Difference between forecast and current timestamps
    const trend = Math.round((diff/hours)*100)/100;
    items.getItem("WxTemperatureTrend").postUpdate(trend);
};

main();

The problem is that, as may be seen in the screenshot, the value is not showing in my sitemap:

This is roughly what the sitemap looks like:

sitemap default {
    Frame label="Environment" {
        Group label="Current weather" item=WxCurrent_Current_Temperature icon="sun_clouds" {
            Text item=WxCurrent_Current_Temperature label="Temperature"
            Text item=WxTemperatureTrend
            Text label="Humidity" item=WxCurrent_Current_Humidity
            Text label="Pressure" item=WxCurrent_Current_Pressure
            Text item=WxCurrent_Current_Windspeed label="Wind speed"
            Text item=WxCurrent_Current_Winddirection label="Wind direction"
            Text item=WxCurrent_Current_Cloudiness label="Clouds"
            Text item=WxCurrent_UVIndex label="UV index"
            Text item=WxCurrent_Current_Condition label="Condition"
            Text item=WxCurrent_ObservationTime
        }

Any ideas what might be going on? I’m at a loss.

Add state description metadata and define a pattern

1 Like

Thanks! That was it.

Items → WxTemperatureTrend → Edit → Add Metadata → State Description:

value: " "
config:
  pattern: "%.2f °C/hr"
  readOnly: true

:relaxed::relaxed::relaxed: