Giao diện
Đơn hàng (SO)
Đơn hàng bán (Sales Order, mã SO0001, SO0002…) là chứng từ đầu tiên của chuỗi sản xuất: khách đặt hàng, người có quyền duyệt xem xét, rồi mới đến lệnh sản xuất và giao hàng. Thuật ngữ xem ở Phụ lục.
Trang này hướng dẫn tạo đơn, gửi duyệt, duyệt hoặc từ chối, và xoá đơn. Phần tra cứu (quyền, trạng thái, lỗi) nằm ở cuối trang.
Trước khi bắt đầu
Khách hàng và sản phẩm phải có sẵn trong danh mục. Bài này dùng ví dụ: khách CARLSON HOLDING GROUP, sản phẩm CARLO - METAL CHAIR - MCH107 (mã CL-MF-17-001).
1. Mở danh sách đơn hàng
Ở menu bên trái, chọn Quản lý bán hàng → Đơn hàng (SO).

| # | Thành phần | Cách dùng |
|---|---|---|
| 1 | Sáu thẻ thống kê | Tổng đơn hàng, Tổng giá trị, Đã giao, Đang thực hiện, Trễ hạn, Hoàn thành. Tính theo bộ lọc đang chọn. |
| 2 | Tìm kiếm | Gõ mã SO, số PO, tên hoặc mã khách hàng, tên hoặc mã sản phẩm. |
| 3 | Ngày giao | Chọn khoảng ngày giao hàng. |
| 4 | Trạng thái | Lọc theo trạng thái đơn. |
| 5 | NV kinh doanh | Lọc theo nhân viên phụ trách. |
| 6 | Xuất | Xuất biểu mẫu PDF hoặc danh sách Excel cho các dòng đã tích chọn. |
| 7 | Làm mới | Tải lại dữ liệu. |
| 8 | Tạo đơn hàng | Mở màn hình tạo đơn. |
| 9 | Bảng đơn hàng | Mỗi dòng một đơn. Ngày giao quá hạn hiện màu đỏ. |
| 10 | Phân trang | Số bản ghi và số dòng mỗi trang. |
Bảng rộng
Bảng cần chiều ngang khoảng 1700 px. Màn hình nhỏ hơn sẽ phải cuộn ngang mới thấy cột Trạng thái và Thao tác. Bấm nút ≡ ở góc trên để thu gọn menu bên trái, có thêm chỗ cho bảng.
Để lọc theo trạng thái, bấm ô Trạng thái và chọn một giá trị:

2. Tạo đơn hàng
Bấm Tạo đơn hàng. Màn hình có ba bước: ① Thông tin chung → ② Chọn sản phẩm → ③ Số lượng, giá & xác nhận.
Bước ① Thông tin chung
- Bấm ô Khách hàng, tìm "CARLSON" và bấm vào khách. Địa chỉ giao hàng tự điền.
- Nhập PO
DEMO-HDSD-03. - Chọn Ngày đặt hàng
16/10/2026và Ngày giao hàng yêu cầu30/10/2026. - Bấm Tiếp theo: Chọn sản phẩm.

Hộp chọn khách hàng, có nút Thêm khách hàng nếu khách chưa có:

| # | Trường | Bắt buộc | Ràng buộc | Ghi chú |
|---|---|---|---|---|
| 1 | Khách hàng | Có | Chọn từ danh sách | Tìm theo mã, tên, người liên hệ, số điện thoại. |
| 2 | Người liên hệ | Chọn trong liên hệ của khách | Hiện sau khi chọn khách. | |
| 3 | Nhân viên kinh doanh | Chọn nhân sự | Người phụ trách đơn. | |
| 4 | PO | Tối đa 100 ký tự | Số đơn đặt hàng của khách. | |
| 5 | Ngày đặt hàng | Có | Ngày | |
| 6 | Ngày giao hàng yêu cầu | Có | Ngày | |
| 7 | Địa chỉ giao hàng | Tối đa 500 ký tự | Nút "Lấy theo địa chỉ khách hàng" điền lại địa chỉ gốc. | |
| 8 | Điều khoản thanh toán | TT ngay, 15, 30 hoặc 60 ngày | Mặc định "TT ngay". | |
| 9 | Tiền tệ | Có | VND, USD, EUR, JPY, CNY, KRW | Mặc định VND. |
| 10 | Tỷ giá quy đổi (so với VND) | Có | Số dương | Mặc định 1. |
| 11 | Ghi chú in trên đơn hàng (Công khai) | Tối đa 1000 ký tự | In trên biểu mẫu gửi khách. | |
| 12 | Ghi chú nội bộ (Bảo mật) | Tối đa 1000 ký tự | Không hiện cho khách. | |
| 13 | Thông báo "Đã tự động điền địa chỉ…" | Hiện tạm ở góc dưới phải sau khi chọn khách. |
Nút Tiếp theo bị khoá cho đến khi điền đủ các trường có dấu *.
Bước ② Chọn sản phẩm
- Gõ
CL-MF-17-001vào ô tìm kiếm. - Tích ô chọn ở đầu dòng sản phẩm. Dòng trên bảng hiện Đã chọn 1 sản phẩm.
- Bấm Tiếp theo: Số lượng, giá & xác nhận.

