1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo thực tập tốt nghiệp- Xây dựng phần mềm quản lý bán hàng

81 67 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 81
Dung lượng 1,66 MB

Nội dung

Để xử lý thông tin một cách nhanh chóng, chính xác và có hiệu quả thì ngành công nghệ thông tin (CNTT) đã phát triển khá nhanh và mạnh trên thế giới nói chung và Việt Nam nói riêng. CNTT đã có mặt ở hầu hết các ngành và các lĩnh vực. Mỗi lĩnh vực đều có những sản phẩm mang tính ứng dụng cho lĩnh vực đó. Quản lý bán hàng cũng vậy, nhờ có các sản phẩm quản lý bán hàng mà giúp cho nhà quản lý doanh nghiệp tra cứu thông tin, kết quả kinh doanh một cách nhanh chóng, chính xác. Từ đó, nhà quản lý có thể đưa ra các kế hoạch và quyết định đúng đắn, giảm chi phí và tăng khả năng cạnh tranh, nâng cao kết quả hoạt động sản xuất kinh doanh. Quản lý bán hàng trong doanh nghiệp là một việc rất quan trọng đòi hỏi bộ phận quản lý phải tiến hành nhiều nghiệp vụ phức tạp. Để quản lý kho hàng, quản lý doanh số bán hàng, quản lý công nợ khách hàng, công nợ nhà cung cấp,… không phải là việc đơn giản nếu chỉ sử dụng phương pháp thủ công truyền thống. Đã qua đi thời tính toán, lưu trữ dữ liệu bằng các phương pháp thủ công truyền thống mang nặng tính chất lạc hậu, lỗi thời. CNTT đã đi vào các nghành với một phương thức hoạt động hoàn toàn mới mẻ, sáng tạo và nhanh chóng mà không mất đi sự chính xác. Trên cơ sở những kiến thức đã học trong nhà trường và thực tế, em đã lựa chọn đề tài “Xây dựng phần mềm quản lý bán hàng” nhằm ứng dụng những kiến thức công nghệ thông tin đã được học. Nội dung chính của báo cáo bao gồm: Chương 1: Tổng quan về cơ sở thực tập - Giới thiệu chung về công ty mà em tham gia thực tập và một số lĩnh vực hoạt động chính của công ty, các sản phẩm phần mềm đã và đang được ứng dụng trong thực tế . - Phát biểu đề tài, mục đích nghiên cứu và phạm vi của đề tài. Chương 2: Các công cụ thực hiện - Giới thiệu công cụ thực hiện triển khai đề tài: Visual Basic 6.0, Microsoft SQL Server 2000. Chương 3: Phân tích thiết kế hệ thống - Phân tích và thiết kế hệ thống. - Phân tích và thiết kế cơ sở dữ liệu. Chương 4: Nghiệp vụ và giao diện chính của phần mềm - Giới thiệu một số giao diện với các nghiệp vụ cơ bản trong phần mềm. Kết luận: - Đánh giá, phân tích các ưu điểm, nhược điểm và hướng phát triển của chương trình.

