> ## Documentation Index
> Fetch the complete documentation index at: https://learn.cleeksy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Mã vạch / QR (Barcode / QR)

> Lưu và quét mã Barcode/QR trong dữ liệu.

Barcode/QR là Field dùng để lưu hoặc hiển thị giá trị **mã vạch / QR** phục vụ nhận diện nhanh bằng thiết bị quét. Field này thường dùng trong các app quản lý tài sản, kho, giao nhận, check-in, hoặc quản lý hồ sơ vật lý.

## Dùng khi nào?

* Cần **định danh** record ngoài đời thực (asset, kiện hàng, thẻ ra vào…)
* Cần thao tác nhanh bằng quét mã thay vì tìm kiếm thủ công
* Cần in nhãn (label) hoặc hiển thị mã trên màn hình để quét

## Thiết kế dữ liệu gợi ý

### 1) Mã do hệ thống tạo

* Tạo **Auto number** làm mã tham chiếu (ví dụ `ASSET-000123`)
* Dùng Barcode/QR để hiển thị dạng mã quét từ mã tham chiếu đó (tuỳ cơ chế hiển thị)

Liên quan: [Đánh số tự động (Auto number)](/build-apps/data-modeling/auto-number)

### 2) Mã do bên ngoài cung cấp

* Lưu giá trị mã quét được vào Barcode/QR hoặc Text (tuỳ loại field)
* Dùng validation để đảm bảo mã không bị trùng (nếu có ràng buộc nghiệp vụ)

## Pattern thường dùng

### Pattern A — “Asset tag”

* Entity: Asset
* Fields: Asset code (Auto number), Barcode/QR, Owner (User/People), Location

### Pattern B — “Scan-to-open”

* Quét mã → mở đúng record để xử lý (check-in/check-out, bảo trì, giao nhận)

## Lưu ý vận hành

* Chốt quy tắc “mã là duy nhất” và cách cấp mã (tự sinh hay nhập)
* Với quy trình nhạy cảm (giao nhận/kiểm kê), cần controls rõ:
* ai được đổi mã
* khi nào được đổi (theo trạng thái workflow)

Liên quan: [Controls trong hệ thống (workflow vs validation vs roles)](/foundations/controls-in-system)

## Bước tiếp theo

* Chuẩn hoá mã tham chiếu: [Đánh số tự động (Auto number)](/build-apps/data-modeling/auto-number)
* Theo dõi nơi chốn: [Vị trí (Location)](/build-apps/data-modeling/location)
