Xây App Quản Lý Bán Hàng Bằng AppSheet – Phần 1

quan ly ban hang nhap xuat ton appsheet

Sau khi hoàn thành series ứng dụng quản lý thu chi trên AppSheet, mình quay lại với một series mới: quản lý bán hàng, quản lý nhập – xuất – tồn kho, và quản lý công nợ khách hàng lẫn nhà cung cấp — tất cả chỉ bằng Google Sheet và AppSheet, hoàn toàn miễn phí.

Ở Phần 1 này, mục tiêu là dựng xong cấu trúc dữ liệu ban đầu trên Google Sheet, sau đó biến nó thành khung sườn app trên AppSheet. Đây là phần nền móng, nên mình đi khá kỹ để các bạn mới bắt đầu dễ hình dung.

Tạo file Google Sheet gốc

Đăng nhập Google, mở Google Trang tính, tạo một bảng tính mới và đặt tên là “Quản lý bán hàng”. Đây sẽ là nơi lưu toàn bộ dữ liệu cho hệ thống.

Thiết kế các trang tính (bảng dữ liệu)

Mình tạo lần lượt các sheet sau, mỗi sheet đều đóng băng dòng tiêu đề đầu tiên:

  • Nhân viên: ID, Mã nhân viên, Tên nhân viên, Email, Phân quyền (để sau này giới hạn quyền thao tác theo từng người).
  • Sản phẩm: ID, Mã sản phẩm, Tên sản phẩm, Đơn vị tính, Tồn kho (số lượng), Giá trị tồn (số tiền), Cập nhật.
  • Khách hàng: ID, Tên khách hàng, Địa chỉ, Số điện thoại, Trành xe (nhà xe giao nhận), Công nợ, Ghi chú, Cập nhật.
  • Nhà cung cấp: cấu trúc tương tự Khách hàng -Tên, Địa chỉ, Số điện thoại, Trành xe, Công nợ, Ghi chú.
  • Công nợ khách hàng: ID, Ngày, Mã khách hàng, Tên khách hàng, Loại giao dịch (Tăng công nợ / Giảm công nợ), Số tiền, Ghi chú, Tình trạng (Đang mở / Đã khóa), Cập nhật.
  • Công nợ nhà cung cấp: nhân bản y hệt sheet công nợ khách hàng, chỉ đổi “khách hàng” thành “nhà cung cấp”.
  • Phiếu nhập (phiếu chính, giống hóa đơn nhập hàng): ID, Ngày, Mã nhà cung cấp, Tên nhà cung cấp, Tổng số lượng, Tổng giá trị, Ghi chú, Tình trạng, Cập nhật.
  • Phiếu nhập chi tiết (phiếu con, nằm dưới phiếu nhập): ID, ID phiếu nhập (liên kết với phiếu cha), Mã sản phẩm, Tên sản phẩm, Số lượng, Đơn giá, Thành tiền, Cập nhật.
  • Phiếu xuất và Phiếu xuất chi tiết: cấu trúc giống hệt cặp phiếu nhập, chỉ khác là gắn với khách hàng thay vì nhà cung cấp.

Một nguyên tắc quan trọng khi thiết kế: chỉ những bảng có phát sinh số liệu, giao dịch (công nợ, phiếu nhập, phiếu xuất) mới cần thêm cột Tình trạng (Đang mở / Đã khóa) để sau này kiểm soát việc cho phép sửa/xóa. Những bảng thông tin thuần túy như Nhân viên, Sản phẩm, Khách hàng, Nhà cung cấp thì không cần, vì chúng không ảnh hưởng đến số liệu thống kê.

Để dễ phân biệt khi làm việc, mình tô màu tab: các sheet công nợ tô xanh dương, sheet phiếu nhập tô xanh lá, sheet phiếu xuất tô đỏ.

Video phần 1: tự tay tạo app quản lý bán hàng ,quản lý nhập xuất tồn kho bằng appsheet

Biến Google Sheet thành app trên AppSheet

Từ menu Tiện ích > AppSheet > Tạo ứng dụng, AppSheet sẽ tự động đọc dữ liệu và khởi tạo app, kèm theo bảng đầu tiên (Nhân viên) sẵn có. Sau đó vào mục Data, dùng nút Add to App để thêm lần lượt các bảng còn lại: Sản phẩm, Khách hàng, Nhà cung cấp, Công nợ khách hàng, Công nợ nhà cung cấp, Phiếu nhập, Phiếu nhập chi tiết, Phiếu xuất, Phiếu xuất chi tiết.

Tiếp theo, tạo View dạng table cho từng bảng chính (Nhân viên, Sản phẩm, Khách hàng, Nhà cung cấp, Công nợ khách hàng, Công nợ nhà cung cấp, Phiếu nhập, Phiếu xuất) để có giao diện xem/nhập liệu.

