Cách liên kết và cập nhật dữ liệu từ nhiều table trong Appsheet

Nội dung được viết bởi Kim Thu

Database trong Appsheet là một tập hợp các dữ liệu được tổ chức theo một cấu trúc nhất định, cho phép người dùng truy cập và quản lý thông tin trên ứng dụng của họ một cách hiệu quả.

Vậy làm thế nào để tạo ra mối quan hệ giữa các bảng khác nhau để Appsheet liên kết và cập nhật dữ liệu? Cùng Gitiho tìm hiểu cách liên kết và cập nhật dữ liệu từ nhiều table trong Appsheet nhé!

Database và Reference trong Appsheet

Kiểu dữ liệu cho phép tạo ra mối quan hệ giữa các bảng khác nhau trong Google Appsheet đó là “ref”. Bằng cách chỉ định một cột trong bảng này chứa một giá trị tương ứng với một hàng trong bảng khác, bạn có thể dễ dàng tạo ra liên kết giữa các bảng.

Tuy nhiên, để sử dụng kiểu dữ liệu “ref”, bạn cần tạo ra mối liên hệ giữa các bảng cần liên kết trước khi dùng nó trong các bảng khác. Ngoài ra, bạn cũng có thể sử dụng các hàm liên quan đến quan hệ (ví dụ: RELATED) để truy vấn các dữ liệu từ bảng liên quan.

Kiểu liên kết bảng trong Appsheet thường thấy là kiểu 1-n hoặc 1-, có nghĩa là liên kết một - nhiều. Bởi vậy, bạn có thể liên kết một hàng trong bảng này với nhiều hàng trong bảng khác.

Mối quan hệ giữa các bảng dữ liệu
Mối quan hệ giữa các bảng dữ liệu

Ví dụ: Trong quá trình tạo ứng dụng quản lý đơn hàng, bạn có thể thấy rằng một khách hàng có thể có nhiều đơn hàng. Và bảng “Khách hàng” liên kết với bảng “Đơn hàng” bằng cột “kh_d”. 

Đây là một cột ở trong bảng con (Đơn hàng) chứa các giá trị khóa chính trong bảng cha (Khách hàng). Nếu có một khách hàng bị xóa khỏi bảng Khách hàng thì tất cả giá trị đơn hàng của khách hàng đó sẽ bị xóa trong bảng Đơn hàng.

Liên kết dữ liệu giữa bảng khách hàng và đơn hàng
Liên kết dữ liệu giữa bảng khách hàng và đơn hàng

Các liên kết bảng trong Appsheet

Như vừa đề cập ở phần trên, để liên kết từ bảng này tới bảng khác ta sẽ dùng kiểu dữ liệu “ref”. Các bước làm cụ thể bao gồm:

Vào menu Data trong trình chỉnh sửa ứng dụng của Appsheet, chọn bảng cần liên kết dữ liệu.

chọn bảng cần liên kết dữ liệu
chọn bảng cần liên kết dữ liệu

Chọn vào biểu tượng Edit của cột muốn liên kết.

Tùy chọn edit cột dữ liệu trong data
Tùy chọn edit cột dữ liệu trong data

Trong phần Type chọn Ref.

Tùy chọn Ref cho dữ liệu
Tùy chọn Ref cho dữ liệu

Tích chọn “Is a part of?” cho phần liên kết (bạn có thể chọn tùy chọn này hoặc không). Có nghĩa là:

Đây là tùy chọn cho phép người dùng xóa các dòng dữ liệu liên quan hay không. Ví dụ ở bảng Khách hàng ta chọn “Is a part of?”, thì khi xóa một id khách hàng (ví dụ KH02) ở bảng này thì toàn bộ đơn hàng của KH02 ở bảng Đơn hàng sẽ bị xóa theo và không thể khôi phục lại.

Bảng dữ liệu Khách hàng
Bảng dữ liệu Khách hàng
Bảng dữ liệu đơn hàng
Bảng dữ liệu đơn hàng

