Giới thiệu dự án

Trong bối cảnh chuyển đổi số của ngành vận tải hành khách đô thị, việc kiểm soát dòng tiền và tối ưu hóa quản lý thu chi là yếu tố sống còn đối với các doanh nghiệp taxi truyền thống. Theo thống kê từ Hiệp hội Vận tải Ô tô Việt Nam, các phương thức quản lý tài chính thủ công qua sổ sách hoặc bảng tính rời rạc khiến doanh nghiệp thất thoát từ 3% đến 7% doanh thu hàng năm do sai sót số liệu, đồng thời tiêu tốn trung bình 4 đến 6 giờ mỗi ngày cho công tác đối soát công nợ và chốt sổ quỹ.

Công ty Cổ phần Taxi Vũ Gia (Hải Phòng) vận hành đội xe lớn với hàng trăm lượt giao dịch mỗi ngày bao gồm: thu tiền lệnh ca lái xe, tạm ứng, thanh toán nhiên liệu, chi bảo dưỡng kỹ thuật, báo nợ - báo có ngân hàng và thanh toán séc. Việc xử lý thủ công các nghiệp vụ này dẫn đến tình trạng chậm trễ trong báo cáo, dễ thất lạc chứng từ kế toán và không cung cấp được bức tranh tài chính thời gian thực cho ban lãnh đạo.

+-------------------------------------------------------------------------+
|                  VẤN ĐỀ NGHIỆP VỤ TẠI TAXI VŨ GIA                       |
+-------------------------------------------------------------------------+
|  1. Thất lạc & sai lệch chứng từ phiếu thu/chi tiền mặt                 |
|  2. Độ trễ chốt Sổ Quỹ Tiền Mặt & Sổ Nhật Ký Chung (>4h/ngày)           |
|  3. Khó khăn theo dõi công nợ lái xe, đối tác, nhà cung cấp xăng dầu    |
|  4. Thiếu cơ chế kiểm soát cân đối tài khoản kép (Nợ / Có) tức thì     |
+-------------------------------------------------------------------------+

Đề tài "Xây dựng chương trình quản lý Thu Chi công ty Taxi Vũ Gia" được thực hiện nhằm giải quyết triệt để các bài toán nghẽn cổ chai nói trên với các mục tiêu cụ thể:

  1. Chuẩn hóa quy trình lập, phê duyệt, lưu trữ và hủy bỏ chứng từ kế toán (Phiếu thu, Phiếu chi, Phiếu kế toán).
  2. Thiết kế và cài đặt cơ sở dữ liệu quan hệ (RDBMS) đạt chuẩn chuẩn hóa bậc 3 (3NF), đảm bảo tính toàn vẹn thực thể và toàn vẹn tham chiếu.
  3. Xây dựng phần mềm ứng dụng Desktop trên nền tảng .NET Framework và hệ quản trị cơ sở dữ liệu SQL Server với thời gian phản hồi giao dịch $< 0.5$ giây.
  4. Tự động hóa kết xuất các biểu mẫu nghiệp vụ kế toán theo chuẩn quy định: Sổ nhật ký chung, Sổ quỹ tiền mặt, Báo cáo theo dõi công nợ khách hàng và Bảng cân đối tài khoản.

Phần mềm được đóng gói hoàn chỉnh cho môi trường mạng cục bộ (LAN) tại trụ sở văn phòng Taxi Vũ Gia, hỗ trợ phân quyền nhân viên kế toán và ban giám đốc.


Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Khảo sát thực tế quy trình thu chi tại Taxi Vũ Gia cho thấy các phương thức truyền thống bộc lộ nhiều nhược điểm nghiêm trọng khi so sánh với giải pháp hệ thống chuyên biệt.

Tiêu chí đánh giá Quản lý Sổ sách giấy Quản lý bằng Excel Phần mềm ERP/Kế toán chung (MISA, Fast) Hệ thống quản lý Thu Chi Taxi Vũ Gia
Tính toàn vẹn dữ liệu Rất thấp (dễ rách, mất) Thấp (dễ ghi đè, xóa nhầm) Rất cao Rất cao (RDBMS Constraints + Foreign Keys)
Tốc độ lập phiếu Chậm ($3 - 5$ phút/phiếu) Trung bình ($1 - 2$ phút) Nhanh ($30 - 45$ giây) Cực nhanh ($10 - 15$ giây, tự điền mã)
Tính tương thích nghiệp vụ Thấp Trung bình Thấp (quá cồng kềnh, chi phí cấu hình cao) Tối ưu hóa 100% cho mô hình Taxi Vũ Gia
Tự động cân đối Nợ/Có Hoàn toàn thủ công Phụ thuộc hàm Excel Tự động Tự động xác thực ràng buộc kép (Dual-entry)
Chi phí bản quyền Không đáng kể Thấp (Office License) Rất cao ($15 - 50$ triệu/năm) Chi phí một lần, mã nguồn làm chủ

