Hello, I need to create a time control of the personnel of a company. Check-in / out and rest time.
Is it possible to visualize with the monthly records? For the CCAA I use Ekey. I made a record of the objects, but I don't see how to get that to a graph at the end of the day.
I am creating in FB Editor, using the counter module with a pulse per minute. As a result I get the total of the day in minutes, how can I pass it to a 3-byte time format? I tried initially to use the FBeditor hour counters but I was not able to give them a value in the output.
(30.03.2020, 08:17)Daniel. Wrote: Hi, can you explain once more what is your final goal?
Hi Daniel, yes.
I need to visualize and record what a staff workday would be.
Using Ekey's access control, I identify if they enter or exit. Using a pulse per minute counter, the value I get is the total minutes worked. I need to convert that value into a time format. (x minutes = x Hours: x minutes)
30.03.2020, 19:40 (This post was last modified: 31.03.2020, 10:01 by davidchispas.)
I want when the event is executed and an x value to send a true. I can do it with 1 bit objects but I need 07.2 Bytes . what else do i need to get the value?
You need to change it to event script triggered by tag. Both input group has to be tagged and then use this tag to trigger the script. Change the event.getvalue() to grp.getvalue('xxx')
(31.03.2020, 07:46)Daniel. Wrote: You need to change it to event script triggered by tag. Both input group has to be tagged and then use this tag to trigger the script. Change the event.getvalue() to grp.getvalue('xxx')
Thanks Daniel, sorry but I can't get it to work the way you tell me.
I get it to run this way, but it fails. The script is executed before receiving the value of 2 bytes. There is a need to run the script again.
Every time a user swipes the card, a 1-bit object with a true value is sent (never returns false) and a 'xxx' value in 2bytes is sent.
I need to write an object, when those two objects send a value and the condition is met.
Code:
Scanner_Rele = event.getvalue() --01.1bit, only send true
Scanner_Value = grp.getvalue('50/0/0') --07.2bytes, user id
User01 = '50/1/1' --01.1bit
User02 = '50/1/2' --01.1bit
if Scanner_Rele == true and Scanner_Value == 26 then
grp.write (User01, true)
end
if Scanner_Rele == true and Scanner_Value == 36 then
grp.write (User02, true)
end
(31.03.2020, 15:48)Daniel. Wrote: Log both variables before IF to see if they are correct.
You don't need the second if when the conditions are the same.
Fortunately the first three shipments I execute perfectly. But normally, when changing the Value in '50 / 0/0 'the next shipment usually fails.
(01.04.2020, 08:20)admin Wrote: The problem is that 50/0/0 arrives after 50/0/4 when your script is already executing.
Attach your script to 50/0/0 and modify it like this:
Code:
Scanner_Value = event.getvalue() --07.2bytes, user id
Scanner_Rele = grp.getvalue('50/0/4') --01.1bit, only send true
Hello Admin, I already did that test. I also have the same problem, the value of 1 bit is always true. Therefore, the condition will also be fulfilled.
Is it possible not to run the script until the two values are updated? That one value depends on the other to be executed.