SỬ DỤNG CHỨC NĂNG VÀ CÁC CÔNG CỤ

Một phần của tài liệu Xây dựng cơ sở dữ liệu GIS sơ đồ địa bàn phường Vĩnh Thọ - TP.Nha Trang (Trang 102)

3 XÂY DỰNG CHỨC NĂNG

5.2 SỬ DỤNG CHỨC NĂNG VÀ CÁC CÔNG CỤ

Trước khi sử du ̣ng chương trình ba ̣n hãy click vào biểu tượng để kiểm tra kết nối cơ sở dữ liê ̣u và xem chương trinh có bi ̣ lỗi không. Nếu có lỗi xảy ra sẽ có MsgBox thông báo lỗi hiển thi ̣, ngược la ̣i không có gì thì chương trình cha ̣y tốt và không có lỗi xảy ra.

Sử dụng các chức năng

 Các chức năng của chương trình được thiết kế dạng Menu, khi người sử dụng muốn thực hiện chức năng nào thì nhấn vào Menu thì xuất hiện danh sách các menu con để lựa chọn.

 Khi muốn thêm mới dữ liê ̣u, ba ̣n hãy nhâ ̣p đầy đủ thông tin mới về đối tượng cần thêm, rồi click vào biểu tưởng để thêm mới.

 Khi muốn xem dữ liệu sau khi thêm mới hoă ̣c xem thông tin của dữ liê ̣u từ các bảng dữ liê ̣u thì kích vào biểu tượng

 Khi muốn tiếp tục thêm mới thì kích vào biểu tượng .

 Khi muốn tìm kiếm dữ liệu thì ta nhâ ̣p vào từ khóa cần tìm cần tìm rồi kích vào biểu tượng thì thông tin ba ̣n cần tìm kiếm sẽ hiển thi ̣.

 Khi muốn xóa dữ liệu thì ta cho ̣n mã cần xóa, rồi kích vào biểu tượng để xóa thì toàn bô ̣ thông tin về đối tượng này sẽ bi ̣ xóa hoàn toàn.

 Khi muốn sửa dữ liệu thì ta chọn bản ghi cần sửa và nhâ ̣p những thông tin mới cần sửa chữa rồi kích vào biểu tượng để sửa thông tin.

 Khi muốn thoát thì kích vào biểu tượng

 Khi muốn hủy bỏ thao tác thêm mới dữ liê ̣u không gian thì kích vào biểu

tượng .

 Trong quá trình câ ̣p nhâ ̣t dữ liê ̣u nếu có lỗi thì sẽ thông báo lỗi ngược la ̣i sẽ có thông báo thực hiê ̣n thành công.

Sử dụng các công cụ

 Khi ba ̣n muốn di chuyển trực tiếp các chủ đề thì cho ̣n công cu ̣ .

 Khi muốn phóng to chủ đề cho ̣n .

 Khi muốn thu nho chủ đề cho ̣n .

 Khi xem thông tin về đối tượng hô ̣ gia đình tự cho ̣n trên bản đồ chọn .

 Khi xem thông tin về đối tươ ̣ng cơ sở kinh doanh tư nhân tự cho ̣n trên bản đồ chọn .

 Khi xem thông tin về đối tượng đi ̣a vâ ̣t trên bản đồ chọn .

 Khi xem thông tin về đối tượng khách sa ̣n trên bản đồ chọn .

 Khi xem thông tin hotlink( hình ảnh và giới thiê ̣u ngắn go ̣n) của đối tượng đươ ̣c cho ̣n trên bản đồ cho ̣n .

 Khi xem to ̣a đô ̣ của điểm trên bản đồ cho ̣n công cu ̣ .

 Khi thêm mới dữ liê ̣u không gian thi ̣ cho ̣n công cu ̣ để thêm mới hô ̣ gia đình, sau đó cho ̣n vào điểm cần thêm trên bản đồ, rồi nhâ ̣p đầy đủ thông tin thêm mới về đối tượng rồi cho ̣n để thêm mới.

 Cho ̣n công cu ̣ để thêm mới cơ sở kinh doanh tư nhân, sau đó cho ̣n vào điểm cần thêm trên bản đồ, rồi nhâ ̣p đầy đủ thông tin thêm mới về đối tượng rồi cho ̣n để thêm mới.

 Cho ̣n công cu ̣ để thêm mới đi ̣a vâ ̣t, sau đó cho ̣n vào điểm cần thêm trên bản đồ, rồi nhâ ̣p đầy đủ thông tin thêm mới về đối tượng rồi cho ̣n để thêm mới.

 Cho ̣n công cu ̣ để thêm mới khách sa ̣n, sau đó cho ̣n vào điểm cần thêm trên bản đồ, rồi nhâ ̣p đầy đủ thông tin thêm mới về đối tượng rồi cho ̣n để thêm mới.

 Nếu bản đồ đang được phóng to hay thu nhỏ ở mô ̣t chế đô ̣ hiển thi ̣ nào đó, kích vào để đưa tất cả các chủ đề trong view về chế đô ̣ hiển thi ̣ toàn bô ̣ màn hình.

 Click vào để phóng to dần tất cả các chủ đề đang được hiển thi ̣ trên màn hình tính từ tâm màn hình hiển thi ̣ của cửa sổ view.

 Click vào để thu nhỏ dần tất cả các chủ đề đang được hiển thi ̣ trên màn hình tính từ tâm màn hình hiển thi ̣ của cửa sổ view.

5.3 SỬ DỤNG FONT CHỮ TIẾNG VIỆT TRONG ARCVIEW

Hiê ̣n nay ArcView chưa hô ̣ trợ font Unicode nên muốn nhâ ̣p và hiển thi ̣ tiếng việt trong phần mềm, chương trình ứng du ̣ng liên quan đến ArcView thì phải sử du ̣ng font TCVN3-ABC. Vì vâ ̣y, khi sử du ̣ng cần chú ý mô ̣t số vấn đề sau:

 Trên máy tính ba ̣n cần phải cài đầy đủ bô ̣ font TCVN-ABC.

 Nên cài Vietkey bản full trong lúc cài đă ̣t cần lưu ý sau:

o Thay đổi lại font cho các hiển thị là Font: VK Sans Serif.

 Để chương trình hiển thi ̣ tiếng viê ̣t thi ̣ ba ̣n click vào button . Button này đã gán Scripts cài đă ̣t hiển thi ̣ font tiếng việt “SetupABC”.

TOCFont = TextSymbol.Make

TOCFont.SetFont (NFont.Make(".VnTime","Normal")) TOCFont.SetSize( 10 )

allDocs = av.GetProject.GetDocs for each v in allDocs

if (v.is(View) and (v.GetWin.IsOpen)) then

v.GetWin.Close v.GetWin.Open end

end

 Có thể từ Menu của chương trình Xem chủ đềFont chữ sau đó ba ̣n cho ̣n font chữ tiếng viê ̣t như: .VnTime, .VnTimeH,.. là hiển thi ̣ được tiếng việt.

 Hiển thi ̣ chú thích là tiếng việt từ Menu Xem chủ đề Hiển thi ̣ biểu tươ ̣ng trong Window ABC sau đó ba ̣n cho ̣n font chữ tiếng viê ̣t như: .VnTime, .VnTimeH,.. là hiển thi ̣ được tiếng việt.

 Lúc nhâ ̣p thì cho ̣n bảng mã TCVN3(ABC).

 Nên thống nhất mô ̣t loa ̣i font chữ, cả bên ArcView và bên cơ sở dữ liê ̣u SQL Server 2005.

KẾT LUẬN KẾT QUẢ THỰC HIỆN

Ứng dụng hệ thống thông tin địa lý (GIS) trong việc xây dựng cơ sở dữ liệu GIS sơ đồ địa bàn phường Vĩnh Thọ giúp công an phường thuận tiện trong việc quản lý phù hợp với nhu cầu và hoàn cảnh của địa phương là một việc hết sức cần thiết và thiết thực. Vì hiện tại phương pháp quản lý nhân khẩu – hộ khẩu và các thông tin liên quan đến dân cư trên địa bàn của địa phương chủ yếu quản lý trên giấy nên chưa thể đáp ứng tốt cho nhu cầu hiện tại với khối lượng thông tin ngày càng lớn. Để xây dựng bất kỳ hệ thống thông tin địa lý nào cũng cần phải có nguồn dữ liệu đầu vào, trải qua quá trình tổng hợp, xử lý thông tin để tạo kết quả đầu ra. Nguồn dữ liệu đầu vào cho hệ thống mà đề tài thực hiện được phân thành hai nhóm đó là dữ liệu bản đồ và dữ liệu thuộc tính. Từ những số liệu, bản đồ thu thập được, đề tài chủ yếu là cập nhật thông tin trên phần mềm ArcView và bước đầu ứng dụng phần mềm SQL Server 2005 xây dựng cơ sở dữ liệu, sử dụng ngôn ngữ lập trình Avenue xây dựng chương trình ứng dụng. Chương trình ứng dụng sau khi hoàn thành nó có thể cung cấp thông tin đầy đủ, kịp thời và chính xác cho người quản lý có thể cập nhật đầy đủ thông tin, đáp ứng nhu cầu phát triển kinh tế - xã hội. Điều này không chỉ phục vụ cho công tác quản lý trước mắt mà còn lâu dài về sau.

Kết quả đề tài “Xây dựng cơ sở dữ liệu GIS sơ đồ địa bàn phường Vĩnh Thọ “đã đạt được kết quả như sau:

 Phân tích, đánh giá hiện trạng cơ sở dữ liệu hiện có trên địa bàn phường Vĩnh Thọ làm cơ sở để xây dựng cơ sở dữ liệu hoàn thiện theo mô hình GIS.

 Xây dựng nhóm chức năng cập nhật dữ liệu. Cho phép người sử dụng có thể thêm, sửa, xóa dữ liệu không gian và cả dữ liệu thuộc tính.

 Xây dựng chức năng xem nhanh thông tin trên bản đồ:

o Phóng to, thu nhỏ, xem nhanh điểm được chọn, vv…

o Xem nhanh thông tin các đối tượng.

 Xây dựng đa dạng các chức năng tìm kiếm dữ liệu thuộc tính và dữ liệu không gian.

 Thống kê, tính toán tổng số hộ gia đình trên địa bàn phường, tống số dân, .. , sau đó xuất dữ liệu ra bảng và biểu diễn trên biểu đồ thống kê.

 Tạo trang in bản đồ, biểu đồ.

 Xuất dữ liệu từ bảng dữ liệu thuộc tính qua Excel.

Đề tài đã đạt được mục tiêu đề ra: Ứng dụng công nghệ GIS xây dựng cơ sở dữ liệu GIS sơ đồ địa bàn phường Vĩnh Thọ, hỗ trợ công tác phòng chống tội phạm. Ngoài ra, với chương trình này còn có thể tra cứu thông tin hộ khẩu, nhân khẩu cũng như trường học, nhà hàng, khách sạn…

Như vây, có thể nói việc ứng dụng hệ thống thông tin địa lý (GIS) trong “Xây dựng cơ sở dữ liệu GIS sơ đồ địa bàn phường Vĩnh Thọ “ giúp rút ngắn được thời gian giải quyết các thủ tục hành chính, có chế độ báo cáo nhanh chóng, kịp thời, đồng thời có thể đáp ứng nhu cầu thông tin cho các ngành liên quan và những người quan tâm.

HƯỚNG PHÁT TRIỂN

Qua thời gian tìm hiểu và xây dựng đề tài về cơ bản em đã hoàn thành những yêu cầu đề ra. Đây là một đề tài thực tế và hết sức thiết thực. Cho nên, đề tài sau khi hoàn thành nó có thể cung cấp thông tin đầy đủ, kịp thời và chính xác cho người quản lý có thể cập nhầt đầy đủ thông tin, đáp ứng nhu cầu phát triển kinh tế - xã hội. Nó không chỉ phục vụ cho công tác quản lý trước mắt, mà nó có thể được phát triển, bảo trì để sử dụng lâu dài và đáp ứng khối lượng thông tin ngày càng lớn. Trong quá trình thực hiện đề tài tôi thấy còn nhiều vấn đề liên quan cần được quan tâm để hỗ trợ tốt cho người sử dụng và phạm vi ứng dụng của đề tài. Vì thế, em đã đề xuất vấn đề phát triển của đề tài:

 Phát triển giao diện thân thiện hơn với người sử dụng.

 Xây dựng mới những chức năng giúp đỡ người sử dụng như:

o In hộ khẩu.

o In sơ yếu lý lịch.

 Ứng dụng rộng rãi hơn đối với các phường khác trong thành phố Nha Trang và các huyện, tỉnh, thành phố khác trong cả nước.

 Ứng dụng phát triển trên công cụ ArcGIS Engine để xây dựng phần mềm độc lập.

PHỤC LỤC

1. Kết nối với CSDL SQL Server và hiển thị dữ liệu trong bảng dữ liệu.

‘ Tạo kết nối, tên đăng nhập và mật khẩu theSQL=SQLCon.Find("VinhTho") theSQL.Login("nhatrang/")

‘ Câu truy vấn SQL

astring="Select s.Soso,s.Sonha,s.Dientichnha,s.Dientichdat,nk. ++”HovatenNK, tdp.TenTDP,d.Tenduong,lh.TenLH "

++"From SOHOKHAU s, NHANKHAU nk, LOAIHO lh, TODANPHO tdp, DUONG d " ++" Where s.Soso=nk.Soso" ++"and s.Maduong=d.Maduong" ++"and s.MaLH=lh.MaLH" ++"and s.MaTDP=tdp.MaTDP" ++"and nk.Chuho='true'" ‘ Thực thi câu lệnh SQL theSQL.ExecuteSQL(astring) ‘ Tạo bảng ảo trong ArcView

theVTab=VTab.MakeSQL(theSQL,astring) ‘ Đưa bảng vào Project và mở bảng này ra. myTable=Table.Make(theVtab) myTable.setName("XemHK") av.GetProject.AddDoc(mytable) mytable.GetWin.Open 2. Liên kết các bảng bằng thuộc tính. theSQL=SQLCon.Find("VinhTho") theSQL.Login("nhatrang/") ‘ Xác định bảng nguồn và bảng đích astring="Select * from SOHOKHAU" theSQL.ExecuteSQL(astring)

theVTab=VTab.MakeSQL(theSQL,"Select * from SOHOKHAU") thetable=av.GetProject.FindDoc("SOHOKHAU") av.GetProject.RemoveDoc(thetable) myTable=Table.Make(theVtab) myTable.setName("SOHOKHAU") av.GetProject.AddDoc(mytable) toTable=av.GetProject.FindDoc("Hgdinh.shp") toVt=toTable.GetVTab

‘ Xác định trường dung chung để liên kết toField=toVt.FindField("Soso")

‘ Nếu muốn liên kết bằng Joint toVt.Join(toField,theVtab,fromfield) ‘ Nếu muốn liên kết bằng Link toVt.Link(toField,theVtab,fromfield) ‘ Nếu muốn hủy bỏ liên kết

toVt.UnjoinAll toVt.UnlinkAll

3.Mở dữ liệu tử bảng SQL và đưa dữ liệu vào Combobox tạo một danh sách các chọn lựa khi muốn tiết kiệm không gian.

aDlog=self

theSQL=SQLCon.Find("VinhTho") theSQL.Login("nhatrang/")

‘ Tìm đến đối tượng Combobox

lbx_DanhSach=aDlog.FindByName("cbmavung") theView=av.GetActiveDoc

astring="Select * from TODANPHO" ‘ Lấy các danh sách Tổ dân phố.

theTable=VTab.MakeSQL(theSQL, astring) theField=theTable.FindField("TenTDP") listTheme={}

for each rec in theTable

listTheme.Add(theTable.ReturnValue(theField,rec)) end

‘Gán danh sách các Tổ dân phố vào combobox lbx_DanhSach.DefineFromList(listTheme)

4.Đóng Dialog khi người dùng kích thoát.

Self.GetDialog.Close 5.Hủy các thao tác theView=av.getActivedoc theDisplay=theView.GetDisplay theGraphics=theView.GetGraphics theGraphics.empty theTheme = theView.GetEditableTheme ‘ Hủy bỏ các thao tác if (theView.GetGraphics.HasSelected) then av.GetProject.SetModified(true) end

if (theTheme = nil) then

theView.GetGraphics.ClearSelected else theTheme.GetFtab.BeginTransaction theTheme.ClearSelected theTheme.GetFTab.EndTransaction end

‘ Đóng hộp thoại cần lưu self.GetDialog.Close 6.Mở Dialog theView = av.GetActiveDoc aDlog=av.FindDialog("timtrenduong") if(aDlog <> nil)then aDlog.Open else

MsgBox.info("Không tìm thây Tìm theo đường","Thông Báo") end

7. Tìm kiếm dữ liệu không gian.

‘ Tìm đến đối tượng Combobox

alistbox = self.GetDialog.FindByName("cbcskd") tabletab = av.FindDoc("CSKD.shp").GetVTab thebitmap = tabletab.GetSelection

‘ Chọn tên CSKD từ danh sách tìm kiếm

qry = "([Tencskd_tn] = """ + alistbox.GetCurrentValue.AsString + """)" tabletab.Query(qry, thebitmap, #VTAB_SELTYPE_NEW)

theView = av.GetActiveDoc theView.Invalidate

8.Tìm kiếm dữ liệu thuộc tính từ SQL.

‘ Tìm đến đối tượng Dialog, Combobox dlog=av.FindDialog("ANNK") f0= dlog.FindByName("cbmank") f1 = dlog.FindByName("cbsc") f2 = dlog.FindByName("txtngay") f3 = dlog.FindByName("txtthiethai") f4 = dlog.FindByName("txtghichu")

‘ Kết nối SQL và dùng câu lệnh SQL tìm kiếm theSQL=SQLCon.Find("VinhTho")

theSQL.Login("nhatrang/")

astring="Select * from ANNINHNK

where MaNK='"+f0.GetSelection.AsString+"'" theVTab=VTab.MakeSQL(theSQL,astring) ‘Nếu nó tìm thấy

n=theVTab.GetNumRecords if(n<>0)then

for each rec in theVTab ‘ Tìm trường MaNK

ma = theVTab.Findfield("MaNK")

‘ Trả về giá trị của trường tương ứng vứi chỉ số của mẫu tin mas = theVTab.ReturnValue(ma,rec)

masc = theVTab.FindField("Masuco") mascs = theVTab.ReturnValue(masc,rec) ngay = theVTab.Findfield("Ngaygioxayra") ngays = theVTab.ReturnValue(ngay,rec) thai = theVTab.Findfield("Mucdothiethai") thais = theVTab.ReturnValue(thai,rec) gc = theVTab.Findfield("Ghichu") gcs = theVTab.ReturnValue(gc,rec)

str="Select * from SUCO where Masuco='"+mascs.asString+"'" theVTab1=VTab.MakeSQL(theSQL,str)

for each rec in theVTab1

m = theVTab1.FindField("Tensuco") ms = theVTab1.ReturnValue(m,rec) end

‘ Gán giá trị của trường tương ứng chỉ số mẫu tin f0.SetCurrentValue(mas.asString) f1.SetCurrentValue(ms.asString) f2.SetText(ngays.asString) f3.SetText(thais.asString) f4.SetText(gcs.asString) end else

MsgBox.info("Không tim thấy dữ liệu","Thông báo") end

9.Thêm mới dữ liệu

dlog=av.FindDialog("ThemCSKD") tb=_theTheme.GetFtab f0 = dlog.FindByName("txttencskd") f1 = dlog.FindByName("cbmaduong") f2 = dlog.FindByName("cbmavung") theSQL=SQLCon.Find("VinhTho") theSQL.Login("nhatrang/")

str="Select * from TODANPHO

theVTab=VTab.MakeSQL(theSQL,str) for each rec in theVTab

ma = theVTab.FindField("MaTDP") mas = theVTab.ReturnValue(ma,rec)

end

str1="Select * from DUONG

where Tenduong='"+f1.GetSelection.asString+"'" theVTab1=VTab.MakeSQL(theSQL,str1)

for each rec in theVTab1

masc = theVTab1.FindField("Maduong") mascs = theVTab1.ReturnValue(masc,rec) end tcs=tb.FindField("Tencskd_tn") maduong=tb.FindField("Maduong") mapho=tb.FindField("Ma_khu_pho") tb.SetValue(tcs,_re,f0.GetText.asString) tb.SetValue(maduong,_re,mascs.asString) tb.SetValue(mapho,_re,mas.asString) av.GetActiveDoc.SetEditableTheme(NIL) av.finddialog("ThemCSKD").close 10. Xóa dữ liệu dlog=av.FindDialog("ANNK") f0 = dlog.FindByName("cbmank") theSQL=SQLCon.Find("VinhTho") theSQL.Login("nhatrang/")

astring="Delete From ANNINHNK

Where MaNK ='"+f0.GetSelection.asString+"'" TheSQL.ExecuteSQL(astring)

TÀI LIỆU THAM KHẢO

1) Bài giảng Lập trình Avenue, Giáo viên Nguyễn Thủy Đoan Trang – Đại học Nha Trang.

2) Bài giảng hệ thống thông tin địa lý, GV. Nguyễn Thủy Đoan Trang – Đại học Nha Trang.

3) http://www.esri.com

4) ESRI: ArcView GIS

5) Trần Vĩnh Phước, Gis đại cương – phần thực hành, NXB Đại học Quốc gia Tp.HCM, 2003

6) Đặng Liên, Bài giảng Arview (http://www.ebook.edu.vn/?page=1.28&view=2490).

7) http://www.vidagis.com

Một phần của tài liệu Xây dựng cơ sở dữ liệu GIS sơ đồ địa bàn phường Vĩnh Thọ - TP.Nha Trang (Trang 102)

Tải bản đầy đủ (DOC)

(114 trang)
w