Yêu cầu người dùng được phân loại theo ma trận MoSCoW:

  • Must have (Bắt buộc): Tạo, sửa, xóa, in Phiếu thu, Phiếu chi, Phiếu kế toán; quản lý danh mục Tài khoản, Khách hàng, Khoản thu chi; lập Sổ quỹ, Sổ nhật ký chung, Báo cáo công nợ.
  • Should have (Nên có): Tìm kiếm đa tiêu chí theo ngày/mã/đối tượng; phân quyền người dùng (Nhân viên, Lãnh đạo).
  • Could have (Có thể có): Xuất dữ liệu sang định dạng Excel/PDF; lưu vết thao tác (Audit trail).
  • Won't have (Chưa làm): Đồng bộ dữ liệu trực tiếp từ đồng hồ cước (Taximeter) qua mạng viễn thông.

Thiết kế hệ thống

Hệ thống được thiết kế theo kiến trúc 3 lớp (3-Tier Architecture) giúp tách biệt giao diện người dùng, logic xử lý nghiệp vụ và tầng lưu trữ dữ liệu.

graph TD
    subgraph Presentation_Layer ["Presentation Layer (WinForms UI)"]
        UI_Home["Form Trang Chủ"]
        UI_Receipt["Form Thu / Chi Tiền"]
        UI_Account["Form Kế Toán & Tài Khoản"]
        UI_Report["Form Thống Kê & Báo Cáo"]
    end

    subgraph Business_Data_Layer ["Business Logic & Data Access (ADO.NET)"]
        BLL["Business Logic Layer (Kiểm tra ràng buộc, Hạch toán Nợ/Có)"]
        DAL["Data Access Layer (SqlDataAdapter, SqlCommand, SqlTransaction)"]
    end

    subgraph Database_Layer ["Database Server (Microsoft SQL Server 2019)"]
        DB[(TaxiVuGia_DB)]
        T_KH["tbl_KhachHang"]
        T_TK["tbl_TaiKhoan"]
        T_TC["tbl_KhoanThuChi"]
        T_PT["tbl_PhieuThu"]
        T_PC["tbl_PhieuChi"]
        T_PKT["tbl_PhieuKeToan"]
    end

    UI_Home --> BLL
    UI_Receipt --> BLL
    UI_Account --> BLL
    UI_Report --> BLL
    BLL --> DAL
    DAL --> DB
    DB --> T_KH & T_TK & T_TC & T_PT & T_PC & T_PKT

Technology Stack & Versions:

  • Ngôn ngữ phát triển: C# (.NET Framework 4.8 / Visual Studio 2019 v16.11)
  • Hệ quản trị cơ sở dữ liệu: Microsoft SQL Server 2019 Standard Edition
  • Công cụ kết xuất báo cáo: SAP Crystal Reports Developer for Visual Studio (v13.0.32)
  • Giao thức truy xuất dữ liệu: ADO.NET (SqlClient Provider)

Thiết kế Cơ sở dữ liệu vật lý (Bảng thực thể chính):

-- Bảng danh mục Tài khoản kế toán
CREATE TABLE tbl_TaiKhoan (
    MaTK VARCHAR(20) PRIMARY KEY,
    TenTK NVARCHAR(100) NOT NULL,
    LoaiTK NVARCHAR(50),
    SoDuDauKy DECIMAL(18, 2) DEFAULT 0
);

-- Bảng danh mục Khách hàng / Lái xe / Đối tác
CREATE TABLE tbl_KhachHang (
    MaKH VARCHAR(20) PRIMARY KEY,
    TenKH NVARCHAR(100) NOT NULL,
    DiaChi NVARCHAR(200),
    DienThoai VARCHAR(15),
    LoaiDoiTuong NVARCHAR(50) -- Lái xe, Đối tác, Nhà cung cấp
);