| # | Thành phần | Cách dùng |
|---|---|---|
| 2 | Tạo sản phẩm | Tạo nhanh sản phẩm chưa có trong danh mục. |
| 3 | Ô tích chọn | Tích để thêm, tích lại để bỏ. |
| 4 | Ô tìm kiếm | Lọc theo mã hoặc tên. |
| 5 | Quay lại | Về bước ①, dữ liệu giữ nguyên. |
| 6 | Tiếp theo: Số lượng, giá & xác nhận | Cần chọn ít nhất một sản phẩm. |
Cột "Khả dụng"
Con số này có thể không bằng Tồn kho trừ Đã giữ (ví dụ tồn 205, đã giữ 100, khả dụng −405). Đừng dùng nó để quyết định đủ hàng hay không, hãy xem màn Tồn kho thành phẩm.
Bước ③ Số lượng, giá & xác nhận
- Nhập Số lượng
5. - Nhập Đơn giá
2.500.000. - Nhập Thuế VAT (%)
8. - Bấm sang ô khác để khối tổng tiền cập nhật.
- Kiểm tra: Tổng tiền hàng 12.500.000, Thuế VAT +1.000.000, Tổng thanh toán 13.500.000 VND.
- Bấm Tạo đơn hàng.

Đơn mới có trạng thái Nháp và hệ thống chuyển sang màn chi tiết.
| # | Trường | Ràng buộc | Thông báo khi sai |
|---|---|---|---|
| 1 | Số lượng (từng dòng) | Lớn hơn 0 | "Số lượng phải lớn hơn 0" |
| 2 | Đơn giá (VND) | Từ 0 trở lên | "Đơn giá không được âm" |
| 3 | CK (%) chiết khấu dòng | 0 đến 100 | "Chiết khấu phải trong khoảng 0-100" |
| 4 | Ghi chú dòng | Tối đa 500 ký tự | "Ghi chú tối đa 500 ký tự" |
| 5 | Tài liệu đính kèm | Hình ảnh, CAD, PDF, Word, Excel, ZIP, tối đa 10 MB mỗi tệp | Kéo thả hoặc bấm "chọn tệp" |
| 6 | Loại chiết khấu (cả đơn) | % hoặc Số tiền | |
| 7 | Giá trị chiết khấu | Từ 0 trở lên | "Chiết khấu không được âm" |
| 8 | Thuế VAT (%) | 0 đến 100 | "VAT phải trong khoảng 0-100" |
| 9 | Phí vận chuyển (VND) | Từ 0 trở lên | "Phí vận chuyển không được âm" |
| 10 | Khối Thanh toán | Chỉ đọc ở phần tổng | Tổng tiền hàng, Chiết khấu, Thuế VAT, Phí vận chuyển, Tổng thanh toán (số tạm tính) |
| 11 | Quay lại | Về bước ② | |
| 12 | Đặt lại | Xoá dữ liệu đã nhập | |
| 13 | Lưu nháp | Lưu bản nháp trên trình duyệt này, chưa tạo đơn | |
| 14 | Tạo đơn hàng | Tạo đơn thật ở trạng thái Nháp |
Nhập đơn giá
Khi ô đang hiện 0, hãy xoá số 0 trước (phím Backspace) rồi mới gõ số. Gõ thẳng vào ô có thể ra số lớn gấp 10 lần hoặc về 0. Luôn nhìn Thành tiền và Tổng thanh toán trước khi bấm Tạo đơn hàng.
Lưu nháp chỉ nằm trên máy
Đổi máy hoặc xoá dữ liệu trình duyệt là mất. Muốn lưu thật, bấm Tạo đơn hàng (đơn ở trạng thái Nháp, vẫn sửa tự do).
3. Gửi duyệt
- Mở đơn ở trạng thái Nháp (bấm mã đơn trong danh sách).
- Bấm Gửi duyệt.
- Trong hộp thoại "Gửi duyệt đơn hàng này?", bấm Gửi duyệt.

