OnAttTransactionEx

This event is triggered after verification succeeds.

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

[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.

 

WorkCode: work code returned during verification. Return 0 when the device does not
support work code.

 

Ejemplo

C#

if (axCZKEM1.RegEvent(iMachineNumber, 65535))//Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
{
this.axCZKEM1.OnAttTransactionEx += new zkemkeeper._IZKEMEvents_OnAttTransactionExEventHandler(axCZKEM1_OnAttTransactionEx);
}
private void axCZKEM1_OnAttTransactionEx(string sEnrollNumber, int iIsInValid, int iAttState, int iVerifyMethod, int iYear, int iMonth, int iDay, int iHour, int iMinute, int iSecond,int iWorkCode)
        {
            lbRTShow.Items.Add("RTEvent OnAttTrasactionEx 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

If axCZKEM1.RegEvent(iMachineNumber, 65535) = True Then 'Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
AddHandler axCZKEM1.OnAttTransactionEx, AddressOf AxCZKEM1_OnAttTransactionEx 
End If

Private Sub AxCZKEM1_OnAttTransactionEx(ByVal sEnrollNumber As String, 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, ByVal iWorkCode As Integer)
        lbRTShow.Items.Add("RTEvent OnAttTrasactionEx 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