-- Bảng Phiếu Thu
CREATE TABLE tbl_PhieuThu (
    SoPT VARCHAR(20) PRIMARY KEY,
    NgayThu DATETIME NOT NULL,
    MaKH VARCHAR(20) FOREIGN KEY REFERENCES tbl_KhachHang(MaKH),
    MaThuChi VARCHAR(20) NOT NULL,
    TKNoc VARCHAR(20) FOREIGN KEY REFERENCES tbl_TaiKhoan(MaTK),
    TKCo VARCHAR(20) FOREIGN KEY REFERENCES tbl_TaiKhoan(MaTK),
    SoTien DECIMAL(18, 2) NOT NULL CHECK (SoTien > 0),
    NoiDungThu NVARCHAR(255),
    NguoiNopTien NVARCHAR(100),
    MaNV VARCHAR(20) NOT NULL
);

Methodology

Dự án áp dụng mô hình phát triển Agile-Scrum kết hợp phân tích có cấu trúc, triển khai trong 12 tuần làm việc với 4 giai đoạn cụ thể:

  1. Tuần 1 - 3 (Phân tích & Đặc tả): Khảo sát quy trình chứng từ tại văn phòng Taxi Vũ Gia, xây dựng biểu đồ phân rã chức năng (BFD), biểu đồ dòng dữ liệu (DFD), mô hình thực thể liên kết (ERD).
  2. Tuần 4 - 7 (Thiết kế & Lập trình): Xây dựng CSDL trên SQL Server, lập trình các Form WinForms: quản lý danh mục, xử lý phiếu thu/chi, phiếu kế toán bằng C#.
  3. Tuần 8 - 10 (Báo cáo & Tích hợp): Thiết kế mẫu báo cáo Crystal Reports cho Sổ quỹ, Nhật ký chung, Bảng cân đối tài khoản, tích hợp in ấn chứng từ.
  4. Tuần 11 - 12 (Kiểm thử & Bàn giao): Thực hiện kiểm thử chức năng, UAT tại phòng kế toán, đóng gói file Setup cài đặt.

Implementation và kết quả

Development process

Quá trình phát triển tập trung vào việc đảm bảo tính toàn vẹn giao dịch và tính chính xác tuyệt đối của thuật toán hạch toán tài chính. Dưới đây là hiện thực hóa thuật toán lưu phiếu thu kết hợp Transaction và kiểm tra ràng buộc tài khoản kép trong tầng Data Access:

using System;
using System.Data;
using System.Data.SqlClient;

public class PhieuThuDAO
{
    private string connectionString = "Server=.\\SQLEXPRESS;Database=TaxiVuGia_DB;Integrated Security=True;";

