Batch Posting Profile

Nhập liệu theo nhóm là gì?


Các mẩu tin có thể được nhập hàng loạt vào chương trình thông qua tính năng import. Tuy nhiên khi cần chỉnh sửa các thông tin thì hoặc phải import lại hoặc dùng tính năng edit của form cho 1 record. Điều này sẽ làm việc thay đổi dữ liệu không dễ dàng hoặc dễ sai sót.

Vấn đề trên sẽ được giải quyết bằng chức năng Nhập liệu theo nhóm - Batch Data Entry.

Đây là một tính năng của Phoebus cho phép nhập dữ liệu hàng loạt theo từng nhóm, người dùng sẽ nhập liệu các nhóm dữ liệu thông qua tính năng này thay vì nhập trực tiếp từng bản ghi (Record) tại từng kiểu dữ liệu (tính năng) nào đó.

Tính năng này quy định cách thức nhập liệu theo nhóm của 1 loại dữ liệu cụ thể.

Mục đích của chức năng Nhập liệu theo nhóm dùng để:

Các đợt post dữ liệu được lưu vào 1 bảng riêng biệt có tên pbs_BATCH_XXX

Mỗi LineNo là một lần post cho các gói dữ liệu.

Ví dụ: nhập ngân sách cho năm X, project A ...

Cách thiết lập nhập liệu theo nhóm


Để tạo hồ sơ (profile) nhập liệu theo nhóm, cần tạo profile mô tả loại dữ liệu cần nhập theo nhóm và các quy tắc kiểm tra dữ liệu khác

  1. Để định nghĩa Nhập liệu theo nhóm (Batch Profile), vào chức năng pbs.BO.BPP

  2. Bấm nút Tạo mới để định nghĩa mới một batch profile, hoặc chọn các batch profile đã có để Chỉnh sửa

198238e8-895f-4897-a5c9-48d5c80ea8be.pbs_bo_bpp_md

Các trường thông tin có trong giao diện Thiết lập nhập liệu theo nhóm như sau:

Các thiết lập cho một profile nhập liệu theo nhóm.

Batch Profile
Đặt mã cho batch profile.
Diễn giải
Nhập diễn giải cho batch profile.
Kiểu dữ liệu (*)

Chọn kiểu dữ liệu đích: batch profile này hoạt động dưới loại dữ liệu nào? Nghĩa là chương trình sẽ xử lý, ghi chép hàng loạt những dòng dữ liệu vào kiểu dữ liệu (tính năng) được chọn ở mục này.

Khi chọn Kiểu dữ liệu xong, bấm phím Tab hoặc Enter --> những cột thuộc kiểu dữ liệu này sẽ được lấy ra ở phần Detail bên dưới.

Chú ý kiểu dữ liệu này phải nhập chính xác theo chữ hoa , chữ thường tên của loại dữ liệu. Ta có thể chọn từ danh sách để đảm bảo dữ liệu là đúng.

Ô kiểu dữ liệu còn được dùng làm định danh cho bảng dữ liệu trong batch form. Do đó, nếu ta đổi thông tin này (ngay cả đổi chữ hoa thành chữ thường) layout của bảng dữ liệu con (grid) cũng sẽ không truy cập được từ batch form cũ và ta sẽ phải design lại layout mới cho batch form

Tạm treo

Tình trạng của batch profile:

  • (Working): đang hoạt động
  • S (Record Suspended): tạm treo
  • C (Record Closed): đóng
Nhóm truy cập
Chọn nhóm thao tác viên được phép truy cập batch profile.
Allows Add Existing Children Record

Form Batch dùng để nhập hàng loạt các mẫu tin mới, bật Allows Add Existing Children Record ON trong trường hợp form batch dùng để cập nhật trạng thái cho những mẫu tin đã có trong hệ thống (cho phép thêm những mẫu tin đã tồn tại vào trong batch để cập nhật trạng thái), chứ không phải dùng batch này để tạo mới. Điều này thực hiện được khi người dùng thêm dòng bằng lệnh chuột phải.

Ví dụ: Tình huống đơn hàng, xuất đơn hàng bán 5 hàng hóa. Thực tế kho chỉ xuất đi 3 hàng hóa. --> Mở batch xuất kho mới, dùng lệnh chuột phải để chọn batch đơn hàng cần xuất và chọn 3/5 dòng vào batch, lưu batch. Tác dụng của batch xuất kho này là sẽ cập nhật trạng thái cho 3 dòng của đơn hàng (trạng thái của 3 hàng hóa được xuất sẽ được cập nhật theo trạng thái của Header), nghĩa là trong 5 dòng của đơn hàng ban đầu, có 3 dòng đã xuất đi.

Tóm lại, trong ví dụ trên có 2 batch được đề cập:

  • Batch 1: batch đơn hàng, được tạo mới để thêm 5 hàng hóa nhập vào PO.
  • Batch 2: batch xuất kho, được dùng để cập nhật trạng thái cho batch 1, đánh dấu 3/5 dòng chi tiết đã xuất rồi, không phải để tạo mới. Ở batch 2 này, Allow Add Existing Children Record bật ON.

Phần này thiết lập theo trạng thái (Status), tùy theo Status được mapping vào đâu trên Header.

Remove Children From Batch Instead Of Delete

Khi batch được sử dụng như xử lý trạng thái, bật Remove Children From Batch Instead Of Delete ON trong trường hợp yêu cầu chỉ thay đổi trạng thái chứ không được xóa mẫu tin này. Nghĩa là chỉ có thể loại bỏ (remove) các dòng ở giao diện batch nhưng không thể xóa (delete) các mẫu tin đã được ghi nhận trong kiểu dữ liệu đích.

Như vậy, khi làm động tác loại bỏ dòng trong batch, hệ thống sẽ gỡ bỏ Batch No được lưu chứ không xóa mẫu tin trong kiểu dữ liệu đích.

Ví dụ: tiếp theo tình huống trên, khi kiểm tra hàng thấy chỉ còn đủ xuất 2/3 hàng hóa, lúc này người dùng có thể set quantity bằng zero hoặc xóa 1 hàng hóa thiếu trong 3 hàng hóa đã làm thao tác xuất. --> Trường hợp này, không thể xóa dữ liệu đã ghi nhận trong kiểu dữ liệu đích, mà chỉ có thể loại bỏ ở giao diện batch xuất kho (batch 2).

Batch No Field Name

Khi xử lý batch (Save/Post) thì lưu số batch number vào ô này, nên bắt buộc phải chọn một ô thuộc (*) để lưu.

Mục đích để gọi lên những dòng thông tin liên quan đến batch profile. Nếu thiếu bước này, hệ thống sẽ không biết batch đã lưu sẽ có những gì. Lưu ý: cột này bắt buộc phải là định dạng chuỗi (text) hoặc số nguyên (integer).

Save Actions
This command will run after a batch is posted. Use this for transform batch data in form of multi value column (month 1..12) to 12 rows. Lệnh này sẽ chạy sau khi một batch được ghi nhận. Sử dụng điều này để biến đổi hàng loạt các cột giá trị trong batch form (tháng 1..12) đến 12 dòng.
Delete Actions

Lệnh này sẽ chạy sau khi một batch được xóa.

Preset Data Source URL

Khi mở một form batch, trong nhiều trường hợp sẽ gọi từ một danh sách có sẵn, nghĩa là điền trước nội dung của batch đó.

Ví dụ: Tạo 1 batch Điểm danh số học sinh đi học của một lớp học, thì khi mở batch phải điền sẵn danh sách học sinh của lớp cần điểm danh.

Nội dung tiền định chỉ được thiết lập cho bảng Detail. Để dùng được cần thực hiện 2 bước:

Preset Data Source URL:

Định nghĩa nguồn dữ liệu dùng làm tiền định cho batch bằng câu lệnh mô tả cách lấy dữ liệu như

Mapping Column:

Do cấu trúc của bảng nguồn dùng làm tiền định có thể không giống với cấu trúc của kiểu dữ liệu đích trong batch, nên bước mapping này sẽ xác định sao chép cột nào trên bảng tiền định vào cột nào trong bảng kiểu dữ liệu đích.

Thao tác mapping tại cột Mapping Column cho các cột được đánh dấu Is Detail ở Detail Table (nếu là form batch thông thường), hoặc Matrix Field (nếu là form batch ma trận).

ab211c18-59b9-4332-9b01-b384cb124d86.pbs_bo_bpp_md

Detail Table

Sau khi chọn Kiểu dữ liệu (*) trên phần Header thì phần Detail Table sẽ hiển thị tất cả các cột của kiểu dữ liệu đã chọn.

Priority No
Thứ tự các cột dữ liệu.
Tên cột
Tên các cột dữ liệu.
Diễn giải
Diễn giải cho các cột dữ liệu.
Is Master
Khi nhập liệu ở form batch, có những thông tin chung trên phần header được lặp lại cho tất cả những dòng bên dưới bảng detail. Những cột dùng làm header này sẽ được đánh dấu Is Master. Tại form nhập liệu, các cột khi đã được chọn lấy thông tin từ Master thì không cần phải thể hiện ở phần Detail bên dưới nữa.
Is Detail
Những cột dữ liệu mặc định được chọn là Is Detail, nhập liệu dưới phần detail của form.
Copy From Master
Chọn cho những cột ở bảng chi tiết sao chép dữ liệu được nhập trên phần Header.
Mapping Column

Mapping Column được dùng để mapping các cột dữ liệu ở phần Detail Table đối với một profile Batch thông thường.

Việc mapping này giữa Kiểu dữ liệu đích và các cột của bảng Batch (pbs.BO.BPH) hoặc các cột của bảng dữ liệu tiền định (Preset Data Source URL), do cấu trúc của các bảng này không giống với cấu trúc của kiểu dữ liệu đích.

