Thêm nhanh các dòng dữ liệu từ một danh sách

Navigation:  Các công cụ phát triển phần mềm > Nhập liệu (Data Entry) >

Thêm nhanh các dòng dữ liệu từ một danh sách

Previous pageReturn to chapter overviewNext page
Show/Hide Hidden Text

Thêm nhanh các dòng dữ liệu từ một danh sách là gì?

Đối với các dạng dữ liệu có cấu trúc Header-Detail, ở bảng dữ liệu chi tiết trên form nhập liệu, đòi hỏi người dùng phải nhập liệu từng dòng một, đối với lượng dữ liệu lớn, có nhiều dòng... điều này sẽ gây khó khăn, mất thời gian rất nhiều.

Tính năng Thêm nhanh các dòng dữ liệu từ một danh sách sẽ khắc phục triệt để vấn đề này, cho phép chọn các dòng từ một danh sách cho trước để điền vào. Đây là cách nhập liệu nhanh, cải thiện tốc độ cho bảng dữ liệu trên form.

Mục đích: phương pháp này dùng để gọi lên một nguồn dữ liệu được thiết lập trước ra để phục vụ cho mục đích nhập liệu.

form_addgrid_001_zoom20 form_addgrid_002_zoom20

Ưu điểm:

 Giúp tăng tốc nhập liệu cho phần bảng dữ liệu trên form

 Có thể gọi từ bất kỳ nguồn dữ liệu nào thông qua PhoebusDataURL

 Hoặc tải nhập dữ liệu trực tiếp ở các bảng có cấu trúc phù hợp từ Excel, Word, Website, ...

 Có thể mặc định giá trị cần nhập vào bảng cho tất cả các dòng được chọn

 Kết hợp với PhoebusSurvey để hỏi người dùng kết quả sẽ điền vào

 

Thiết kế menu gọi lệnh để chọn danh sách trên form

Trên form nhập liệu, cần thực hiện các thao tác sau:

1.Bật chế độ "design" \ Bố cục (Tùy biến giao diện).
DDBCustomization \ Lines \ 5.Commands \ DrillDownCommands
form_addgrid_004_zoom20

2.Tại màn hình Menu thiết lập câu lệnh (ContextMenuURLCommand Collection Editor)
form_addgrid_005_zoom70
 
Bảng tổng hợp các dạng câu lệnh trên menu (Xem chi tiết ở phần Các cách thiết lập để thêm dòng dữ liệu bên dưới).

Add/Remove

Thêm/Xóa lệnh.

Caption

Diễn giải cho câu lệnh

Image

Chọn hình icon mô tả câu lệnh, trong ví dụ này kích thước icon là 24x24 pixel.

UrlCommand: Các dạng câu lệnh để thêm nhanh các dòng dữ liệu từ một danh sách.

phoebus://Add

Thêm dòng từ profile Biến chuyển dữ liệu (VUH).

phoebus://Add?Vuh=[ViewCode]

Thêm dòng từ một danh sách dữ liệu - Phoebus DataUrl.

phoebus://Add?lookupset=[DataUrl]

Thêm dòng dữ liệu từ template excel.

phoebus://Add?&$template=____&$namerange=____&$show=Y
&$confirmation=____&[tham_số]

Bảng chạy ra cho chọn sẽ theo biến số trên phần Header.

phoebus://Add?&[field_name]=H.[header_field_name]&[tham_số]

phoebus://Paste

Read clipboard dữ liệu.

phoebus://Paste

phoebus://Edit

 

phoebus://Edit

 

3. Sau khi thiết lập câu lệnh, click chuột phải vào bảng nhập liệu trên form, chọn câu lệnh để chạy.
form_addgrid_001_zoom20

 

 

Các cách thiết lập để thêm dòng dữ liệu

Có 2 cách chính sau đây:

<%EXTOGGLE%>phoebus://Add

Phần này có 3 cách để Add dòng dữ liệu vào bảng, thiết lập mỗi cách như sau:

tipbulb           pbs.BO.DATA.VUH

Câu lệnh mở tính năng View URL Header.

Khi chọn Nguồn dữ liệu (field Data Url), các cột của Kiểu dữ liệu được chọn nhiều khi không giống với các cột của kiểu dữ liệu muốn nhập vào nên cần phải qua bước biến chuyển dữ liệu. Đây là bước khai báo profile biến chuyển dữ liệu (Vuh), giúp biến chuyển (mapping) một kiểu dữ liệu nào đó thành kiểu dữ liệu cần xem.

Định dạng nguồn dữ liệu: xác định nguồn dữ liệu sẽ dùng để ghi vào bảng bên dưới, có thể thiết lập nhiều nguồn dữ liệu (nhiều profile) cùng lúc để người dùng lựa chọn để liệt kê ra những danh sách từ nhiều nguồn dữ liệu khác nhau. Ví dụ: chọn danh sách vật tư trong kho, hoặc chọn danh sách tài sản, hoặc chọn danh sách những hàng hóa đang chuyển, ...

Ví dụ, bảng nhập liệu là pbs.BO.PO.PO (Chi tiết Mua hàng), ở bảng chi tiết của bảng này cần thêm các dòng dữ liệu từ pbs.BO.PB.IR (Hàng hóa vật tư). Nhưng các cột từ kiểu dữ liệu của IR không giống với ở PO, nên cần phải thực hiện bước biến chuyển nguồn dữ liệu (mapping) từ IR vào PO.

Chi tiết cách thiết lập tại profile biến chuyển dữ liệu như sau:

Header

View Code

Đặt mã cho VUH profile.

Data Url

Chọn danh sách nguồn dữ liệu để để biến chuyển thành kiểu dữ liệu ở bảng detail bên dưới của form.

Xem thêm về PhoebusDataUrl tại đây.

Show List To User

Tick nut_tick khi chọn lệnh mở danh sách ở form, chương trình sẽ hiện ra bảng dữ liệu để hỏi người dùng chọn các dòng cần thiết đưa vào bảng.

Nếu không tick, mặc định sẽ lấy toàn bộ các dòng của bảng dữ liệu vào bảng detail ở form nhập liệu, điều này có thể làm chậm đi quá trình làm việc nếu lượng dữ liệu được thêm vào lớn.

Transform Target

Chọn dạng kiểu dữ liệu mục tiêu được biến chuyển từ kiểu dữ liệu đã chọn ở mục Data Url

Nhóm truy cập

Chọn nhóm truy cập được phép xem profile VUH này.

Tạm treo

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

  (Working): đang hoạt động

S (Record Suspended): tạm treo

C (Record Closed): đóng

Cập nhật lần cuối

Thời gian profile VUH được cập nhật lần cuối.

Detail (table): sau khi chọn Data Url trên phần Header thì phần Detail 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.

Target Field Name

Các cột của kiểu dữ liệu đích đến chọn từ Transform Target.

Source Field Name

Mapping các cột của kiểu dữ liệu Transform Target vào kiểu dữ liệu nguồn chọn từ Data Url.

Trường hợp muốn gán một giá trị cố định cho một cột dữ liệu mục tiêu nào đó, cấu trúc như sau "___"
Phần nằm trong dấu "" sẽ là dự liệu cố định cần điền vào.

Diễn giải

Diễn giải cho các cột của Kiểu dữ liệu được chọn từ Data Url.

 

form_addgrid_003_zoom55

Thiết lập lệnh ở menu trên form

 

phoebus://Add?Vuh=[ViewCode]

phoebus://Add?

Lệnh để chạy thêm dòng dữ liệu vào bảng.

Vuh=_____

Mã của Vuh profile.

 

1. Định nghĩa profile biến chuyển dữ liệu.

form_addgrid_003_zoom20