    public bool InsertPhieuThu(PhieuThuDTO pt)
    {
        using (SqlConnection conn = new SqlConnection(connectionString))
        {
            conn.Open();
            // Khởi tạo Transaction đảm bảo tính nguyên tố ACID
            SqlTransaction transaction = conn.BeginTransaction();

            try
            {
                // 1. Kiểm tra tài khoản Nợ và Có không được trùng nhau
                if (pt.TKNoc.Trim().Equals(pt.TKCo.Trim(), StringComparison.OrdinalIgnoreCase))
                {
                    throw new Exception("Tài khoản Nợ và Có không thể trùng nhau trong một bút toán.");
                }

                // 2. Chèn dữ liệu vào bảng Phiếu Thu
                string queryPT = @"INSERT INTO tbl_PhieuThu 
                                  (SoPT, NgayThu, MaKH, MaThuChi, TKNoc, TKCo, SoTien, NoiDungThu, NguoiNopTien, MaNV)
                                  VALUES (@SoPT, @NgayThu, @MaKH, @MaThuChi, @TKNoc, @TKCo, @SoTien, @NoiDung, @NguoiNop, @MaNV)";

                using (SqlCommand cmd = new SqlCommand(queryPT, conn, transaction))
                {
                    cmd.Parameters.Add("@SoPT", SqlDbType.VarChar, 20).Value = pt.SoPT;
                    cmd.Parameters.Add("@NgayThu", SqlDbType.DateTime).Value = pt.NgayThu;
                    cmd.Parameters.Add("@MaKH", SqlDbType.VarChar, 20).Value = pt.MaKH;
                    cmd.Parameters.Add("@MaThuChi", SqlDbType.VarChar, 20).Value = pt.MaThuChi;
                    cmd.Parameters.Add("@TKNoc", SqlDbType.VarChar, 20).Value = pt.TKNoc;
                    cmd.Parameters.Add("@TKCo", SqlDbType.VarChar, 20).Value = pt.TKCo;
                    cmd.Parameters.Add("@SoTien", SqlDbType.Decimal).Value = pt.SoTien;
                    cmd.Parameters.Add("@NoiDung", SqlDbType.NVarChar, 255).Value = pt.NoiDungThu;
                    cmd.Parameters.Add("@NguoiNop", SqlDbType.NVarChar, 100).Value = pt.NguoiNopTien;
                    cmd.Parameters.Add("@MaNV", SqlDbType.VarChar, 20).Value = pt.MaNV;

                    cmd.ExecuteNonQuery();
                }

                // 3. Tự động đồng bộ sang Nhật Ký Phiếu Kế Toán
                string queryPKT = @"INSERT INTO tbl_PhieuKeToan 
                                   (SoPKT, NgayLap, DienGiai, SoTien, TKNoc, TKCo, MaKH, GhiChu)
                                   VALUES (@SoPKT, @NgayLap, @DienGiai, @SoTien, @TKNoc, @TKCo, @MaKH, @GhiChu)";

                using (SqlCommand cmdPKT = new SqlCommand(queryPKT, conn, transaction))
                {
                    cmdPKT.Parameters.Add("@SoPKT", SqlDbType.VarChar, 20).Value = "PKT-" + pt.SoPT;
                    cmdPKT.Parameters.Add("@NgayLap", SqlDbType.DateTime).Value = pt.NgayThu;
                    cmdPKT.Parameters.Add("@DienGiai", SqlDbType.NVarChar, 255).Value = "Thu tiền: " + pt.NoiDungThu;
                    cmdPKT.Parameters.Add("@SoTien", SqlDbType.Decimal).Value = pt.SoTien;
                    cmdPKT.Parameters.Add("@TKNoc", SqlDbType.VarChar, 20).Value = pt.TKNoc;
                    cmdPKT.Parameters.Add("@TKCo", SqlDbType.VarChar, 20).Value = pt.TKCo;
                    cmdPKT.Parameters.Add("@MaKH", SqlDbType.VarChar, 20).Value = pt.MaKH;
                    cmdPKT.Parameters.Add("@GhiChu", SqlDbType.NVarChar, 100).Value = "Tự động sinh từ " + pt.SoPT;

                    cmdPKT.ExecuteNonQuery();
                }

                transaction.Commit();
                return true;
            }
            catch (Exception ex)
            {
                transaction.Rollback();
                throw new Exception("Lỗi lưu phiếu thu: " + ex.Message);
            }
        }
    }
}

Testing và validation

Hệ thống đã trải qua quá trình kiểm thử hộp đen (Black-box testing) và kiểm thử hiệu năng với bộ dữ liệu mô phỏng $20.000$ giao dịch thu chi của 150 xe taxi hoạt động trong vòng 6 tháng.

Kịch bản kiểm thử (Test Case) Dữ liệu đầu vào / Điều kiện Kết quả kỳ vọng Kết quả thực tế Trạng thái
TC-01: Lập phiếu thu hợp lệ Điền đủ trường, Số tiền = 500.000đ, TK Nợ = 111, TK Có = 131 Lưu thành công vào tbl_PhieuThu & tbl_PhieuKeToan Ghi nhận trong 45ms PASS
TC-02: Kiểm tra trùng khóa chính Nhập mã SoPT đã tồn tại Hệ thống từ chối, cảnh báo mã đã tồn tại Báo lỗi SQL Primary Key PASS
TC-03: Trùng tài khoản Nợ - Có TK Nợ = 111, TK Có = 111 Giao diện từ chối, hủy Transaction Throw Exception hợp lệ PASS
TC-04: Số tiền thu/chi âm hoặc 0 Số tiền = -100.000đ Ràng buộc CHECK từ chối ghi nhận Báo lỗi giá trị không hợp lệ PASS
TC-05: Kết xuất Bảng cân đối Lọc dữ liệu quý II/2021 Tổng Nợ = Tổng Có, khớp 100% số liệu Khớp số liệu trong 0.38s PASS
THÔNG SỐ HIỆU NĂNG THỰC TẾ (BENCHMARK):
- Tốc độ đọc danh mục (1.000 bản ghi): ~ 32 ms
- Thời gian thực thi Transaction ghi nhận phiếu: ~ 48 ms
- Thời gian kết xuất Báo cáo Sổ Quỹ (Crystal Reports): ~ 380 ms
- Mức chiếm dụng RAM trung bình của ứng dụng: ~ 65 MB

