Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Xin hỏi cách so sánh để nâng cấp dữ liệu
#21
* Góp ý kiến về nâng cấp phiên bản người dùng:
- Thông thường ta sẽ có 2 file: Back-End(Chứa Database) và Front End(Giao diện người dùng)

* Trường hợp 1: Chỉ nâng cấp giao diện người dùng. thì chỉ việc chép đè lên
* Trường hợp 2: Chỉ nâng cấp Database
- Khuyến cáo nên viết Class để quản lý cho từng Table : để cập nhật các mẫu tin từ Database cũ qua mới;
* Trường hợp 3: Bao gồm cả 1 và 2, cộng thêm có một ít thông tin cấu hình nằm trên file Giao diện người dùng.
- Khuyến cáo nên viết Class để quản lý cho từng Table : để cập nhật các mẫu tin từ Database cũ qua mới;
- không cần quan tâm file Giao diện người dùng: giữa phiên bản trước có bao nhiêu query, form, Modules....


* Nhiệm vụ của Class là gì? và làm thế nào để cập nhật tất cả các mẫu tin và các Fields(cột) mới từ Database cũ.
* Ví dụ:
- Ứng dụng Version V1.0
+ Database chứa 1000 dòng dữ liệu, có 10 cột;
+ Font End có 10 query, 10 form....

- Một ngày đẹp trời cần cập nhật lên phiên bản V2.0:

+ Database chứa 0 dòng dữ liệu, có 20 cột; có thêm vài ba cái table
+ Font End có 100 query, 100 form, bổ sung rất nhiều lệnh....

ta cần làm như sau
Bước 1: Chép V2.0 vào đâu cũng được và bậc V2.0 chạy ( Sẽ quét vùng cài đặt mặc định V1.0, nếu không thấy thì mở tùy chọn vùng cài đặt); chạy lệnh cập nhật phiên bản 1 lần duy nhất <- Có thể tạm hiểu đây là file trung gian
Bước 2: Quá trình thay củ đổi mới
+ Gọi Class để update Database các mẫu tin từ V1.0 sang V2.0 ( ở đây cần hiểu là ta đã tạo class cho V1.0 có 10 cột; và ta tạo class cho V2.0 là 20 cột; như vậy lệnh Update của ta chỉ update các cột có tên trùng nhau)

+ Nếu ta cần lấy thông tin cấu hình trên table file Front End ta cũng viết class tương tự để lấy dữ liệu
+ Gọi lệnh xóa Toàn bộ file V1.0
+ Gọi lệnh Chép tất cả file V2.0 đã update dữ liệu vào vùng cài đặt mà trước đó cài V1.0. ( Lưu ý ở đây ta nên đặt tên Database và file Front end là tên không thay đổi, chứ đừng đặt tên thêm database_V2.0) <- Có thể tạm hiểu đây là file trung gian
+ Thế là xong.

* Lưu ý khi viết ứng dụng: đối với file giao diện người dùng, đến giai đoạn tạo form và viết code
1. Viết xong 1 thủ thuât hoặc 1 đoạn code phải thoát ứng dụng; hoặc nếu là cáo thủ thì xong 1 ngày thì copy thành file mới
2. Copy nó thành file mới và đặt tên bằng số liên tiếp
( Thông thường tôi viết xong 1 ứng dụng cơ bản file Front end của tôi cũng lên đến 100 file)

Mục đích: nếu có sơ xuất ta chỉ việc Xóa file thiết kế hiện tại đi và lây file trước đó viết tiếp
Ngoài ra ta phải tận dùng Notepad để viết các chú thích là ngày mới ta làm gì, làm đến đâu, xây dựng bao nhiêu hàm...

Có như vậy thì khả năng chúng ta mới tiết kiệm được thời gian viết ứng dụng, cũng như ta viết dở dang ứng dụng mà quay lại thì không tốn công sức chúng ta rà soát các bản thiết kế.