2. Trên form, chọn Tùy biến giao diện \ DDBCustomization \ Lines \ 5.Commands \ DrillDownCommands

form_addgrid_005_zoom38

3. Click chuột phải vào bảng (phần Detail trên form), chọn Lệnh vừa tạo ở Menu.

--> Xuất hiện bảng dữ liệu chứa các dòng của danh sách nguồn đã được định nghĩa ở Vuh.

--> Bấm OK, những dòng đã chọn ngay lập tức sẽ được thêm vào bảng nhập liệu.

form_addgrid_001_zoom20

prod_tip        PhoebusDataURL

 

Xem thêm bài viết về PhoebusDataUrl tại đây.

Ngoài cách trên, còn có thể thiết lập trực tiếp bằng PhoebusDataUrl mà không cần định nghĩa profile Biến chuyển dữ liệu (Vuh).

Điều kiện là danh sách dữ liệu được chọn phải có cấu trúc các cột giống với cấu trúc của bảng trên form nhập liệu.

Thiết lập lệnh ở menu trên form

 

phoebus://Add?lookupset=[DataUrl]

phoebus://Add?

Lệnh để chạy thêm dòng dữ liệu vào bảng.

lookupset=_____

Chọn danh sách DataUrl.

 

1. Trên form, chọn Tùy biến giao diện \ DDBCustomization \ Lines \ 5.Commands \ DrillDownCommands

form_addgrid_007_zoom38

3. Click chuột phải vào bảng (phần Detail trên form), chọn Lệnh vừa tạo ở Menu.

--> Xuất hiện bảng dữ liệu chứa các dòng của danh sách đã được chọn ở bước 1.

--> Bấm OK, những dòng đã chọn ngay lập tức sẽ được thêm vào bảng nhập liệu.

form_addgrid_001_zoom20

Thay vì cần phải thông qua Vuh hoặc lấy trực tiếp từ DataUrl, thì cách thứ 3 là thông qua một template excel.

Chú ý: bảng dữ liệu từ template phải có tên cột giống với tên cột trên bảng ở form, điều này có ý nghĩa như mapping trực tiếp trên template.

Thiết lập lệnh ở menu trên form

 

phoebus://Add?&$template=_____&$namerange=_____&$show=Y&$confirmation=_____&[tham_số]

phoebus://Add?

Lệnh để chạy thêm dòng dữ liệu vào bảng.

&$template=

Khi chạy lệnh, chương trình sẽ chạy template đã khai báo.

&$tnamerange=

NameRange trên template sẽ được đọc thành dạng bảng.

&$show=Y

Khi chọn lệnh Add, sẽ hiện ra bảng cho người dùng tick chọn các dòng cần đưa vào.

&$confirmation=

Nếu để trống thì sẽ lấy theo header của bảng.

&[tham_số]

Các tham số điều kiện nếu có.

 

1. Chuẩn bị file template excel, lấy dữ liệu từ chương trình.

Các cột ở dòng tiêu đề của bảng trên template phải trùng với Mã của các cột ở bảng trên form.

Phần namerange phải dư ra thêm một dòng so với dòng cuối dùng của bảng.

form_addgrid_008_zoom28

 

2. Trên form, chọn Tùy biến giao diện \ DDBCustomization \ Lines \ 5.Commands \ DrillDownCommands

form_addgrid_009_zoom38

 

3. Click chuột phải vào bảng (phần Detail trên form), chọn Lệnh vừa tạo ở Menu.

--> Xuất hiện bảng dữ liệu chứa các dòng chạy ra từ template để người dùng tick chọn.

--> Bấm OK, những dòng đã chọn ngay lập tức sẽ được thêm vào bảng nhập liệu.

form_addgrid_010_zoom20

Ngoài 3 cách chính trên, còn có thêm một trường hợp khác như sau: danh sách dữ liệu chạy ra cho chọn sẽ phụ thuộc vào biến số trên phần Header.

phoebus://Add?&[field_name]=H.[header_field_name]&[tham_số]

