Transaction Log

Một phần của tài liệu xây dựng phần mềm quản lý bán hàng vật liệu xây dựng tại công ty cổ phần tư vấn đầu tư và xây dựng số 2 hà nội (Trang 39)

Database

Transaction Log

Transaction log là tập hợp nhật ký các quá trình data được thay đổi, nhờ vào quá trình này, khi cập nhật số liệu, nếu quá trình cập nhật bị hư nửa chừng thì MS-SQL Server có thể dựa vào transaction log để khôi phục giá trị của database trước khi quá trình cập nhật hư xảy ra.

Khi ta tạo database ta có thể khai báo kích thước, vị trí của transaction log. Nếu ta không khai báo, MS-SQL Server sẽ tự động tạo.

Ta có thể yêu cầu MS-SQL Server thực hiện transaction cho các lệnh của mình bằng cách dùng lệnh sau ở bắt đầu tập hợp lệnh:

BEGIN TRANSACTION [transaction_name] Và báo kết thúc bằng lệnh:

COMMIT TRANSACTION [transaction_name]

Thực chất, transaction log là một bảng chứa trong database, bảng này tên là syslogs.

Các loại Object trong Database

- Table

Table dùng để lưu các số liệu của chúng ta và được tổ chức thành hàng và cột (record and field). Mỗi một cột xác định một loại số liệu khác nhau.

Cột: mỗi cột cần được xác định tên, loại số liệu, chiều dài và có được là null(nullabiliti) hay không.

Tên cột phải duy nhất trong một bảng (không trùng tên cột khác).

Category Datatype Comments

String Char(n), varchar Stores character strings Binary Binary(n),

varbinary

Stores binary information in two byte pairs

Interger Int ,smallint, tinyint

Stores interger values Approximate

Numeric

Float, real Stores approximate numeric information

Exact Numeric Decimal,numeric Stores exact numeric information Special Bit ,text ,image Stores a single bit, character

information greater than bytes or image data

Data and time Datatime ,smalldatetime

Stores dates and times Money Money,smalltime Stores currency values

Auto_incrementing Identify ,timestap Store valuesthat are incremented or set by the SQL Server

User-defined You are create your own datatypes -Nullability

Nếu giá trị của cột không cần có một giá trị nào đó, cột được gọi là nullability. Không cần giá trị không có nghĩa có giá trị là không.

-View

View cho phép ta tạo những số liệu chọn lọc từ hàng và cột của một hoặc nhiều bảng, điều này có nghĩa cho phép người sử dụng chọn lọc một số dòng và cột theo những điều kiện nào đó.

Sử dụng View có những thuận lợi sau

Điều khiển những gì người sử dụng được quyền xem, giúp cho tính chất dễ dùng và bảo mật của database Server, làm đơn giản việc giao tiếp với người sử dụng bằng cách tạo view từ những lệnh truy xuất thường dùng.

Cú pháp tạo View: (adsbygoogle = window.adsbygoogle || []).push({});

Createview[owner,]view_name[(column_name[,column_name])] [withenctyption]

As select_statement Ví dụ:

Create view * from tblSinhViờn,tblKhoahoc -Stored procedure

Khi chúng ta thi hành một lệnh, toàn bộ lệnh đó sẽ chuyển về MS- SQL Server dưới nguyên dạng văn bản của nó, khi MS-SQL Server nhận được lệnh này, nó sẽ phân tích, biên dịch thi hành và trả về kết quả cho Users. Nếu mỗi tập lệnh nào đó được thường xuyên thi hành, thì MS- SQL Server sẽ thường xuyên lặp lại quá trình phân tích, biên dịch giống nhau, stored procedure nhằm làm giảm quá trình này.

- Trigger

Trigger là một loại stored procedure đặc biệt sẽ tự động thi hành khi User cập nhật data nào đó đã được liên kết với trigger này, khi chúng ta cập nhật data trong một bảng hay nhiều bảng nào đó mà bảng này được liên kết với bảng đó.

Hệ thống security của MS-SQL Server

-Login ID

Để có thể truy xuất database, điều kiện đầu tiên là User cần có login ID để có thể kết nối vào MS-SQL Server. Khi cài đặt MS-SQL Server tạo ra một login ID ban đầu là SA (system administrator). SA có quyền trên hệ thống MS-SQL Server. Từ SA, người quản trị sẽ tạo ra các login ID cho các User khác.

-Các chế độ security của MS-SQL

Standard: Mỗi Usermuốn truy xuất phải cung cấp tên và password.