Trên đây là vài lời chia sẽ kinh nghiệm.
Thân mến
Chữ ký của maidinhdan * Để được hỗ trợ tốt nhất, nhấn vào link dưới đây để xem.
1. [Hướng dẫn] Kiểu file gửi lên để được giúp đỡ
2. [Hướng dẫn] Nội quy diễn đàn
3. [Hướng dẫn] Cách Đưa file và hình vào diễn đàn
4.[Hướng dẫn] Để xây dựng một ứng dụng hoàn hảo và lời cảm tạ
5. Cần tìm Demo hay ứng dụng sử dụng thanh tìm kiếm phía trên cùng, bên phải của diễn đàn.
* Nếu muốn cảm ơn, hãy nhấn nút thank, không cần viết thêm bài nào nửa.



ღღღღღTài sản của maidinhdan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn tranthanhan1962
#22
Xin được nói thêm về nâng cấp phần mềm đã được sử dụng:
1/ Nâng cấp giao diện (frond-end): đây là vấn đề cực kỳ đơn giản, Cách xử lý: cứ bỏ giao diện cũ thay bằng giao diên mới rồi link table lại thôi.
2/Nâng cấp table (thêm field):
         a/ Chỉ thêm một số field bổ sung chỉ thêm giá trị mà không cần phải xử lý: Ví dụ thêm địa chỉ, số điện thoại... Cách xử lý: Tạo thêm field để người xử dụng tự điền giá trị, hoặc chuyển ra excel điền giá trị xong import vào rồi tạo query update vào table chính, phần frontend bổ xung textbox cho các field mới của record source của form hoặc report.
         b/ Thêm field giá trị ảnh hưởng cách tính toán: phần này còn tùy vào trường hợp cách xử lý phân tích phần mềm lúc đầu: Ví dụ một công ty chuyên bán hàng có thuế xuất giá trị gia tăng là 10% . Bổng một hôm kinh doanh thêm mặt hàng có thuế xuất GTGT 5%. Nếu như đã thiết kế field thuế xuất GTGT thì không cần phải làm gì cả. Nhưng lỡ như mặc định thuế xuất là 10% trong code vba thì vừa thêm field vừa phải xử lý lại toàn bộ giá trị.
         c/ Có nhiều trường hợp không lường hết được. Như trường hợp đôi khi Tổng cục thuế thêm bớt một vài chỉ tiêu giá trị trong biểu mẫu báo cáo thì có khi phải bỏ cả phần mềm phân tích lại table, viết lại cả một rừng code VBA hay thiết kế lại một đống report...
Nói chung khi phân tích phần mềm điều quan trọng nhất là phân tích một cách đầy đủ và hợp lý các table và quan hệ, lường trước mọi hậu quả có thể sẽ xảy ra thì nâng cấp chỉ là show những cái đã có mà chưa xử dụng thì công việc sẽ trở nên nhẹ nhàng. Còn ngược lại có thể trở thành những bài toán hóc búa mà không thể áp dụng bất kỳ quy củ nào cho nó. chứ đừng nói là viết lệnh sẵn rồi bấm một cái là nâng cấp  040
Chữ ký của tranthanhan1962 Kết quả cuối cùng của một đời người, không phải bạn có được bao nhiêu tiền bạc, tài sản. Mà bạn còn bao nhiêu người bạn  thumbs up
ღღღღღTài sản của tranthanhan1962 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn ongke0711
#23
(24-08-18, 01:04 AM)tranthanhan1962 Đã viết: Xin được nói thêm về nâng cấp phần mềm đã được sử dụng:
1/ Nâng cấp giao diện (frond-end): đây là vấn đề cực kỳ đơn giản, Cách xử lý: cứ bỏ giao diện cũ thay bằng giao diên mới rồi link table lại thôi.
2/Nâng cấp table (thêm field):
         a/ Chỉ thêm một số field bổ sung chỉ thêm giá trị mà không cần phải xử lý: Ví dụ thêm địa chỉ, số điện thoại... Cách xử lý: Tạo thêm field để người xử dụng tự điền giá trị, hoặc chuyển ra excel điền giá trị xong import vào rồi tạo query update vào table chính, phần frontend bổ xung textbox cho các field mới của record source của form hoặc report.
         b/ Thêm field giá trị ảnh hưởng cách tính toán: phần này còn tùy vào trường hợp cách xử lý phân tích phần mềm lúc đầu: Ví dụ một công ty chuyên bán hàng có thuế xuất giá trị gia tăng là 10% . Bổng một hôm kinh doanh thêm mặt hàng có thuế xuất GTGT 5%. Nếu như đã thiết kế field thuế xuất GTGT thì không cần phải làm gì cả. Nhưng lỡ như mặc định thuế xuất là 10% trong code vba thì vừa thêm field vừa phải xử lý lại toàn bộ giá trị.
         c/ Có nhiều trường hợp không lường hết được. Như trường hợp đôi khi Tổng cục thuế thêm bớt một vài chỉ tiêu giá trị trong biểu mẫu báo cáo thì có khi phải bỏ cả phần mềm phân tích lại table, viết lại cả một rừng code VBA hay thiết kế lại một đống report...