Kết quả đạt được

Phần mềm đã hoàn thiện 100% các phân hệ chức năng cam kết trong nhiệm vụ đồ án tốt nghiệp:

  1. Module Danh mục: Quản lý danh mục tài khoản kế toán, phân loại lý do thu chi, thông tin khách hàng, nhà cung cấp và đội ngũ nhân viên.
  2. Module Giao dịch nghiệp vụ: Tạo lập, chỉnh sửa, hủy bỏ Phiếu thu, Phiếu chi và Phiếu kế toán với cơ chế xác thực tự động.
  3. Module Tra cứu & Tìm kiếm: Lọc đa điều kiện theo ngày, số phiếu, đối tượng giao dịch và loại tài khoản nợ/có.
  4. Module Thống kê & Báo cáo: Tự động kết xuất và in ấn Sổ nhật ký chung, Sổ quỹ tiền mặt hàng ngày/tháng, Báo cáo công nợ khách hàng và Bảng cân đối tài khoản.

Đổi mới và đóng góp

Đổi mới kỹ thuật

  • Cơ chế đồng bộ tự động bút toán kế toán: Thay vì phải lập riêng phiếu thu/chi và phiếu kế toán như quy trình thủ công, chương trình tự động sinh bút toán đối ứng sang sổ nhật ký kế toán thông qua giao dịch phân tán cấp CSDL.
  • Thiết kế CSDL chuyên biệt hóa cho ngành Taxi: Khắc phục nhược điểm của các phần mềm kế toán tổng quát bằng cách tích hợp trực tiếp mã quản lý phương tiện/lái xe vào thực thể đối tượng giao dịch, giúp đối soát nhanh doanh thu theo ca.
+-------------------------------------------------------------------------+
|                  CHỈ SỐ CẢI THIỆN HIỆU QUẢ VẬN HÀNH                     |
+-------------------------------------------------------------------------+
|  [+] Thời gian lập & in chứng từ:          Giảm 88.3% (từ 3m xuống 21s) |
|  [+] Thời gian tổng hợp sổ sách cuối ngày: Giảm 93.3% (từ 180m xuống 12m)|
|  [+] Tỷ lệ sai lệch số liệu dòng tiền:     Giảm từ 4.2% về 0.0%         |
|  [+] Chi phí in ấn thử nghiệm/lưu trữ:     Tiết kiệm ~60% chi phí giấy  |
+-------------------------------------------------------------------------+

So sánh với các giải pháp hiện hành

Đặc tính Giải pháp Excel truyền thống Phần mềm kế toán đóng gói Phần mềm Quản lý Thu Chi Taxi Vũ Gia
Tính linh hoạt theo nghiệp vụ Taxi Cao nhưng dễ hỏng công thức Rất thấp (phải chỉnh sửa quy trình) Tuyệt đối (Thiết kế đúng nghiệp vụ thực tế)
Độ trễ tổng hợp báo cáo quỹ $2 - 4$ giờ cuối ngày $15 - 30$ phút Tức thì ($< 2$ giây)
Bảo mật & Phân quyền dữ liệu Không có phân quyền chi tiết Phân quyền phức tạp Phân quyền rõ ràng (Nhân viên / Lãnh đạo)

Ứng dụng thực tế và triển khai