Intergrated: Mô hình này tích hợp MS-SQL Server với NT Server. Các User kết nối vào mạng NT thì có thể truy xuất được MS-SQL Server mà không cần cung cấp thêm Username và password nữa. Tuy nhiên mô hình này chỉ có thể chạy được với những User có khả năng từ một Workstation nào đó log vào được NT Server cài đặt MS-SQL Server. Điều này tốt đối với những mạng cục bộ và mạng Intranet, nhưng đối với Internet thì điều này không thể thực hiện được vì user có nhiều nguồn gốc khác nhau, hệ điều hành khác nhau, tên khác nhau …

Mixed:

Khi ta cho phép User truy xuất lên database, ta phải liên kết login ID với một database User trên Database đó. Database User sẽ quyết định cụ thể User được truy xuất quyền gì.

Như vậy, một User với một login ID cho trước, có thể tương ứng với nhiều database User trờn cỏc database khác và có những quyền khác nhau trên những database đó phụ thuộc người quản trị hệ thống được xác định như thế nào.

Mỗi một Database có thể có nhiều group khác nhau. Group cũng được xác định những quyền nào đó trên database. Mỗi database có sẵn một group public. Mỗi User có thể có tối đa hai group, trong đó có ít nhất là group public. Việc gán quyền cho group, sau đó gán User và group làm cho User đó cũng có quyền như group, điều này làm giảm thời gian gán quyền cho các User.

IV.1.2. Ngôn ngữ sử dụng C#

-Ngôn ngữ C# khá đơn giản, chỉ khoảng 80 từ khóa và hơn mười mấy kiểu dữ liệu được xây dựng sẵn. Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi nó thực thi những khái niệm lập trình hiện đại. C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component, lập trình hướng đối tượng. Những tính chất đó hiện diện trong một ngôn ngữ lập trình hiện đại. Và ngôn ngữ C# hội đủ những điều kiện như vậy, hơn nữa nó được xây dựng trên nền tảng của hai ngôn ngữ mạnh nhất là C++ và Java.

-Ngôn ngữ C# được phát triển bởi đội ngũ kỹ sư của Microsoft, trong đó người dẫn đầu là Anders Hejlsberg và Scott Wiltamuth. Cả hai người này đều là những người nổi tiếng, trong đó Anders Hejlsberg được biết đến là tác giả của Turbo Pascal, một ngôn ngữ lập trình PC phổ biến. Và ông đứng đầu nhóm thiết kế Borland Delphi, một trong những thành công đầu tiên của việc xây dựng môi trường phát triển tích hợp (IDE) cho lập trình client/server.

-Phần cốt lõi hay còn gọi là trái tim của bất cứ ngôn ngữ lập trình hướng đối tượng là sự hỗ trợ của nó cho việc định nghĩa và làm việc với những lớp. Những lớp thì định nghĩa những kiểu dữ liệu mới, cho phép người phát triển mở rộng ngôn ngữ để tạo mô hình tốt hơn để giải quyết vấn đề. Ngôn ngữ C# chứa những từ khóa cho việc khai báo những kiểu lớp đối tượng mới và những phương thức hay thuộc tính của lớp, và cho việc thực thi đóng gói, kế thừa, và đa hình, ba thuộc tính cơ bản của bất cứ ngôn ngữ lập trình hướng

-Trong ngôn ngữ C# mọi thứ liên quan đến khai báo lớp điều được tìm thấy trong phần khai báo của nó. Định nghĩa một lớp trong ngôn ngữ C# không đòi hỏi phải chia ra tập tin header và tập tin nguồn giống như trong ngôn ngữ C++. Hơn thế nữa, ngôn ngữ C# hỗ trợ kiểu XML, cho phép chốn cỏc tag XML để phát sinh tự động các document cho lớp.

-C# cũng hỗ trợ giao diện interface, nó được xem như một cam kết với một lớp cho những dịch vụ mà giao diện quy định. Trong ngôn ngữ C#, một lớp chỉ có thể kế thừa từ duy nhất một lớp cha, tức là không cho đa kế thừa như trong ngôn ngữ C++, tuy nhiên một lớp có thể thực thi nhiều giao diện. Khi một lớp thực thi một giao diện thỡ nú sẽ hứa là nó sẽ cung cấp chức năng thực thi giao diện.

-Trong ngôn ngữ C#, những cấu trúc cũng được hỗ trợ, nhưng khái niệm về ngữ nghĩa của nó thay đổi khác với C++. Trong C#, một cấu trúc được giới hạn, là kiểu dữ liệu nhỏ gọn và khi tạo thể hiện thỡ nú yêu cầu ít hơn về hệ điều hành và bộ nhớ so với một lớp. Một cấu trúc thì không thể kế thừa từ một lớp hay được kế thừa nhưng một cấu trúc có thể thực thi một giao diện.

