OnAttTransaction

This event is triggered after verification succeeds.

OnAttTransaction (LONG EnrollNumber,LONG IsInValid,LONG AttState,LONG VerifyMethod,LONG Year,LONG Month,LONG Day,LONG Hour,LONG Minute,LONG Second)

[ReturnValue]

EnrollNumber: UserID of a user

IsInValid: Whether a record is valid. 1: Not valid. 0:

Valid AttState:Attendance state.

0—Check-In (default value)
1—Check-Out
2—Break-Out
3—Break-In
4—OT-In
5—OT-Out

VerifyMethod: Verification mode.

0: password verification
1: fingerprint verification
2: card verification

In multi-verification mode:

0: FP_OR_PW_OR_RF
1: FP
2: PIN
3: PW
4: RF
5: FP_OR_PW
6: FP_OR_RF
7: PW_OR_RF
8: PIN_AND_FP
9: FP_AND_PW
10: FP_AND_RF
11: PW_AND_RF
12: FP_AND_PW_AND_RF
13: PIN_AND_FP_AND_PW
14: FP_AND_RF_OR_PIN

Year/Month/Day/Hour/Minute/Second indicates the time when verification succeeds.

 

Ejemplo

C#

//In fact,when you are using the tcp/ip communication,this parameter will be ignored,that is any integer will all right.Here we use 1.
iMachineNumber = 1;
//Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
if (axCZKEM1.RegEvent(iMachineNumber, 65535))
{
this.axCZKEM1.OnAttTransaction += new zkemkeeper._IZKEMEvents_OnAttTransactionEventHandler(axCZKEM1_OnAttTransaction);
}
private void axCZKEM1_OnAttTransaction(int iEnrollNumber, int iIsInValid, int iAttState, int iVerifyMethod, int iYear, int iMonth, int iDay, int iHour, int iMinute, int iSecond)
{
  lbRTShow.Items.Add("RTEvent OnAttTrasaction Has been Triggered,Verified OK")
  lbRTShow.Items.Add("...UserID:" + sEnrollNumber)
  lbRTShow.Items.Add("...isInvalid:" + iIsInValid.ToString())
  lbRTShow.Items.Add("...attState:" + iAttState.ToString())
  lbRTShow.Items.Add("...VerifyMethod:" + iVerifyMethod.ToString())
  lbRTShow.Items.Add("...Workcode:" + iWorkCode.ToString()) 'the difference between the event OnAttTransaction and OnAttTransactionEx
  lbRTShow.Items.Add("...Time:" + iYear.ToString() + "-" + iMonth.ToString() + "-" + iDay.ToString() + " " + iHour.ToString() + ":" + iMinute.ToString() + ":" + iSecond.ToString())
}

VB

'In fact,when you are using the tcp/ip communication,this parameter will be ignored,that is any integer will all right.Here we use 1.
iMachineNumber = 1
'Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
If axCZKEM1.RegEvent(iMachineNumber, 65535) = True Then
  AddHandler axCZKEM1.OnAttTransaction, AddressOf axCZKEM1_OnAttTransaction
End If
Private Sub axCZKEM1_OnAttTransaction(ByVal iEnrollNumber As Integer, ByVal iIsInValid As Integer, ByVal iAttState As Integer, ByVal iVerifyMethod As Integer, _
                      ByVal iYear As Integer, ByVal iMonth As Integer, ByVal iDay As Integer, ByVal iHour As Integer, ByVal iMinute As Integer, ByVal iSecond As Integer)
  lbRTShow.Items.Add("RTEvent OnAttTrasaction Has been Triggered,Verified OK")
  lbRTShow.Items.Add("...UserID:" & sEnrollNumber)
  lbRTShow.Items.Add("...isInvalid:" & iIsInValid.ToString())
  lbRTShow.Items.Add("...attState:" & iAttState.ToString())
  lbRTShow.Items.Add("...VerifyMethod:" & iVerifyMethod.ToString())
  lbRTShow.Items.Add("...Workcode:" & iWorkCode.ToString()) 'the difference between the event OnAttTransaction and OnAttTransactionEx
  lbRTShow.Items.Add("...Time:" & iYear.ToString() & "-" & iMonth.ToString() & "-" & iDay.ToString() & " " & iHour.ToString() & ":" & iMinute.ToString() & ":" & iSecond.ToString())
End Sub