Có 2 loại dạng mapping tại cột Mapping Column của Detail Table:

  • Mapping cho các cột Is Master: Cấu trúc Header trên form chính là nội dung các cột dữ liệu cố định của Batch (pbs.BO.BPH), các cột này sẽ được mapping vào các cột dữ liệu của Kiểu dữ liệu đã chọn.
  • Mapping cho các cột Is Detail: Đây là bước xác định sao chép cột nào trên bảng tiền định (Preset Data Source URL) vào cột nào trong bảng kiểu dữ liệu đích.
Lệnh Diễn giải
97c1e532-3bae-4fd0-9dd9-9b0acc6637c2.pbs_bo_bpp_md Thiết lập quy tắc các trường dữ liệu. cho header và detail của Batch.
1f7d0985-e316-4cd8-aaaa-97829b0796ee.pbs_bo_bpp_md Chạy thử Batch form.
2680c94c-cbd1-4abc-b4a8-2d21ca306689.pbs_bo_bpp_md Điền danh sách các trường dữ liệu của mẩu tin cần sử lý với Batch vào bảng detail

Form Batch - Nhập liệu theo nhóm


Câu lệnh mở Form nhập liệu theo nhóm.

 pbs.BO.BPH/SubForm

Chú ý

SubForm chính là Batch Profile đã được định nghĩa ở bước đầu tiên (pbs.BO.BPP)

Vào chức năng pbs.BO.BPH/SubForm, trong ví dụ này sẽ là pbs.BO.BPH/BUDGET

Theo mặc định, màn hình Danh sách Form nhập liệu theo nhóm sẽ liệt kê danh sách tất cả các lần đã đưa dữ liệu vào hệ thống của các loại Batch Profile (SubForm).

Form nhập liệu theo nhóm (pbs.BO.BPH/subForm) gồm có 2 phần là Header và Detail, hình dưới đây minh họa một Form Bacth đã được thiết kế:

359685c5-7af6-47b0-8397-d83f2eaf23ec.pbs_bo_bpp_md

Header:

Cấu trúc phần Header gồm tất cả các trường dữ liệu của Batch, bảng này cố định cho tất cả các loại thông tin, cho dù dùng Batch để post loại thông tin gì vào hệ thống thì phần Header này cũng luôn cố định. Các trường dữ liệu này sẽ được mapping vào các trường của Kiểu dữ liệu đích.

Tại Batch Profile, đối với các trường được đánh dấu Is Master thì khi nhập từ Header sẽ được sao chép xuống các dòng ở bảng Detail của Form Batch.

Trong ví dụ của bài viết này, phần Header được mapping dùng chung cho các mẫu tin bên dưới gồm:

Form Batch Kiểu dữ liệu (pbs.BO.PCM.BIV)
Số n.ký (Batch No) Số phiếu (ReferenceNo)
Batch Date Ngày hiệu lực (EffectiveDate)
Kỳ kế toán (Period) Kỳ kế toán (Period)
Detail:

Cấu trúc phần Detail gồm tất cả các trường của Kiểu dữ liệu đích, các trường này được xắp xếp dưới dạng bảng, người dùng sẽ nhập mỗi dòng là một mẫu tin được ghi nhận khi batch được post vào hệ thống.

Thiết kế và tạo mới form


Thiết kế Form Batch bằng cách sử dụng các công cụ thiết kế form như các form tính năng khác.

  1. Bấm nút Tạo mới trên góc phải. Nếu là lần đầu mở form, màn hình form nhập liệu mặc định đầy đủ với:
  1. Tiến hành thiết kế form, ẩn đi các trường dữ liệu không cần thiết ở cả 2 phần Header và Detail Sau khi thiết kế xong, Lưu mẫu form, mở lại Batch Profile và thực hiện nhập liệu, bấm nút Save để ghi nhận vào hệ thống.

Sửa/xóa nhật ký đã ghi nhận


Đây là một trong những ưu điểm lớn nhất của việc sử dụng Nhập liệu theo nhóm, dễ dàng gọi lên các nhật ký đã được ghi nhận để chỉnh sửa/thêm dòng/xóa dòng/xóa nhật ký ... bằng cách chọn đúng Batch No của mỗi batch number, sau đó bấm nút Chỉnh sửa , thực hiện các thao tác sửa/thêm/xóa và Lưu lại. Các mẫu tin ngay lập tức sẽ được cập nhật vào hệ thống.   Mỗi Batch Profile được tạo ra để post nhiều dòng dữ liệu vào hệ thống. Mỗi lần post, hệ thống sẽ ghi nhận một Batch Number.

Batch Number này còn được mapping vào Kiểu dữ liệu bằng cách thiết lập tại Batch No Field Name (phần Định nghĩa Batch Profile: pbs.BO.BPP).

Xem thêm



Updated on : 2021-02-06 17:44:51. by : . at 118.69.187.103.

Topic : Batch Posting Profile. pbs.bo.bpp