Nói chung khi phân tích phần mềm điều quan trọng nhất là phân tích một cách đầy đủ và hợp lý các table và quan hệ, lường trước mọi hậu quả có thể sẽ xảy ra thì nâng cấp chỉ là show những cái đã có mà chưa xử dụng thì công việc sẽ trở nên nhẹ nhàng. Còn ngược lại có thể trở thành những bài toán hóc búa mà không thể áp dụng bất kỳ quy củ nào cho nó. chứ đừng nói là viết lệnh sẵn rồi bấm một cái là nâng cấp  040

Vấn đề của em là : Có nhiều bản (frond-end) dùng cho nhiều khách hàng (Bởi mỗi khách hàng có một số Report khác, khi tạo ra cần thêm một số querry hoặc một số form hoặc các câu lệnh đi kèm). Ví dụ một khách hàng A có nhưng mẫu biểu hoặc phát triển thêm một số cái hay hay, em muốn nâng cấp cho khách hàng B nhưng mỗi nâng lại phải làm thủ công : Copy bảng, querry, forms, report ... (những cái thêm vào thôi) từ bản của khách A rồi dán sang bản của khách hàng B
Em muốn là khi nâng cấp : Chương trình sẽ liệt kê một loạt thay đổi, nếu muốn thay đổi cái nào thì chọn cái đấy để nâng cấp  Lightbulb
Chữ ký của ledangvan Xin chào, mình là ledangvan, Tham gia http://thuthuataccess.com/forum từ ngày 22-08 -11.
ღღღღღTài sản của ledangvan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#24
Bạn cũng giống như tôi. Tôi cung cấp phần mềm kế toán cho các cty, doanh nghiệp. Mỗi đơn vị lại có nhiều đặt thù khác nhau. lúc đầu tôi cũng có ý tưởng giống như bạn, nhưng không dễ dàng gì, đôi khi dính vào mất thời gian rất nhiều nhưng hiệu quả không đáng bao nhiêu. Chi bằng xử lý thủ công khi trở thành quen bạn sẽ xử lý nhanh như máy
Chữ ký của tranthanhan1962 Kết quả cuối cùng của một đời người, không phải bạn có được bao nhiêu tiền bạc, tài sản. Mà bạn còn bao nhiêu người bạn  thumbs up
ღღღღღTài sản của tranthanhan1962 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  [Hỏi] lấy dữ liệu từ query sang Text box minhminh25767 3 164 13-11-18, 04:01 PM
Bài mới nhất: ongke0711
Lightbulb [Hỏi] Cách tạo Table/Query từ nhiều Table/Query khác shinichikuto 16 1,351 30-08-18, 03:36 PM
Bài mới nhất: shinichikuto
  [Lỗi] Lỗi mất dự liệu trong table thanhtruong 3 386 08-08-18, 02:52 PM
Bài mới nhất: Xuân Thanh
  [Help] Khóa sổ không cho phép thay đổi số liệu! NguyenDungAnh 4 418 05-08-18, 10:58 PM
Bài mới nhất: NguyenDungAnh
  [Hỏi] Ghép dữ liệu nhiều table vào 1 table vietanh283 1 461 27-06-18, 08:06 PM
Bài mới nhất: ongke0711

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ| PMA Nha Trang| Gỗ Acrylic Không Đường Line