Ở trên ta có thể dễ dàng liên kết thông tin giữa Khách hàng và Đơn hàng qua ID. Tuy nhiên, khi cần sử dụng thông tin từ khách hàng đó như địa chỉ giao hàng, người liên hệ, chúng ta cần làm như nào? Để sử dụng thông tin có sẵn từ bảng cha, chúng ta chỉ cần viết hàm như sau:

[key_id].[Thông tin cần lấy từ Khách hàng]

Chẳng hạn, muốn lấy thông tin “ten” ở bảng cha thì ta chỉ cần gõ (kh_id].[ten]

Lấy thông tin từ bảng cha cho bảng con
Lấy thông tin từ bảng cha cho bảng con

Còn khi cần cập nhật dữ liệu từ nhiều bảng, ta dùng công thức sau:

[bang_1_id].[bang_2_id].[bang_3_id]

Lưu ý: Khi update dữ liệu một dòng ở bảng cha, các dòng ở bảng con sẽ không tự động thay đổi. Bởi vậy, chúng ta cần cài đặt cập nhật thông tin cho bảng con.

Các cập nhật dữ liệu từ bảng con

Ta có nguyên tắc update trong Appsheet: trong formula nếu một cột thay đổi thì tất cả các cột đều thay đổi.

Do đó, để update một dòng dữ liệu chúng ta chỉ cần tạo thêm một cột là “update” sau đó tạo một action update và set value cho cột update này bằng =now(). Sau khi cài đặt xong, các dòng dữ liệu ở bảng con sẽ được update khi bảng cha thay đổi.

Cài đặt cập nhật dữ liệu liên tục
Cài đặt cập nhật dữ liệu liên tục

Để cập nhật dữ liệu từ bảng khác vào bảng Đơn hàng, chúng ta sử dụng một action gọi là "excute an action on a set of rows". Action này sẽ thực hiện một loạt các hành động trên các dòng được chỉ định.

Cập nhật dữ liệu từ bảng khác vào bảng Đơn hàng
Cập nhật dữ liệu từ bảng khác vào bảng Đơn hàng

Để cập nhật dữ liệu nhanh chóng, chúng ta có thể gắn action này trực tiếp vào form.

gắn action này trực tiếp vào form
gắn action này trực tiếp vào form

Tuy nhiên, cần lưu ý rằng việc gắn action vào form sẽ không hoạt động khi chúng ta xóa dòng. Do đó, chúng ta cần tạo một tự động hóa automation để cập nhật khi xóa dữ liệu.

Cài đặt tự động cập nhật dữ liệu
Cài đặt tự động cập nhật dữ liệu

Kết luận

Trong bài viết này, chúng tôi hướng dẫn bạn cách liên kết và cập nhật dữ liệu từ nhiều bảng khác nhau trong Appsheet. Hy vọng rằng bạn có thể áp dụng hiệu quả những kiến thức này  trong quá trình quản lý và tối ưu hóa dữ liệu cho ứng dụng của bạn.

Để hiểu rõ hơn cách làm việc với dữ liệu trên Appsheet, cũng như tạo và tùy chỉnh một giao diện(view), hành động (action), hay quy trình tự động hóa,... cho ứng dụng, bạn có thể tham khảo khóa học Làm chủ Google Appsheet từ cơ bản tới nâng cao của Gitiho.

1,900,000đ 2,000,000đ

Khóa học bao gồm 55 bài giảng và 12 giờ học giúp bạn nhanh chóng nắm vững được các kiến thức để tạo một ứng dụng bằng Appsheet mà không cần biết lập trình. Đăng ký và học ngay cùng Gitiho để được giảm giá 30% bạn nhé!

Gitiho đã cho ra mắt khóa học Google Sheets từ Cơ bản đến Nâng cao, công cụ thay thế Excel giúp bạn hoàn toàn có thể tự tin phân tích và xử lý dữ liệu trên Google Sheet, lập bảng biểu, báo cáo trực quan và hơn thế nữa. Bấm vào để học thử ngay!

/5 - ( bình chọn)

/5 - ( bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông