Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 173 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
173
Dung lượng
2,94 MB
Nội dung
1 1.1.1.1.1.1.1.1 LUẬN VĂN TỐT NGHIỆP ĐỀ TÀI: “XÂY DỰNG PHẦN MỀM QUẢN LÝ NGUỒN VỐN DỰ ÁN ĐẦU TƯ TẠI SỞ KẾ HOẠCH VÀ ĐẦU TƯ TỈNH ĐIỆN BIÊN.” LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com LỜI MỞ ĐẦU CHƯƠNG I: GIỚI THIỆU CHUNG VỀ CƠNG TY TIN HỌC XÂY DỰNG VÀ BÀI TỐN QUẢN LÝ NGUỒN VỐN DỰ ÁN ĐẦU TƯ TẠI SỞ KẾ HOẠCH VÀ ĐẦU TƯ TỈNH ĐIỆN BIÊN 11 I GIỚI THIỆU CHUNG VỀ CÔNG TY TIN HỌC XÂY DỰNG 11 Quá trình hình thành phát triển 11 Các loại hàng hoá dịch vụ chủ yếu Công ty kinh doanh 13 2.1 Nhóm phần mềm quản lý hoạt động doanh nghiệp xây dựng 13 2.2 Nhóm phần mềm kỹ thuật xây dựng 13 2.3 Nhóm phần mềm thiết kế sở hạ tầng 14 2.4 Nhóm phần mềm quản lý quy hoạch xây dựng 14 2.5 Dịch vụ tư vấn thiết kế xây dựng 14 2.6 Dịch vụ kinh doanh xuất nhập thiết bị công nghệ thông tin 14 2.7 Dịch vụ đào tạo, bồi dưỡng công nghệ thông tin, tư vấn thiết kế xây dựng 14 Cơ cấu tổ chức Công ty 14 3.1 Ban giám đốc công ty 15 3.2 Tổ chức hành 16 3.3 Ban khoa học công nghệ 17 3.4 XN phần mềm quản lý 17 3.5 XN phần mềm tư vấn xây dựng 17 3.6 XN Kinh doanh thiết bị tin học 17 3.7 XN Tự động hóa tư vấn xây dựng 18 3.8 Trung tâm đào tạo chuyển giao công nghệ 18 3.8.1 Các hình thức đào tạo 18 3.8.2 Các nội dung đào tạo 19 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 3.9 Trung tâm tư vấn thẩm định dự án CNTT 19 3.10 Trung tâm nghiên cứu phát triển CNTT 20 Tình hình tin học hố cơng tác quản lý cơng ty 20 II BÁI TOÁN QUẢN LÝ NGUỒN VỐN DỰ ÁN ĐẦU TƯ TẠI SỞ KẾ HOẠCH VÀ ĐẦU TƯ TỈNH ĐIỆN BIÊN 22 Khái quát hoạt động Sở Kế hoạch Đầu tư tỉnh Điện Biên 22 1.1 Chức nhiệm vụ Sở Kế hoạch Đầu tư tỉnh Điện Biên 22 1.2 Cơ cấu tổ chức Sở Kế hoạch Đầu tư tỉnh Điện Biên 24 1.2.1 Sơ đồ cấu tổ chức 24 1.2.2 Chức nhiệm vụ phòng ban 25 Thực trạng ứng dụng công nghệ thông tin Sở Kế hoạch Đầu tư Điện Biên lý lựa chọn đề tài 33 2.1 Thực trạng tin học hóa quản lý nguồn vốn dự án Sở Kế hoạch Đầu tư tỉnh Điện Biên 33 2.2 Lý lựa chọn đề tài nghiên cứu 33 Chức phần mềm quản lý nguồn vốn dự án đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên 34 3.1 Qui trình quản lý nguồn vốn đầu tư phương pháp thủ công 34 3.2 Chức đạt phần mềm quản lý nguồn vốn 34 3.3 Những đối tượng hưởng lợi từ phần mềm quản lý nguồn vốn đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên 35 3.3.1 Sở Kế hoạch Đầu tư tỉnh Điện Biên 35 3.3.2 Uỷ ban nhân dân tỉnh Điện Biên 35 3.3.3 Chủ đầu tư dự án 36 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 3.3.4 Nhân viên văn phòng 36 3.3.5 Nhân viên kế toán, tài 36 3.4 Phạm vi ứng dụng đề tài 36 CHƯƠNG II: PHƯƠNG PHÁP LUẬN CƠ BẢN XÂY DỰNG PHẦN MỀM QUẢN LÝ NGUỒN VỐN DỰ ÁN ĐẦU TƯ TẠI SỞ KẾ HOẠCH VÀ ĐẦU TƯ TỈNH ĐIỆN BIÊN 37 Tổng quan hệ thống thông tin quản lý 37 1.1 Định nghĩa phận cấu thành hệ thống thông tin 37 1.2 Phân loại hệ thống thông tin tổ chức 38 1.3 Tầm quan trọng hệ thống thông tin 40 Phương pháp phát triển hệ thống thông tin 41 2.1 Nguyên nhân dẫn đến viêc phát triển hệ thống thông tin 41 2.2 Phương pháp phát triển hệ thống thông tin 42 Phân tích hệ thống thông tin 42 3.1 Các phương pháp thu thập thông tin 42 3.2 Mã hóa liệu 42 3.3 Các công cụ mơ hình hóa hệ thống thơng tin 43 Quy trình xây dựng phần mềm ứng dụng 44 4.1 Đánh giá yêu cầu 44 4.2 Phân tích chi tiết 45 4.3 Thiết kế logic 45 4.4 Đề xuất phương án giải pháp 45 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 4.5 Thiết kế vật lý 46 4.6 Triển khai kỹ thuật hệ thống 46 4.7 Cài đặt khai thác 46 Thiết kế sở liệu 47 5.1 Thiết kế sở liệu logic từ thông tin 47 5.1.1 Xác định đầu 47 5.1.2 Xác định tệp cần thiết cung cấp liệu cho việc tạo đầu 48 5.2 Thiết kế sở liệu phương pháp mơ hình hóa 55 Khái quát công cụ sử dụng để thực đề tài 57 6.1 Hệ quản trị sở liệu SQL Server 57 6.2 Ngơn ngữ lập trình Visual Basic 6.0 58 CHƯƠNG III: PHÂN TÍCH THIẾT KẾ PHẦN MỀM QUẢN LÝ NGUỒN VỐN DỰ ÁN ĐẦU TƯ TẠI SỞ KẾ HOẠCH VÀ ĐẨU TƯ TỈNH ĐIỆN BIÊN 59 Khái quát toán quản lý 59 1.1 Thực tế qui trình quản lý nguồn vốn dự án đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên 59 1.2 Mục đích cần đạt phần mềm 60 1.3 Thông tin đầu vào thông tin đầu phần mềm 61 1.3.1 Thông tin đầu vào 61 1.3.2 Thông tin đầu 63 Mơ hình hố hệ thống thơng tin quản lý vốn dự án đầu tư 64 2.1 Sơ đồ chức BFD chương trình 64 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 2.2 Sơ đồ luồng thông tin 65 2.3 Sơ đồ ngữ cảnh Quản lý nguồn vốn dự án dự án đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên 66 2.4 Sơ đồ luồng liệu(DFD) hệ thống 66 2.4 Sơ đồ luồng liệu(DFD) hệ thống 67 2.4.1 Sơ đồ luồng liệu mức hệ thống 67 2.4.2 Sơ đồ phân rã xử lý mức 68 3.Thiết kế sở liệu 71 3.1 Mơ hình quan hệ thực thể ERD 72 3.2 Chuyển đổi quan hệ hai chiều mơ hình thực thể ERD 72 3.3 Một số bảng sở liệu quản lý nguồn vốn dự án đầu tư 76 3.4 Mơ hình quan hệ bảng sở liệu 83 4.Thiết kế giải thuật 84 4.1 Khái niệm giải thuật 84 4.2 Một số giải thuật điển hình 85 4.2.1.Giải thuật đăng nhập chương trình 85 4.2.2.Giải thuật thêm liệu 86 4.2.3.Giải thuật sửa đổi liệu 87 4.2.4.Giải thuật xóa bỏ liệu 88 4.2.5.Giải thuật tìm kiếm liệu 89 4.2.6.Giải thuật in báo cáo 90 5.Thiết kế giao diện 91 5.1 Nguyên tắc thiết kế giao diện 91 5.2 Một số giao diện điển hình 92 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 5.2.1 Màn hình đăng nhập chương trình 92 5.2.2 Màn hình thơng tin chung tất dự án 93 5.2.3 Màn hình thơng tin chung dự án 94 5.2.4 Màn hình thông tin Vốn - Kế hoạch dự án 95 5.2.5 Màn hình thơng tin Đấu thầu dự án 96 5.2.6 Màn hình thêm dự án 97 5.2.7 Màn hình báo cáo tổng hợp tình hình thực vốn đầu tư theo địa bàn 98 5.2.8 Màn hình báo cáo tổng hợp tình hình thực vốn đầu tư theo ngành kinh tế 99 5.2.9 Màn hình báo cáo tổng hợp tình hình thực vốn đầu tư theo thời gian 100 5.2.10 Màn hình báo cáo theo dõi tình trạng dự án 101 Cài đặt triển khai hệ thống 102 6.1 Yêu cầu phần mềm, phần cứng 102 6.1.1.Yêu cầu phần mềm 102 6.1.2 Yêu cầu phần cứng 102 6.2 Tạo sở liệu quản lý vốn 103 6.3 Phương hướng hoàn thiện phát triển 107 KẾT LUẬN 109 DANH MỤC TÀI LIỆU THAM KHẢO 110 PHỤ LỤC 111 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com LỜI MỞ ĐẦU Ngày khái niệm cơng nghệ thơng tin khơng cịn khái niệm xa lạ người, trở thành phần sống hàng ngày tác động rộng lớn sâu sắc đến tất lĩnh vực đời sống xã hội nói chung doanh nghiệp nói riêng Việc ứng dụng tin học vào lĩnh vực kinh doanh, quản lý nguồn lực lĩnh vực quản lý tổ chức cho thấy tác dụng hiệu to lớn, có tính chất định đến công việc Hiện phần mềm ứng dụng phát triển rộng rãi hầu hết doanh nghiệp kể nhà nước lẫn tư nhân Một thực trạng diễn công ty thường mua phần mềm thuê viết phần mềm nhiên lập trình viên lại khơng hiểu rõ hết nghiệp vụ công ty dẫn đến bất cập trình sử dụng phần mềm Bên cạnh có chương trình nhân viên cơng ty viết giải pháp tạm thời khơng mang tính chun nghiệp cao Do để lựa chọn phần mềm phù hợp quan trọng doanh nghiệp từ đạt kết tốt kinh doanh quản lý Công ty Tin học Xây dựng có tên đầy đủ Cơng ty cổ phần Tin học Tư vấn Xây dựng (Construction Informatics and Consultancy join_stock Company) viết tắt CIC, qua nhiều năm hoạt động, Cơng ty có nhiều đóng góp cho việc đẩy mạnh ứng dụng cơng nghệ thơng tin nói chung phát triển phần mềm xây dựng nói riêng Sở Kế hoạch Đầu tư tỉnh Điện Biên quan chuyên môn thuộc Uỷ ban Nhân dân tỉnh Điện Biên có chức tham mưu, giúp Uỷ ban Nhân dân tỉnh Điện Biên thực chức quản lý nhà nước kế hoạch đầu tư bao gồm lĩnh vực: Tham mưu tổng hợp quy hoạch, kế hoạch phát triển kinh tế xã hội, tổ chức thực kiến nghị, đề xuất chế, LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com sách quản lý kinh tế xã hội địa bàn tỉnh; Đầu tư nước đầu tư nước địa phương; Quản lý nguồn vốn hỗ trợ phát triển thức ODA; Đấu thầu, đăng ký kinh doanh phạm vi địa phương dịch vụ công thuộc phạm vi quản lý Sở theo quy định pháp luật … Do Sở Kế hoạch Đầu tư tỉnh Điện Biên phải quản lý nhiều dự án thuộc nhiều loại nguồn vốn khác Việc ứng dụng công nghệ thông tin vào quản lý nguồn vốn dự án đầu tư giúp ích nhiều cho công tác quản lý dự án đầu tư Sở Xuất phát từ thực tế em chọn đề tài: “ XÂY DỰNG PHẦN MỀM QUẢN LÝ NGUỒN VỐN DỰ ÁN ĐẦU TƯ TẠI SỞ KẾ HOẠCH VÀ ĐẦU TƯ TỈNH ĐIỆN BIÊN” để làm đề tài cho khố luận tốt nghiệp Ngồi phần mở đầu kết luận khoá luận tốt nghiệp em gồm chương sau: Chương I: Giới thiệu chung Công ty Tin học Xây dựng (CIC) toán quản lý nguồn vốn dự án đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên Phần giới thiệu khái quát Công ty Tin học Xây dựng Sở Kế hoạch Đầu tư tỉnh Điện Biên cần thiết đề tài nghiên cứu Chương II: Phương pháp luận xây dựng phần mềm quản lý nguồn vốn dự án đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên Phần trình bày vấn đề phương pháp luận làm sở việc nghiên cứu đề tài Chương III: Phân tích thiết kế phần mềm quản lý nguồn vốn dự án đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên Phần trình bày việc phân tích thiết kế phần mềm quản lý nguồn vốn dự án đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 10 Ngồi cịn có danh mục tài liệu tham khảo liệt kê tài liệu sử dụng Tuy cố gắng việc hồn thiện đề tài cơng trình nghiên cứu đầu tay sau thời gian dài học tập tài trường Đại học Kinh Tế Quốc Dân nên khơng tránh khỏi thiếu sót Em mong nhận ý kiến đóng góp, phê bình thầy cô giáo người quan tâm để đề tài hoàn thiện Qua em xin gửi lời cảm ơn chân thành đến thầy giáo Ks Đoàn Quốc Tuấn - Giảng viên khoa Tin học kinh tế trường Đại học Kinh tế Quốc Dân Hà Nội anh Nguyễn Đắc Tuấn - Trưởng phòng phần mềm Công ty Tin học Xây dựng CIC tận tình bảo hướng dẫn em hồn thành khố luận tốt nghiệp LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 159 SqlFrom = SqlFrom & "," & BangPS sqlFrom1 = sqlFrom1 & "," & BangPS End If End If 'Kết thúc kiểm tra để thêm sqlDA = sqlDA & SqlFrom & " where " & sqlDK & " and " & sqlDL SQLDA_Last = SQLDA_Last & sqlFrom1 & " where " & sqlDK & " and " & sqlDL1 KiemTraNode2 = sqlDA End Function Sub gTonghopTreeDuAn(BangTree As String) Dim rstree As New ADODB.Recordset, RsAdd As New ADODB.Recordset, RsTinhToan As New ADODB.Recordset Dim rsDuan As New ADODB.Recordset 'Tạo bảng d÷ liƯu If BangTreeDuan "" Then gConn.Execute "if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[" & BangTreeDuan & "]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[" & BangTreeDuan & "]" End If BangTreeDuan = FgBangTam gSQL = "CREATE TABLE [dbo].[" & BangTreeDuan & "] ([Ma] [nvarchar] (4000),[Ten] [nvarchar] (1000),[Parent] [nvarchar] (4000),[SapXep] [nvarchar] (80),[CacDA] [nvarchar] (4000),[Cap] [numeric](4, 0))" gConn.Execute gSQL RsAdd.Open BangTreeDuan, gConn, adOpenKeyset, adLockOptimistic BangTam_TinhTrang = FgBangTam gSQL = "SELECT MaDuAn, MAX(NgayBatDau) as NgaybatDau into " & BangTam_TinhTrang & " FROM dbo.Ps_TinhTrang GROUP BY MaDuAn" LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 160 gConn.Execute gSQL rstree.Open "select Ma, Ten, Parent,Sapxep,cap from " & BangTree & " order by sapxep" & gCOLLATE, gConn, adOpenStatic, adLockReadOnly Dim CacDA As String If rstree.RecordCount > Then rstree.MoveFirst While Not rstree.EOF SqlBaocao = "" CacDA = "" KiemTraTinhTrang = False Call SqlTree1(rstree.Fields("Ma").Value, rstree.Fields("Parent").Value) If KiemTraTinhTrang = False Then gSQL = dbo.Ps_DuAn Left JOIN "select DISTINCT PS_DuAn.MaDuAn FROM dbo.Ps_NguonVon ON dbo.Ps_DuAn.MaDuAn = dbo.Ps_NguonVon.MaDuAn WHERE " & SqlBaocao & " " Else gSQL = dbo.Ps_DuAn Left JOIN "select DISTINCT PS_DuAn.MaDuAn FROM dbo.Ps_NguonVon ON dbo.Ps_DuAn.MaDuAn = dbo.Ps_NguonVon.MaDuAn dbo.Ps_TinhTrang ON dbo.Ps_DuAn.MaDuAn = dbo.Ps_TinhTrang.MaDuAn INNER JOIN " & BangTam_TinhTrang & INNER " ON JOIN dbo.Ps_Tinhtrang.MaDuAn = " & BangTam_TinhTrang & ".MaDuAn and dbo.Ps_TinhTrang.Ngaybatdau=" & BangTam_TinhTrang & ".Ngaybatdau WHERE " & SqlBaocao & " " End If rsDuan.Open gSQL, gConn, adOpenStatic, adLockReadOnly If rsDuan.RecordCount > Then rsDuan.MoveFirst While Not rsDuan.EOF CacDA = CacDA & "'" & rsDuan.Fields("Maduan").Value & "'," rsDuan.MoveNext Wend LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 161 CacDA = Mid(CacDA, 1, Len(CacDA) - 1) 'Tiến hành thêm vào sở liÖu With RsAdd AddNew Fields("Ma").Value = rstree.Fields("Ma").Value Fields("Ten").Value = rstree.Fields("Ten").Value Fields("Parent").Value = rstree.Fields("Parent").Value Fields("Sapxep").Value = rstree.Fields("Sapxep").Value Fields("CacDA").Value = CacDA Fields("Cap").Value = rstree.Fields("Cap").Value Update End With End If rsDuan.Close rstree.MoveNext Wend End If rstree.Close RsAdd.Close gConn.Execute "drop table " & BangTree gConn.Execute "drop table " & BangTam_TinhTrang End Sub Public Sub SqlTree1(id As String, Parent As String) Dim Con As String, Cha As String, str As String, str1 As String, str2 As String Dim TenTruong As String, Ma As String str = id If InStrRev(str, "@") = Then Ma = Mid(str, InStrRev(str, "_") + 1) TenTruong = Mid(str, 1, Len(str) - Len(Ma) - 1) Call SqlChildStr("Td_" & TenTruong, "Ma" & TenTruong, Ma) SqlBaocao = SqlBaocao & Mid(sqlchild, 1, Len(sqlchild) - 1) & ")" If UCase(TenTruong) = UCase("Tinhtrang") Then LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 162 KiemTraTinhTrang = True End If Else If InStrRev(str, "@") Then str1 = Mid(str, 1, Len(str) - Len(Mid(str, InStrRev(str, "@")))) str2 = Mid(str, InStrRev(str, "@") + 1) If str2 = "" Then str2 = str1 str = Mid(str, 1, Len(str) - 1) Else str = Mid(str, 1, Len(str) - Len(Mid(str, InStrRev(str, "@")))) End If Ma = Mid(str2, InStrRev(str2, "_") + 1) TenTruong = Mid(str2, 1, Len(str2) - Len(Ma) - 1) If UCase(TenTruong) = UCase("Tinhtrang") Then KiemTraTinhTrang = True End If Call SqlChildStr("Td_" & TenTruong, "Ma" & TenTruong, Ma) SqlBaocao = SqlBaocao & Mid(sqlchild, 1, Len(sqlchild) - 1) & ")" & " and " Call SqlTree(str, str) End If End If End Sub Sub gLenTreeCacDuAn(Bang As String) On Error Resume Next gSQL = "Select * from " & Bang & " Order by SapXep " & gCOLLATE Dim rsSTT As New ADODB.Recordset rsSTT.Open gSQL, gConn, adOpenKeyset, adLockOptimistic TvDuLieu.Nodes.Clear TvDuLieu.Nodes.Add , , "r", "Danh mơc c¸c dù ¸n ", "Root" LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 163 TvDuLieu.Nodes(1).Expanded = True If rsSTT.RecordCount > Then Do While Not rsSTT.EOF If Right(rsSTT.Fields("Parent"), 1) "0" Then TvDuLieu.Nodes.Add "a" & rsSTT.Fields("Parent"), tvwChild, "a" & rsSTT.Fields("Ma"), rsSTT.Fields("Ten"), 1, Else TvDuLieu.Nodes.Add rsSTT.Fields("Ten"), "r", "Pic" tvwChild, & "a" & rsSTT.Fields("Ma"), IIf(IsNull(rsSTT.Fields("Cap")), 1, rsSTT.Fields("Cap").Value), "Open" End If rsSTT.MoveNext Loop End If End Sub Sub LoadDulieuDuAn(Tree As String) tmp_treeTT = FgTongHopCay(CDbl(Tree), "Tree") Call gTonghopTreeDuAn(tmp_treeTT) Call gLenTreeCacDuAn(BangTreeDuan) End Sub Sub NodeClickTonghop(Node As Node) Dim rsTong As New ADODB.Recordset, rs As New ADODB.Recordset If Node.Key = "r" Then gSQL_Duan = "SELECT distinct PS_DuAn.MaDuAn,TenDuAn, ThoiGianKhoiCong, ThoiGianKetThuc,TongMucDauTu,UserID from PS_Duan" Else rs.Open "select * from " & BangTreeDuan & " where ma='" & Mid(Node.Key, 2) & "'", gConn, adOpenStatic, adLockReadOnly If rs.RecordCount > Then If rs.Fields("CacDA").Value "" Then LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 164 gSQL_Duan = "SELECT distinct PS_DuAn.MaDuAn,TenDuAn, ThoiGianKhoiCong, ThoiGianKetThuc,TongMucDauTu,UserID from PS_Duan where maduan in (" & rs.Fields("CacDA").Value & ")" Else gSQL_Duan = "" End If End If End If Call DuAn With Me.adoDuan Password = gPSW ConnectionString = gConn.ConnectionString CommandType = adCmdText RecordSource = "select * from " & gTmp_DuAn Refresh End With rsTong.Open "select sum(TMDT),sum(DuToan) from " & gTmp_DuAn, gConn, adOpenStatic, adLockReadOnly Me.TgDuAn.Columns("TMDT").FooterText = SetChamPhay(IIf(rsTong.Fields(0).Value "", rsTong.Fields(0).Value, 0), True, True) Me.TgDuAn.Columns("DuToan").FooterText = SetChamPhay(IIf(rsTong.Fields(1).Value "", rsTong.Fields(1).Value, 0), True, True) rsTong.Close End Sub Sub NodeClick_ChiTiet(Bang As String, Node As Node) 'On Error GoTo thoat Dim BangTam As String Dim sql As String LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 165 Dim gRs_DuAn As New ADODB.Recordset Dim rs As New ADODB.Recordset Dim RsPS As New ADODB.Recordset Dim BangPS As String Dim sqlJoin As String If Bang "Td_TinhTrang" Then If Node.Key = "r" Then sql = "Select * from " & Bang & " where parent= '0'" gSQL_Duan = "SELECT distinct PS_DuAn.MaDuAn,TenDuAn, KhoiCong, KetThuc,TongMucDauTu,UserID from PS_Duan" Else sql = "Select * from " & Bang & " where parent= '" & Right(Node.Key, Len(Node.Key) - 1) & "'" sqlchild = "" Call Nodechild(Bang, "Ma" & Mid(Bang, 4), Mid(Node.Key, 2)) sqlchild = Mid(sqlchild, 1, Len(sqlchild) - 1) RsPS.Open "select LoaiQuanHe from TD_DanhMuc where BangTuDien='" & Mid(Bang, 4) & "'", gConn, adOpenStatic, adLockReadOnly If RsPS.RecordCount > Then If RsPS.Fields(0).Value = Then BangPS = "PS_" & Mid(Bang, 4) sqlJoin = "PS_DuAn.MaDuAn=" & BangPS & ".MaDuAn and " & BangPS & ".Ma" & Mid(Bang, 4) & "=" & Bang & ".Ma" & Mid(Bang, 4) gSQL_Duan = "SELECT distinct PS_DuAn.MaDuAn,TenDuAn, KhoiCong, KetThuc,TongMucDauTu,UserID from PS_DuAn," & BangPS & "," & Bang & " where " & sqlJoin & " and " & BangPS & ".Ma" & Mid(Bang, 4) & " in (" & sqlchild & ") " Else gSQL_Duan = "SELECT distinct PS_DuAn.MaDuAn,TenDuAn, KhoiCong, KetThuc,TongMucDauTu,UserID from PS_DuAn," & Bang & " where PS_Duan.Ma" & Mid(Bang, 4) & "=" & Bang & ".Ma" & Mid(Bang, 4) & " and PS_DuAn.Ma" & Mid(Bang, 4) & " in (" & sqlchild & ") " LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 166 End if Else gSQL_Duan = "SELECT distinct PS_DuAn.MaDuAn,TenDuAn, KhoiCong, KetThuc,TongMucDauTu,UserID from PS_Duan" End If End If Node.Expanded = True Else 'Là theo tình trạng If Node.Key = "r" Then sql = "Select * from " & Bang & " where parent= '0'" gSQL_Duan = "SELECT distinct PS_DuAn.MaDuAn,TenDuAn, KhoiCong, KetThuc,TongMucDauTu,UserID from PS_Duan" Else sql = "Select * from " & Bang & " where parent= '" & Right(Node.Key, Len(Node.Key) - 1) & "'" sqlchild = "" Call Nodechild(Bang, "Ma" & Mid(Bang, 4), Mid(Node.Key, 2)) sqlchild = Mid(sqlchild, 1, Len(sqlchild) - 1) RsPS.Open "select LoaiQuanHe from TD_DanhMuc where BangTuDien='" & Mid(Bang, 4) & "'", gConn, adOpenStatic, adLockReadOnly BangTam = FgBangTam gSQL = "SELECT MaDuAn, MAX(NgayBatDau) as NgaybatDau into " & BangTam & " FROM dbo.Ps_TinhTrang GROUP BY MaDuAn" gConn.Execute gSQL BangPS = "PS_" & Mid(Bang, 4) gSQL_Duan = "SELECT distinct PS_DuAn.MaDuAn,TenDuAn,KhoiCong, KetThuc,TongMucDauTu,UserID from dbo.Ps_DuAn INNER JOIN dbo.Ps_TinhTrang ON dbo.Ps_DuAn.MaDuAn = dbo.Ps_TinhTrang.MaDuAn INNER JOIN dbo.Ps_Tinhtrang.MaDuAn = & " " & BangTam BangTam & & ".MaDuAn " ON and dbo.Ps_TinhTrang.Ngaybatdau=" & BangTam & ".Ngaybatdau where " & BangPS & ".Ma" & Mid(Bang, 4) & " in (" & sqlchild & ") " LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 167 End If Node.Expanded = True End If Call DuAn With Me.adoDuan Password = gPSW ConnectionString = gConn.ConnectionString CommandType = adCmdText RecordSource = "select * from " & gTmp_DuAn Refresh End With Dim rsTong As New ADODB.Recordset rsTong.Open "select sum(TMDT),sum(DuToan) from " & gTmp_DuAn, gConn, adOpenStatic, adLockReadOnly Me.TgDuAn.Columns("TMDT").FooterText = SetChamPhay(IIf(rsTong.Fields(0).Value "", rsTong.Fields(0).Value, 0), True, True) Me.TgDuAn.Columns("DuToan").FooterText = SetChamPhay(IIf(rsTong.Fields(1).Value "", rsTong.Fields(1).Value, 0), True, True) rsTong.Close If BangTam "" Then sql = " if exists(select * from sysobjects where id=object_id(N'[dbo].[" & BangTam & "]') and objectproperty(id,N'IsUserTable')=1) " sql = sql & vbCrLf & " drop table [dbo].[" & BangTam & "]" gConn.Execute sql End If End Sub LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 168 Sub gLenTreeCacDuAn1(Bang As String, Truong As String) gSQL = "Select * from " & Bang & " Order by SapXep " & gCOLLATE Dim rsSTT As New ADODB.Recordset rsSTT.Open gSQL, gConn, adOpenKeyset, adLockOptimistic TvDuLieu.Nodes.Clear TvDuLieu.Nodes.Add , , "r", "Danh mơc c¸c dù ¸n ", "Root" TvDuLieu.Nodes(1).Expanded = True If rsSTT.RecordCount > Then Do While Not rsSTT.EOF If Right(rsSTT.Fields("Parent"), 1) "0" Then TvDuLieu.Nodes.Add "a" & rsSTT.Fields("Parent"), tvwChild, "a" & rsSTT.Fields("Ma" & Truong), rsSTT.Fields("Ten" & Truong), 1, Else TvDuLieu.Nodes.Add "r", tvwChild, "a" & rsSTT.Fields("Ma" & Truong), rsSTT.Fields("Ten" & Truong), "Pic" & IIf(IsNull(rsSTT.Fields("Cap")), 1, rsSTT.Fields("Cap").Value), "Open" End If rsSTT.MoveNext Loop End If End Sub Sub TatCaCacDuAn() On Error Resume Next gSQL_Duan = "SELECT distinct PS_DuAn.MaDuAn,TenDuAn, KhoiCong, KetThuc,TongMucDauTu,UserID from PS_Duan" Call DuAn With Me.adoDuan Password = gPSW ConnectionString = gConn.ConnectionString CommandType = adCmdText RecordSource = "select * from " & gTmp_DuAn & " order by Khoicong,Ketthuc " LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 169 Refresh End With Dim rsTong As New ADODB.Recordset rsTong.Open "select sum(TMDT),sum(DuToan) from " & gTmp_DuAn, gConn, adOpenStatic, adLockReadOnly Me.TgDuAn.Columns("TMDT").FooterText = SetChamPhay(IIf(rsTong.Fields(0).Value "", rsTong.Fields(0).Value, 0), True, True) Me.TgDuAn.Columns("DuToan").FooterText = SetChamPhay(IIf(rsTong.Fields(1).Value "", rsTong.Fields(1).Value, 0), True, True) rsTong.Close End Sub Private Function AddDonViQuanLy() On Error GoTo thoat cboDonViTheoDoi.Clear cboDonViTheoDoi.AddItem "TÊt c¶" Dim rs As New ADODB.Recordset rs.Open "SELECT * FROM Td_DonVi ", gConn, adOpenStatic, adLockOptimistic, adCmdText If rs.RecordCount = Then cboDonViTheoDoi.Text = "TÊt c¶" Else Do While Not rs.EOF = True cboDonViTheoDoi.AddItem rs!TenDonVi & "" rs.MoveNext Loop cboDonViTheoDoi.Text = "TÊt c¶" End If Set rs = Nothing thoat: End Function LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 170 Code Form ThemMoiDuAn Option Explicit Dim tmp_PsVon As String Dim tmp_KhVon As String, tmp_KhVon1 As String Dim tmp_Congsuat As String Dim tmp_PsDauThau As String Dim tmp_NhaThau As String, tmp_NhaThau1 As String Dim tmp_DuToan As String Dim tmp_ThucHien As String Dim tmp_ThanhToan As String Dim tmp_Tinhtrang As String Dim tmp_ThongtinKhac As String Dim loi As String Dim Dongform As Boolean Dim T_Style() As Style Dim TenQD As String Dim LanThayDoi As Integer Dim rsUpdate As New ADODB.Recordset Dim KiemtraTonTai As Boolean Private Sub cmChapnhan_Click() Dim rs As New ADODB.Recordset, rs1 As New ADODB.Recordset, TongMucDT As Double Screen.MousePointer = 11 Select Case gLoai_FormDA Case "Themmoi" If Me.txTenDuAn.Text "" Then rs.Open "select * from " & tmp_PsVon, gConn, adOpenStatic, adLockReadOnly If rs.RecordCount > Then rs1.Open "select sum(isnull(TienTrongNuoc,0)) from " & tmp_PsVon, gConn, adOpenStatic, adLockReadOnly TongMucDT = IIf(IsNull(rs1.Fields(0)), 0, rs1.Fields(0).Value) If TongMucDT CDbl(Me.txtTongMucDauTu.Text) Then LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 171 SgMsgBox "Tổng mức đầu t khác tổng cấu nguồn vốn hình thành" Me.txtTongMucDauTu.SetFocus Screen.MousePointer = 99 Exit Sub End If rs1.Close End If rs.Close On Error GoTo ErrNew Me.TgCongsuat.Update Me.TgDauthau.Update Me.TgDutoan.Update Me.TgKHvon.Update Me.TgNhaThau.Update Me.TgThanhtoan.Update Me.TgThuchien.Update Me.TgTinhtrang.Update Me.TgVon.Update Me.TgThongTinKhac.Update GoTo ContNew ErrNew: SgMsgBox "Có lỗi nhập liệu !" Exit Sub ContNew: On Error GoTo Themmoi_DuAn Dongform = True SgMsgBox "ĐÃ lu liệu." Else SgMsgBox "Cha nhập tên dù ¸n." Me.txTenDuAn.SetFocus End If LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 172 Case "Sua" If Me.txTenDuAn.Text "" Then If CDate(Me.MsNgayKC) > CDate(Me.MsNgayKT) Then SgMsgBox "Ngày khởi công lớn ngày kết thúc" Me.MsNgayKC.SetFocus Exit Sub End If rs.Open "select * from " & tmp_PsVon, gConn, adOpenStatic, adLockReadOnly If rs.RecordCount > Then rs1.Open "select sum(isnull(TienTrongNuoc,0)) from " & tmp_PsVon, gConn, adOpenStatic, adLockReadOnly TongMucDT = IIf(IsNull(rs1.Fields(0)), 0, rs1.Fields(0).Value) If TongMucDT CDbl(Me.txtTongMucDauTu.Text) Then SgMsgBox "Tổng mức đầu t khác tổng cấu nguồn vốn hình thành" Me.txtTongMucDauTu.SetFocus Screen.MousePointer = 99 Exit Sub End If rs1.Close End If rs.Close On Error GoTo ErrUpdate Me.TgCongsuat.Update Me.TgDauthau.Update Me.TgDutoan.Update Me.TgKHvon.Update Me.TgNhaThau.Update Me.TgThanhtoan.Update Me.TgThuchien.Update Me.TgTinhtrang.Update LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 173 Me.TgVon.Update GoTo ContUpdate ErrUpdate: SgMsgBox "Có lỗi nhập d÷ liƯu !" Exit Sub ContUpdate: On Error GoTo Capnhat_DuAn (gDuan_Id) Dongform = True SgMsgBox "ĐÃ lu liệu." Else SgMsgBox "Cha nhập tên dự án." Me.txTenDuAn.SetFocus End If End Select Screen.MousePointer = 99 End Sub LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... VỐN DỰ ÁN ĐẦU TƯ TẠI SỞ KẾ HOẠCH VÀ ĐẦU TƯ TỈNH ĐIỆN BIÊN Khái quát hoạt động Sở Kế hoạch Đầu tư tỉnh Điện Biên 1.1 Chức nhiệm vụ Sở Kế hoạch Đầu tư tỉnh Điện Biên Sở Kế hoạch Đầu tư tỉnh Điện Biên. .. quản lý vốn dự án đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên giúp việc quản lý vốn dự án đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên dễ dàng thuận tiện Từ báo cáo đầu hệ thống, Ban quản lý Sở Kế hoạch. .. học Xây dựng Sở Kế hoạch Đầu tư tỉnh Điện Biên cần thiết đề tài nghiên cứu Chương II: Phương pháp luận xây dựng phần mềm quản lý nguồn vốn dự án đầu tư Sở Kế hoạch Đầu tư tỉnh Điện Biên Phần