Trạng thái đổi thành Chờ xác nhận và hai nút Từ chối, Duyệt xuất hiện cho người có quyền duyệt.

TIP
Hệ thống không báo "thành công" sau khi gửi duyệt. Hãy nhìn nhãn trạng thái ở đầu trang để biết kết quả.
4. Duyệt hoặc từ chối
Duyệt
- Mở đơn ở trạng thái Chờ xác nhận.
- Bấm Duyệt, rồi bấm Duyệt trong hộp thoại.

Đơn chuyển sang Chờ sản xuất. Các nút Gửi duyệt, Duyệt, Từ chối, Xoá biến mất.

Từ chối
- Mở đơn ở trạng thái Chờ xác nhận.
- Bấm Từ chối.
- Nhập lý do vào ô Lý do từ chối (bắt buộc, tối đa 1000 ký tự), ví dụ "Sai đơn giá, vui lòng kiểm tra lại."
- Bấm Từ chối trong hộp thoại.
Nếu bấm khi chưa nhập lý do, hệ thống báo "Vui lòng nhập lý do từ chối" và giữ hộp thoại mở:


Đơn chuyển sang Từ chối, lý do hiện trên màn chi tiết để nhân viên kinh doanh sửa. Sau khi sửa, bấm Gửi duyệt lại.

5. Xem chi tiết đơn
Bấm mã đơn trong danh sách.

| # | Khối | Nội dung |
|---|---|---|
| 1 | Nhãn trạng thái | Cạnh mã SO; dưới là "Tạo bởi … · ngày giờ". |
| 2 | Gửi duyệt | Gửi cho người có quyền duyệt. |
| 3 | In | Mở bản in biểu mẫu đơn hàng. |
| 4 | Xuất | Biểu mẫu đơn hàng (PDF) hoặc dữ liệu đơn hàng (Excel). |
| 5 | Chỉnh sửa | Sang màn sửa, cùng các bước như tạo đơn. |
| 6 | Xoá | Xoá đơn, có hộp xác nhận. |
| 7 | Bốn thẻ | Tổng giá trị, Đã giao, Còn lại, Số lượng. |
| 8 | Thông tin đơn hàng | Mã đơn, PO, khách hàng, địa chỉ, ngày, điều khoản, nhân viên kinh doanh, ghi chú. |
| 9 | Danh sách sản phẩm | Số lượng, đơn giá, CK, thành tiền, Đã giao, Còn lại; phía dưới là tổng kết và số tiền bằng chữ. |
| 10 | Quy trình đơn hàng | Tạo đơn hàng → Gửi duyệt → Duyệt đơn hàng → Sản xuất → Hoàn thành đơn hàng. |
6. Xoá đơn
Chỉ xoá được đơn Nháp hoặc Từ chối.
- Mở đơn, bấm Xoá (hoặc biểu tượng thùng rác ở danh sách).
- Kiểm tra mã đơn trong hộp thoại.
- Bấm Xoá đơn.

