nguyên tắc sync dữ liệu Timesheet giữa BPM-Phoebus

Question:



 

Fw lại mã lỗi như hồi đầu tháng 1/2023 khi Innobiz gọi qua clean data của phoebus thì bị lỗi này đã gửi qua zalo @San Phu - Nghia

 

[{"status":404,"msg":"'0' records 'pbs.bo.hr.tsh' has been deleted","data":null,"APIReturnCode":"920. Data did not change","APIMsg":"Found no record meeting criteria $action=DeleteAll&Period=2023001&Ts0=<<LM,ON_400,B,LA,OT,OTL,LS,LC,OTOV"}]

 

Trân trọng

 

Mai


Answer:

Dear  All,

Như thông tin trên zalo, hiện trạng vấn đề:

+ Ngày 1/2 vẫn chạy tự động và sync dữ liệu bình thường.
+ Ngày 2/2/2023 gặp lại lỗi cũ này khi chạy tự động
+ Ngày 7/2 chạy manual post dữ liệu được bình thường

SPC confirm lại như sau:

1. Sau khi update API version mới từ ngày 31/1, API chắc chắn sẽ không trả code lỗi delete như trên nữa.


2. Hiện tượng như đã thấy: với cùng lệnh API, có thời điểm chạy được có thời điểm không chạy được.
-> Đây là trường hợp lỗi xuất hiện cục bộ tại 1 thời điểm, không phát sinh thường xuyên.
Vì vậy khả năng cao do nguyên nhân tức thời như: đường truyền hoặc server tại thời điểm đó bị nghẽn....

3. Trả lời anh @Sơn: web API là duy nhất (1 IP + 1 port) chắc chắn không có trường hợp nhiều instance hoạt động cùng lúc.

SPC đề xuất:  tại ngày đầu tiên sync dữ liệu ở tháng tiếp theo các bên sẽ kiểm tra trạng thái sync. 
Đồng thời Innobiz sẽ thử chạy lại quy trình này 1-2 lần nữa, SPC sẽ phối hợp kiểm tra trạng thái trên API server.

Lưu ý thêm: trường hợp chạy manual cũng phải tuân thủ đúng 2 bước: delete dữ liệu cũ rồi post dữ liệu mới, tránh trường hợp chỉ post dữ liệu mới làm double dữ liệu. (trường hợp ngày 7/2)

Thanks & Best regards,

SPC Support Team


Chị cảm ơn Nghĩa nhiều đã support kịp thời.

BR
Mai




Dear chị Mai,

Em tổng kết lại kết quả cho vấn đề này để tiện xem lại nhé.

Vấn đề 1. Clean/Delete old data: API trả kết quả error 404
=> SPC cập nhật API mới chuyển đổi status trả về là 200 Ok

Vấn đề 2. Post new data: API trả error 400 "error while copying content to a stream"
=> Innobiz đã tự xử lý, SPC không xử lý gì thêm.

Tóm tắt Quy trình cập nhật data từ BPM -> Phoebus:

1. BPM: Clean/Delete old data -> Kết quả API trả về status 200 Ok -> Post new data
2. Phoebus tiếp tục Approve data mỗi 1h/1lần. Ví dụ:
          + 10h15' đẩy data sang Phoebus thành công -> sau 11h00' sẽ xem được trên Phoebus Timesheet
          + 11h45' đẩy data sang Phoebus thành công -> sau 12h00' sẽ xem được trên Phoebus Timesheet


Quy trình này đảm bảo hoạt động suôn sẻ kể cả tháng không có OT hay Leave và data xem được trên Phoebus Timesheet sớm hơn trước.

Thanks & Best regards,

SPC Support Team

Creation date: 1/29/2024 11:43 AM (nghianh)      Updated: 4/3/2024 4:02 PM (nghianh)
Files   
DataImage2.png
23.6 KB
DataImage64.png
18 KB