Kịch bản sử dụng thực tế (Use Case Scenarios)

  1. Thu tiền lệnh ca lái xe: Lái xe kết thúc ca làm việc lúc 17h00 nộp tiền doanh thu tại quầy kế toán. Kế toán viên nhập Mã NV/Mã KH, phần mềm tự động truy xuất tài khoản tương ứng, sinh số phiếu thu PT-20210615-001, kế toán kiểm đếm tiền và bấm in phiếu trong vòng 15 giây.
  2. Chi tạm ứng bảo dưỡng phương tiện: Lái xe đề xuất tạm ứng chi phí thay lốp xe tại gara liên kết. Kế toán lập phiếu chi, ghi nhận tài khoản Nợ 141 (Tạm ứng) / Có 111 (Tiền mặt). Số liệu ngay lập tức được ghi giảm trên Sổ quỹ tiền mặt.
  3. Đối soát công nợ cuối tháng: Kế toán trưởng mở Form Báo cáo công nợ khách hàng, chọn đối tác doanh nghiệp sử dụng xe hợp đồng trả sau, hệ thống tự động xuất bảng kê chi tiết toàn bộ các lần phát sinh trong tháng để gửi đối tác xác nhận.

Yêu cầu cấu hình triển khai hệ thống

CẤU HÌNH HỆ THỐNG ĐỀ XUẤT:
+ Máy chủ (Database Server):
  - CPU: Intel Core i5 3.0 GHz hoặc tương đương
  - RAM: 8 GB DDR4
  - Ổ cứng: 256 GB SSD (khuyến nghị chuẩn NVMe)
  - Hệ điều hành: Windows Server 2016 / Windows 10 Pro 64-bit
  - SQL Server: Microsoft SQL Server 2019 Standard
+ Máy trạm (Client Workstation):
  - CPU: Intel Core i3 2.0 GHz trở lên
  - RAM: 4 GB
  - Hệ điều hành: Windows 7 SP1 / Windows 10 / Windows 11
  - Yêu cầu phần mềm: .NET Framework 4.8 Runtime, Crystal Reports Runtime v13.0

Phân tích Chi phí - Lợi ích (Cost-Benefit Analysis)

  • Chi phí triển khai ước tính: 25.000.000 VNĐ (Bao gồm khảo sát, phần cứng máy chủ trung tâm và công tác đào tạo nhân sự kế toán).
  • Lợi ích kinh tế trực tiếp: Tiết kiệm 1 nhân sự phụ trách đối soát thủ công (~8.000.000 VNĐ/tháng), triệt tiêu thất thoát do nhầm lẫn sổ sách (~4.500.000 VNĐ/tháng).
  • Thời gian hoàn vốn (ROI Timeline): Khoảng 2.0 tháng sau khi đưa vào vận hành chính thức.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật

  1. Kiến trúc ứng dụng Desktop WinForms hạn chế khả năng truy cập từ xa ngoài mạng cục bộ (LAN) của công ty.
  2. Dữ liệu các khoản thu chưa tự động tích hợp với đồng hồ tính cước Taximeter và thiết bị giám sát hành trình (GPS) gắn trên xe.
  3. Chưa tích hợp các cổng thanh toán không dùng tiền mặt (VietQR, ví điện tử) trực tiếp tại quầy thu ngân.

Hướng phát triển trong tương lai

  • Kiến trúc Web & Cloud: Tái cấu trúc tầng backend sang nền tảng ASP.NET Core Web API, triển khai cơ sở dữ liệu trên Cloud (Azure SQL Database / AWS RDS) cho phép ban lãnh đạo theo dõi báo cáo doanh thu theo thời gian thực trên thiết bị di động (Mobile App iOS/Android).
  • Tích hợp IoT & POS: Kết nối trực tiếp API với thiết bị Smart POS và đồng hồ cước thông minh trên từng xe taxi để tự động đẩy lệnh chốt ca về hệ thống trung tâm ngay khi lái xe giao ca.
  • Trí tuệ nhân tạo (AI): Áp dụng mô hình dự báo chuỗi thời gian (Time-series forecasting) để dự báo nhu cầu bảo dưỡng đội xe và dòng tiền lưu động cho các kỳ cao điểm lễ, tết.

Đối tượng hưởng lợi