Hệ thống đưa bạn về danh sách và không hiện thông báo thành công.
Không hoàn tác
Đơn đã xoá không khôi phục được từ giao diện.
Tra cứu
Nút nào hiện khi nào
| Nút | Hiện khi trạng thái | Quyền | Kết quả |
|---|---|---|---|
| Gửi duyệt | Nháp, Từ chối | Sửa đơn | Chuyển sang Chờ xác nhận |
| Duyệt | Chờ xác nhận | Duyệt | Chuyển sang Chờ sản xuất |
| Từ chối | Chờ xác nhận | Duyệt | Chuyển sang Từ chối, bắt buộc có lý do |
| Chỉnh sửa | Nháp, Chờ xác nhận, Từ chối, Chờ sản xuất, Đang thực hiện | Sửa | Mở màn sửa |
| Xoá | Nháp, Từ chối | Xoá | Xoá đơn, không hoàn tác |
| In, Xuất | Mọi trạng thái | Xem | In hoặc xuất biểu mẫu, Excel |
Vòng đời trạng thái
| Nhãn | Ý nghĩa (theo chú thích trên màn hình) | Sửa | Xoá |
|---|---|---|---|
| Nháp | Sửa tự do, chưa gửi duyệt | ✓ | ✓ |
| Chờ xác nhận | Đã gửi, chờ người có quyền duyệt xử lý | ✓ | |
| Từ chối | Người duyệt từ chối; xem lý do trên màn chi tiết | ✓ | ✓ |
| Chờ sản xuất | Đã duyệt, chờ đưa vào sản xuất | ✓ | |
| Đang thực hiện | Đang được xử lý | ✓ | |
| Hoàn thành | Đã hoàn thành | ||
| Đã hủy | Đã bị hủy | ||
| Trễ hạn | Không phải trạng thái: cờ cho đơn quá ngày giao (ngày giao màu đỏ) |
Ô "Trạng thái đơn hàng" ở màn Chỉnh sửa
Ô này chỉ có hai lựa chọn: trạng thái hiện tại và Đã hủy. Chọn Đã hủy rồi Lưu thay đổi để hủy đơn. Các bước khác đi qua nút Gửi duyệt, Duyệt, Từ chối; Đang thực hiện và Hoàn thành do hệ thống tự chuyển khi lệnh sản xuất được duyệt và khi giao đủ hàng. Hệ thống từ chối mọi cách đặt trạng thái khác: "Không thể đặt trạng thái này trực tiếp."
Ai dùng được
Quyền cấp theo chức năng, không có bộ quyền cố định cho từng chức danh. Cấp ở màn Phân quyền.
| Việc | Quyền cần |
|---|---|
| Vào danh sách, chi tiết, In, Xuất | orders:read |
| Tạo đơn hàng | orders:create |
| Chỉnh sửa, Gửi duyệt, chọn Đã hủy ở màn sửa | orders:update |
| Duyệt, Từ chối | orders:approve |
| Xoá | orders:delete |
Nút không đủ quyền bị ẩn.
Lỗi thường gặp
| Bạn thấy | Nguyên nhân | Cách xử lý |
|---|---|---|
| Nút "Tiếp theo: Chọn sản phẩm" bị khoá | Thiếu khách hàng, ngày đặt hoặc ngày giao | Điền các trường có dấu * |
| "Vui lòng chọn khách hàng" | Chưa chọn khách | Bấm ô Khách hàng và chọn |
| "Số lượng phải lớn hơn 0" | Số lượng trống hoặc bằng 0 | Nhập số lớn hơn 0 |
| "Đơn giá không được âm" | Đơn giá âm | Nhập số từ 0 trở lên |
| "VAT phải trong khoảng 0-100" | VAT ngoài 0–100 | Sửa lại |
| "Vui lòng nhập lý do từ chối" | Từ chối khi chưa có lý do | Nhập lý do |
| "Vui lòng tích chọn đơn hàng trên bảng để xuất…" | Bấm Xuất ở danh sách khi chưa tích dòng | Tích chọn đơn cần xuất |
| Tổng thanh toán bằng 0 | Đơn giá về 0 do cách nhập | Xoá số 0, nhập lại giá, xem khối tổng tiền trước khi tạo |
| Không thấy nút Duyệt / Từ chối | Tài khoản thiếu quyền duyệt hoặc đơn không ở Chờ xác nhận | Kiểm tra Phân quyền và trạng thái đơn |
Lưu ý cho người quản trị
- Người tạo tự duyệt: tài khoản có quyền
orders:approveduyệt được cả đơn do chính mình tạo. Muốn tách người tạo và người duyệt, hãy cân nhắc khi cấp quyền ở Phân quyền. - Sửa đơn đã duyệt: nút Chỉnh sửa vẫn hiện ở Chờ sản xuất và Đang thực hiện. Hãy hỏi bộ phận nghiệp vụ trước khi sửa, vì lệnh sản xuất và giao hàng có thể đã phát sinh.
- Hủy đơn: chưa có nút "Hủy đơn" riêng. Mở Chỉnh sửa, chọn Đã hủy ở ô Trạng thái đơn hàng, bấm Lưu thay đổi. Hệ thống chặn nếu lệnh sản xuất của đơn đã được duyệt.
- Giờ hiển thị: giờ "Tạo bởi … · ngày giờ" có thể lệch so với giờ thực (đang theo dõi); mốc "Duyệt đơn hàng" hiển thị đúng.
- Mẫu in: mẫu PDF ghi BM-03/KD ở danh sách nhưng BM-01/KD ở chi tiết; chưa rõ mã nào đúng.
Xem thêm
- Đăng nhập · Giao diện chung
- Chương sau: Giao hàng (DO), Lệnh sản xuất (LSX), sẽ được bổ sung.