phoebus://Add?

Lệnh để chạy thêm dòng dữ liệu vào bảng.

&field_name=H.____

Trong đó:

- FieldName: tên cột trong bảng dữ liệu

- H.__________: tên field dữ liệu dùng làm biến số trên phần Header của form.

&[tham_số]

Các tham số điều kiện nếu có.

 

<%EXTOGGLE%>phoebus://Paste

Tương tự như phương pháp tải nhập từ excel "Read clipboard", nhưng ở đây dữ liệu có thể từ các nguồn đa dạng hơn như Excel, Word, Website,...

Chú ý: bảng dữ liệu từ các nguồn này bắt buộc có cấu trúc phù hợp: tên cột phải giống với tên cột trên bảng ở form.

Thiết lập lệnh ở menu trên form

 

phoebus://Paste

phoebus://Paste

Lệnh để chạy thêm dòng dữ liệu vào bảng.

 

1. Trên form, chọn Tùy biến giao diện \ DDBCustomization \ Lines \ 5.Commands \ DrillDownCommands

form_addgrid_012_zoom38

 

2. Chuẩn bị bảng dữ liệu từ bất kỳ các nguồn nào (excel, world, website, ...).

Quét chọn và Copy vùng dữ liệu, bao gồm Tiêu đề.

form_addgrid_011_zoom28

 

3. Click chuột phải vào bảng (phần Detail trên form), chọn Lệnh vừa tạo ở Menu.

--> Ngay lập tức, các dòng dữ liệu đã Copy ở bước 2 sẽ được chèn vào bảng.

form_addgrid_013_zoom20

 

Các thao tác khác

Ngoài các thao tác tạo Menu lệnh, click phải vào bảng và chọn lệnh để thêm các dòng từ một danh sách,... thì tại bảng nhập liệu chi tiết trên form Header-Detail còn có các thao tác cần chú ý như sau:

<%EXTOGGLE%>Tick chọn nhiều dòng

Cột tick nut_tick chọn nhiều dòng dữ liệu cùng lúc phục vụ cho các thao tác copy, paste, delete, ...

Để hiển thị cột này, click đôi chuột vào bất kỳ vị trí nào tại cột trống đầu tiên của bảng:

form_addgrid_014_zoom25

Người sử dụng có thể tick chọn từng dòng, hoặc nhiều dòng bằng các cách sau:

- Tick vào ô nut_untick trên thanh tiêu đề để chọn/bỏ chọn tất cả các dòng đang có.

-  Bấm vào nútnut_chonở đầu dòng sau đó kéo xuống đến vị trí dòng cần chọn.

-  Hoặc dùng tổ hợp phím Ctrl+A để chọn tất cả các dòng.

<%EXTOGGLE%>Bản sao & Paste

Đây là lệnh của hệ thống, nguyên tắc hoạt động copy và paste tương tự như trên excel.

form_addgrid_016_zoom80

Nhân đôi các dòng hiện có bằng cách:

1. Tick chọn dòng cần tạo bản sao, click chuột phải chọn Bản sao.

form_addgrid_017_zoom30

2. Click chuột phải vào bảng, chọn Paste để dán dòng vừa copy, các dòng mới được dán vào sẽ được chèn vào cuối cùng của bảng.

form_addgrid_018_zoom30

3. Ngoài ra, còn có thể tick chọn dòng --> click phải chọn Bản sao --> Paste ra file excel, chỉnh sửa và copy - paste vào bảng.

<%EXTOGGLE%>Delete Selected Rows

form_addgrid_015_zoom60

Để xóa các dòng dữ liệu đã thêm vào trong bảng, tick chọn các dòng cần xóa và thực hiện các thao tác xóa như sau:

-  Click chuột phải, chọn Delete Selected Rows

-  Bấm phím Delete trên bàn phím để xóa dòng đã chọn.

 

 

________________________

Updated date: 24/08/2015