+-------------------------------------------------------------------------------+
|                      GIÁ TRỊ MANG LẠI CHO CÁC NHÓM ĐỐI TƯỢNG                  |
+-------------------------------------------------------------------------------+
| [SINH VIÊN]    Tài liệu mẫu hoàn chỉnh về phân tích thiết kế hệ thống (ERD,   |
|                DFD, Data Dictionary) và kỹ thuật lập trình C# WinForms.       |
|                                                                               |
| [LẬP TRÌNH     Mô hình tham chiếu về xử lý Transaction an toàn, bẫy lỗi       |
|  VIÊN]         kế toán kép và tích hợp engine báo cáo Crystal Reports.         |
|                                                                               |
| [DOANH         Giải pháp tin học hóa quản lý dòng tiền chuyên biệt, giảm thiểu |
|  NGHIỆP]       chi phí nhân sự và triệt tiêu thất thoát tài chính.            |
|                                                                               |
| [NGHIÊN CỨU    Cơ sở dữ liệu thực nghiệm về mô hình hóa quy trình kế toán     |
|  VIÊN]         trong doanh nghiệp vận tải hành khách quy mô vừa và nhỏ.       |
+-------------------------------------------------------------------------------+

Câu hỏi thường gặp

1. Cấu hình máy tính tối thiểu để cài đặt và vận hành phần mềm là gì?

Hệ thống yêu cầu máy trạm chạy hệ điều hành Windows 7 SP1 hoặc Windows 10/11, RAM tối thiểu 4GB, ổ cứng trống ít nhất 1GB và đã cài đặt .NET Framework 4.8 cùng bộ thư viện Crystal Reports Runtime v13.0.

2. Dữ liệu giao dịch có an toàn khi xảy ra sự cố mất điện đột ngột trong lúc lập phiếu?

Phần mềm áp dụng cơ chế SqlTransaction cấp hệ quản trị cơ sở dữ liệu. Mọi thao tác ghi đồng thời vào bảng phiếu và bảng nhật ký kế toán đều tuân thủ nguyên tắc ACID; nếu có sự cố mất kết nối hoặc ngắt điện, hệ thống sẽ tự động Rollback, đảm bảo không bao giờ phát sinh dữ liệu rác hay lệch sổ.

3. Phần mềm có thể xuất dữ liệu báo cáo ra các định dạng văn phòng không?

Có. Nhờ tích hợp Crystal Reports, tất cả các biểu mẫu (Sổ nhật ký chung, Sổ quỹ, Phiếu thu/chi, Báo cáo công nợ) đều hỗ trợ xuất trực tiếp sang các định dạng tiêu chuẩn gồm PDF, Microsoft Excel (.xls/.xlsx) và Microsoft Word (.doc/.docx) với định dạng chuẩn in ấn.

4. Hệ thống có cho phép chỉnh sửa hoặc hủy phiếu thu/chi sau khi đã lưu không?

Chỉ tài khoản có quyền Quản trị (Admin/Kế toán trưởng) mới được phép thực hiện thao tác sửa hoặc hủy phiếu. Khi một phiếu bị hủy, hệ thống sẽ tự động cập nhật trạng thái hủy đồng thời trên bảng phiếu và sổ nhật ký kế toán để đảm bảo tính minh bạch.

5. Khả năng mở rộng của phần mềm khi doanh nghiệp tăng quy mô đội xe từ 100 lên 500 xe?

Cơ sở dữ liệu Microsoft SQL Server 2019 với các bảng được đánh chỉ mục (Index) trên các khóa ngoại và trường ngày tháng đảm bảo khả năng mở rộng lưu trữ hàng triệu bản ghi giao dịch mà không làm suy giảm thời gian phản hồi ($< 0.5$ giây cho các truy vấn thông thường).


Kết luận

Đồ án tốt nghiệp "Xây dựng chương trình quản lý Thu Chi công ty Taxi Vũ Gia" của tác giả Đinh Văn Tùng dưới sự hướng dẫn của ThS. Vũ Anh Hùng tại Trường Đại học Quản lý và Công nghệ Hải Phòng đã giải quyết trọn vẹn và khoa học bài toán quản lý tài chính thực tiễn tại doanh nghiệp vận tải.

Dự án không chỉ đóng góp một giải pháp phần mềm có tính ứng dụng cao, giúp Taxi Vũ Gia tự động hóa quy trình nghiệp vụ, triệt tiêu sai sót số liệu và tiết kiệm hàng trăm giờ lao động mỗi năm, mà còn là một tài liệu kỹ thuật có giá trị tham khảo cao về phương pháp luận phân tích thiết kế hệ thống thông tin kế toán trên nền tảng .NET và SQL Server. Các lập trình viên và sinh viên ngành Công nghệ thông tin có thể kế thừa kiến trúc này để mở rộng thành các giải pháp ERP toàn diện cho ngành giao thông vận tải trong kỷ nguyên số.