LUA och strängar med blanksteg

Utvecklar du en smartphone-app? Datorprogramvara? Få hjälp av andra och bidra med dina egna erfaranheter.
Post Reply
KristianO
Medlem
Posts: 461
Joined: 10 Mar 2014, 09:50
10

He fastnat i en säkert helt banal grej. Försöker lägga ett IF villkor mot en sträng som har ett mellanslag och får inte det att funka.

IF (devicename == "Hall lampa") then

Får ingen "träff" trots att en rad ovanför med Fibaro:debug(devicename) ger just "Hall lampa".

Blir så trött.


Sent from my iPhone using Tapatalk
jompa68
Proffsmedlem
Posts: 735
Joined: 12 Aug 2012, 08:53
12
Location: Hofors

Prova if (devicename == tostring("Hall lampa")) then


Regards Jonny Larsson
From my iPhone6+ med Tapatalk
alexndr
Medlem
Posts: 420
Joined: 14 Jul 2016, 14:38
8

Det är inte så att du råkat lägga ett blanksteg på slutet som du inte ser i din utskrift?
KristianO
Medlem
Posts: 461
Joined: 10 Mar 2014, 09:50
10

Jompa68: Funkade tyvärr inte.

Läser in texten på flera rum i detta fallet, skulle kunna validera mot idt och det funkar... Men känns mer stabilt att köra mot
Enhetens text. Ifall jag tex blir tvungen att omkonfigurera och får ett nytt id. Text Utan blanksteg funkar.


Sent from my iPhone using Tapatalk
User avatar
sonnyboy
Proffsmedlem
Posts: 669
Joined: 26 Sep 2013, 08:05
11
Location: Västerås

Pröva denna

Code: Select all

if (devicename == 'Hall lampa') then
Jag har haft problem när jag skrev MySQL frågor tidigare med fnuttar och mellanslag, då funkade det med enkel fnutt :)
Fibaro HomeCenter 2
Fw 4.600
BeyondMeasure 1.10
EventRunner
KristianO
Medlem
Posts: 461
Joined: 10 Mar 2014, 09:50
10

Blir tokig på detta. Har 3 sektioner jag vill vallidera "Ground Floor", "First Floor" och "Outdoor".
Har provat allt känns det som men bara "Outdoor" funkar pga avsaknat blanksteg.

testat att köra enkel, dubbelfnutt, deklarera som varibal eller direkt, tostring och utan... inget funkar

exempel på delar av kod

Code: Select all

local groundfloor = tostring('Ground Floor')
fibaro:debug(groundfloor)

for loop1 = 1, #sectionsTable do
  section = sectionsTable[loop1].name
  fibaro:debug(section)
  if (section == groundfloor) then
    for loop2 = 1, #roomsTable do
Post Reply