Page 1 sur 1

script ne donne pas de résultat

Publié : 01 sept. 2020, 13:05
par yves67
Bonjour
j'ai récupéré une fonction qui doit me retourner le nombre de jours du mois
mais je n'arrive pas à imprimer le résultat

Code : Tout sélectionner

return {
	on = {
		devices = {},
		timer = {'every minute'},
		variables = {},
		scenes = {},
		groups = {},
		security = {},
		httpResponses = {},
		customEvents = {},
		system = {},
	},
	data = {},
	logging = {},
	execute = function(dz, triggeredItem)
 
    print("Debut") 
    print(dz.time.year)
 
    local function getDaysForMonth(month, year)       -- Returns number of days in given or current month
            if month == nil then month = dz.time.month end
            if year == nil then year = dz.time.year end
            print("dans la function")
            return os.date('*t',os.time{year=year,month=month+1,day=0}).day
    end
    print("avant la fonction")
    print(__tostring(getDaysForMonth()))
    print("après la fonction")
	end
} 

voici la log :

Code : Tout sélectionner

2020-09-01 13:03:00.619 Status: dzVents: Info: ------ Start internal script: Script #1:, trigger: "every minute"
2020-09-01 13:03:00.620 Status: dzVents: Debut
2020-09-01 13:03:00.620 Status: dzVents: 2020
2020-09-01 13:03:00.621 Status: dzVents: avant la fonction
2020-09-01 13:03:00.621 Status: dzVents: dans la function
2020-09-01 13:03:00.621 Status: dzVents: Info: ------ Finished Script #1
et pas de résultat ??

je séche, merci pour toute aide

Re: script ne donne pas de résultat

Publié : 01 sept. 2020, 18:03
par vil1driver
Salut,

Je ne connais pas mais
La virgule ici doit être de trop

Code : Tout sélectionner

system = {},
Et je changerais ceci

Code : Tout sélectionner

print(__tostring(getDaysForMonth()))
En cela

Code : Tout sélectionner

print(getDaysForMonth())

Re: script ne donne pas de résultat

Publié : 01 sept. 2020, 18:12
par yves67
ok, ça marche
je croyais que la fonction retourne un nombre et qu'il fallait le transformer en string avec tostring ??
merci beuacoup