Đây là tính năng giúp chạy các chương trình chuyển đổi dữ liệu một cách tự động không cần tương tác từ người sử dụng.
Do không cần tương tác nên chúng thường dùng để chạy tự động trên server thông qua Phoebus Command theo lịch sắp xếp trước.
Nếu ta muốn chạy với sự phê duyệt của thao tác viên, hãy dùng các lệnh:
Data Interface v.v
pbs.BO.TM.RunDataInterface?DiCode=ABC& ....
Các tham số:
Giá trị là Y
/N
.
Nếu đặt là Y thì mỗi dòng từ nguồn sẽ được xử lý, chuyển đổi và ghi vào DB một cách độc lập.
Ví dụ khi có 3 chứng từ kế toán Accounting Document cần ghi sổ, ta có thể muốn cả 3 chứng từ này ghi nhận vào 1 nhật ký sổ cái ($OneByOne = N
) hoặc mỗi chứng từ tạo 1 nhật ký kế toán ($OneByOne = Y
)
Dùng trong các câu lệnh trích xuất, transform dữ liệu
Định nghĩa Data interface Setup sử dụng trong lệnh này cho phép thiết lập quy tắc đánh dấu các mẩu tin đã xử lý thông qua cơ chế Transfer Manager Key - TMK
Sau khi mẩu tin đích được lưu thành công vào CSDL. Chương trình sẽ trích xuất từ bảng dữ liệu nguồn các mẩu tin vừa được xử lý. Xác định giá trị Key cần đánh dấu và thực hiện ghi vào bảng TMK với mã là DI-Mã_DI_Code
Khi chạy tự động trên server không có tương tác trực tiếp với user, các lỗi nếu có sẽ không cho phép tiến trình transfer được thực hiện. Logic này an toàn vì:
Các lỗi phải gây chú ý đến admin hệ thống càng nhanh càng tốt. Dữ liệu không được xử lý sẽ gây chú ý tốt hơn việc chỉ một phần dữ liệu được xử lý.
Các lỗi phát sinh nếu bỏ qua có thể gây nhầm lẫn hoặc lỗi khi đánh dấu dữ liệu đã xử lý. Ví dụ 1 dòng doanh thu bán hàng tạo 2 nghiệp vụ đích : Ghi nhận Doanh thu và ghi nhận hoa hồng cho bên thứ 3. Nếu chỉ 1 trong 2 nghiệp vụ đích họp lệ và vẫn được xử lý, bỏ qua nghiệp vụ không hợp lệ thì khi đánh dấu bằng TMK. dòng doanh thu bán hàng gốc sẽ được đánh dấu đã xử lý. Ta sẽ không có cơ hội xử lý lại dữ liệu bị lỗi nữa.
Bỏ qua lỗi transfer là cách triển khai rất rủi ro, sẽ gây nhiều vấn đề support sau này.
Cách dung hòa nhất nếu vẫn muốn bỏ qua lỗi là sử dụng tùy chọn $OneByOne. Khi đó mỗi dòng dữ liệu gốc được xử lý riêng biệt và được TMK đánh dấu riêng biệt. Tùy chọn này có thể làm chương trình chạy chậm hơn. Tuy nhiên do chạy trên server nên vấn đề này có thể bỏ qua.
Updated on : 2020-09-29 17:59:36. by : . at 118.69.187.103.
Topic : Data interface runner. pbs.bo.tm.rundatainterface