-Ngôn ngữ C# cung cấp những đặc tính hướng thành phần (component- oriented), như là những thuộc tính, những sự kiện. Lập trình hướng thành phần được hỗ trợ bởi CLR cho phép lưu trữ metadata với mã nguồn cho một lớp. Metadata mô tả cho một lớp, bao gồm những phương thức và những thuộc tính của nó, cũng như những sự bảo mật cần thiết và những thuộc tính khác. Mã nguồn chứa đựng những logic cần thiết để thực hiện những chức năng của nó. Do vậy, một lớp được biên dịch như là một khối self-contained, nên môi trường hosting biết được cách đọc metadata của một lớp và mã nguồn cần thiết mà không cần những thông tin khác để sử dụng nó.

-Một lưu ý cuối cùng về ngôn ngữ C# là ngôn ngữ này cũng hỗ trợ việc truy cập bộ nhớ trực tiếp sử dụng kiểu con trỏ của C++ và từ khóa cho dấu

ngoặc [] trong toán tử. Các mã nguồn này là không an toàn (unsafe). Và bộ giải phóng bộ nhớ tự động của CLR sẽ không thực hiện việc giải phóng những đối tượng được tham chiếu bằng sử dụng con trỏ cho đến khi chúng được giải phóng.

IV.1.3. Báo cáo sử dụng Crystal Report

-Crystal Reports là gì?

Crystal Reports là công cụ thiết kế báo cáo cho phép bạn tạo ra những báo cáo bằng cách tìm và định dạng dữ liệu từ một nguồn dữ liệu hay từ những nguồn dữ liệu khác nhau .Bên cạnh đó Crystal Reports có một ngôn ngữ riêng để tính toán và một số tính năng khác để biến những dữ liệu thô thành những báo cáo đầy tính chuyên nghiệp. Bạn có thể tạo những báo cáo đi từ những danh sách đơn giản chỉ gồm vài cột cho đến những báo cáo phức tạp cú kộm biểu đồ ,bảng và chỉ số Key Performance Indicator (KPI).Ngoài ra, Crystal Reports có một số hàm API cũng như công cụ đặc biệt được thiết kế dành cho các nhà phát triển phần mềm cho phép hội nhập các báo cáo này vào trong ứng dụng riêng của họ.

-Đặc điểm của Crystal Reports (adsbygoogle = window.adsbygoogle || []).push({});

- Bạn không cần mở một ứng dụng riêng rẽ để thiết kế báo cáo khi dùng Crystal Reports

- Đối với Windows Form , Crystal Reports cho phép xem báo cáo và cung cấp tất cả các chức năng cho người sử dụng bao gồm xoỏy sõu vào chi tiết ,truy xuất ,xuất khẩu…Đối với ASP.NET ,cung cấp phần lớn các chức năng trong Windows Form Viewer trong môi trường DHTML “zero client ” (Nghĩa là không client nào được nạp xuống hay cài đặt).

- Crystal Reports giúp việc truy cập dữ liệu trở nên dễ dàng hơn. - Crystal Reports cho phép truy cập những dữ liệu nguồn khác nhau

- Crystal Reports cho phép chia sẻ sử dụng các bảng báo cáo cũng như tạo những ứng dụng được phân phối sử dụng cho nhiều người dùng.

IV.2 Thiết kế giao diện và hướng dẫn sử dụng

-Đăng nhập vào hệ thống

Khi người dùng đăng nhập hệ thống người dùng phải nhập tên truy cập và mật khẩu, sau đó lựa chọn đăng nhập vào hệ thống còn không muốn đăng nhập thì chọn nút bỏ qua.

- Giao diện chính chương trình

-Chức năng quản lý người dùng: có chức năng là thêm, sửa, xóa, phân quyền thông tin người sử dụng chương trình

+ Thêm mới: Chọn nút Thêm sau đó điền thông tin rồi chọn Lưu để lưu lại thông tin

+ Sửa: Chọn loại vật tư cần sửa sao đó chọn Sửa Lưu để lưu lại thông tin vừa chỉnh sửa.

+ Xóa: Chọn loại vật tư cần xóa sau đó chọn nút Xóa

+ Thêm mới: Chọn nút Thêm sau đó điền thông tin rồi chọn Lưu để lưu lại thông tin

+ Sửa: Chọn vật tư cần sửa sao đó chọn Sửa Lưu để lưu lại thông tin vừa chỉnh sửa.

+ Xóa: Chọn vật tư cần xóa sau đó chọn nút Xóa

+ Thêm mới: Chọn nút Thêm sau đó điền thông tin rồi chọn Lưu để lưu lại thông tin

+ Sửa: Chọn vật tư cần sửa sao đó chọn Sửa Lưu để lưu lại thông tin vừa chỉnh sửa.

+ Xóa: Chọn vật tư cần xóa sau đó chọn nút Xóa

+ Thêm mới: Chọn nút Thêm sau đó điền thông tin rồi chọn Lưu để lưu lại thông tin

+ Sửa: Chọn nhóm khách hàng cần sửa sao đó chọn Sửa Lưu để lưu lại thông tin vừa chỉnh sửa.

+ Xóa: Chọn nhóm khách hàng cần xóa sau đó chọn nút Xóa

+ Thêm mới: Chọn nút Thêm sau đó điền thông tin rồi chọn Lưu để lưu lại thông tin

+ Sửa: Chọn khách hàng cần sửa sao đó chọn Sửa Lưu để lưu lại thông tin vừa chỉnh sửa.

+ Xóa: Chọn vật tư cần xóa sau đó chọn nút Xóa

Chọn nhóm vật tư sau đó chọn tên vật tư, đơn vị và điền số lượng, đơn giá. Sau khi hoàn thành bấm nút cập nhật để cập nhật phiếu nhập vật tư. Muốn in hóa đơn vừa nhập thì chọn In hóa đơn.

Chọn nhón vật tư sau đó chọn tên vật tư, đơn vị và điền số lượng, đơn giá. Sau khi hoàn thành bấm nút cập nhật để cập nhật phiếu xuất vật tư. Muốn in hóa đơn vừa xuất thì chọn In hóa đơn.

Mặc dự đó cố gắng rất nhiều nhưng không sao tránh khỏi những thiếu sót. Mong quý Thầy, Cô và các bạn đóng góp ý kiến để em rút ra được nhiều kinh nghiệm quý báu khi bước vào cuộc sống mới.

Bài toán được thiết kế và cài đặt có rất ưu điểm sau: - Cho một giao diện thân thiện với người sử dụng - Chạy theo chế độ đa nhiệm

- In ấn nhanh chóng và thuận lợi (adsbygoogle = window.adsbygoogle || []).push({});

Bài toán quản lý bán hàng vật liệu xây dựng này chủ yếu là áp dụng với những cửa hàng có quy mô tương đối nhỏ, do đặc thù của mỗi cửa nên công tác quản lý với mỗi cửa hàng là khác nhau. Ở đây em chỉ tìm hiểu về công tác quản lý bán hàng của Công ty cổ phần tư vấn đầu tư và xây dựng số 2 Hà Nội nên chương trình này chủ yếu áp dụng cho công tác quản lý bán hàng của công ty mà thôi.

Do thời gian hạn chế và trình độ hiểu biết của bản thân chưa nhiều nên việc phân tích thiết kế và cài đặt bài toán quản lý bán hàng chưa hoàn thiện như một phần mềm quản lý. Nó mang tính chất học hỏi, trao đổi và bắt đầu làm quen với thực tế. Nhưng qua đợt thực tập này, em đã học hỏi được nhiều kinh nghiệm trong quá trình phân tích thiết kế và cài đặt một chương trình quản lý, đồng thời cũng bổ sung kiến thức cho bản thân.

Em xin chân thành cảm ơn cô giáo Thạc sĩ Tống Thị Minh Ngọc đã tận tình giúp đỡ để em hoàn thành báo cáo thực tập của mình. Em cũng bày tỏ lòng biết ơn sâu sắc tới quý Thầy, Cô trong bộ môn Công nghệ thông tin thuộc viện công nghệ thông tin kinh tế của trường Đại học Kinh Tế Quốc Dân đã chỉ bảo tận tình cho em trong suốt khoá học.

1.Phân tích và thiết kế hệ thống thông tin - Nguyễn Văn Ba, NXB Đại học Quốc gia Hà Nội.

2. Phân tích và thiết kế hệ thống thông tin- Tác giả: Đào Thanh Tĩnh. 3. C# .NET – tác giả Phương Lan, NXB Lao động xã hội.

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ……… ……… ……… ……… ……… ……… ……… ……… ……… ……… ……… ……… ……… ………

Hà Nội, ngày … tháng … năm … Giáo viên hướng dẫn

Một phần của tài liệu xây dựng phần mềm quản lý bán hàng vật liệu xây dựng tại công ty cổ phần tư vấn đầu tư và xây dựng số 2 hà nội (Trang 39)