Cấu hình kiểu dữ liệu cho từng cột

Đây là phần tốn thời gian nhất nhưng quyết định app có “thông minh” hay không:

  • Cột ID: đặt kiểu Unique ID để hệ thống tự sinh mã, không trùng lặp.
  • Cột tên (Tên khách hàng, Tên sản phẩm…): kiểu Text, bật thêm thuộc tính Label – nhờ vậy khi bảng khác tham chiếu tới, nó sẽ hiển thị cái tên thay vì mã số khó nhớ.
  • Cột ngày (Ngày tạo, Ngày giao dịch): kiểu Date, Initial value đặt là TODAY() để tự lấy ngày hiện tại lúc tạo giao dịch.
  • Cột mã liên kết (Mã khách hàng, Mã nhà cung cấp, Mã sản phẩm): kiểu Ref, trỏ sang bảng gốc tương ứng, hiển thị dạng dropdown để chọn.
  • Cột tên tự động điền theo mã (ví dụ Tên khách hàng đi kèm Mã khách hàng): dùng App Formula, công thức dạng [Mã khách hàng].[Tên khách hàng] để tự kéo tên từ bảng gốc sang, không cần gõ tay.
  • Loại giao dịch (trong công nợ): kiểu Enum, hai giá trị Tăng công nợ / Giảm công nợ.
  • Tình trạng: kiểu Enum, hai giá trị Đang mở / Đã khóa, Initial value luôn đặt là Đang mở -dữ liệu vừa tạo mặc định có thể sửa/xóa, chỉ khi khóa lại mới bị chặn.
  • Số tiền, Số lượng, Đơn giá, Tổng số lượng, Tổng giá trị: kiểu Number.
  • Thành tiền: dùng App Formula tự tính bằng [Số lượng] * [Đơn giá], không cần nhập tay.
  • Cột Cập nhật: kiểu DateTime.

Với cặp phiếu chính – phiếu chi tiết (Phiếu nhập/Phiếu nhập chi tiết, Phiếu xuất/Phiếu xuất chi tiết), cột liên kết ở bảng con được đặt kiểu Ref trỏ về bảng cha, đồng thời tick chọn “Is a part of?” để thiết lập quan hệ cha-con: xóa phiếu chính thì phiếu chi tiết đi kèm cũng tự động bị xóa theo.

Chỉnh giao diện nhập liệu cho dễ nhìn

Vào View Type Options, đổi kiểu Detail view / Form style sang side by side để form hiển thị theo dạng hai cột song song, dễ nhìn hơn so với mặc định.

Nhập thử dữ liệu mẫu để kiểm tra

Mình tạo vài dữ liệu mẫu để test: khách hàng (anh Phong, chị Lan), nhà cung cấp (VinFast, Pega), sản phẩm (xe đạp điện M133, Evo 200), rồi tạo thử một phiếu nhập và một phiếu xuất có nhiều dòng chi tiết. Kết quả: cột Thành tiền tự nhân đúng theo số lượng × đơn giá, tên khách hàng/nhà cung cấp/sản phẩm tự hiện theo mã đã chọn – đúng như thiết kế.

Dọn giao diện: ẩn bớt các cột kỹ thuật

Những cột ID (khóa hệ thống tự sinh), cột Cập nhật và cột Tình trạng chỉ phục vụ vận hành ngầm bên trong, người dùng không cần thấy hay chỉnh sửa trực tiếp. Mình vào phần cấu hình cột của từng bảng, bỏ tick Show cho các cột này để giao diện nhập liệu gọn và thân thiện hơn.

Kết luận

Đến đây, phần dựng cấu trúc dữ liệu và khung sườn app đã hoàn tất: đầy đủ các bảng Nhân viên, Sản phẩm, Khách hàng, Nhà cung cấp, Công nợ (khách hàng & nhà cung cấp), Phiếu nhập/Phiếu nhập chi tiết, Phiếu xuất/Phiếu xuất chi tiết, cùng các kiểu dữ liệu, công thức tự động và giao diện cơ bản.

Ở các phần tiếp theo của series, sẽ đi sâu hơn vào việc tự động cập nhật tồn kho, tính công nợ tổng hợp, và hoàn thiện các tính năng nâng cao khác. Hẹn gặp lại các bạn ở Phần 2: Tự Tay Xây App Quản Lý Bán Hàng Bằng AppSheet – Phần 2: Tạo View, Action, Automation Và Sửa Công Thức Tính Toán

Link xem trên Youtube: P1.Tự tạo phần mềm quản lý bán hàng nhập xuất tồn kho, quản lý công nợ và khách hàng bằng appsheet

Chúc thành công!

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *