Để giúp các đồng chí trong ngành quản lý nhân khẩu không thấy nhàm chán công việc của mình tôi mạnh dạn đề xuất một phơng án: đó là ứng dụng tin học hoá vào Quản lý hộ khẩu.. Khi một côn
Trang 1Đất nớc ta đang bớc sang một giai đoạn phát triển kinh tế đa nền kinh tế của đất nớc đuổi kịp các nớc trong khu vực và trên thế giới Thời kỳ phát triển ở nớc ta trong thời đại ngày nay chú trọng nhất phát triển đội ngũ tầng lớp trí thức trẻ, với nguồn nhân lực rồi dào Song song với việc phát triển theo con đờng XHCN, nhà nớc ta cũng duy trì pháp luật để quản lý dất nớc Còn quản lý công dân đợc giao cho các cơ quan quản lý hộ khẩu, nhân khẩu Trong giai đoạn đất nớc còn nghèo nàn và lạc hậu, việc các cơ quan quản lý hộ khẩu theo dõi thông tin về từng cá nhân là rất vất vả, chủ yếu dùng thủ công là chính nên công việc
dễ nhàm trán và buồn tẻ nhng với lòng yêu nghề các đồng chí vẫn hoàn thành tốt nhiệm vụ của mình Tuy nhiên hiệu suất rất chậm và đòi hỏi nhiều ngời cùng vào cuộc
Ngày nay đất nớc phát triển, công nghệ thông tin đang đi vào cuộc sống chúng ta Để giúp các đồng chí trong ngành quản lý nhân khẩu không thấy nhàm chán công việc của mình tôi mạnh dạn đề xuất một phơng án: đó là ứng dụng tin học hoá vào Quản lý hộ khẩu Điều này giúp tiết kiệm đợc nhân lực và độ chính xác rất cao
Hoàn thành đợc chơng trình này tôi xin chân thành cảm ơn sự giúp của các đồng chí trong ngành cung cấp tài liệu và cô giáo Đặng Thị Phan Giang đã giúp đỡ tôi trong quá trình thực hiện đề tài này
Trang 2Chơng I : Giới thiệu chung
Hệ thống quản lý hộ khẩu đợc thực hiện từ trên xuống dới và có sự phân cấp
rõ ràng để nhằm mục đích theo dõi sát sao các thông tin về cá nhân giúp cho
ng-ời quản lý tránh sự nhầm lẫn và mất thng-ời gian
Để khắc phục đợc sự cồng kềnh của hệ thống quản lý thủ công, tôi xin mạnh dạn đề xuất một phơng án quẩn lý mới đơn giản và khoa học với độ chính xác cao
Tôi xin đợc trình bày dới đây:
I Nội dung của bài toán quản lý
Kể từ khi đợc sinh ra đến khi trởng thành một công dân phải trải qua rất nhiều giai đoạn trong cuộc sống Cùng với đó gắn liền với sự theo dõi của các cơ quan quản lý hộ khẩu Công việc này đòi hỏi sự cần cù, tỷ mỉ và có sự trách nhiệm cao của ngời quản lý hộ khẩu
Chẳng hạn khi sinh ra chúng ta bắt đầu một cuộc sống mới, lúc đó bớc đầu tiên là chúng ta đợc khai sinh thông qua cơ quan quản lý hộ khẩu địa phơng Đây cũng là bớc đầu tiên để trở thành một công dân Tiếp đó đến khi trởng thành đi
ra ngoài đến một nơi mới, mỗi công đều có trách nhiệm báo cáo với cơ quan sở tại và giúp cho cơ quan quản lý nhân khẩu và quản lý xã hội theo dõi thống kê một cách rễ ràng Cơ quan quản lý hộ khẩu phải có nhiệm vụ thống kê đợc số ngời đi, số ngời ở hiện tại để lu vào hồ sơ tiện theo dõi Mỗi cá nhân sẽ đợc lu vào một hồ sơ riêng ( lu trên túi đựng hồ sơ hoặc lu trên máy)
Khi một công dân mất đi cơ quan quản lý nhân khẩu không đợc huỷ hồ sơ đi
mà cần phải lu vào một nơi riêng đến khi cần có thể dùng tới Cơ quan quản lý
hộ khẩu phải thờng xuyên kiểm tra, theo dõi và thống kê theo từng quý-năm Về số ngời đi, số ngời đến, số ngời đợc sinh ra, số ngời mất đi Để bổ xung thêm và lu vào hồ sơ có sàng lọc
ngày-tháng-II Quy tắc quản lý
Một cơ quan có thể quản lý nhiều hộ khẩu
Một cá nhân chịu sự quản lý của một cơ quan
Một cá nhân chỉ có một hồ sơ
III Đơn vị sử dụng hệ thống
Cơ quan quản lý nhân hộ khẩu huyện ứng Hoà, tỉnh Hà Tây
Trang 3Chơng II: khảo sát hiện trạng và xác lập dự án
I Khảo sát hiện trạng
Trong quá trình điều tra tìm hiểu thu thập thông tin bằng sự vận động và giúp
đỡ tạo mọi điều kiện của các đồng chí trong ngành, cùng với việc quan sát trực tiếp trên một số giấy tờ, hồ sơ của các đồng chí, tôi nhận thấy trông mỗi bộ hồ sơ
đều phải có giấy đăng ký tạm trú, tạm vắng Nh trờng hợp của tất cả sinh viên khi đi xa công tác trên mọi lĩnh vực
Dới đây là nội dung của một giấy tạm vắng cần phải có
Độc lập- Tự do- Hạnh phúc
-o0o -Đơn xin tạm trú tạm vắng Kính gửi nơi xin đăng ký
Tên ngời làm đơn
Địa chỉ:
Nghề nghiệp:
Số CMTND:
Lý do:
Đây là một mẫu tờ khai quan trọng mà không thể thiếu trong các bộ hồ sơ tạm trú tạm vắng và cũng là điều kiện để những ngời nh tất cả những sinh viên bày tỏ nguyện vọng và mong muốn của mình Từ đó cho cơ quan quản lý khẩu biết và giải quyết tốt những vấn đề và nguyện vọng tránh sự chủ quan, khách quan của ngời quản lý
Trang 4Kết quả thu đợc từ những đợt điều tra là cha cao Vì còn một số khách quan nhng chủ yếu là do công tác bảo mật của nghành, nên đôi lúc việc điều tra vẫn phải dựa trên một số giấy tờ có liên quan, việc này cũng gặp nhiều khó khăn.
Từ hai hệ thống trên ta thấy hệ thống quản lý bằng máy là tối u hơn cả Vì
nó đã làm giảm hệ thống quản lý cồng kềnh xuống mức thấp nhất về số lợng
ng-ời quản lý Tránh sự xáo trộn, nhầm lẫn trong quá trình tìm kiếm phù hợp với sự phát triển của nền kinh tế tri thức mang lại lợi ích kinh tế cao
Dự án này cần đợc thông qua và đợc triển khai ở tất cả các cơ quan trong ngành Nhất là những cơ quan từ xa đến nay vẫn trung thành với phơng pháp thủ công để quản lý Nhng trớc hết cần phải thử nghiệm ở một nơi nào đó, các cơ quan cần cử cán bộ trong ngành đại diện các cơ quan đến tham quan theo dõi và học tập Từ đó về triển khai ngay tại cơ quan mình thì phơng án sẽ có tính khả thi cao hơn Còn nếu mà bớc đầu ta triển khai ngay và rộng khắp ở tất cả các cơ quan thì không tránh khỏi bỡ ngỡ, thiếu lòng tin và nghi ngờ đầu t lãng phí, ngại tiếp cận công nghệ mới Nếu muốn làm đợc nh vậy bớc đầu tiên ta nên lập ra một ban điều hành dự án để giám sát và hớng dẫn Khi nào mọi việc đi vào ổn
định, có nề nếp và thành thục thì coi nh dự án đã thành công cũng nh nhiệm vụ của ban điều hành đã xong
Trang 5TiÕn tr×nh thùc thi øng dông
Trang 6X.nhận Mất
Làm giấy
MấtQLHS Mất
Quản lý điQuản lý đến
Trang 71 Quản lý sinh
Đây là bớc khởi đầu trong quá trình hình thành và phát triển của con ngời Việc quản lý sinh cũng cần đòi hỏi tuần tự tất cả các bớc mà không đợc bỏ xót hoặc thừa một khâu nào Nh khâu xác nhận sinh tởng trừng nh đơn giản nhng nó lại là một khâu không thể thiếu Vì theo các đồng chí trong ngành cho biết, nếu ngời đ-
ợc sinh ra không có giấy xác nhận của nơi đợc sinh ra thì không đợc làm hồ sơ, giấy khai sinh ( vì không có đủ thủ tục cần có ) trừ một số trờng hợp ngoại
lệ Cũng nh vậy hồ sơ không thể thiếu giấy khai sinh hoặc nếu cha làm kịp vẫn không đợc làm khai sinh Mà bắt buộc ngời ngời cần khai sinh phải đợi, đây là vấn đề thuộc về nguyên tắc bất di bất dịch của ngành mà không thể thay đổi đợc vì cuộc sống sau này của mỗi con ngời Vì vậy chúng ta không thể làm qua loa đại khái Nếu mà làm đợc nh vậy thì tất cả hồ sơ mới có giá trị về mặt pháp lý
2 Quản lý tử
Công việc quản lý tử là công việc cuối cùng nhất liên quan đến công dân Không vì nghĩ vậy mà ta có thể lơ là trong mọi công tác, các bớc cũng phải tuần
tự mà không đợc bỏ qua Nhiệm vụ xác nhận ngời mất ở đây thuộc về cơ quan
sở tại nơi c trú Để khẳng định ngời mất thuộc hộ khẩu của nơi mình quản lý Nếu ngời mất ở nơi khác không thuộc vùng quản lý thì các cơ quan pháp luật, trạm xá, bệnh viện phải có trách nhiệm xác nhận về trờng hợp ngời mất này Khi đẫ có giấy xác nhận thì cơ quan quản lý hộ khẩu ngời mất phải có trách nhiệm viết giấy xác nhận và lu vào hồ sơ Hồ sơ đợc niêm phong và lu vào một nơi quy định khi cần có thể ding tới tránh thất lạc
3 Quản lý nhập c
Khi một công dân muốn chuyển đến một nơi khác cần báo cáo ngay cho cơ quan quản lý hộ khẩu mình ở hiện tại và xin giấy tạm vắng ( nếu đi làm, công tác mà không yêu cầu chuyển khẩu) Còn nếu muốn cắt khẩu đi phải báo cáo để cơ quan quản lý hộ khẩu có trách nhiệm làm mọi thủ tục cần thiết Ngợc lại với
đi là đến, khi một ngời muốn chuyển đến một nơi nào đó phải báo cáo ngay cho cơ quan quản lý hộ khẩu mới và làm mọi thủ tục giấy tờ cần thiết ( nh giấy tạm trú) để có hồ sơ tạm trú Còn nếu công dân đó muốn chuyển khẩu đến một nơi nào đó cần có sự đồng ý của nơi định chuyển đến xem ở đó có tiếp nhận hay không Nếu có thì làm mọi thủ tục cần thiết ở cơ quan quản lý hộ khẩu cũ ( nh
Trang 8Hai việc chuyển đi và chuyển đến phải đợc tiến hành song song cùng một lúc Nếu một trong hai bên làm chậm Hơn sẽ rất khó khăn trong công tác quản
lý hộ khẩu, lúc đó ngời chuyển đi mặc nhiên trở thành hộ khẩu trôi nổi Mà ờng hợp này bây giờ còn rất nhiều trong xã hội làm cho cơ quan quản lý hộ khẩu rất khó trong việc thống kê và duy trì sự ổn định xã hội
tr-4 Tìm kiếm
Cũng có thể là một chức năng phụ nhng nó lại không thể thiếu, bởi vì chức năng chính của tìm kiếm là kiểm tra và chỉ rõ những sai xót trong khâu quản lý Kiểm tra số ngời đi, ngời đến, số ngời vừa mất, vừa mới chào đời, để từ
đó đa ra những số liệu chính xác Nhng nó cũng là nơi để tra cứu tìm kiếm những thông tin về cá nhân giúp đỡ cho cơ quan điều tra một cách nhanh nhất
mà không phải qua một khâu trung gian nào
II Biểu đồ luồng dữ liệu
1 Mức ngữ cảnh
Trong biểu đồ trên ta thấy có hai từ kiểm tra có nghĩa là cơ quan quản lý hộ khẩu có nhiệm vụ kiểm tra thống kê số lợng ngời trong khu vực mình quản lý một cách thờng xuyên Thống kê số lợng ngời ở nội trú hiện tại có số lợng bao nhiêu, còn lại bao nhiêu Đồng thời kiểm tra và thống kê số ngời ngoại trú có bao nhiêu( bao gồm cả những ngời mới đến) để tiện theo dõi Ngời ngoại trú phải có trách nhiệm báo cáo cho cơ quan quản lý hộ khẩu sở tại một cách sớm nhất trớc 24 giờ kể từ khi chuyển đến Còn đối với ngời nội trú cũng phải kiểm tra nhng chỉ trong những trờng hợp có ai đợc sinh ra hay không? hay có ai vừa mất
Nếu có thay đổi cần báo cáo lại để cơ quan quản hộ khẩu làm thống kê lại hồ sơ của cơ quan để tiện theo dõi Tránh tình trạng lơ là trong công tác điều tra thống kê cuối cùng dẫn đến sai lệch về số lợng
Trang 92 Mức đỉnh
Trong mức 0 chỉ nói tổng thể của một quá trình mà cha nói đợc cụ thể Nhng
ở mức ngữ cảnh qua biểu đồ ta hình dung đợc một quá trình xác minh, làm hộ khẩu một cách rõ ràng hơn Chúng ta thấy tất cả các khâu đều phải làm thủ công nên đòi hỏi phải tỷ mỉ và có độ chính xác cao nhất Chỉ riêng đối với khâu lu hồ sơ là làm bằng máy Vì lúc tất cả các khâu đã hoàn thành công việc của mình là thống kê và đợc bộ phận tìm kiếm giám sát kiểm tra từng bớc của quá trình để việc lập hồ sơ đợc tốt Ví dụ khi sinh phải có giấy xác nhận nơi ngời đợc sinh ra
ở đâu? để tiện cho việc lập hồ sơ sinh, còn mất tuỳ thuộc vào nơi mất mà có hoặc không có giấy xác nhận Nếu mất ở bệnh viện phải có giấy xác nhận của bệnh viện, viết rõ lý do tại sao để khi lu hồ sơ đợc rõ ràng minh bạch
Cũng giống nh quản lý sinh và tử cơ quan quản lý hộ khẩu phải xác định đợc mật độ dân số là bao nhiêu, bao nhiêu ngời đăng ký tạm trú tạm vắng Còn lại là
Thống kê
Công dân
Quản lý sinh
Xnhận sinh
Xác nhận
Báo cáoLên d.s
Báo cáo
Trang 10việc trên cần phải nắm sát tình hình không đợc đại khái khách quan Sẽ dẫn đến công việc quản lý hộ khẩu không đợc tốt và hồ sơ thống kê không đợc sát với thực tế, càng tránh việc ngồi tại cơ quan để lên danh sách thống kê Vì hộ khẩu luôn đợc thay đổi theo từng giờ, từng ngày Cho nên cần có sự giám sát,đòi hỏi khâu tìm kiếm phải làm nhiệm vụ của mình để tránh sự quan liêu của các cơ quan.
3 Mức dới đỉnh
* Quản lý sinh:
Nhìn biểu đồ ta đã hiểu rõ hơn công việc lập hồ sơ sinh của cơ quan quản
lý hộ khẩu, để tiến hành làm đợc một bộ hồ sơ phải đủ trình tự các bớc Trớc tiên
bộ phận quản lý nơi sinh phải có nhiệm vụ viết giấy xác nhận ngời đợc sinh ra ở
đó Tiếp đến bộ phận kiểm tra mà ta thấy trong biểu đồ kiểm tra giấy xác nhận
có đúng thủ tục nguyên tắc hay không? nếu không cần báo cho ngời đó biết Nếu
đúng rồi thì công viẹc làm giấy khai sinh và lập hồ sơ đợc tiến hành Giấy khai sinh đợc lu trong hồ sơ để tiện quản lý, lúc này bộ phận tìm kiếm lại kiểm tra thêm một lần cuối Nếu không thấy có gì sai thì coi nh việc lập một bộ hồ sơ đã xong và chuyển vào nơi bảo quản hồ sơ gốc Một chú ý quan trọng là hồ sơ gốc phải đợc làm thủ công và đợc viết bằng tay không đợc tẩy xoá
* Quản lý tử:
Hồ sơ gốc
Qlý nơi sinh
Làm giấy Khai sinh
Trang 11Cũng nh chức năng lập hồ sơ sinh khi lập hồ sơ tử cũng gồm có 3 bớc,
nh-ng các bớc có sự khác nhau hoàn toàn với lập hồ sơ sinh Khi một nh-ngời chết đi thông thờng cơ quan lập pháp xác nhận địa điểm xảy ra trớc Sau đó đến thủ tục làm giấy tử cho ngời mất, khi các khâu đã hoàn thành thì đến khâu lập hồ sơ, đây cũng là thủ tục cuối cùng Nên phải qua khâu kiểm tra, tìm kiếm xem chỗ nào có sai xót thì phải sửa trớc khi hồ sơ đợc niêm phong Lúc này bộ phận tìm kiếm rất quan trọng vừa phải làm nhiệm vụ điều tra vừa phải hoàn thành hồ sơ Nhng mục
đích cuối cùng là tránh sai xót mắc lỗi để sau này cần dùng đến không bị động
Trang 12* Quản lý nhập c :
Nhìn biểu đồ ta thấy giữa đi và đến là hai quá trình tỷ lệ nghịch của nhau Khi một ngời nào đó muốn chuyển đến một nơi khác dù là tạm thời hay cố định,
đều phải có giấy tạm vắng nếu là tạm thời, còn chuyển khẩu nếu là cố định
Ng-ợc lại nơi đến công dân phải khai báo tạm trú, tạm vắng nếu ở tạm thời, làm thủ tục nhập khẩu nếu ở cố định Tuy nhiên giữa đi và đến là nghịch
Biến nhng chúng có một điểm chung rất quan trọng đó là hồ sơ Sau mỗi lần đi và đến hồ sơ đều đợc lu lại tránh thất lạc Nhng trớc đó phải có khâu tìm kiếm thống kê chính xác số lợng ngời đi và đến, kiểm tra những sai xót dù là nhỏ nhất trớc khi hoàn tất một bộ hồ sơ và lu lại
Kết luận:
Trong 3 biểu đồ luồng dữ liệu dới mức đỉnh chúng ta nhận thấy có một
điểm chung Đó là việc lu hồ sơ gốc và tìm kiếm, hai công việc tuy khác nhau nhng hỗ trợ bổ xung cho nhau để đi đến một cái đích cuối cùng là hoàn thành công việc một cách hoàn hảo nhất, chính xác nhất Nếu sau này cần
đến không bị động trong lỗi sai xót.
Trang 13Đơn vị cấp
Thuongtru
Mã công dânTên khai sinhTên thường gọiGiới tính
Ngày sinhQuê quánCMTNDTrình độ…
Trang 14T¹m tró
Sè t¹m tróNgµy ®¨ng ký Thêi h¹n
Trang 16 Cơ quan hộ khẩu quản lý công dân thông qua hồ sơ và giấy tạm trú tạm vắng.
Còn công dân phải có đủ giấy khai sinh, tạm trú, CMTND, xác nhận tử (nếu có)
Nh vậy một bộ hồ sơ bắt buộc phải có: Giấy khai sinh, CMTND, tạm trú, tạm vắng, xác nhận tử(nếu có)
Một cơ quan quản lý hộ khẩu có thể quản lý nhiều công dân
Một công dân chỉ có một hồ sơ, một giấy tạm trú, vắng, một CMTND, một giấy khai sinh, một giấy tử và chỉ ở một địa điểm
Một cơ quan có thể quảnlý nhiều hồ sơ, nhiều tạm trú, tạm vắng
Một cơ quan có thể quản lý nhiều địa điểm
Trang 17Chơng IV: thiết kế và cài đặt chơng trình
Khi xây dựng chơng trình quản lý hộ khẩu để làm đợc các thông tin liên quan đến quản lý, kết nối dữ liệu và thống kê nhân khẩu…, tôi đã lựa chọn công
cụ lập trình Visual-Basic để xây dựng chơng trình Quản lý hộ khẩu Sau đây là nội dung chơng trình:
tr-Kiểu DL
Kíc
h cỡ
Dạng thức
Giá
trị ngầm
định
No
t null
Mô tả
sinh viên
sinh viên
sinh viên
tính
CMT
Trang 182 Bảng sổ hộ khẩu
tt Khoá Tên trờng Kiểu DL Kích
cỡ
Dạng thức
Giá
trị ngầm
định
Not null
Mô tả
và số
Sổ hộ khẩu
và số
Tên thành viên
hệ chủ hộ
3 Bảng chứng minh th nhân dân
tr-ờng
Kiểu DL
Kíc
h cỡ
Dạng thức
Giá
trị ngầm
định
No
t null
Mô tả
số
Số cmtnd 2
4. Bảng tạm trú
TT Khoá Tên trờng Kiểu DL Kích
cỡ
Dạng thức
Giá
trị ngầm
định
No
t null
Mô tả
Trang 191 Sott Sott Text 7 Chữ
và số
Số tạm trú
time
đăng ký
hạn
II Thiết kế giao diện
1 Giao diện chính
Tôi thiết kế các menu ngang để ngời sử dụng rễ ràng khi truy cập Khi
ng-ời dùng chọn menu nào thì các menu con sẽ sổ ra để cho ta chọn và thực hiện công việc một cách đơn giản và nhanh chóng
Giao diện chính của form
Giao diện chơng trình đợc tôi xây dựng bằng các menu để tiện cho
ngời quản lý khi làm việc, chỉ việc dùng chuột chọn các chức năng nh :
Menu cập nhật
Menu sổ hộ khẩu
Trang 20sổ hộ khẩu
Yêu cầu thiết kế
Phải có đầy đủ các chức năng để nhập thông tin cho một hộ gia đình vào sổ
hộ khẩu Trong giao diện của form sổ hộ khẩu trên màn hình tôi sử dụng 2 frame
trong đó ( frame 1 có 7 command button và frame 2 có 1 textbox và 3 label, 2
command button, 2 combo box, 1 DataGird để hiển thị thông tin về sổ hộ khẩu
Lập trình
Trang 21Để truy cập vào các file dữ liệu lấy thông tin và cập nhật thông tin tôi dùng
th viện ADO thông qua hệ thống DSN với cơ sở dữ liệu là Access Trong hệ thống tôi khai báo các con trỏ Rs dùng để truy cập vào các bản ghi của bảng sổ
hộ khẩu
Dim rs As ADODB.RecordsetDim rs1 As ADODB.RecordsetKhi form đợc nạp thì trên Datagrid 1 sẽ hiển thị tất cả các thông tin về bảng
sổ hộ khẩu, trong đó Datagrid chỉ cho phép xem dữ liệu chứ không cho phép cập nhật hay sửa đổi dữ liệu điều này đảm bảo cho việc một ngời nào đó không biết thì không thể sửa đổi lung tung dữ liệu đợc
Set DataGrid1.DataSource = rs
H2: L ới hiển thị dữ liệuRiêng đối với combo1 sẽ nạp trờng sohk khi form hiển thị ra màn hình Thủ tục này đợc viết trong sự kiện form_load()
Trang 22Wend
Khi kích chuột chọn một mã hộ khẩu trong combo này thì các bản ghi tơng ứng sẽ hiển thị cho ta thấy thì phải xây dựng thêm một sự kiện nữa của combo
đó là combo_click()
Private Sub Combo1_Click()
rs.Open "select * From sohokhau where sohk='" &
Combo1.Text & "'", cnn, adOpenDynamic, adLockOptimistic, adCmdText
End SubKhi dùng chuột chọn một trờng trong combo2 thì sự kiện combo_click xảy ra
Private Sub Combo1_Click()
Trang 23command 1_click() “ thêm mới” lúc đó tất cả các thông tin cần nhập sẽ hiển thị trên frame 1 “khung chứa dữ liệu” gồm 1 combo và 3 textbox có chức năng nhập dữ liệu vào và gồm có các Label để hiển thị nhãn hớng dẫn ngời dùng
H3: Khung nhập dữ liệuKhi đã nhập đầy đủ các thông tin theo yêu cầu lại dùng chuột nhấn vào nút
“chấp nhận” Khi đó các thông tin bạn vừa nhập đã đợc nạp vào chơng trình hay nói cách khác là đã làm song sổ hộ khẩu cho một hộ gia đình
Private Sub Command1_Click()
rsadd.Open "Select * From sohokhau ", cnn, adOpenDynamic, adLockOptimistic, adCmdText
Trang 24Một dễ nhận thấy là sau khi nhấn nút “thêm mới” thì combo và các textbox
bị xoá trắng Chú ý là khi nhập dữ liệu phải nhập đầy đủ thông tin nếu không sẽ hiện ra thông báo cho biết ta cha nhập những gì
Các bạn đã thấy tôi đề cập đến nút “chấp nhận” Tôi nghĩ các bạn đã phải tự
đặt câu hỏi, vậy nút chấp nhận nó nh thế nào mà cứ làm xong một công việc lại phải dùng đến vậy? Sau đây là nội dung mà tôi đã làm nên điều đó của nút “chấp nhận”
Private Sub Command7_Click()
Trang 25rs.Open "Select * From sohokhau where sohk Like '%" & Combo1.Text & "%'and tentvien like '%" & Text1.Text & "%' and
quanhechuho like '%" & combo2.Text & "%'", cnn, adOpenDynamic,
Private Sub Command8_Click()
Case "New", "Edit"
Trang 26rs.Open "Select * From sohokhau", cnn, adOpenDynamic, adLockOptimistic, adCmdText
“chấp nhận” để thoát khỏi frame 1 và quay về chế độ ban đầu là ẩn frame 1 đi
Private Sub Command2_Click()
Text1.Text = "" & rs!tentvien
End SubNgợc lại với sửa là xoá, trong chơng trình để xoá các thông tin không cần thiết thì cần phải xây dựng một sự kiện cho nút xoá
Private Sub Command3_Click()
If rs.EOF Or rs.BOF Then
Trang 27Khi cần xoá thông tin nào thì chọn thông tin đó và nhấn vào nút “xoá” Khi
đó màn hình sẽ hiện lên một thông báo “có xoá không” Mục đích của thông báo này là trì hoãn hay nói cách khác là cho bạn xuy nghĩ có nên xoá không Nếu muốn xoá bạn kích vào nút “Yes” lúc đó bản ghi chọn đã đợc xoá và màn hình lại hiện ra thông báo “đã xoá” cho ngời dùng biết Còn không muốn thì kích vào “No” để thoát
Một nút trợ giúp nữa có tác dụng làm tơi các bản ghi và di chuyển con trỏ về bản ghi đầu : Đó là nút “làm tơi”
Private Sub Command4_Click()
ợc tôi viết chơng trình trong sự kiện “Tìm kiếm”
Trang 28Private Sub Command5_Click()
“thêm mới” nhng chỉ khác nhau ở chỗ là tìm kiếm không cần nhập đủ thông tin lên các textbox và combo
Khi muốn lấy ra dùng hay in ra nội dung thông tin mình tìm kiếm, sửa, thêm mới hay có chăng là tất cả các thông tin có trên DataGird thì cần phải làm nh thế nào Sự kiện của command “in” sẽ làm đợc điều thần kỳ này
Private Sub Command6_Click()strcnn = "Select * From sohokhau where sohk Like '%" &
Combo1.Text & "%'and tentvien like '%" & Text1.Text & "%' and quanhechuho like '%" & combo2.Text & "%'"
Trang 29End SubRiêng đối với sự kiện này tôi đã thiết kế một DataReport riêng đó là “Soho”
Có đầy đủ thông tin về sổ hộ khẩu hiển thị trên form, khi đó bạn có thể in theo
điều kiện lọc trong tìm kiếm hay in tất cả các thông tin đều đợc Đó là do mình
đặt điều kiện cho công việc mình làm Khi bạn muốn in thông tin thì dùng chuột bấm vào nút “in” thông tin bạn cần đã đợc in ra màn hình
Sau khi đã thực hiện song công việc muốn thoát khỏi giao diện mình đang làm việc thì tôi viết sự kiện click của command “thoát”
Private Sub Command9_Click()
End Sub
Trang 303.Giao diện cập nhật nhân khẩu
H1: Giao diện quản lý nhân khẩu
Yêu cầu thiết kế
Phải có đầy đủ các chức năng của một bộ hồ sơ nhân khẩu để nhập thông tin vào Trong giao diện của form hồ sơ nhân khẩu trên màn hình tôi sử dụng 2 frame trong đó (frame1 có 7 commandbutton và frame 2 có 1 textbox và 5label, 2command, 4combobox, 1 DataGird để hiển thị thông tin về hồ sơ nhân khẩu
Lập trình
Để truy cập vào các file dữ liệu lấy thông tin và cập nhật thông tin tôi dùng
th viện ADO thông qua hệ thống DSN với cơ sở dữ liệu là Access Trong hệ thống tôi khai báo các con trỏ Rs dùng để truy cập vào các bản ghi của bảng nhân khẩu
Dim rs As ADODB.RecordsetDim rs1 As ADODB.Recordset
Trang 31Dim rs2 As ADODB.RecordsetDim rs3 As ADODB.RecordsetKhi form đợc nạp thì trên Datagrid 1 sẽ hiển thị tất cả các thông tin về bảng nhân khẩu, trong đó Datagrid chỉ cho phép xem dữ liệu chứ không cho phép cập nhật hay sửa đổi dữ liệu điều này đảm bảo cho việc một ngời nào đó không biết thì không thể sửa đổi lung tung dữ liệu đợc.
Set DataGrid1.DataSource = rs
H2: L ới hiển thị dữ liệuRiêng đối với combo1 sẽ nạp trờng “Manhankhau” khi form hiển thị ra màn hình Thủ tục này đợc viết trong sự kiện form_load()
Khi form hiển thị combo2 nạp trờng “socmt” của bảng “nhân khẩu”
rs1.Open "select * from nhankhau", cnn, adOpenDynamic, adLockOptimistic, adCmdText
Trang 32Set rs2 = New ADODB.Recordset
rs2.Open "select * from nhankhau", cnn, adOpenDynamic, adLockOptimistic, adCmdText
Khi form hiÓn thÞ combo4 n¹p trêng “sotamtru” cña b¶ng “nh©n khÈu”
rs3.Open "select * from nhankhau", cnn, adOpenDynamic, adLockOptimistic, adCmdText
Private Sub Combo1_Click()
rs.Open "select * From nhankhau where sohokhau='" & Combo1.Text & "'", cnn, adOpenDynamic, adLockOptimistic, adCmdText
Set DataGrid1.DataSource = rsEnd Sub
Trang 33Khi click chuột chọn một mã trong combo2 thì các bản ghi tơng ứng của bảng “Cmtnd” sẽ hiển thị vào Datagrid 1 nhng khi nhấn nút “chấp nhận” thì mã
đợc chọn trong combo2 sẽ so sánh với trờng “socmt” của bảng nhân khẩu nếu trùng hợp sẽ đa ra lới Datagrid
Private Sub Combo2_Click()Set rs1 = New ADODB.Recordsetrs1.CursorLocation = adUseClientrs1.Open "select * from cmtnd where socmtnd ='" & Combo2.Text & "'", cnn, adOpenDynamic, adLockOptimistic, adCmdText
Set DataGrid1.DataSource = rs1End Sub
Khi click chuột chọn một mã trong combo3 thì các bản ghi tơng ứng của bảng “sohokhau” sẽ hiển thị vào Datagrid 1 nhng khi nhấn nút “chấp nhận” thì mã đợc chọn trong combo3 sẽ so sánh với trờng “sohokhau” của bảng nhân khẩu nếu trùng hợp sẽ đa ra lới Datagrid
Private Sub Combo3_Click()Set rs2 = New ADODB.Recordsetrs2.CursorLocation = adUseClientrs2.Open "select * from sohokhau where sohokhau='" & Combo3.Text & "'", cnn, adOpenDynamic, adLockOptimistic, adCmdText
Set DataGrid1.DataSource = rs2End Sub
Khi click chuột chọn một mã trong combo4 thì các bản ghi tơng ứng của bảng “tamtru” sẽ hiển thị vào Datagrid 1 nhng khi nhấn nút “chấp nhận” thì mã
đợc chọn trong combo4 sẽ so sánh với trờng “sotamtru” của bảng nhân khẩu nếu trùng hợp sẽ đa ra lới Datagrid
Private Sub Combo4_Click()
Trang 34rs3.CursorLocation = adUseClientrs3.Open "select * from tamtru where sotamtru='" & Combo4.Text & "'", cnn, adOpenDynamic, adLockOptimistic, adCmdText
Set DataGrid1.DataSource = rs3End Sub
Mặt khác khi form hiển thị thì ta không cho phép ngời dùng truy cập vào
vào
Frame1.Enabled = True
Để nhập thông tin vào hồ sơ nhân khẩu Thì phải mở giao diện nhân khẩu và
di chuột chọn vào command 1_click() “ thêm mới” lúc đó tất cả các thông tin cần nhập sẽ hiển thị trên frame 1 “khung chứa dữ liệu” gồm 4combo và 1 textbox có chức năng nhập dữ liệu vào và gồm có các Label để hiển thị nhãn h-ớng dẫn ngời dùng
H3: Khung nhập dữ liệuKhi đã nhập đầy đủ các thông tin theo yêu cầu lại dùng chuột nhấn vào nút
“chấp nhận” Khi đó các thông tin bạn vừa nhập đã đợc nạp vào chơng trình hay nói cách khác là đã làm song một bộ hồ sơ nhân khẩu Và thoát khỏi frame 1 quay về nút “thêm mới” trong “khung nút lệnh”
Private Sub Command1_Click()
Trang 35Set rsadd = New ADODB.Recordset
rsadd.Open "Select * From nhankhau ", cnn, adOpenDynamic, adLockOptimistic, adCmdText
bị xoá trắng Chú ý là khi nhập dữ liệu phải nhập đầy đủ thông tin nếu không sẽ hiện ra thông báo cho biết ta cha nhập những gì
Các bạn đã thấy tôi đề cập đến nút “chấp nhận” Tôi nghĩ các bạn đã phải tự
đặt câu hỏi, vậy nút chấp nhận nó nh thế nào mà cứ làm xong một công việc lại phải dùng đến vậy? Sau đây là nội dung mà tôi đã làm nên điều đó của nút “chấp nhận”
Private Sub Command1_Click()
Trang 36'%" & Combo1.Text & "%' and SoCMT like '%" & Combo2.Text & "%' and Sohokhau Like '%" & Combo3.Text & "%' and Sotamtru Like '%" & Combo4.Text & "%'and Ngaylap like '%" & Text1.Text & "%'", cnn, adOpenDynamic, adLockOptimistic, adCmdText
Trang 37MsgBox "Hãy kiểm tra lại thông tin bạn nhập vào"
End SubTrong sự kiện click của nút “chấp nhận” thì phải đặt các Textbox và Combo ứng với các Label tơng ứng Chỉ nhập đủ dữ liệu ta mới nhấn nút “chấp nhận” Nếu các bạn nhập sai cũng không lo vì khi thiết kế tôi đã lập trình, khi nhập không đúng theo nội dung thì màn hình sẽ hiện ra một thông báo “ Hãy kiểm tra lại thông tin bạn nhập vào” Khi đó bạn chỉ cần thực hiện lại cho đúng là xong.Khi nhập đủ và nhấn nút “chấp nhận” để thoát khỏi frame1 Khi không muốn thực hiện công việc của các bạn vừa làm song Tôi lại thiết kế một nút trợ giúp để muốn thay đổi thì chỉ việc nhấn vào nút “Bỏ qua” là song Nội dung của nút bỏ qua nh sau:
Private Sub Command8_Click()
Case "New", "Edit"
có thể đến gặp trực tiếp ngời phụ trách để sửa lại Khi muốn sửa lại thông tin thì trong giao diện tôi đã thiết kế một command2 “sửa” Khi nhấn vào nút sửa thì các thông tin cần sửa đã hiện lên màn hình để ngời phụ trách sửa Trong th viện
Trang 38ADO có hỗ trợ sửa trực tiếp trên các bản ghi hiển thị ở lới DataGird Trong trờng hợp sửa ở trên khung nhập dữ liệu thì trớc khi sửa hay là trớc khi nhấn vào nút
“sửa” thì chúng ta phải di chuột đến bản ghi cần sửa trớc sau đó mới nhấn vào nút “sửa” Sau khi sửa đúng nh ý thì nhấn chuột vào nút “chấp nhận” để thoát khỏi frame 1 và quay về chế độ ban đầu là ẩn frame1 đi
Private Sub Command4_Click() plaod = "Edit"
Combo1.Text = "" & rs!mank
Text1.Text = "" & rs!ngaylap
Combo2.Text = "" & rs!socmt
Combo3.Text = "" & rs!sohokhau
Combo4.Text = "" & rs!sotamtru
End SubNgợc lại với sửa là xoá, trong chơng trình để xoá các thông tin không cần thiết thì cần phải xây dựng một sự kiện cho nút xoá
Private Sub Command3_Click()
If rs.EOF Or rs.BOF Then
Trang 39End SubKhi cần xoá thông tin nào thì chọn thông tin đó và nhấn vào nút “xoá” Khi
đó màn hình sẽ hiện lên một thông báo “có xoá không” Mục đích của thông báo này là trì hoãn hay nói cách khác là cho bạn xuy nghĩ có nên xoá không Nếu muốn xoá bạn kích vào nút “Yes” lúc đó bản ghi chọn đã đợc xoá và màn hình lại hiện ra thông báo “đã xoá” cho ngời dùng biết Còn không muốn thì kích vào “No” để thoát
Một nút trợ giúp nữa có tác dụng làm tơi các bản ghi và di chuyển con trỏ về bản ghi đầu : Đó là nút “làm tơi”
Private Sub Command4_Click()
rõ thông tin chính xác về nhân khẩu đó Mà chỉ nhớ một trong các chi tiết rất nhỏ nên rất khó khi muốn tìm phải lục cả đống hồ sơ Để giúp ngời quản lý tìm kiếm thông tin trong nhân khẩu một cách nhanh nhất mà không mất thời gian là mấy Thì đợc tôi viết chơng trình trong sự kiện “Tìm kiếm”
Private Sub Command5_Click() plaod = "Find"
Trang 40Frame2.Enabled = False
End SubMục đích của sự kiện trợ giúp này là giúp ngời quản lý tìm kiếm thông tin khi kích chuột vào nút “tìm kiếm” thì màn hình giao diện sẽ hiện ra các thông tin hồ sơ nhân khẩu Khi đó bạn muốn tìm tới hồ sơ nào có trong tủ bạn quản lý mà chỉ nhớ rõ một chút thông tin về nó, hãy nhập thông tin mà bạn nhớ vào khung dữ liệu sau đó nhấn vào nút “chấp nhận” Màn hình sẽ hiện ra thông tin về cuốn sổ
mà bạn cần, hay nói cách khác là hiện ra thông tin vị trí của hồ sơ đó trong tủ để bạn lấy ra dùng Nội dung của nút tìm kiếm cũng đợc thiết kế nh nút “thêm mới” nhng chỉ khác nhau ở chỗ là tìm kiếm không cần nhập đủ thông tin lên các textbox và combo
Khi muốn lấy ra dùng hay in ra nội dung thông tin mình tìm kiếm, sửa, thêm mới hay có chăng là tất cả các thông tin có trên DataGird thì cần phải làm nh thế nào Sự kiện của command “in” sẽ làm đợc điều thần kỳ này
Private Sub Command7_Click()strcnn = "Select * From Nhankhau where Manhankhau Like '%" & Combo1.Text & "%' and SoCMT like '%" & Combo2.Text & "%' and Sohk Like '%" & Combo3.Text & "%' and Sotamtru Like '%" & Combo4.Text & "%'and NgayLap like '%" & Text1.Text & "%'”
đầy đủ thông tin về nhân khẩu hiển thị trên form, khi đó bạn có thể in theo điều kiện lọc trong tìm kiếm hay in tất cả các thông tin đều đợc Đó là do mình đặt
điều kiện cho công việc mình làm Khi bạn muốn in thông tin thì dùng chuột bấm vào nút “in” thông tin bạn cần đã đợc in ra màn hình