Numbering Rules - Quy tắc đánh số setting

Giới thiệu


Numbering rules là quy tắc đánh số dùng để lấy ra số tự động tiếp theo và điền vào một trường dữ liệu trước khi lưu mẫu tin vào cơ sở dữ liệu (CSDL).

Nguyên tắc hoạt động: Ngay sau khi người dùng bấm nút Save, hệ thống sẽ lấy số tiếp theo và điền vào trường dữ liệu cần nhảy số tuần tự, người dùng sẽ không điền vào các trường này nữa.

Chú ý

Sử dụng


96f0bbf9-9aa9-4f11-8127-a24beae94e82.pbs_bo_rules_numberingrules_md

Numbering rules kết hợp với Sequence Number Definition để lấy ra số kế tiếp.

Numbering Rules cho phép sử dụng profile lấy số tuần tự một cách linh động.

Trong tất cả các trường dữ liệu của các kiểu dữ liệu trong Phoebus, người dùng muốn dùng số nhảy tuần tự tự động ở trường nào thì thiết lập quy tắc đánh số tương ứng vào trường đó.

Các cách để thiết lập quy tắc đánh số, mỗi cách đáp ứng nhu cầu sử dụng khác nhau như sau:

Dùng mã Sequence Profile

Để thiết lập số tuần tự nhảy tự động cho một trường dữ liệu bất kỳ, nhập Seq.Code (định nghĩa tại pbs.BO.SEQ) vào cột Sequence Profile.

Ví dụ:

Thiết lập số tuần tự nhảy tự động cho trường AddCode của kiểu dữ liệu Tên và địa chỉ

  1. Định nghĩa Sequence Number Definition có mã 'KHSEQ'

  2. Thiết lập quy tắc đánh số tại dòng AddCode của tính năng pbs.BO.LA.NA/KH > Setup > 3.Numbering > Sequence Profile: KHSEQ

Kết quả: Mã khách hàng sẽ là kết quả trực tiếp của profile KHSEQ: KH-0001, KH-0002, KH-0003, ... KH-9999

Dùng Dynamic Seq Profile

Sử dụng khi người thiết kế không biết trước SEQ Profile nào sẽ được sử dụng khi chạy. SEQ Profile chỉ được xác định khi người dùng đã nhập liệu xong → khi thực hiện Lưu form thì SEQ Profile sẽ được xác định dựa theo giá trị nhập vào của một trường dữ liệu nào đó.

Như vậy, có bao nhiêu giá trị được dùng để xác định dãy số tuần tự thì sẽ có bấy nhiêu SEQ Profile được định nghĩa; và các SEQ này sẽ đánh số độc lập với nhau.

Trong trường hợp này SEQ sử dụng phải được xác định bằng công thức ở cột Dynamic Seq Profile.

Ví dụ:

Khi nhập phiếu thu (PT) từ nhiều chi nhánh khác nhau vào cùng một CSDL, PT ở mỗi chi nhánh được đánh số riêng biệt dựa theo mã của từng chi nhánh.

Công ty TNHH ABC có 2 chi nhánh có mã lần lượt là CN1, CN2.

  1. Để thiết lập số tuần tự cho PT thì cần định nghĩa 2 SEQ Profile là PTCN1, PTCN2.

  2. Thiết lập quy tắc đánh số tại tính năng Nhập nhật ký kế toán: pbs.BO.LA.J/PT > Setup > Numbering > Dynamic Sq Profile = công thức

Giả sử AnalT0 là trường lưu thông tin chi nhánh, Treference là trường nhảy số chứng từ PT tự động.

Tại cột Dynamic Seq Profile của dòng Treference, bấm F5 hoặc nút lookup để mở Trình soạn thảo biểu thức:

IF([AnalT0] = 'CN1', 'PTCN1', 'PTCN2')

543900d9-a41f-4b4e-919c-610f46c5c373.pbs_bo_rules_numberingrules_md

Kết quả: Số chứng từ PT sẽ được đánh số liên tục tự động PTCN1-0001, PTCN1-0002 khi AnalT0=CN1PTCN2-0001, PTCN2-0002 khi AnalT0=CN2

Dùng Number Composition

Sử dụng khi yêu cầu tuần tự là một tổ hợp gồm nhiều thành phần, bao gồm nội dung lấy từ một hoặc nhiều trường nhập liệu nào đó, kết hợp với dãy số tuần tự từ Sequence Number Definition:

Như vậy, hệ thống sẽ dùng duy nhất một SEQ Profile để đánh số liên tục cùng với phần nội dung thêm vào.

Trong trường hợp này số tự động phải được xác định bằng công thức ở cột Number Composition, kết hợp với các phương pháp đánh số là Sequence Profile hoặc Dynamic Seq Profile đều được.

Ví dụ:

Cùng một form nhập thông tin khách hàng (pbs.BO.LA.NA/KH), sử dụng cùng một SEQ Profile nhưng khi đánh số tuần tự sẽ phân theo địa điểm của khách hàng: CITYKH-nnnn, trong đó CITY là mã phân tích thành phố và KH-nnnn là dãy số tuần tự.

Giả sử Address6 là trường lưu thông tin phân tích CITY, AddCode là trường nhảy mã khách hàng tự động.

  1. Tạo SEQ Profile 'KHSEQ' để nhảy số tuần tự liên tục có cấu trúc: KH-nnnn

  2. Thiết lập quy tắc đánh số tại dòng AddCode của tính năng nhập thông tin khách hàng: pbs.BO.LA.NA/KH > Setup > Numbering > Sequence Profile: KHSEQ

  3. Thiết lập công thức đánh số tuần tự gồm nhiều thành phần: pbs.BO.LA.NA/KH > Setup > Numbering > Number Composition: công thức

Tại cột Number Composition của dòng AddCode, bấm F5 hoặc nút lookup để mở Trình soạn thảo biểu thức:

[Address6] + ?

c28c6ae1-2311-4e55-a1c4-3aa090d9b695.pbs_bo_rules_numberingrules_md

Kết quả: Mã khách hàng sẽ được đánh số liên tục tự động dựa theo thông tin CITY: HNKH-0001, HCMKH-0002, HCMKH-0003, DNKH-0004, ...

Ta cũng có thể ứng dụng phương pháp này trong việc đánh số chứng từ như PT-YY-MM-nnnn

Xem thêm



Updated on : 2021-06-07 11:05:31. by : . at T470-01.

Topic : . pbs.bo.rules.numberingrules