Trường hidden lưu trữ một giá trị không bao giờ được hiển thị cho người trả lời. Không giống như calculate (tính toán một giá trị), hidden được dùng để mang vào một giá trị được cung cấp từ bên ngoài — ví dụ: ID nhiệm vụ, ID hộ gia đình được truyền từ hệ thống khác, hoặc mã người điều tra được đưa vào khi biểu mẫu được khởi chạy.

Cấu hình XLSForm cơ bản

typenamelabel
hiddenhousehold_id

Nhãn không bắt buộc cho trường hidden vì không có gì được hiển thị trên màn hình.

Ứng dụng

Trường hidden thường được dùng cho:

  1. Truyền ID được gán trước từ hệ thống quản lý khảo sát (ví dụ: ID hộ gia đình, số hồ sơ, mã nhiệm vụ)
  2. Lưu trữ phiên bản biểu mẫu hoặc siêu dữ liệu triển khai
  3. Đưa vào cấu hình riêng của người điều tra khi khởi chạy biểu mẫu
  4. Mang dữ liệu từ biểu mẫu cha sang biểu mẫu con trong quy trình làm việc liên kết
  5. Lưu trữ giá trị lấy từ tham số URL khi biểu mẫu được mở qua liên kết web

Đặt giá trị mặc định

Mẫu phổ biến nhất là dùng hidden với biểu thức default để giá trị được đặt khi biểu mẫu mở:

typenamedefault
hiddendeployment_code‘ZONE_A_2024’
hiddenform_version‘3.1’

Tham chiếu trường hidden trong phép tính

Giá trị hidden có thể được tham chiếu như bất kỳ trường nào khác bằng ${fieldname}:

typenamelabelcalculation
hiddenzone_code
calculatelabel_prefixconcat(’[’, ${zone_code}, ‘] ‘)
noteintro${label_prefix} Chào mừng đến với khảo sát hộ gia đình

Dùng hidden với điền sẵn / tham số URL

Khi khởi chạy biểu mẫu web qua URL, bạn có thể truyền tham số để điền vào các trường hidden. Điều này cho phép bạn tải trước ID hộ gia đình hoặc mã nhiệm vụ mà không cần người điều tra nhập thủ công:

  https://your-server.com/form/FORMID?household_id=H00123&zone_code=NORTH
  

Trường có tên household_id sẽ được tự động điền bằng H00123.

Thực hành tốt

  1. Dùng hidden (không phải calculate) khi giá trị được đưa vào từ bên ngoài và không nên được tính lại.
  2. Dùng calculate khi giá trị được suy ra từ các trường khác trong biểu mẫu.
  3. Luôn đặt default nếu trường hidden phải có giá trị — trường hidden không có default sẽ trống.
  4. Đặt tên trường hidden rõ ràng để phân biệt chúng (ví dụ: thêm tiền tố _hidden_ hoặc dùng quy ước đặt tên nhất quán).

Giới hạn

  • Trường hidden được bao gồm trong dữ liệu xuất giống như bất kỳ trường nào khác.
  • Chúng không thể được hiển thị có điều kiện — chúng luôn hiện diện (nhưng vô hình).
  • Nếu bạn cần một trường tính toán động, hãy dùng calculate thay thế.
Trang này có hữu ích không?