Đọc dữ liệu từ máy chấm công vân tay RONALD JACK

Liên hệ QC

An.BA

Thành viên thường trực
Tham gia
15/9/18
Bài viết
223
Được thích
170
Giới tính
Nam
Hiện tại bên em đang chấm công bằng máy RONALD JACK và dùng phần mềm Wise Eye 3.9 để đọc dữ liệu và load về máy tính thông qua IP có kết nối qua mạng
1635504633166.png
Nếu có thông số IP và port của máy này rồi thì mình có đọc được dữ liệu của nó bằng vba không ạ?
Em cảm ơn!
 
Vô C:\Windows\SysWOW64 nhé.
Được rồi anh ạ.

Mã:
Dim c As CZKEM
    Set c = New CZKEM
    Dim connect As Boolean
    connect = c.Connect_Net("233.252.25.53", 4370)
    If connect = True Then
        MsgBox "thành công"
    Else
        MsgBox "That bai"
    End If
Vì sao kết nối fail anh nhỉ? Nếu đã gọi được nó ra và add nó rồi mà nhỉ?
 
Lần chỉnh sửa cuối:
Upvote 0
Được rồi anh ạ.

Mã:
Dim c As CZKEM
    Set c = New CZKEM
    Dim connect As Boolean
    connect = c.Connect_Net("233.252.25.53", 4370)
    If connect = True Then
        MsgBox "thành công"
    Else
        MsgBox "That bai"
    End If
Vì sao kết nối fail anh nhỉ? Nếu đã gọi được nó ra và add nó rồi mà nhỉ?
Tôi chưa kết nối máy này nên cũng không biết như thế nào. Trước nhất bạn kiểm tra xem có thể kết nối tới IP và port này được không đã.
Vô trang này check thử: https://canyouseeme.org/
 
Upvote 0
Có vẻ hấp dẫn, có bạn nào thử kết nối được chưa nhỉ :D
 
Upvote 0
Có vẻ hấp dẫn, có bạn nào thử kết nối được chưa nhỉ :D
Hấp dẫn chỗ nào? Công ty gì mua máy chả có bảo hành, chả có tư liệu hướng dẫn?
Chỉ xảy ra cho loại công ty mà bên "đội mua và setup máy" chỉ biết ăn tiền của bên cung cấp chứ lúc ký bên bản bàn giao không có lấy cái bản biểu kế kê khai những chỗ cần xét (*1). Cái này thì khó trách , vì nó xảy ra nhiều lắm; nhất là các nhà máy liên doanh, mấy thằng "tư vấn" bên nước ngoài chúng khoái ăn kiểu này lắm. Gặp thằng tư vấn gốc Vịệt thì coi như chắc chắn 100%.

Em có hỏi lại đội mua và setup máy thì bảo máy được lắp do nhà thầu họ làm trọn bộ cả cơ sở nhiều thứ chỉ bàn giao máy chứ không có tài liệu gì cả? Vậy em liên hệ hãng để hỏi hay làm gì để có bộ API/SDK ạ?
...

(*1) thực ra máy đắt tiền còn có bảng biểu kế hiệu suất. Chứng minh là lúc chạy thử đạt n% khả năng tối đa của máy. Bên kỹ sư trách nhiệm phải ký bảng này rồi bên mua máy mới gộp vào hồ sơ của mình.
 
Upvote 0
Hấp dẫn chỗ nào? Công ty gì mua máy chả có bảo hành, chả có tư liệu hướng dẫn?
Chỉ xảy ra cho loại công ty mà bên "đội mua và setup máy" chỉ biết ăn tiền của bên cung cấp chứ lúc ký bên bản bàn giao không có lấy cái bản biểu kế kê khai những chỗ cần xét (*1). Cái này thì khó trách , vì nó xảy ra nhiều lắm; nhất là các nhà máy liên doanh, mấy thằng "tư vấn" bên nước ngoài chúng khoái ăn kiểu này lắm. Gặp thằng tư vấn gốc Vịệt thì coi như chắc chắn 100%.



(*1) thực ra máy đắt tiền còn có bảng biểu kế hiệu suất. Chứng minh là lúc chạy thử đạt n% khả năng tối đa của máy. Bên kỹ sư trách nhiệm phải ký bảng này rồi bên mua máy mới gộp vào hồ sơ của mình.
Sau một thời gian tự tìm các bộ SKD và cách hướng dẫn kết nối máy thì em có tìm ra cách rồi ạ, nhưng kết nối thì lại không được em không rõ có phải do VBA không hỗ trợ không. Anh có thể xem giúp em được không ạ? Còn vụ ban đầu do mua máy thì đúng là do bên thi công lắp rồi có lúc đội setup phát hiện ra máy hàng trôi nổi cơ ạ.
 
Upvote 0
Theo tôi thì dùng VBA gọi kết nối qua FTP để lấy file dữ liệu.
Tuuy nhiên, mấy cái này Python dễ hơn vì thư viện của nó rất rộng.
 
Upvote 0
Theo tôi thì dùng VBA gọi kết nối qua FTP để lấy file dữ liệu.
Tuuy nhiên, mấy cái này Python dễ hơn vì thư viện của nó rất rộng.
Python thì em không biết gì về nó ạ.
Còn gọi kết nối qua FTP thì em cũng không rõ vì trong hướng dẫn của nó thì chỉ có gọi theo kiểu phương thức nên em cũng không rõ thông qua FTP kiểu gì ạ.
 
Upvote 0
Python thì em không biết gì về nó ạ.
Còn gọi kết nối qua FTP thì em cũng không rõ vì trong hướng dẫn của nó thì chỉ có gọi theo kiểu phương thức nên em cũng không rõ thông qua FTP kiểu gì ạ.
Cái con mụ phù thuỷ ở bài #24 nó giỏi cái này lắm. Chờ nó chỉ cho.
Bây giờ bạn hỏi tôi thì tôi cũng phải chờ kiếm mấy thằng tech support dẫn nó đi uống cà phê.
 
Upvote 0
Cái con mụ phù thuỷ ở bài #24 nó giỏi cái này lắm. Chờ nó chỉ cho.
Bây giờ bạn hỏi tôi thì tôi cũng phải chờ kiếm mấy thằng tech support dẫn nó đi uống cà phê.
Vâng em cảm ơn!
Bài đã được tự động gộp:

Có vẻ hấp dẫn, có bạn nào thử kết nối được chưa nhỉ :D
Theo tôi thì dùng VBA gọi kết nối qua FTP để lấy file dữ liệu.
Tuuy nhiên, mấy cái này Python dễ hơn vì thư viện của nó rất rộng.
Chào bạn. Bạn có thể giúp mình vấn đề này không ạ?
 
Upvote 0
Vâng em cảm ơn!
Bài đã được tự động gộp:



Chào bạn. Bạn có thể giúp mình vấn đề này không ạ?


Cái này để nghịch cũng khá vui. Kết nối vào máy chấm công thường sẽ có 2 cách:

1. Lệnh DOS, cái này không cần cài thêm thư viên gì, nhưng hên xui có thể 1 số máy chấm công sẽ không cho kết nối. Và kết nối đôi khi không ổn định. Các bước:
+ Kết nối bằng lệnh telnet: telnet 192.168.xx.xx 4370 (xx là IP của máy, 4370 là port)
Nếu may mắn kết nối dc thì nó sẽ hỏi username, password. Nếu may mắn hơn nữa thì máy sẽ để các tên/mật khẩu mặc định như admin/root
+Chạy lệnh ls/dir để biết file dữ liệu chấm công nằm ở đâu, file đó thường sẽ có đuôi là data.log
+Chạy lệnh ftp để để upload file chấm công vào ftp Lan network của bạn

2.Sử dụng API của zkemkeeper, cái này máy 32 hay 64bit đều dùng được, nhưng mà mình chưa thử với vba, và bây giờ cũng không có máy chấm công để thử. Các bước thường là:
+ kết nối vào máy chấm công
+ Chạy hàm GetDataFile, file dữ liệu sẽ có option là 1, đường dẫn file tải về có thể là local không cần ftp, đọc tài liệu để biết cách dùng. API có cung cấp cách lấy dữ liệu từng dòng nhưng không thể tối ưu bằng cách tải nguyên file dữ liệu về được.

Lúc tôi sử dụng máy chấm công thì tải file data tải về có dạng nhị phân, nhưng là số file size là 1 con số chia hết cho 16, vì mỗi dòng dữ liệu file chấm công sẽ lưu thành 1 khối dài 16 byte, cấu trúc như nào thì đợi tải file thành công mới bàn tiếp được. Hoặc có thể các máy chấm công đời mới lưu dữ liệu dạng khác không chừng.
 
Upvote 0
Cái này để nghịch cũng khá vui. Kết nối vào máy chấm công thường sẽ có 2 cách:

1. Lệnh DOS, cái này không cần cài thêm thư viên gì, nhưng hên xui có thể 1 số máy chấm công sẽ không cho kết nối. Và kết nối đôi khi không ổn định. Các bước:
+ Kết nối bằng lệnh telnet: telnet 192.168.xx.xx 4370 (xx là IP của máy, 4370 là port)
Nếu may mắn kết nối dc thì nó sẽ hỏi username, password. Nếu may mắn hơn nữa thì máy sẽ để các tên/mật khẩu mặc định như admin/root
+Chạy lệnh ls/dir để biết file dữ liệu chấm công nằm ở đâu, file đó thường sẽ có đuôi là data.log
+Chạy lệnh ftp để để upload file chấm công vào ftp Lan network của bạn

2.Sử dụng API của zkemkeeper, cái này máy 32 hay 64bit đều dùng được, nhưng mà mình chưa thử với vba, và bây giờ cũng không có máy chấm công để thử. Các bước thường là:
+ kết nối vào máy chấm công
+ Chạy hàm GetDataFile, file dữ liệu sẽ có option là 1, đường dẫn file tải về có thể là local không cần ftp, đọc tài liệu để biết cách dùng. API có cung cấp cách lấy dữ liệu từng dòng nhưng không thể tối ưu bằng cách tải nguyên file dữ liệu về được.

Lúc tôi sử dụng máy chấm công thì tải file data tải về có dạng nhị phân, nhưng là số file size là 1 con số chia hết cho 16, vì mỗi dòng dữ liệu file chấm công sẽ lưu thành 1 khối dài 16 byte, cấu trúc như nào thì đợi tải file thành công mới bàn tiếp được. Hoặc có thể các máy chấm công đời mới lưu dữ liệu dạng khác không chừng.
Cách 1 thì mình hơi mơ hồ vì chưa rõ và chưa va chạm lắm.
Cách 2 thì hiện tại mình đã tải file zkemkeeper rồi và add vào thư viện rồi. Có gọi phương thức kết nối ra rồi nhưng nó là kết nối fail.
Mặc dù IP và port là thông. Còn dữ liệu của máy này thì không ở dạng bit nữa mà xem hướng dẫn thì nó sẽ ra luôn dạng năm, tháng, ngày, giờ, phút, giây rồi bạn à. Chỉ có điều là VBA thì kết nối fail :(
 
Upvote 0
Web KT
Back
Top Bottom