Đề tài Đơn hàng gia công tại công ty xyz

Menu Khách hàng: Hiển thị Khách hàng và nhập Khách hàng mới.

Menu Nguyên liệu: Hiển thị danh sách nguyên kiệu và Nhập nguyên liệu mới.

Menu Sản phẩm: Hiển thị danh sách sản phẩm và nhập sản phẩm mới

Menu Định mức sản xuất: Hiển thị danh sách định mức sản xuất và nhập định mức sản xuất cho sản phẩm mới.

 

doc41 trang | Chia sẻ: maiphuongdc | Lượt xem: 1534 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Đề tài Đơn hàng gia công tại công ty xyz, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
atNguyenLieu Nhập xuất nguyên liệu ChiTietNguyenLieu Chi tiết nguyên liệu Mô tả các loại thực thể: b1) Thực thể Khách hàng: Thuộc tính Diễn giải Kiểu Ràng buộc MaKhachHang Mã khách hàng Text Khố chính TenKhachHang Tên khách hàng Text DiaChi Địa chỉ Text DienThoai Điện thoại Text b2) Thực thể đơn đặt hàng: Thuộc tính Diễn giải Kiểu Ràng buộc SoDonDatHang Số đơn đặt hàng Text Khố chính MaKhachHang Mã khách hàng Text Khố ngoại NgayKiKet Ngày kí kết Date DienThoai Điện thoại String b3) Thực thể Chi tiết đơn đặt hàng: Thuộc tính Diễn giải Kiểu Ràng buộc SoDonDatHang Số đơn đặt hàng Text Khố chính SanPham Sản phẩm Text Khố ngoại SoLuongDatHang SL đặt hàng Number DonGia Đơn giá Number HanGia Hạn giao Date() b4) Thực thể Sản phẩm: Thuộc tính Diễn giải Kiểu Ràng buộc SanPham Sản phẩm Text Khố chính TenSanPham Tên sản phẩm Text DonViTinh Đơn vị tính Number DonGia Đơn giá Number b5) Thực thể Định mức sản xuất: Thuộc tính Diễn giải Kiểu Ràng buộc NguyenLieu Nguyên liệu Text Khố ngoại SanPham Sản phẩm Text Khố ngoại SoLuongSanXuat Số lượng sản xuất Number b6) Thực thể công nợ: Thuộc tính Diễn giải Kiểu Ràng buộc NgayCongNo Ngày công nợ Date() Khố chính MaKhachHang Mã khách hàng Text Khố ngoại TienCongNo Tiền công nợ Number b7) Thực thể Giao Nhận: Thuộc tính Diễn giải Kiểu Ràng buộc SoPhieu Số phiếụ Text Khố chính SoDonDatHang Số đơn đặt hàng Text Khố ngoại NgayGiao Ngày giao Number b8) Thực thể Chi tiết giao nhận: Thuộc tính Diễn giải Kiểu Ràng buộc SoPhieu Số phiếu Text Khố ngoại SanPham Sản phẩm Text Khố ngoại SoLuong Số lượng Number DonGia Đơn giá Number b9) Thực thể Nguyên Liệu: Thuộc tính Diễn giải Kiểu Ràng buộc NguyenLieu Nguyên liệu Text Khố chính Ten NguyenLieu Tên nguyên liệu Text DonViTinh Đơn vị tính Number b10) Thực thể Thanh Tốn: Thuộc tính Diễn giải Kiểu Ràng buộc SoThanhToan Số thanh tốn Text Khố chính NgayThanhToan Ngày thanh tốn Date() Khố ngoại MaKhachHang Mã khách Hàng Text TienThanhToan Tiền thanh tốn Number b11) Tthực thể Tồn: Thuộc tính Diễn giải Kiểu Ràng buộc MaKhachHang Mã khách hàng Text Khố ngoại NguyenLieu Nguyên liệu Text Khố ngoại SoLuongTon Số lượng tồn Number NgayTon Ngày tồn Date() b12) Thực thể Nhập xuất nguyên liệu: Thuộc tính Diễn giải Kiểu Ràng buộc SoHoaDonNhap Số hố đơn nhập Text Khố chính MaKhachHang Mã khách hàng Text Khố ngoại NgayNhap Ngày nhập Date() b13) Thực thể Chi tiết nguyên liệu: Thuộc tính Diễn giải Kiểu Ràng buộc SoHoaDonNhap Số hố đơn nhập Text Khố ngoại NguyenLieu Nguyên liệu Text Khố ngoại SoLuong Số lượng Date() c) Ràng buộc tồn vẹn: KHỐ CHÍNH: R1-01: id(CongNo) = sttCNO R1-02: id(KhachHang) = MaKhachHang R1-03: id(DonDatHang) = SoDDH R1-04: id(ChiTietDonDathang) = sttDDH R1-05: id(SanPham) = SanPham R1-06: id(DinhMucSanXuat) = sttSX R1-07: id(GiaoNhan) = SoPhieu R1-08: id(ChiTietGiaoNhan) = sttGiaoNhan R1-09: id(ThanhToan) = SoTT R1-10: id(Ton) = sttTon R1-11: id(NhapXuatNguyenLieu) = SoHDN R1-12: id(ChiTietNguyenLieu) = sttHDN R1-13: id(NguyenLieu) = NguyenLieu RÀNG BUỘC MIỀN GÁI TRỊ: R2-01: (CTDDH.SoDDH>0) and (CTDDH.SLDH>0) and (CTDDH.DG>0) R2-02: (SP.DVT> 0 ) and (SP.DG > 0) R2-03: (DMSX.SLSX > 0) R2-04: (GN.NgGiao < DDH.NgKK) R2-05: (CTNL.SL > 0) R2-06: (NL.DVT > 0) R2-07: (TT.TienTT > 0) RÀNG BUỘC GIỮA CÁC THUỘC TÍNH TRONG THỰC THỂ: R3-0: CNOCK = CNODK + TIENNO - TIENTHU R3-0: SLTonCK = SLTonDK + NHAP - XUAT R3-0: Tiền đặt hàng = CTDDH.SLDH * CTDDH.DG R3-0: Tiền giao nhận = CTGN.SL * CTGN.DG R3-0: Số tiền nợ đầu kì ( CNODK ) của tháng này phải bằng số tiền nợ cuối kì ( CNOCK ) của tháng trước. R3-0: Số lượng tồn đầu kì ( SLTonDK ) của tah1ng này phải bằng số lựơng tồn cuối kì ( SLTonCK ) của tháng trước. PHÂN TÍCH THÀNH PHẦN XỬ LÝ CỦA ỨNG DỤNG: XL1: Cập nhật Nguyên liệu. XL2: Cập nhật phiếu Nhập nguyên liệu. XL3: Cập nhật đơn đặt hàng. XL4: Cập nhật Phiếu giao nhận. XL5: Cập nhật Phiếu thanh tốn XL6: Tính Công nợ Khách hàng. XL7: Tính Tồn Nguyên liệu. MÔ TẢ CÁC XỬ LÝ: _ Tên xử lý : XL1: Chức năng : cập nhật nguyên liệu. Input : MaNL, NL. Output : NL. Qui tắc : NL n được thêm,sữa xố vào NL _Tên xử lý : XL2: Chức năng : Cập nhật phiếu nhập nguyên liệu. Input : SoHDN h, NL n, NXNL, CTNL, NL, KH. Output : NXNL. Qui tắc : Số lượng nhập trong tháng t của NL n bằng tổng số lượng của CTNL trong tháng t có liên quan đến NL n. _Tên xử lý : XL3: Chức năng : Cập nhật Đơn đặt hàng . Input : SDDH, MSP, DDH, CTDDH, KH, SP Output : DDH. Qui tắc : Số lượng Sản phẩm Khách hàng đặt trong tháng t bằng tổng số sản phẩm của CTDDH trong tháng t có liên quan đến sản phẩm đó. _Tên xử lý : XL4: Chức năng : Cập nhật phiếu Giao nhận. Input : SoP p, SoDDH h, GN, CTGN, DDH, CTDDH. Output : GN. Qui tắc : Số lượng giao nhận sản phẩm trong tháng t bằng tổng số lượng giao nhận của CTGN trong tháng t liên quan đến Sản phẩm đó. _Tên xử lý : XL5 Chức năng : Cập nhật phiếu thanh tốn. Input : SoTT, MKH, TTOAN, KH Output : TTOAN. Qui tắc : Số tiền thanh tốn trong tháng t bằng tổng tiền thanh tốn của TTOAN trong tháng t có liên quan đến KH k. _Tên xử lý : XL6: Chức năng : Tính nợ Khách hàng. Input : NgCN, MKH, CNO. Output : CNO. Qui tắc : NOCK = NODK + SONO - THANHTOAN _Tên xử lý : XL7 : Chức năng : Tính tồn Nguyên liệu : Input : NgTON, LN, TON. Output : TON. Qui tắc : TONCK = TONDK + NHAP - XUAT THIẾT KẾ DỮ LIỆU : Sơ đồ Logic dữ liệu: Hình 2: Sơ đồ Logic dữ liệu của ứng dụng ĐƠN HÀNG GIA CÔNG Từ điển dữ liệu: MaKhachHang Mã khách hàng TenKhachHang Ten khách hàng DiaChi Địa chỉ DienThoai Điện thoại SoDonDatHang Số đơn đặt hàng NgayKiKet Ngày kí kết SanPham Sản phẩm TenSanPham Tên sản phẩm DonViTinh Đơn vị tính DonGia Đơn giá SoPhieu Số phiếu NgayGiao Ngày giao NgayCongNo Ngày công nợ TienCongNo Tiền công nợ NguyenLieu Nguyên liệu TenNguyenLieu Tên Nguyên liệu SoThanhToan Số thanh tốn NgayThanhToan Ngày thanh tốn TienThanhToan Tiền thanh tốn SoHoaDonNhap Số hố đơn nhập NgayNhap Ngày nhập SoLuongDatHang Số lượng đặt hàng DonGia Đơn giá HanGiao Hạn giao SoLuong Số lượng SoLuongSanXuat Số lượng sản xuất SoLuongTon Số lượng tồn NgayTon Ngày tồn Mô tả các bảng: 3.1) Khách hàng Thuộc tính: Thuộc tính Kiểu Khóa MaKhachHang Text Chính TenKhachHang Text DiaChi Text DienThoai Text Chỉ mục: Chỉ mục Thuộc tính Thứ tự KHACHHANG_PK MakhachHang ASC 3.2) Công nợ: Thuộc tính: Thuộc tính Kiểu Khóa NgayCongNo Text Chính MaKhachHang Text Ngoại TienCongNo Number Chỉ mục: Chỉ mục Thuộc tính Thứ tự CONGNO_PK NgayCongNo MaKhachHang ASC CONGNO_FK MaKhachHang ASC Khố ngoại: Khố ngoại Bảng tham chiếu Khố nội MaKhachHang KhachHang MaKhachHang 3.3) Đơn đặt hàng Thuộc tính: Thuộc tính Kiểu Khóa SoDonDatHang Text Chính MaKhachHang Text Ngoại NgayKiKet Date() Chỉ mục: Chỉ mục Thuộc tính Thứ tự DONDATHANG_PK SoDonDatHang MaKhachHang ASC DONDATHANG_FK MaKhachHang ASC Khố ngoại: Khố ngoại Bảng tham chiếu Khố nội MaKhachHang KhachHang MaKhachHang 3.4) Chi tiết Đơn đặt hàng Thuộc tính: Thuộc tính Kiểu Khóa SoDonDatHang Text Ngoại SanPham Text Ngoại SoLuongDatHang Number DonGia Number HanGiao Date() Chỉ mục: Chỉ mục Thuộc tính Thứ tự CTDONDATHANG_PK SoDonDatHang SanPham ASC CTDONDATHANG_FK SanPham ASC Khố ngoại: Khố ngoại Bảng tham chiếu Khố nội SoDonDatHang DonDatHang SoDonDatHang SanPham SanPham SanPham Tồn : Thuộc tính: Thuộc tính Kiểu Khóa MaKhachHang Text Ngoại NguyenLieu Text Ngoại SoLuongTon Number NgayTon Date() Chỉ mục: Chỉ mục Thuộc tính Thứ tự TON_PK MaKhachHang NguyenLieu ASC TON_FK NguyenLieu ASC Khố ngoại: Khố ngoại Bảng tham chiếu Khố nội MaKhachHang KhachHang MaKhachHang NguyenLieu NguyenLieu NguyenLieu Sản phẩm : Thuộc tính: Thuộc tính Kiểu Khóa SanPham Text Chính TenSanPham Text DonViTinh Number DonGia Number Chỉ mục: Chỉ mục Thuộc tính Thứ tự SANPHAM_PK SanPham ASC Định mức sản xuất : Thuộc tính: Thuộc tính Kiểu Khóa NguyenLieu Text Ngoại SanPham Text Ngoại SoLuongSanXuat Number Chỉ mục: Chỉ mục Thuộc tính Thứ tự DMSX_PK NguyenLieu SanPham ASC DMSX _FK SanPham ASC Khố ngoại: Khố ngoại Bảng tham chiếu Khố nội NguyenLieu NguyenLieu NguyenLieu SanPham SanPham SanPham Giao Nhận: Thuộc tính: Thuộc tính Kiểu Khóa SoPhieu Text Chính SoDonDatHang Text Ngoại NgayGiao Date() Chỉ mục: Chỉ mục Thuộc tính Thứ tự GIAONHAN_PK SoPhieu SoDonDatHang ASC GIAONHAN_FK SoDonDatHang ASC Khố ngoại: Khố ngoại Bảng tham chiếu Khố nội SoDonDatHang DonDatHang SoDonDatHang Chi tiết Giao Nhận: Thuộc tính: Thuộc tính Kiểu Khóa SoPhieu Text Ngoại SanPham Text Ngoại SoLuong Number DonGia Number Chỉ mục: Chỉ mục Thuộc tính Thứ tự CTGN_PK SoPhieu SanPham ASC CTGN_FK SanPham ASC Khố ngoại: Khố ngoại Bảng tham chiếu Khố nội SoPhieu GiaoNhan SoPhieu SanPham SanPham SanPham Nguyên liệu: Thuộc tính: Thuộc tính Kiểu Khóa NguyenLieu Text Chính TenNguyenLieu Text DonViTinh Number Chỉ mục: Chỉ mục Thuộc tính Thứ tự NGUYENLIEU_PK NguyenLieu ASC Thanh tốn: Thuộc tính: Thuộc tính Kiểu Khóa SoThanhToan Text Chính NgayThanhToan Date() MaKhachHang Text Ngoại TienThanhToan Number Chỉ mục: Chỉ mục Thuộc tính Thứ tự THANHTOAN_PK SoThanhToan MaKhachHang ASC THANHTOAN_FK MaKhachHang ASC Khố ngoại: Khố ngoại Bảng tham chiếu Khố nội MaKhachHang KhachHang MaKhachHang Nhập xuất nguyên liệu : Thuộc tính: Thuộc tính Kiểu Khóa SoHoaDonNhap Text Chính MaKhachHang Text Ngoại NgayNhap Number Chỉ mục: Chỉ mục Thuộc tính Thứ tự NXNL_PK SoHoaDonNhap MaKhachHang ASC NXNL_FK MaKhachHang ASC Khố ngoại: Khố ngoại Bảng tham chiếu Khố nội MaKhachHang KhachHang MaKhachHang Chi tiết nguyên liệu : Thuộc tính: Thuộc tính Kiểu Khóa SoHoaDonNhap Text Ngoại NguyenLieu Text Ngoại SoLuong Number Chỉ mục: Chỉ mục Thuộc tính Thứ tự CTGN_PK SoPhieu SanPham ASC CTGN_FK SanPham ASC Khố ngoại: Khố ngoại Bảng tham chiếu Khố nội SoHoaDonNhap NXNguyenLieu SoPhieu NguyenLieu NguyenLieu SanPham MÔ TẢ CÁC RÀNG BUỘC TỒN VẸN : 4.1) KHÓA CHÍNH : R1-01 : id( CONGNO ) = NgayCN R1-02 : id( KHACHANG ) = MKH R1-03 : id( NGUYENLIEU ) = NL R1-04 : id( DONDATHANG ) = SDDH, MAKH R1-05 : id( CHITIETDONDATHANG ) = SDDH, SP R1-06 : id( SANPHAM ) = SANPHAM R1-07 : id( DINHMUCSANXUAT ) = NL, SP R1-08 : id( GIAONHAN ) = SPhieu, SDDH R1-09 : id( CHITIETGIAONHAN ) = SPhieu, SP R1-10 : id( THANHTOAN ) = SoTT, MKH R1-11 : id( TON ) = MKH, NL R1-12 : id( NHAPXUATNGUYENLIEU ) = SoDDH, MKH R1-13 : id( CHITIETNGUYENLIEU ) = SoHDN, NL 4.2) RÀNG BUỘC VỀ MIỀN GIÁ TRỊ: R2-01 : (CTDDH.SLDH > 0) and (CTDDH.DG > 0) R2-02 : (SP.DG > 0) R2-03 : (DMSX.SLSX > 0) R2-04 : (CNO.TienCNO > 0) R2-05 : (CTGN.SL > 0) and (CTGN.DG > 0) R2-06 : (TToan.TToan > 0) 4.3) KHÓA NGOẠI: R3-01 : CNO[MaKH] KH[MaKH] R3-02 : TTOAN[MaKH] KH[MaKH] R3-03 : TON[MaKH] KH[MaKH] R3-04 : DDHANG[MaKH] KH[MaKH] R3-05 : NXNL[MaKH] KH[MaKH] R3-06 : GNHAN[SoDDH] DDH[SoDDH] R3-07 : CTDDH[SoDDH] DDH[SoDDH] R3-08 : CTDDH[MaSP] SPHAM[MaSP] R3-09 : CTGN[MaSP] SPHAM[MaSP] R3-10 : DMSX[MaSP] SPHAM[MaSP] R3-11 : GN[SoPhieu] CTGN[SoPhieu] R3-12 : DMSX[MaNL] NLIEU[MaNL] R3-13 : TON[MaNL] NLIEU[MaNL] R3-14 : CTNL[MaNL] NLIEU[MaNL] R3-15 : CTNL[SoHDN] NXNL[SoHDN] THIẾT KẾ ỨNG DỤNG (Các màn hình): Màn hình chính: H1ình 3: Màn hình chính của ứng dụng. Danh Mục: Menu Đặt hàng Khách hàng đặt đơn hàng mới. Menu Giao nhận Giao hàng cho Khách hàng. Menu Nhập xuất Nguyên liệu Nhập nguyên liệu từ khách hàng. Màn hình Đặt hàng: Hình 4: Màn hình Đơn đặt hàng mới . Source code lấy Mã KH lên combobox: Dim sqlMKH As String sqlMKH = "Select MaKhachHang from KhachHang order by MaKhachHang asc" Set rsMKH = New ADODB.Recordset rsMKH.Open sqlMKH, Conn, adOpenKeyset, adLockOptimistic Set cboMKH.DataSourceList = rsMKH cboMKH.DataFieldList = "MaKhachHang" cboMKH.Columns(0).Width = 1250 Source code lấy dữ liệu lên lưới : Dim strSQL As String Dim Cnn As New ADODB.Connection strSQL = "SELECT ChiTietDonDatHang.SanPham, SanPham.TenSanPham, SanPham.DonViTinh, ChiTietDonDatHang.SoLuongDatHang, ChiTietDonDatHang.DonGia" strSQL = strSQL & " FROM SanPham, DonDatHang, ChiTietDonDatHang WHERE DonDatHang.SoDonDatHang = ChiTietDonDatHang.SoDonDatHang AND SanPham.SanPham = ChiTietDonDatHang.SanPham" Set Rst = New ADODB.Recordset Rst.CursorLocation = adUseClient Cnn.Open SQLConn ' KHÔNG DÙNG BIẾN Conn Rst.Open strSQL, Conn, adOpenKeyset, adLockOptimistic SSODatHang.Columns(0).DataField = "sanpham" SSODatHang.Columns(1).DataField = "Tensanpham" SSODatHang.Columns(2).DataField = "donvitinh" SSODatHang.Columns(3).DataField = "soluongDatHang" SSODatHang.Columns(4).DataField = "dongia" Set SSODatHang.DataSource = Nothing Set SSODatHang.DataSource = Rst : Nút Mới để thêm Đơn đặt hàng mới, khi nhấn nút Mới thì số DDH sẽ tự tăng, ta có thể chọn Khách hàng cũ ở textbox MaKhachHang hoặc điền thông tin mới nếu là Khách hàng mới. Source code khi nhấn nút mới số DDH sẽ tự tăng: Private Sub cmdmoi_Click() txtSDDH.SetFocus Dim SQLddh As String SQLddh = "select sodondathang from dondathang " Set rsDDH = New ADODB.Recordset rsDDH.CursorLocation = adUseClient rsDDH.Open SQLddh, Conn, 0, 3 SDDH = Mid(Trim(txtSDDH.Text), 2, 2) txtSDDH.Text = SDDH & "DDH" & rsDDH.RecordCount + 1 End Sub : Khi nhấn nút lưu thì sẽ gọi màn hình Đặt hàng mới để nhập thêm thông tin của sản phẩm mới: : Lưu dữ liệu mới xuống cơ sở dữ liệu. Source code Lưu dữ liệu: Private Sub cmdLuu_Click() Dim Rs As New ADODB.Recordset Dim rs1 As New ADODB.Recordset Dim SQL2 As String Dim SQL3 As String Dim SQL4 As String Dim SQL5 As String Dim SQL6 As String Dim SQL7 As String If Trim(frm1DatHang.txtSDDH) = "" Or Trim(Trim(frm1DatHang.cboMKH)) = "" Or Trim(cboSP) = "" Then MsgBox " Xin nhap dau du thong tin truoc khi luu ", vbOKOnly + vbExclamation, "THONG BAO" Me.MousePointer = 0 End If SQL2 = " insert into KHACHHANG values('" & Trim(frm1DatHang.cboMKH) & "','" & Trim(frm1DatHang.txtTKH) & "','" & Trim(frm1DatHang.txtDiachi) & "','" & Trim(frm1DatHang.txtDienthoai) & "')" SQL3 = " insert into DONDATHANG values(' " & Trim(frm1DatHang.txtSDDH) & " ',' " & Trim(frm1DatHang.cboMKH) & " ',' " & Trim(frm1DatHang.txtNgayKK) & " ')" SQL4 = " insert into CHITIETDONDATHANG values(' " & Trim(frm1DatHang.txtSDDH) & " ',' " & Trim(cboSP) & " ',' " & Trim(txtSl) & " ',' " & Trim(txtDG) & " ',' " & Trim(frm1DatHang.txtHanGiao) & " ') " Conn.Execute SQL2 Conn.Execute SQL3 Conn.Execute SQL4 SQL5 = " update DONDATHANG set MAKHCHHANG='" & Trim(frm1DatHang.cboMKH) & "', TENKHACHHANG='" & Trim(frm1DatHang.txtTKH) & "', NGAYKIKET='" & Trim(frm1DatHang.txtNgayKK) & "',HANGIAO='" & Trim(frm1DatHang.txtHanGiao) & "' WHERE SODONDATHANG='" & Trim(frm1DatHang.txtSDDH) & "'" SQL6 = " update KHACHHANG set MAKHACHHANG='" & Trim(frm1DatHang.cboMKH) & "',TENKHACHHANG='" & Trim(frm1DatHang.txtTKH) & ",DIACHI='" & Trim(frm1DatHang.txtDiachi) & "',DIENTHOAI='" & Trim(frm1DatHang.txtDienthoai) & "'" SQL7 = " update CHITIETDONDATHANG set SODONDATHANG='" & Trim(frm1DatHang.txtSDDH) & "',SANPHAM='" & Trim(cboSP) & "',SOLUONGDATHANG='" & Trim(txtSl) & "',DONGIA='" & Trim(txtDG) & "',HANGIAO='" & Trim(frm1DatHang.txtHanGiao) & "'" Conn.Execute SQL5 Conn.Execute SQL6 Conn.Execute SQL7 End Sub : Thốt cửa sổ đơn đặt hàng. Màn hình Giao Nhận: Hình 5: Màn hình giao nhận sản phẩm cho khách hàng. Source code lấy dữ liệu lên cbo số phiếu: Dim sql As String sql = "select sophieu from giaoNhan " Set rsSoP = New ADODB.Recordset rsSoP.Open sql, Conn, adOpenKeyset, adLockOptimistic Set cboSoPhieu.DataSourceList = rsSoP cboSoPhieu.DataFieldList = "SoPhieu" cboSoPhieu.Columns(0).Width = 1200 Source code lấy dữ liệu lên cbo số ĐĐH : 1 Dim sql1 As String sql1 = "select sodondathang from dondathang" Set rsSoDDH = New ADODB.Recordset rsSoDDH.Open sql1, Conn, adOpenKeyset, adLockOptimistic Set cboSoDDH.DataSourceList = rsSoDDH cboSoDDH.DataFieldList = "SoDonDathang" cboSoDDH.Columns(0).Width = 1230 Source code lấy dữ liệu lên lưới: Dim strSQL As String Dim Cnn As New ADODB.Connection strSQL = "select * from SanPham" Set Rst = New ADODB.Recordset Rst.CursorLocation = adUseClient 'Conn.Open SQLConn Cnn.Open SQLConn ' KHÔNG DÙNG BIẾN Conn Rst.Open strSQL, Conn, adOpenKeyset, adLockOptimistic SSOGiaoNhan.Columns(0).DataField = "sanpham" SSOGiaoNhan.Columns(1).DataField = "Tensanpham" SSOGiaoNhan.Columns(2).DataField = "" SSOGiaoNhan.Columns(3).DataField = "" Set SSOGiaoNhan.DataSource = Nothing Set SSOGiaoNhan.DataSource = Rst : Khi nhấn nút Mới thì cboSP, cboDDh, txtNgay nhận focus, dữ liệu của cột SL và DG sẽ được nhập mới . : Lưu dữ liệu mới xuống cơ sở dữ liệu. Source code Lưu Dữ liệu: Private Sub CmdLuu_Click () Dim Str As String Dim Str1 As String Dim Str2 As String Dim Str3 As String If Trim(cboSoPhieu) = "" Or Trim(cboSoDDH) = "" Then MsgBox " Xin nhap soPHIEU va soDDH truoc khi luu ", vbOKOnly + vbExclamation, "THONG BAO" Me.MousePointer = 0 End If Str = " insert into GIAONHAN values('" & Trim(cboSoPhieu) & "','" & Trim(cboSoDDH) & "','" & Trim(txtNgay) & "')" Conn.Execute Str Str1 = " update GIAONHAN set SOPHIEU='" & Trim(cboSoPhieu) & "',SODONDATHANG='" & Trim(cboSoDDH) & "',NGAYGIAO='" & Trim(txtNgay) & "'" Conn.Execute Str1 Str2 = " insert into CHITIETGIAONHAN values('" & Trim(cboSoPhieu) & "','" & Trim(SSOGiaoNhan.Columns(0).Text) & "','" & Trim(SSOGiaoNhan.Columns(2).Text) & "','" & Trim(SSOGiaoNhan.Columns(3).Text) & "' ) Conn.Execute Str2 Str3 = " update CHITIETGIAONHAN set SOPHIEU='" & Trim(cboSoPhieu) & "', SANPHAM='" & Trim(SSOGiaoNhan.Columns(0).Text) & "', SOLUONG='" & Trim(SSOGiaoNhan.Columns(2).Text) & "',DONGIA='" & Trim(SSOGiaoNhan.Columns(3).Text) & "' " Conn.Execute Str3 End Sub : thốt cửa sổ Giao nhận. Màn hình Nhập xuất Nguyên liệu: Hình 6: Màn hình nhập xuất nguyên liệu. Source code lấy dữ liệu lên cbo MAKH: Dim sqlMKH As String sqlMKH = "Select MaKhachHang from KhachHang order by MaKhachHang asc" Set rsMKH = New ADODB.Recordset rsMKH.Open sqlMKH, Conn, adOpenKeyset, adLockOptimistic Set cboMKH.DataSourceList = rsMKH cboMKH.DataFieldList = "MaKhachHang" cboMKH.Columns(0).Width = 1250 Source code lấy dữ liệu lên lưới: Dim strSQL As String Dim Cnn As New ADODB.Connection strSQL = "select * from NGUYENLIEU" Set Rst = New ADODB.Recordset Rst.CursorLocation = adUseClient Cnn.Open SQLConn Rst.Open strSQL, Conn, adOpenKeyset, adLockOptimistic SSONXNL.Columns(0).DataField = "nguyenLieu" SSONXNL.Columns(1).DataField = "tennguyenlieu" SSONXNL.Columns(2).DataField = "" SSONXNL.Columns(3).DataField = "" Set SSONXNL.DataSource = Nothing Set SSONXNL.DataSource = Rst : Khi nhấn nút Mới để nhập Nguyên liệu mới thì các textbox và combobox nhận focus. : Lưu dữ liệu mới xuống cơ sở dữ liệu. : Thốt màn hình Nhập xuất nguyên liệu. Tra cứu : Menu Khách hàng: Hiển thị Khách hàng và nhập Khách hàng mới. Menu Nguyên liệu: Hiển thị danh sách nguyên kiệu và Nhập nguyên liệu mới. Menu Sản phẩm: Hiển thị danh sách sản phẩm và nhập sản phẩm mới Menu Định mức sản xuất: Hiển thị danh sách định mức sản xuất và nhập định mức sản xuất cho sản phẩm mới. Màn hình Khách hàng : Hình 7: Màn hình tra cứu, nhập mới khách hàng. Source code lấy Mã KH lên combobox: Dim sqlMKH As String sqlMKH = "Select MaKhachHang from KhachHang order by MaKhachHang asc" Set rsMKH = New ADODB.Recordset rsMKH.Open sqlMKH, Conn, adOpenKeyset, adLockOptimistic Set cboMKH.DataSourceList = rsMKH cboMKH.DataFieldList = "MaKhachHang" cboMKH.Columns(0).Width = 1250 Source code lấy dữ liệu lên lưới: Dim strSQL As String Dim Cnn As New ADODB.Connection strSQL = "select * FROM khachhang" Set Rst = New ADODB.Recordset Rst.CursorLocation = adUseClient Cnn.Open SQLConn Rst.Open strSQL, Conn, adOpenKeyset, adLockOptimistic SSOkh.Columns(0).DataField = "makhachhang" SSOkh.Columns(1).DataField = "tenkhachhang" SSOkh.Columns(2).DataField = "diachi" SSOkh.Columns(3).DataField = "dienthoai" Set SSOkh.DataSource = Nothing Set SSOkh.DataSource = Rst : Khi nhấn nút mới thì các textbox và combobox nhận focus để nhập thông tin khách hàng mới. : Lưu dữ liệu mới xuống Cơ sở dữ liệu. Source code : Private Sub cmdLuu_Click() Dim Str As String Dim Str1 As String If Trim(cboKH.Text) = "" Or Trim(txtTKH.Text) = "" Then MsgBox " Nhap MaKH va TenKH truoc khi luu ", vbOKOnly + vbExclamation, "WARNING" Exit Sub End If Str = "Insert Into KHACHHANG values('" & Trim(cboKH) & "','" & Trim(txtTKH) & "','" & Trim(txtDC) & "','" & Trim(txtDT) & "' ) " Conn.Execute Str Str1 = "update KHACHHANG set maKhachhang='" & Trim(cboKH) & "', TenKhachHang='" & Trim(txtTKH) & "', DiaChi='" & Trim(txtDC) & "', DienThoai='" & Trim(txtDT) & "' WHERE MaKhachHang='" & Trim(cboKH) & "' " Conn.Execute Str1 SSOkh.Update MsgBox "Da luu Khach Hang '" & Trim(cboKH) & "'' vao CSDL", vbOKOnly + vbExclamation, "WARNING" CmdLuu.Enabled = False cmdmoi.Enabled = True End Sub : Thốt màn hình Khách hàng. Màn hình Nguyên Liệu : Hình 8: Màn hình tra cứu, nhập nguyên liệu. Source code lấy dữ liệu lên lưới: Dim strSQL As String Dim Cnn As New ADODB.Connection strSQL = "select * FROM NguyenLieu" Set Rst = New ADODB.Recordset Rst.CursorLocation = adUseClient Cnn.Open SQLConn Rst.Open strSQL, Conn, adOpenKeyset, adLockOptimistic SSONL.Columns(0).DataField = "NGUYENLIEU" SSONL.Columns(1).DataField = "tennguyenlieu" SSONL.Columns(2).DataField = "donvitinh" Set SSONL.DataSource = Nothing Set SSONL.DataSource = Rst : Khi nhấn nút mới thì các textbox nhận focus nhập thông tin nguyên liệu mới. : Lưu dữ liệu mới xuống Cơ sở dữ liệu. : Thốt màn hình Nguyên liệu. Màn hình Sản phẩm : Hình 9: Màn hình tra cứu, nhập sản phẩm. Source code lấy dữ liệu lên lưới: Dim strSQL As String Dim Cnn As New ADODB.Connection strSQL = "select * FROM sanpham" Set Rst = New ADODB.Recordset Rst.CursorLocation = adUseClient 'Conn.Open SQLConn Cnn.Open SQLConn Rst.Open strSQL, Conn, adOpenKeyset, adLockOptimistic SSOSP.Columns(0).DataField = "sanpham" SSOSP.Columns(1).DataField = "tensanpham" SSOSP.Columns(2).DataField = "donvitinh" SSOSP.Columns(3).DataField = "dongia" Set SSOSP.DataSource = Nothing Set SSOSP.DataSource = Rst : Khi nhấn nút mới thì các textbox nhận focus nhập thông tin sản phẩm mới. : Lưu dữ liệu mới xuống Cơ sở dữ liệu. Source code Lưu: Private Sub cmdLuu_Click() Dim Str As String Dim Str1 As String If Trim(txtSP) = "" Or Trim(txtTSP) = "" Then MsgBox "Phai nhap MaSP & TenSP truoc khi luu ", vbOKOnly + vbExclamation, "WARNING" Exit Sub End If Str = "insert into SANPHAM values('" & Trim(txtSP) & "','" & Trim(txtTSP) & "','" & Trim(txtDVT) & "','" & Trim(txtDG) & "')" Conn.Execute Str Str1 = "update SANPHAM Set sanpham='" & Trim(txtSP) & "',tensanpham='" & Trim(txtTSP) & "',donvitinh='" & Trim(txtDVT) & "',dongia='" & Trim(txtDG) & "' " Conn.Execute Str1 SSOSP.Update MsgBox "Da Luu San Pham '" & Trim(txtSP) & "'' Vao CSDL", vbOKOnly + vbExclamation, "WARNING" CmdLuu.Enabled = False End Sub : Thốt màn hình sản phẩm. Màn hình Định mức sản xuất : Source code lấy dữ liệu lên lưới: Dim strSQL As String Dim Cnn As New ADODB.Connection strSQL = "select * from DinhMucSanXuat" Set Rst = New ADODB.Recordset Rst.CursorLocation = adUseClient Cnn.Open SQLConn Rst.Open strSQL, Conn, adOpenKeyset, adLockOptimistic SSODMSX.Columns(0).DataField = "nguyenLieu" SSODMSX.Columns(1).DataField = "sanpham" SSODMSX.Columns(2).DataField = "soluongsanxuat" Set SSODMSX.DataSource = Nothing Set SSODMSX.DataSource = Rst : Khi nhấn nút mới thì các textbox nhận focus nhập thông tin mới. : Lưu dữ liệu mới xuống Cơ sở dữ liệu. : Thốt màn hình định mức sản xuất. Tính tốn: Menu Công nợ: Báo cáo công nợ. Menu Tồn : Báo cáo tồn nguyên liệu. Menu Thanh Tốn: Hiển thị tiền thanh tốn của khách hàng với công ty. Màn hình công nợ: : Khi nhấn nút mới thì các textbox nhận focus nhập thông tin phiếu Công nợ mới. : Lưu dữ liệu mới xuống Cơ sở dữ liệu. : Thốt màn hình Tồn Nguyên Liệu. Code xử lý tính công nợ: Q1: SELECT max(ngaycongNo) AS NgDK FROM CongNo; Q2: SELECT MaKhachHang,TienCongNo As DAU, 0 As SONO , 0 As TTOAN from Q1, CongNo Where NgayCongNo = NgDK UNION Se

Các file đính kèm theo tài liệu này:

  • docĐơn hàng gia công.doc
  • rarchương trình.rar
  • dochuongdan.doc
  • doctrangbia.doc