TRƯỜNG ĐẠI HỌC KINH TẾ QUỐC DÂN VIỆN CÔNG NGHỆ THÔNG TIN KINH TẾ - BÁO CÁO CHUYÊN ĐỀ THỰC TẬP TỐT NGHIỆP XÂY DỰNG PHẦN MỀM QUẢN LÝ BÁN HÀNG Chuyên ngành: Công nghệ thông tin Hệ: Chính quy Lớp: Liên thơng K10B Mã sinh viên: LT106617 Họ tên sinh viên: Nguyễn Trọng Thuấn Giáo viên hướng dẫn: Ths Đào Phan Vũ Hà Nội - 2012 Chương trình Quản lý bán hàng MỤC LỤC LỜI CẢM ƠN .20 LỜI MỞ ĐẦU 21 CHƯƠNG I: TỔNG QUAN VỀ CƠ SỞ THỰC TẬP 23 1.1 Giới thiệu chung sở thực tập: 23 1.1.1 Quá trình hình thành phát triển: 23 1.1.2 Sơ đồ tổ chức công ty CP Tin Học Trẻ Việt Nam: 24 1.1.3 Chức phận: 24 1.2 Phát biểu đề tài: .25 1.2.1 Lí chọn đề tài 25 1.2.2 Mục đích nghiên cứu: 26 1.3 Nghiệp vụ hệ thống: .26 1.3.1 Khảo sát hệ thống bán hàng cũ: 26 1.3.2 Xây dựng hệ thống bán hàng mới: 29 CHƯƠNG II: CÁC CÔNG CỤ THỰC HIỆN 33 2.1 Hệ quản trị sở liệu SQL Server 2000: .33 2.1.1 Giới thiệu chung 33 2.1.2 Lịch sử phát triển SQL Server 2000: 33 2.2 Giới thiệu ngơn ngữ lập trình Visual Basic 6.0: 34 CHƯƠNG III: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 36 3.1 Phân tích hệ thống chức năng: .36 3.1.1 Biểu đồ phân cấp chức năng: 36 3.1.2 Biểu đồ luồng liệu (BLD) mức khung cảnh: 38 3.1.3 Biểu đồ luồng liệu (BLD) mức đỉnh: .39 3.1.4 Biểu đồ luồng liệu (BLD) mức đỉnh: .40 3.2 Phân tích hệ thống sở liệu: 45 3.2.1 Xác định thực thể: 45 3.2.2 Mơ hình quan hệ thực thể: 47 3.2.3 Danh sách bảng liệu: 48 3.2.4 Mô tả chi tiết bảng: 49 3.2.5 Sơ đồ quan hệ Bảng: 55 55 Báo cáo chuyên đề Chương trình Quản lý bán hàng CHƯƠNG IV: GIỚI THIỆU MỘT SỐ SƠ ĐỒ THUẬT TỐN VÀ GIAO DIỆN CHÍNH CỦA PHẦN MỀM 56 4.1 Giới thiệu số sơ đồ thuật toán sử dụng phần mềm: 56 4.2 Một số giao diện phần mềm: .61 KẾT LUẬN 70 Đánh giá chương trình Quản lý bán hàng (QLBH): .70 Hướng phát triển tương lai: 71 TÀI LIỆU THAM KHẢO 72 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN BÁO CÁO THỰC TẬP TỐT NGHIỆP 73 NHẬN XÉT CỦA ĐƠN VỊ THỰC TẬP TỐT NGHIỆP 74 PHỤ LỤC .75 MỘT SỐ HÀM SỬ DỤNG TRONG CHƯƠNG TRÌNH: .75 PUBLIC FUNCTION RONG(BYVAL VARX AS VARIANT) AS BOOLEAN 75 IF ISNULL(VARX) OR TRIM(VARX) = "" THEN .75 RONG = TRUE 75 ELSE 75 RONG = FALSE 75 END IF 75 END FUNCTION 75 Báo cáo chuyên đề Chương trình Quản lý bán hàng ‘ 75 PUBLIC FUNCTION NULLTONUMBER(VARX AS VARIANT) AS DOUBLE 75 ON ERROR GOTO LOI .75 IF RONG(VARX) THEN 75 NULLTONUMBER = 75 ELSE 75 NULLTONUMBER = VARX .75 END IF 75 LOI: .75 IF ERR.NUMBER THEN THONGBAO ("ERROR: " & ERR.NUMBER & VBCR & ERR.DESCRIPTION) 75 END FUNCTION 75 ‘ 75 PUBLIC FUNCTION NULLTOSTRING(VARX AS VARIANT) AS STRING 75 ON ERROR GOTO LOI .75 IF RONG(VARX) THEN 75 NULLTOSTRING = "" 75 ELSE 75 Báo cáo chuyên đề Chương trình Quản lý bán hàng NULLTOSTRING = VARX .75 END IF 75 LOI: .75 IF ERR.NUMBER THEN THONGBAO ("ERROR: " & ERR.NUMBER & VBCR & ERR.DESCRIPTION) 75 END FUNCTION 75 ‘ 75 PUBLIC FUNCTION FORMATDATE(STRVALUE AS VARIANT) AS STRING 75 DIM STRNGAY AS STRING 75 DIM STRTHANG AS STRING 75 DIM STRNAM AS STRING .76 IF RONG(STRVALUE) THEN 76 FORMATDATE = "" 76 ELSE 76 STRNGAY = IIF(LEN(DAY(STRVALUE)) = 1, "0" & DAY(STRVALUE), DAY(STRVALUE)) 76 STRTHANG = IIF(LEN(MONTH(STRVALUE)) = 1, "0" & MONTH(STRVALUE), MONTH(STRVALUE)) .76 STRNAM = YEAR(STRVALUE) 76 Báo cáo chuyên đề Chương trình Quản lý bán hàng FORMATDATE = STRNGAY & "/" & STRTHANG & "/" & STRNAM 76 END IF 76 END FUNCTION 76 ‘ 76 PUBLIC FUNCTION FORMATDATESQL(STRVALUE AS VARIANT) AS STRING 76 DIM STRNGAY AS STRING 76 DIM STRTHANG AS STRING 76 DIM STRNAM AS STRING .76 IF RONG(STRVALUE) THEN 76 FORMATDATESQL = "" 76 ELSE 76 STRNGAY = IIF(LEN(DAY(STRVALUE)) = 1, "0" & DAY(STRVALUE), DAY(STRVALUE)) 76 STRTHANG = IIF(LEN(MONTH(STRVALUE)) = 1, "0" & MONTH(STRVALUE), MONTH(STRVALUE)) .76 STRNAM = YEAR(STRVALUE) 76 FORMATDATESQL = STRTHANG & "/" & STRNGAY & "/" & STRNAM 76 END IF 76 Báo cáo chuyên đề Chương trình Quản lý bán hàng END FUNCTION 76 ‘ 76 PUBLIC SUB THONGBAO(MSG AS STRING, OPTIONAL TITLE AS STRING) 76 ON ERROR GOTO LOI .76 IF TITLE = "" THEN 76 TITLE = "THÔNG BÁO" 76 END IF 76 MSGBOX MSG, VBOKONLY, TITLE 76 EXIT SUB 76 LOI: .76 IF ERR.NUMBER THEN MSGBOX ("ERROR: " & ERR.NUMBER & VBCR & ERR.DESCRIPTION) 76 END SUB 76 ‘ 76 PUBLIC FUNCTION TONTAIGIATRI(TBL AS STRING, TRUONG AS STRING, VALUE AS STRING) AS BOOLEAN76 DIM RST AS NEW ADODB.RECORDSET 76 DIM STRSQL1 AS STRING .77 DIM II AS INTEGER 77 Báo cáo chuyên đề Chương trình Quản lý bán hàng ON ERROR GOTO LOI 77 STRSQL1 = "SELECT " & TRUONG & " FROM " & TBL & " WHERE " & TRUONG & " = '" & VALUE & "'" 77 SET RST = CNN.EXECUTE(STRSQL1) 77 IF RST.FIELDS(TRUONG).VALUE "" THEN 77 RST.CLOSE 77 TONTAIGIATRI = TRUE 77 ELSE 77 RST.CLOSE 77 TONTAIGIATRI = FALSE 77 END IF 77 LOI: .77 IF ERR.NUMBER THEN THONGBAO ("ERROR: " & ERR.NUMBER & VBCR & ERR.DESCRIPTION) 77 END FUNCTION 77 ‘ 77 PUBLIC FUNCTION GETFIELD(TBL AS STRING, FIELD AS STRING, OPTIONAL COND AS STRING) AS VARIANT 77 DIM SQL AS STRING .77 Báo cáo chuyên đề Chương trình Quản lý bán hàng DIM RST AS ADODB.RECORDSET 77 SQL = "SELECT " & FIELD & " FROM " & TBL 77 IF COND "" THEN 77 SQL = SQL & " WHERE " & COND 77 END IF 77 SET RST = CNN.EXECUTE(SQL) 77 IF (NOT RST.BOF) THEN 77 GETFIELD = RST.FIELDS(0).VALUE 77 ELSE 77 GETFIELD = "NORECORD" 77 END IF 77 END FUNCTION 77 ‘ 77 PUBLIC SUB LOGINSERVER(OPTIONAL BYVAL DANGMO AS BOOLEAN = FALSE) .77 ON ERROR GOTO LOI .77 IF NOT DANGMO THEN FRMSERVER.SHOW 77 SQLSERVERNAME = FRMSERVER.TXTMAYCHU 77 SQLLOCATION = FRMSERVER.TXTCSDL .77 Báo cáo chuyên đề Chương trình Quản lý bán hàng SQLUSER = FRMSERVER.TXTTAIKHOAN .77 SQLPASSWORD = FRMSERVER.TXTMATKHAU 77 STRCONNECTIONDATA = "PROVIDER=SQLOLEDB.1;PASSWORD=" & SQLPASSWORD & "; PERSIST SECURITY INFO=FALSE;USER ID=" & SQLUSER & ";INITIAL CATALOG=" & SQLLOCATION & ";DATA SOURCE=" & SQLSERVERNAME 77 SET CNN = NEW ADODB.CONNECTION 78 CNN.OPEN STRCONNECTIONDATA 78 SAVETOFILE .78 UNLOAD FRMSERVER 78 FRMLOGIN.SHOW .78 FRMMAIN.SHOW .78 EXIT SUB 78 LOI: .78 THONGBAO "THÔNG TIN VỀ MÁY CHỦ BỊ SAI XIN VUI LÒNG KIỂM TRA LẠI." 78 FRMSERVER.TXTMAYCHU.SETFOCUS 78 EXIT SUB 78 END SUB 78 Báo cáo chuyên đề 10 Chương trình Quản lý bán hàng 4.2.7 Hóa đơn bán hàng: (Thao tác tương tự Nhập hàng) Báo cáo chuyên đề 67 Chương trình Quản lý bán hàng 4.2.8 Báo cáo chi tiết bán hàng: - Chọn điều kiện: Từ ngày, Đến ngày (Mặc định hệ thống: Từ ngày = đầu tháng tại, Đến ngày = Ngày tại) - Sau nhấn nút “Lọc ĐK” Báo cáo chuyên đề 68 Chương trình Quản lý bán hàng 4.2.9 Báo cáo Nhập – Xuất – Tồn hàng hóa: Báo cáo chun đề 69 Chương trình Quản lý bán hàng KẾT LUẬN Đánh giá chương trình Quản lý bán hàng (QLBH): Chương trình QLBH làm được: - Cập nhật (Thêm, Sửa, Xóa) thông tin danh mục đầu vào như: Danh mục hàng hóa, Danh mục nhóm hàng, Danh mục đơn vị tính, Danh mục kho hàng, Danh mục nhân viên, Danh mục khách hàng – nhà cung cấp, Danh mục nhóm khách hàng, Danh mục hình thức vận chuyển, Danh mục người sử dụng - Nhập hàng vào kho (có nghiệp vụ làm tăng kho) - Bán hàng (có nghiệp vụ làm giảm kho) - Báo cáo đầu (Có lọc theo điều kiện từ ngày  đến ngày): + Báo cáo nhập hàng theo hóa đơn + Báo cáo chi tiết nhập hàng + Báo cáo bán hàng theo hóa đơn + Báo cáo chi tiết bán hàng + Báo cáo nhập – xuất – tồn kho + Báo cáo hàng tiền tồn kho - Ưu điểm : + Chương trình QLBH viết ngơn ngữ Visual Basic 6.0 với giao diện windows nên dễ sử dụng thân thiện với người dùng + QLBH đáp ứng nghiệp vụ nên chương trình khơng phức tạp + QLBH linh động khai báo, VD: Tại form nhập hàng, có mặt hàng mới, chưa khai báo danh mục hàng hóa Bạn gọi danh mục hàng hóa để khai báo nhanh Báo cáo chuyên đề 70 Chương trình Quản lý bán hàng cách enter vào text box Hàng hóa Từ bạn dễ dàng khai báo thơng tin mã hàng mà khơng cần form nhập hàng để gọi form Hàng hóa - Nhược điểm : + Tính bảo mật chưa cao + Tính cịn hạn chế Hướng phát triển tương lai: Mặc dù thầy giáo Phạm Thảo tận tình bảo thời gian khả có hạn, đồng thời QLBH lĩnh vực lớn nên em chưa thể hồn thiện số nghiệp vụ có thực tế Hiện chương trình đáp ứng nghiệp vụ quản lý bán hàng là: Nhập hàng, bán hàng, xem báo cáo nhập kho, xuất kho, tồn kho Trong tương lai, em cố gắng hoàn thiện phần bảo mật như: Phân quyền cho người dùng đến chức (Mỗi người dùng phân quyền phép hay không phép nhập hàng, bán hàng, xem báo cáo,…) Thêm số nghiệp vụ có thực tế như: Nhập hàng trả lại từ khách hàng, xuất hàng trả lại nhà cung cấp, Phiếu chuyển kho nội bộ, Phiếu xuất hủy (xuất dùng) hàng hóa,… Rất mong thầy giáo, bạn sinh viên tiếp tục góp ý kiến để xây dựng chương trình QLBH ngày hồn thiện hơn, ứng dụng thực tế tương lai gần Chân thành cảm ơn thầy cô giáo, đặc biệt thầy giáo Phạm Thảo hướng dẫn em để có kết ngày hơm Báo cáo chuyên đề 71 Chương trình Quản lý bán hàng TÀI LIỆU THAM KHẢO Nguyễn Văn Ba (2006), Phân tích thiết kế hệ thống thơng tin, NXB Đại Học Quốc Gia Hà Nội Giáo trình Visual Basic FPT http://www.caulacbovb.com/ http://www.google.com/ http://www.Projects.com/ Báo cáo chuyên đề 72 Chương trình Quản lý bán hàng NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN BÁO CÁO THỰC TẬP TỐT NGHIỆP Đề tài: Xây dựng phần mềm quản lý bán hàng Giáo viên hướng dẫn: Ths Đào Phan Vũ Sinh viên thực hiện: Nguyễn Trọng Thuấn Mã sinh viên: LT106617 Lớp: K10B – Công nghệ thông tin Nhận xét giáo viên hướng dẫn: Hà Nội, ngày … tháng12 năm 2012 Giáo viên hướng dẫn Th.s Đào Phan Vũ Báo cáo chuyên đề 73 Chương trình Quản lý bán hàng NHẬN XÉT CỦA ĐƠN VỊ THỰC TẬP TỐT NGHIỆP Đề tài: Xây dựng phần mềm quản lý bán hàng Giáo viên hướng dẫn: Ths Đào Phan Vũ Sinh viên thực hiện: Nguyễn Trọng Thuấn Mã sinh viên: LT106617 Lớp: K10B – Công nghệ thông tin Nhận xét đơn vị thực tập: Hà Nội, ngày … tháng12 năm 2012 TM, Công Ty Báo cáo chuyên đề 74 Chương trình Quản lý bán hàng PHỤ LỤC Một số hàm sử dụng chương trình: Public Function Rong(ByVal VarX As Variant) As Boolean If IsNull(VarX) Or Trim(VarX) = "" Then Rong = True Else Rong = False End If End Function ‘ -Public Function NullToNumber(VarX As Variant) As Double On Error GoTo LOI If Rong(VarX) Then NullToNumber = Else NullToNumber = VarX End If LOI: If Err.Number Then ThongBao ("Error: " & Err.Number & vbCr & Err.Description) End Function ‘ -Public Function NullToString(VarX As Variant) As String On Error GoTo LOI If Rong(VarX) Then NullToString = "" Else NullToString = VarX End If LOI: If Err.Number Then ThongBao ("Error: " & Err.Number & vbCr & Err.Description) End Function ‘ -Public Function FormatDate(strValue As Variant) As String Dim strNgay As String Dim strThang As String Báo cáo chuyên đề 75 Chương trình Quản lý bán hàng Dim strNam As String If Rong(strValue) Then FormatDate = "" Else strNgay = IIf(Len(Day(strValue)) = 1, "0" & Day(strValue), Day(strValue)) strThang = IIf(Len(Month(strValue)) = 1, "0" & Month(strValue), Month(strValue)) strNam = Year(strValue) FormatDate = strNgay & "/" & strThang & "/" & strNam End If End Function ‘ -Public Function FormatDateSQL(strValue As Variant) As String Dim strNgay As String Dim strThang As String Dim strNam As String If Rong(strValue) Then FormatDateSQL = "" Else strNgay = IIf(Len(Day(strValue)) = 1, "0" & Day(strValue), Day(strValue)) strThang = IIf(Len(Month(strValue)) = 1, "0" & Month(strValue), Month(strValue)) strNam = Year(strValue) FormatDateSQL = strThang & "/" & strNgay & "/" & strNam End If End Function ‘ -Public Sub ThongBao(msg As String, Optional title As String) On Error GoTo LOI If title = "" Then title = "Thông Báo" End If MsgBox msg, vbOKOnly, title Exit Sub LOI: If Err.Number Then MsgBox ("Error: " & Err.Number & vbCr & Err.Description) End Sub ‘ -Public Function TonTaiGiaTri(tbl As String, truong As String, value As String) As Boolean Dim rst As New ADODB.Recordset Báo cáo chuyên đề 76 Chương trình Quản lý bán hàng Dim strSQL1 As String Dim ii As Integer On Error GoTo LOI strSQL1 = "select " & truong & " from " & tbl & " where " & truong & " = '" & value & "'" Set rst = cnn.Execute(strSQL1) If rst.Fields(truong).value "" Then rst.Close TonTaiGiaTri = True Else rst.Close TonTaiGiaTri = False End If LOI: If Err.Number Then ThongBao ("Error: " & Err.Number & vbCr & Err.Description) End Function ‘ -Public Function GetField(tbl As String, field As String, Optional cond As String) As Variant Dim sql As String Dim rst As ADODB.Recordset sql = "select " & field & " from " & tbl If cond "" Then sql = sql & " where " & cond End If Set rst = cnn.Execute(sql) If (Not rst.BOF) Then GetField = rst.Fields(0).value Else GetField = "NoRecord" End If End Function ‘ -Public Sub LoginServer(Optional ByVal DangMo As Boolean = False) On Error GoTo LOI If Not DangMo Then frmServer.Show SQLServerName = frmServer.txtMayChu SQLLocation = frmServer.txtCSDL SQLUser = frmServer.txtTaiKhoan SQLPassword = frmServer.txtMatKhau strConnectionData = "Provider=SQLOLEDB.1;Password=" & SQLPassword & "; Persist Security Info=False;User ID=" & SQLUser & ";Initial Catalog=" & SQLLocation & ";Data Source=" & SQLServerName Báo cáo chuyên đề 77 Chương trình Quản lý bán hàng Set cnn = New ADODB.Connection cnn.Open strConnectionData SaveToFile Unload frmServer frmLogin.Show frmMain.Show Exit Sub LOI: ThongBao "Thông tin máy chủ bị sai Xin vui lòng kiểm tra lại." frmServer.txtMayChu.SetFocus Exit Sub End Sub ‘ -Public Sub SaveToFile() Dim fnum As Integer Dim i As Integer Dim file_name As String On Error GoTo LOI fnum = FreeFile file_name = App.Path & "/sys/qlbh.dll" Kill file_name Open file_name For Output As #fnum Write #fnum, frmServer.txtMayChu.Text & "#" & frmServer.txtCSDL & "#" & frmServer.txtTaiKhoan.Text & "#" & frmServer.txtMatKhau.Text Close #fnum Exit Sub LOI: If Err.Number Then ThongBao ("Error: " & Err.Number & vbCr & Err.Description) End Sub ‘ -Public Sub ReadFromFile() Dim fnum As Integer Dim i As Integer Dim KQ() As String Dim value As String On Error GoTo LOI fnum = FreeFile Open "sys/qlbh.dll" For Input As fnum Input #fnum, value KQ = Split(value, "#") frmServer.txtMayChu.Text = KQ(0) frmServer.txtCSDL.Text = KQ(1) frmServer.txtTaiKhoan.Text = KQ(2) Báo cáo chuyên đề 78 Chương trình Quản lý bán hàng frmServer.txtMatKhau.Text = KQ(3) Close fnum Exit Sub LOI: ThongBao "Thông tin máy chủ bị sai Xin vui lòng kiểm tra lại." End Sub ‘ -Public Function StringSQL(value As String) As String On Error GoTo LOI StringSQL = "'" & value & "'" LOI: If Err.Number Then ThongBao ("Error: " & Err.Number & vbCr & Err.Description) End Function ‘ -Function ExistRecord(Tablename As String, Condition As String, cnn As ADODB.Connection) As Boolean Dim sql As String Dim rst As New ADODB.Recordset On Error GoTo LOI Set rst = New ADODB.Recordset sql = "SELECT Count(*) FROM " & Tablename If Not Rong(Condition) Then sql = sql & " WHERE " & Condition End If rst.Open sql, cnn, adOpenStatic, adLockReadOnly, adCmdText If rst.Fields(0).value > Then ExistRecord = True Else ExistRecord = False End If rst.Close Set rst = Nothing LOI: If Err.Number Then ThongBao ("Error: " & Err.Number & vbCr & Err.Description) End Function ‘ -Public Function BangChu(X As Variant, Optional Vnd As String = " đồng", Optional bDocDiem As Boolean = False) As String Dim so As String, ii As Integer, chu As String, S As String, so1 As String, so2 As String, so3 As String, sstr As String, a, b, dem As Integer, chuanso As String Dim soPhay As String On Error GoTo LOI Báo cáo chuyên đề 79 Chương trình Quản lý bán hàng If Rong(Vnd) Then Vnd = "đồng " If bDocDiem = True Then Vnd = "điểm" a = Array("không ", "một ", "hai ", "ba ", "bốn ", "năm ", "sáu ", "bảy ", "tám ", "chín ") b = Array("", "nghìn ", "triệu ", "tỷ ", "nghìn ") 'nghìn phía sau nghìn tỷ chu = "" chuanso = "" so = Mid(Trim(X), 1, IIf(InStr(1, X, ".") = 0, Len(X), InStr(1, X, "."))) soPhay = IIf(InStr(1, X, ".") = 0, "", Mid(X, InStr(1, X, ".") + 1)) Do While Mid(so, 1, 1) = "0" so = Mid(so, 2) Loop For ii = To Len(so) If InStr(1, "0123456789", Mid(so, ii, 1)) Then chuanso = chuanso & Mid(so, ii, 1) End If Next so = chuanso If Rong(so) Then chu = "" Exit Function End If dem = Do While Len(so) > sstr = "" S = Right(so, 3) S = Left("///", - Len(S)) + S so1 = Mid(S, 1, 1) so2 = Mid(S, 2, 1) so3 = Mid(S, 3, 1) If so1 = "/" Then so1 = "" If so2 = "/" Then so2 = "" If so3 = "/" Then so3 = "" sstr = IIf(Rong(so1), "", IIf(Val(so1) = And Val(so2) = And Val(so3) = 0, "", a(Val(so1)) + "trăm ")) sstr = sstr + IIf(Rong(so2), "", IIf(Val(so2) = And Val(so3) = 0, "", IIf(Val(so2) = 0, "linh ", IIf(Val(so2) = 1, "mười ", a(Val(so2)) + "mươi ")))) sstr = sstr + IIf(Rong(so3), "", IIf(Val(so3) = 0, "", IIf(Val(so3) = And Val(so2) And so2 "", "mốt ", IIf(Not Rong(sstr) And Val(so3) = 5, "lăm ", a(Val(so3)))))) chu = sstr + IIf(Rong(sstr) And dem > 0, "", b(dem)) + chu dem = dem + If Len(so) >= Then so = Left(so, Len(so) - 3) Báo cáo chuyên đề 80 Chương trình Quản lý bán hàng Else so = "" End If Loop If Rong(so) And Rong(soPhay) Then chu = Chr(IIf(Asc(Left(chu, 1)) > -97, Asc(Left(chu, 1)) - 32, Asc(Left(chu, 1)))) + Right(chu, Len(chu) - 1) BangChu = chu & Vnd Exit Function Else chu = Chr(IIf(Asc(Left(chu, 1)) > -97, Asc(Left(chu, 1)) - 32, Asc(Left(chu, 1)))) + Right(chu, Len(chu) - 1) If NullToNumber(soPhay) Then chu = chu & "phẩy " BangChu = chu & LCase(BangChu(soPhay)) '& Vnd Else BangChu = chu & Vnd End If BangChu = Replace(BangChu, " ", " ") Exit Function End If LOI: If Err.Number = Then MsgBox "Số vượt giới hạn đọc chương trình (chương trình QLBH đọc đến nghìn tỷ)" Exit Function End If End Function Báo cáo chuyên đề 81 ... liệu lại phải huy động tất số liệu thống kê vừa vất tốn nhiều thời gian nhân lực Báo cáo chuyên đề 28 Chương trình Quản lý bán hàng - Đối với phận quản lý kế tốn cơng đoạn tính tốn tiền hàng, lập

Ngày đăng: 29/08/2020, 16:55

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w