Khóa luận Ứng dụng ERP Adempiere trong quản lý hợp đồng

ĐẠI HỌC QUỐC GIA HÀ NỘI  
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ  
Nguyễn Đức Hùng  
ỨNG DỤNG ERP ADEMPIERE TRONG QUẢN LÝ  
HỢP ĐỒNG  
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY  
Ngành: Các hệ thống thông tin  
HÀ NỘI - 2010  
ĐẠI HỌC QUỐC GIA HÀ NỘI  
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ  
Nguyễn Đức Hùng  
ỨNG DỤNG ERP ADEMPIERE TRONG QUẢN LÝ  
HỢP ĐỒNG  
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY  
Ngành: Các hệ thống thông tin  
Cán bộ hướng dẫn:Thạc sĩ Nguyễn Thu Trang  
HÀ NỘI - 2010  
Lời cảm ơn  
Trước tiên, tôi xin gửi lời cảm ơn và lòng biết ơn sâu sắc nhất tới Thạc sỹ  
Nguyễn Thu Trang, người đã tận tình chỉ bảo và hướng dẫn tôi trong suốt quá trình thực  
hiện khoá luận tốt nghiệp.  
Tôi chân thành cảm ơn các thầy, cô đã tạo cho tôi những điều kiện thuận lợi để học  
tập và nghiên cứu tại trường Đại Học Công Nghệ.  
Cuối cùng, tôi muốn gửi lời cảm vô hạn tới gia đình và bạn bè, những người thân  
yêu luôn bên cạnh và động viên tôi trong suốt quá trình thực hiện khóa luận tốt nghiệp.  
Tôi xin chân thành cảm ơn !  
Sinh viên  
Nguyễn Đức Hùng  
Tóm tắt  
Với sự phát triển không ngừng của công nghệ thông tin, việc ứng dụng công nghệ  
thông tin trong các ngành kinh tế xã hội ngày càng được quan tâm và triển khai hiệu quả  
như trong giáo dục, y tế và đặc biệt là các sản phẩm hỗ trợ doanh nghiệp. Việc xây dựng  
một chương trình phần mềm duy nhất đáp ứng các nhu cầu quản lý khác nhau trong một  
doanh nghiệp khó khả thi, mà các sản phẩm chủ yếu là ứng dụng riêng lẻ đáp ứng nhu cầu  
xử lý công việc của từng bộ phận trong tổ chức, doanh nghiệp.  
Sự ra đời của ERP (Enterprise Resource Planning: Hoạch định tài nguyên doanh  
nghiệp) đã tạo ra một bước phát triển mới. ERP tích hợp các ứng dụng riêng lẻ với nhau  
trên một cơ sở dữ liệu thống nhất thành một hệ thống, giúp các bộ phân trong một tổ chức  
dễ dàng chia sẻ thông tin, tương tác với nhau, và hỗ trợ quản lý hiệu quả nguồn tài nguyên  
doanh nghiệp.  
Đáp ứng nhu cầu thực tế, và nhận thấy các ưu điểm của hệ thống ERP, công ty cổ  
phần công nghệ Viettel đã triển khai ứng dụng giải pháp ERP dựa trên hệ mã mở  
Adempiere. Khóa luận với đề tài “Ứng dụng ERP Adempiere trong quản lý hợp  
đồng”giới thiệu, phân tích hệ ERP mã mở Adempiere và triển khai phân hệ quản lý hợp  
đồng cho Công ty Viettel dựa trên nền đó.  
Mục lục  
Danh sách các hình  
Bảng ký hiệu và chữ viết tắt  
STT Ký hiệu viết tắt  
Viết đầy đủ  
1
2
3
4
5
AD  
Adempiere  
CNTT  
ERP  
ER  
Công nghệ thông tin  
Enterprise Resource Planning  
Entity Relationship  
Viettel Technology  
VTT  
Mở đầu  
Trong vài năm trở lại đây, cùng với sự phát triển của CNTT, ERP đã nhanh chóng  
trở thành giải pháp được nhiều công ty đầu tư thích đáng do những lợi ích to lớn mà nó  
mang lại. ERP là một trong ba mũi nhọn có tính chất đột phá cho hướng đi của công nghệ  
phần mềm Việt Nam. Với dự đoán về sự bùng nổ áp dụng ERP trong vòng hai tới ba năm  
tới, đây sẽ là một thị trường lớn cho các doanh nghiệp phần mềm Việt Nam có sản phẩm  
ERP.  
Dựa vào nhu cầu về ứng dụng quản lý hợp đồng của công ty cổ phần công nghệ  
Viettel (Viettel Technology), nội dung của khóa luận được hình thành và được tập trung  
giải quyết.  
Cấu trúc khóa luận gồm bốn chương:  
Chương 1: Giới thiệu về ERP.  
Chương 2: Phân hệ quản lý hợp đồng trong ERP và các yêu cầu của bài toán  
quản lý hợp đồng ở Viettel Technology.  
Chương 3: Kiến trúc hệ thống phần mềm nguồn mở ERP Adempiere  
Chương 4: Phân tích và triển khai phân hệ quản lý hợp đồng trên Adempiere ở  
Viettel Technology.  
Phần Kết Luận tổng kết và tóm lược nội dung của khóa luận.  
1
 
Chương 1: Giới thiu vERP  
1.1 Khái nim ERP  
ERP là viết tắt của cụm từ “Enterprise Resource Planning” có thể dịch là “Hoạch  
định tài nguyên doanh nghiệp”.Theo [1] ERP được định nghĩa là một hệ thống ứng dụng  
đa phân hệ” (Multi Module Software Application) giúp tổ chức, doanh nghiệp quản lý các  
nguồn lực và điều hành tác nghiệp . Bản chất ERP là một hệ thống tích hợp các phần mềm  
ứng dụng đa phân hệ nhằm giúp tổ chức, doanh nghiệp quản lý các nguồn lực và tác  
nghiệp. Giải pháp ERP cung cấp cho các nhà quản lý doanh nghiệp khả năng quản lý và  
điều hành tài chính – kế toán, quản lý vật tư, quản lý sản xuất, quản lý kinh doanh và phân  
phối sản phẩm, quản lý dự án, quản lý dịch vụ, quản lý khách hàng, quản lý nhân sự, các  
công cụ dự báo và lập kế hoạch, báo cáo, .v.v. Thêm vào đó, như một đặc điểm rất quan  
trọng mà các giải pháp ERP cung cấp cho các doanh nghiệp, là một hệ thống quản lý với  
quy trình hiện đại theo chuẩn quốc tế, nhằm nâng cao khả năng quản lý điều hành doanh  
nghiệp cho lãnh đạo cũng như tác nghiệp của các nhân viên.  
2
   
1.2 Các thành phn chính ca ERP  
Một hệ thống ERP gồm năm thành phần chính được thể hiện trong hình  
1.  
Quản lý  
nguồn lực  
tài chính  
Quản lý  
chuỗi  
cung ứng  
Lập kế  
hoạch  
sản xuất  
Hệ  
thống  
ERP  
Quản lý  
quan hệ  
khách  
Quản lý  
nhân sự  
Hình 1. Tổng quan hệ thống ERP và các thành phần chính  
a. Quản lý nguồn lực tài chính (FRM-Finance Resource Management)  
Là chức năng giúp doanh nghiệp theo dõi, quản lý được các nguồn lực tài chính, từ  
đó đưa ra được các kế hoạch sản xuất kinh doanh phù hợp với tình hình tài chính của  
doanh nghiệp.  
b. Lập kế hoạch sản xuất (MRP-Manufacturing Resource Planning)  
Đây là chức năng giúp nhà quản lý có thể lập kế hoạch sản xuất kinh doanh trước  
cho doanh nghiệp dựa trên các nguồn lực tài chính, nhân lực…có sẵn nhằm tối ưu hóa các  
nguồn lực này.  
c. Quản lý quan hệ khách hàng (CRM-Customer Relationship Management)  
Là chức năng giúp doanh nghiệp theo dõi, quản lý được thông tin về các đối tác,  
khách hàng từ đó đưa ra những đối sách phù hợp với các đối tác, khách hàng này.  
3
   
d. Quản lý chuỗi cung ứng (SCM-Supply Chain Management)  
Là chức năng giúp doanh nghiệp tham gia vào quá trình mua bán.  
e. Quản lý nhân sự (HRM-Human Resource Management)  
Đây là một chức năng rất quan trọng, đảm bảo sử dụng nguồn nhân lực một cách  
hiệu quả.  
Trong mô hình ta thấy cả năm thành phần được tích hợp trong một hệ thống chung  
là ERP System. Hệ thống ERP có tác dụng điều phối các hoạt động của cả năm thành  
phần, mỗi thành phần có thể tương tác trực tiếp với ERP System hoặc có thể tương tác  
gián tiếp với nhau thông qua một kênh chung là ERP System.  
1.3 Các đặc điểm ca ERP  
Trong bài giới thiệu ERP của FAST [2] đã nêu năm đặc điểm của một hệ ERP do  
Marcelino Tito Torres đưa ra:  
- ERP là một hệ thống tích hợp quản trị sản xuất kinh doanh (Integrated Business  
Operating System). Tích hợp-có nghĩa là mọi công đoạn, mọi người, mọi phòng ban chức  
năng đều được liên kết, cộng tác với nhau trong một quá trình hoạt động sản xuất kinh  
doanh thống nhất.  
- ERP là một hệ thống do con người làm chủ với sự hỗ trợ của máy tính (People  
System Supported by the Computer). Những cán bộ chức năng, nghiệp vụ mới là chính,  
còn phần mềm và máy tính chỉ là hỗ trợ. Người sử dụng phải được đào tạo cẩn thận, tính  
tích cực của từng nhân viên là các yếu tố quyết định.  
- ERP là một hệ thống hoạt động theo quy tắc (Formal System), nghĩa là các hoạt  
động phải tuân theo các quy tắc và các kế hoạch rõ ràng. Kế hoạch sản xuất kinh doanh  
phải được lập ra theo năm, tháng, tuần; hệ thống sẽ không hoạt động khi không có kế  
hoạch; các quy tắc, quy trình xử lý phải được quy định trước.  
- ERP là hệ thống với các tránh nhiệm được xác định rõ (Defined Responsibilities).  
Ai làm việc gì, trách nhiệm ra sao phải được xác định rõ trước.  
- ERP là hệ thống liên kết giữa các phòng ban trong công ty (Communication among  
Departments). Các phòng ban làm việc, trao đổi, cộng tác với nhau chứ không phải mỗi  
phòng ban là một cát cứ.  
4
 
ERP giúp loại bỏ các hệ thống phần mềm riêng lẻ ở các bộ phận trong một doanh  
nghiệp: Tài chính, Nhân sự, Kinh Doanh, Sản xuất, Kho... thay thế tất cả bằng một  
chương trình phần mềm hợp nhất phân chia theo các phân hệ phần mềm khác nhau, tạo  
nên một mối quan hệ thống nhất với nhau. Nhờ vậy kế toán có thể nhìn vào kho để xem  
đơn hàng đã xuất cho khách hàng chưa. Phần mềm ERP rất linh động trong việc cài đặt  
các phân hệ theo yêu cầu của doanh nghiệp. Các doanh nghiệp có thể yêu cầu cài đặt một  
vài phân hệ mà doanh nghiệp cần, các phân hệ còn lại còn lại có thể cài đặt sau mà không  
ảnh hưởng đến hệ thống. ERP còn có chế độ phân quyền người sử dụng linh động ngay  
trên giao diện sử dụng người quản trị. Có chế độ bảo mật an toàn.  
Những lợi ích của doanh nghiệp có được sau khi triển khai ERP:  
- Loại bỏ các sai sót có thể xảy ra khi nhiều người cùng nhập một dữ liệu. Điều này  
có thể hiểu được bởi khi áp dụng ERP thì cơ sở dữ liệu của tất cả các phòng ban trong  
doanh nghiệp là chung, thống nhất với nhau. Việc hai người nhập cùng một dữ liệu nhưng  
lại có sai lệch là không thể bởi các ràng buộc về dữ liệu.  
- Tăng tốc độ dòng công việc. Không cần phải nói nhiều, rõ ràng tốc độ của một  
nhân viên cầm chứng từ giấy chạy từ phòng này sang phòng khác không thể sánh với tốc  
độ của chứng từ điện tử chạy trên mạng máy tính. ERP còn tăng tốc độ dòng công việc  
bằng cách giải quyết các “nút cổ chai”. Giả sử một doanh nghiệp đã trang bị cục bộ được  
các hệ thống phần mềm cho bộ phận kế toán và bán hàng, nhưng bộ phận kho chưa được  
trang bị, thì bộ phận kho lúc này sẽ trở thành một “nút cổ chai” làm chậm lại năng suất  
làm việc chung và bắt các bộ phận khác phải chờ. ERP với tính chất đồng bộ sẽ là công  
cụ để giải quyết các “nút cổ chai” này.  
Ngoài ra, nếu doanh nghiệp cần tính toán với dữ liệu, như từ đơn đặt hàng để tính ra  
khối lượng nguyên vật liệu cần mua, hoặc đưa ra kế hoạch sản xuất tối ưu cho các đơn đặt  
hàng, thì sẽ không có cách nào làm tay cho kịp nếu những tính toán này không được tích  
hợp ngay trong hệ thống quản lý.  
- Dữ liệu tập trung. Lợi ích của việc này rất rõ ràng, thay vì duy trì nhiều CSDL (cơ  
sở dữ liệu) cục bộ với dữ liệu nhiều khi không trùng khớp, doanh nghiệp sẽ có một CSDL  
thống nhất và tập trung. Một ví dụ dễ thấy của CSDL tập trung là cho phép thường xuyên  
đưa ra các báo cáo chính xác và kịp thời cho lãnh đạo, khắc phục tình trạng chung trong  
các doanh nghiệp, nhất là doanh nghiệp lớn và phức tạp như các công ty sản xuất lớn, các  
5
tổng công ty, là chỉ có thể ra được báo cáo tài chính vài lần trong một năm và số liệu  
thường chậm so với thực tế nhiều tuần hoặc thậm chí nhiều tháng.  
Dữ liệu tập trung còn là tiền đề đầu tiên cho việc phân tích các dữ liệu theo nhiều  
góc khác nhau (Data Mining), nhằm đưa ra những báo cáo mang tính trợ giúp quyết định  
kinh doanh.  
- Dễ dàng kiểm soát một CSDL và các quy trình nghiệp vụ tập trung sẽ giúp bạn  
lãnh đạo dễ dàng áp dụng các cơ chế kiểm soát nội bộ. Chức năng “tìm vết” (Audit Track)  
của hệ thống ERP cho phép nhanh chóng tìm ra nguồn gốc những bút toán cần kiểm tra,  
cũng như những nhân viên liên quan đến đường đi của bút toán đó.  
Tuy nhiên việc triển khai một hệ thống ERP cũng có những hạn chế nhất định  
như:  
- Chi phí triển khai ban đầu cao do phải đầu tư về phần cứng và hạ tầng, bản quyền  
phần mềm ERP (với phần mềm ERP nguồn mở thì không cần mất kinh phí cho việc mua  
bản quyền) và kinh phí dịch vụ triển khai. Trong ba cấu phần này thì kinh phí dịch vụ  
triển khai chiếm nhiều nhất.  
- Về thời gian triển khai, khá nhiều dự án ERP bị trễ hạn nghiệm thu do doanh  
nghiệp không tập trung nguồn lực và không lường trước được sự phức tạp khi triển khai  
hệ thống.  
Việc triển khai ban đầu gặp vô vàn khó khăn nhiều khi dẫn đến sự đổ vỡ dự án, đi  
sâu hơn nữa vào một quy trình nghiệp vụ điển hình của ERP thì nó không cho phép ta sửa  
trực tiếp một lỗi nhập sai như các phần mềm kế toán thông thường khác mà nó yêu cầu  
phải nhập vào một phép tính bù trừ so với lỗi sai đó.  
- Về yếu tố con người, sự khó khăn tiên quyết khi áp dụng sơ khai ERP chính là thái  
độ và sự nhìn nhận đúng đắn của lãnh đạo doanh nghiệp, đó là người có ảnh hưởng rất lớn  
đến hiệu quả của dự án này, kế đến là việc nhận thức chưa đúng mức về ERP của cán bộ  
nhân viên khác, trình độ tin học của mỗi người là khác nhau, sự chấp nhận thay đổi so với  
cái cũ của mỗi người là khác nhau.  
6
Chương 2: Phân hệ qun lý hợp đồng trong ERP và các yêu  
ca bài toán qun lý hợp đồng Viettel Technology  
Quản lý hợp đồng là một phân hệ nằm trong thành phần quản lý chuỗi cung ứng của  
hệ thống ERP. Quản lý hợp đồng là một phần quan trọng trong tổng thể của hệ thống  
ERP, nó có chức năng như là xương sống đảm bảo cho mọi hoạt động sản xuất kinh  
doanh của một doanh nghiệp.  
2.1 Nhu cầu và ý nghĩa của vic qun lý hợp đồng  
Trong hoạt động sản xuất kinh doanh, mỗi một doanh nghiệp đều thường xuyên phải  
thực hiện các hoạt động thương mại dưới dạng các hợp đồng mua và bán. Các hợp đồng  
mua/bán thường được thực hiện bởi một đơn vị nhưng lại có liên quan đến rất nhiều  
phòng ban (tài chính, nhân sự, kế hoạch, kho…), và nhiều khâu quản lý trong doanh  
nghiệp (sản xuất, bán hàng, quan hệ khách hàng…). Vì vậy, trong khi thực hiện hợp đồng  
sẽ có thể nảy sinh các vấn đề như: sự không thống nhất giữa các phòng ban về tiến độ  
thực hiện, thanh toán hợp đồng…; nảy sinh mâu thuẫn với khách hàng, đối tác trong việc  
thực thi hợp đồng… Bài toán về quản lý các hợp đồng mua/bán được đặt ra.  
Về mặt ý nghĩa, quản lý hợp đồng nhằm mục đích đảm bảo quá trình thực hiện hợp  
đồng được diễn ra thống nhất, đảm bảo hợp đồng được thực hiện đúng như đã ký kết,  
giảm thiểu các thiệt hại trong trường hợp phát sinh tranh chấp và có cơ sở để buộc các  
bên thực hiện đúng trách nhiệm của mình trong hợp đồng.  
Hơn nữa, việc quản lý tốt được các hợp đồng mua/bán, sẽ có tác động tích cực tới  
các khâu quản lý khác trong doanh nghiệp như hoạt động sản xuất, kinh doanh, tài chính,  
quan hệ khách hàng…  
2.2 Yêu cu bài toán vqun lý hợp đồng Công ty Viettel Technology  
- Công ty cổ phần công nghệ Viettel (Viettel Technology) là một công ty con trực  
thuộc Tập đoàn viễn thông quân đội Viettel, với các lĩnh vực hoạt động cụ thể là:  
+ Cung cấp các giải pháp tích hợp hệ thống ICT (Information and communication  
technologies) cho Tập đoàn Viettel và các doanh nghiệp bên ngoài theo hướng giải pháp  
doanh nghiệp.  
7
     
+ Tư vấn thiết kế và giải pháp tự động hoá toà nhà.  
+ Quản lý dịch vụ thuê (Managed Service).  
+ Cung cấp các dịch vụ tư vấn về tối ưu hóa mạng lưới, quy hoạch mạng lưới và  
công nghệ.  
+ Phát triển và cung cấp phần mềm.  
+ Sản xuất và cung cấp thiết bị phần cứng.  
- Là một đơn vị trực tiếp sản xuất kinh doanh trong lĩnh vực công nghệ, Viettel  
Technology cũng giống như các doanh nghiệp khác, hoạt động sản xuất kinh doanh luôn  
gắn liền với các hoạt động mua và bán. Vì vậy, bên cạnh việc quản lý các hoạt động sản  
xuất, kinh doanh, tài chính…công ty cũng thấy được sự cần thiết của việc quản lý hợp  
đồng.  
Theo tài liệu đặc tả yêu cầu người dùng dự án ERP-VTT [4] các yêu cầu chức năng  
của bài toán về quản lý hợp đồng của công ty được khảo sát và mô tả như dưới đây:  
2.2.1 Yêu cu chức năng quản lý hợp đồng mua  
-
:
Thông tin chung vhợp đồng  
Thông tin vtiến độ thc hin hợp đồng  
Thông tin vtiến độ thanh toán  
- Các thông tin quản lý chung về hợp đồng:  
Theo ttrình  
Shiu hợp đồng  
Ngày ký hợp đồng  
Đối tác cung cp. Theo dng danh mục, đối tác có các thông tin sau:  
o Tên  
o Địa chỉ  
o Số điện thoi  
o Mã sthuế  
o Tài khon  
o Mti  
8
 
o Đại din  
o Chc vụ  
Mt hàng cung cp  
o Sthtự  
o Mô tthiết bị  
o Đơn giá (VNĐ)  
o Số lượng  
o Thành tiền (VNĐ)  
o Bo hành (Tháng)  
Trách nhim ca các bên  
o Trách nhim bên A  
o Trách nhim bên B  
Ngim thu và bàn giao hàng hóa  
o Thi gian cung cp và bàn giao  
o Địa điểm bàn giao  
o Nghim thu sn phm  
Tng giá trhợp đồng và phương thức thanh toán  
o Tng giá trhợp đồng  
o Đơn vị tin  
o Hình thc hợp đồng  
o Hình thc thanh toán  
. Thanh toán L/C (Letter of Credit)  
. Thanh toán trc tiếp  
Tệp tin đính kèm  
Ghi chú  
- Các thông tin về tiến độ thực hiện hợp đồng:  
Biên bn bàn giao và nghim thu  
o Sbiên bn  
o Theo hợp đồng số  
o Ngày bàn giao và nghim thu  
o Đại din bên A  
. Tên  
9
. Chc vụ  
o Đại din bên B  
. Tên  
. Chc vụ  
o Ni dung bàn giao và nghim thu  
. Sthtự  
. Mô tsn phm  
. Số lượng  
. Smáy  
o Chất lượng  
o Kết lun  
Biên bn thanh lý  
o Số  
o Theo hợp đồng số  
o Theo biên bn nghim thu số  
o Theo hóa đơn số  
o Ngày  
o Giá trị  
o Khối lượng  
- Các thông tin vtiến độ thanh toán:  
Tiến độ thanh toán  
o Giai đoạn  
o Thi gian dkiến  
o Stin dkiến  
o Thi gian phi trả  
o Stin phi trả  
o Thời gian đã trả  
o Stiền đã trả  
o Số hóa đơn chứng từ  
o Stin còn phi trả  
o Ghi chú  
10  
2.2.2 Yêu cu chức năng quản lý hợp đồng bán  
, bao gồm cả:  
-
Thông tin chung vhợp đồng  
Thông tin vtiến độ thc hin hợp đồng  
Thông tin vtiến độ thanh toán  
- Các thông tin quản lý chung về hợp đồng:  
Theo ttrình  
Mã hợp đồng  
Shiu hợp đồng  
Loi hợp đồng  
Ngày ký hợp đồng  
Thông tin về đơn vị thc hin:  
Đơn vị thc hin  
Người phụ trách chung (tên, email, điện thoi)  
Người phtrách trc tiếp (tên, email, điện thoi)  
Thông tin vKhách hàng  
Tên khách hàng  
Người phụ trách (tên, email, điện thoi)  
Giá trhợp đồng  
Kế hoch thc hin (bao gm nhiều giai đoạn và hin thchi tiết kết quca  
từng giai đoạn)  
Giai đoạn  
Kết quchi tiết  
Tp tin đính kèm  
Ghi chú  
- Các thông tin về tiến độ thực hiện hợp đồng:  
Biên bn nghim thu  
o Ngày nghim thu  
o Khối lượng nghim thu  
11  
 
o Giá trnghim thu (Giá trị này được cng dn (lukế) Giá trca  
trường. Giá trthc hin trong báo cáo)  
Hóa đơn  
o Ngày xut  
o Giá tr(Giá trị này được cng dn Giá trxuất hóa đơn trong báo cáo)  
o Số lượng  
Biên bn quyết toán và thanh lý  
o Ngày xut  
o Giá trị  
o Khối lượng  
Bo lãnh thc hin hợp đồng  
o Giá trbo lãnh  
o Thi hn bo lãnh: Từ ngày ….đến ngày….  
o Giá trký quỹ  
o Ngân hàng  
o Tài khon ký quỹ  
Bo lãnh bo hành  
o Giá trbo hành  
o Thi hn bo hành: Từ ngày ….đến ngày….  
o Giá trký quỹ  
o Ngân hàng  
o Tài khon ký quỹ  
- Các thông tin về tiến độ thanh toán:  
Tình hình thanh toán: có hai kiu thanh toán  
o Thanh toán tm ng (Ngày thanh toán, Ntm ng, Giá trthanh toán)  
o Thanh toán theo tiến độ (Ngày thanh toán, Nthanh toán theo tiến độ, Giá  
trthanh toán, Cho biên bn nghim thu nào)  
12  
Chương 3: Kiến trúc hthng phn mm ngun mERP  
Adempiere  
Là mt công ty chuyên vcông ngh, Viettel Technology đã thấy rõ được tm quan  
trng ca vic ng dng ERP trong doanh nghip, gii pháp ERP phù hợp được công ty  
la chn là hngun mAdempiere.  
3.1 Tng quan vadempiere  
ADempiere là mt phn mm mã ngun mở, được phát trin trên nn ngun mở  
khác Compiere. Kiến trúc ca hthng ADempiere da trên nn tng Compiere  
Application Dictionary hay AD Engine, nn tng này phc vmô hình ba lp Model-  
View-Logic.  
Mô hình tng quan vhthống Adempiere được thhiện như hình 2.  
Hình 2. Mô hình kiến trúc hệ thống Adempiere [8]  
13  
     
Model Layer  
Tại lớp Model, AD Engine quản lý tất cả các vấn đề liên quan đến các bảng, các  
trường (như việc tạo mới, cập nhật, xóa) trong Database, các kiểu dữ liệu cũng như các  
ràng buộc, xác thực của các trường này. Nhiệm vụ của AD Engine là chuẩn bị dữ liệu cho  
lớp View để hiển thị ra màn hình chương trình.  
Tất cả các bảng và các trường được xây dựng thông qua cửa sổ AD Table &  
Column. Trong Adempiere, một trường có thể được tự động cập nhật thông tin từ các  
trường khác thông qua các Callout (việc xây dựng Callout cho các trường được thực hiện  
bằng cách mở rộng từ lớp CalloutEngine.java).  
View layer  
Lớp View có chức năng chủ yếu là hiển thị các trường thông tin do lớp Model cung  
cấp ra màn hình chương trình. Bên cạnh đó, lớp view cũng cung cấp sẵn những chức năng  
cơ bản để người dùng thao tác với dữ liệu (thêm, sửa, xóa) hay hỗ trợ việc tìm kiếm các  
bản ghi.  
Logic layer  
Lp Logic thc hin các tác vcó tính logic cho dliu, các tác vmang tính  
nghip v, các tác vliên quan đến tài chính...  
3.2 Kiến trúc cơ bản ca mt ng dng trên Adempiere  
Theo báo cáo của Phạm Anh Tuấn [7] kiến trúc cơ bản của một ứng dụng trên  
Adempiere gồm các thành phần:  
- Lp PO  
- Docaction  
- Window  
- Proccess  
- Workflow  
3.2.1 Lp PO  
Lớp PO là khái niệm thuộc tầng Model chứa trong gói  
Base/src/org/compiere/model/PO.java  
14  
   
Là lớp quan trọng trong hệ thống, được ánh xạ vào tất cả các bảng dữ liệu trong cơ  
sở dữ liệu dựa vào hai lớp con M, X và Interface I thông qua bảng AD_Table.  
Lớp PO: định nghĩa hầu hết các thtc cn thiết để thao tác vi mt bng dữ  
liệu trong cơ sở dliệu như save(), delete()...  
Interface I: Khai báo các biến để thao tác vi tên cột, các hàm get, set để ly  
hoc thiết đặt giá trcho mt ct. Interface I cần được implement bi lp X.  
Lp X: là lp extends tlp PO và implement interface I. Trong lp X scài  
đặt cho các phương thức được khai báo trong interface I (interface I và lp X có  
thể được sinh ra bng mt công ccó sn ca hthng Adempiere. Không cn  
phi viết hai lp này).  
Lp M: là lp extends lp X. Khi các xlý ca lớp X là chưa đáp ứng đưc các  
thao tác yêu cu cn thiết, ta cn phi to thêm lp M vi quy tắc đặt tên nht  
định. (Quy tắc đặt tên lp M: Vi các bng có tin tlà mt hoc hai chcái thì  
bcác chcái tin tnày và ký tự “_” , thay vào đó là chữ M.  
Ví d: bng AD_Table --> MTable. Vi bng có tin tlà ba chcái trlên thi  
bcác ký tự “_” và thêm M vào phía trước. VD: VTT_Abc--> MVTTAbc). Khi  
to lp M, có bn hàm thông dng nhất mà thường hay được override (tlp PO)  
là các hàm:  
o BeforeSave(). Hàm này sẽ được gọi trước khi thc hin hàm ghi dliu  
Save(). Sdng BeforeSave() cho mục đích thay đổi, kiểm tra thông tin trước  
khi ghi vào cơ sở dliu. Ví dụ: Trong CSDL có ba trường là “Đơn giá”,  
“Tổng tiền”, “Số lượng”, nhưng trong cửa schhin thị hai trường là “Đơn  
giá”, “Số lượng”, thì trước khi Save() viết BeforeSave() để tính giá trcho  
“Tổng tiền”.  
o AfterSave(). Hàm này thực thi sau khi đã thực hin Save(). Sdng  
AfterSave() nếu dliệu khi ghi vào cơ sở dliệu tác động đến các thành phn  
khác ca hthng. Ví dụ như khi lưu dữ liu các dòng chi tiết ca mt hóa  
đơn, thì cần cp nht tng tin phn tng hp.  
o BeforeDelete(). Tương tự BeforeSave(), BeforeDelete() thực thi trước khi  
thc sxóa dliệu trong cơ sở dliu. Có thể dùng hàm này để kim tra các  
ràng buộc, xóa trước các trường trong các bng khác có ràng buc cha, con vi  
bảng đang thực hin xóa...  
15  
o AfterDelete(). Hàm này thc thi sau khi xóa dliệu trên cơ sở dliu.  
*Chú ý:  
- Việc ánh xạ các lớp M, X, PO vào các bảng trong cơ sở dữ liệu được thực hiện  
trong phương thức getClass của lớp MTable.  
- Khi một bảng trong DataBase không được tạo lớp X, M và Interface I tương ứng  
thì hệ thống sẽ tự động gọi một lớp default để đảm bảo việc thực hiện các thao tác tối  
thiểu như thêm, sửa, xóa... Lớp này là GenericPO.java (Chúng ta không cần phải quan  
tâm đến lớp này).  
Ví dụ: Với bảng M_InOut trong DataBase  
Bảng này sẽ được ánh xạ với các lớp và Interface sau để thao tác trong hệ thống  
(Các lớp này đều có trong gói base/org/compiere/model):  
Interface : I_M_InOut.  
public interface I_M_InOut  
Class: X_M_InOut  
public class X_M_InOut extends PO implements I_M_InOut  
Class: MInOut extends PO  
public class MInOut extends X_M_InOut implements DocAction  
Trong lớp MInOut override hai hàm: BeforeSave() và AfterSave() để làm các thao  
tác xử lý trước và sau khi ghi dữ liệu vào cơ sở dữ liệu.  
3.2.2 DocAction  
DocAction là khái niệm thuộc tầng logic chứa trong gói  
base/org/compiere/proccess/DocAction.java  
DocAction là một interface, trong này định nghĩa các trạng thái và hành động cho  
một document như phụ lục 01.  
Khi thao tác với lớp PO, thì là đề cập đến các vấn đề liên quan đến tính toán dữ liệu,  
lưu trữ... Nhưng khi làm với DocAction là liên quan đến quy trình. Như các giấy tờ sẽ  
16  
 
được lưu chuyển từ phòng ban này sang phòng ban khác như thế nào, trạng thái của một  
document là như thế nào...  
Để thao tác với DocAction thì phải implement nó.  
Ví dụ: Với lớp MInOut:  
public class MInOut extends X_M_InOut implements DocAction  
Đồng thời bảng trong CSDL cũng phải có các trường sau:  
- DocAction  
- DocStatus  
- Proccessed  
- Proccessing.  
- C_Doctype_ID  
- Posted (Scần trường này nếu liên quan đến hoch toán).  
DocAction cần được kích hoạt bằng nút nhấn. Sau khi kích hoạt sẽ chạy hàm  
processIt() trong lớp M tương ứng. (Với bảng M_InOut thì là hàm trong lớp MInOut).  
Hai hàm được implement đáng chú ý nhất là: prepareIt() và completeIt():  
- Hàm prepareIt() thc hin tt ccác yêu cu, các tác vcn thiết trước khi  
document được thc hin quá trình complete. Hàm prepareIt() có thể được gi nhiu ln  
cho đến khi hàm completeIt() thc thi.  
- Hàm completeIt() thc hiện quá trình “complete document”. Sau khi thực hin,  
trng thái ca document schuyển thành “complete” và hành động tiếp theo sẽ là “close”.  
- Ngoài ra, hàm reActivateIT() là hàm có chức năng làm ngược lại những gì hai hàm  
completeIt() và prepareIt() đã làm.  
Một vấn đề quan trọng khác trong quy trình là liên quan đến hoạch toán. Khi người  
dùng post dữ liệu để hoạch toán. Gói base/src/org/compiere/acct chứa các lớp sẽ xử lý về  
vấn đề hoạch toán.  
3.2.3 Window  
Window là khái niệm thuộc tầng View.  
17  
 
Window là khái niệm phổ biến nhất trong Adempiere. Window là nơi người dùng  
thao tác với dữ liệu, đồng thời cũng là nơi người phát triển hệ thống có thể làm việc để  
trực tiếp mở rộng hệ thống. Tất cả các window đểu có một giao diện đồng nhất, và giao  
diện này được tạo ra trong quá trình chạy ứng dụng (Runtime). Một window sẽ có giao  
diện tương tự như sau:  
Hình 3. “Window, Tab & Field” của Adempiere  
Cấu trúc một window:  
- Phn trên cùng là các menu.  
- Tiếp theo là các button thc hin các thao tác thông dng: New, delete, search, các  
nút dch chuyn qua các record, close...  
- Phn bên trái là các tab, mt window có thcó nhiu tab. Mỗi tab tương ứng vi  
mt bảng trong cơ sở dliu.  
18  
 
- Phía bên phi là chi tiết trong mt tab. Gm các bn ghi (mi bản ghi tương ứng  
một dòng trong cơ sở dliu).  
- Mi bn ghi gm nhiu field.  
- Mi field là mt ct dliệu trong cơ sở dliệu. Tuy nhiên trong cơ sở dliu, mt  
bn ghi có thcó nhiu cột, nhưng trên window có thể chỉ được cấu hình để hin thmt  
sct.  
- Có thchuyn tvic hin thnhiu dòng (grid) thành hin thchi tiết tng bn ghi  
bng cách n nút Grid Toggle.  
Các bước tạo mới một window:  
- Dùng window Table&Column để to mi mt bảng trong cơ sở dliu.  
Hình 4. “Table & Column” của Adempiere  
- Chú ý: Tt ccác bng (table) được tạo trong cơ sở dliu ca hthng  
Adempiere đều phi có các cột được định nghĩa như phlc 02 (Chúng ta có thclick  
19  
 
nút “Copy column from Table” rồi chọn table khác để ly toàn bcác cột trong table đó.  
VD table: Temp_temp).  
- Sau khi to mi bng, sdụng window “Window, Tab & Field” để to mi  
window.  
- Trong tab “Tab”, tạo mi Tab và trTab này vào Table mi to.  
- Sau đó chọn “Create Field” để to các Field tbảng trong cơ sở dliu và chn  
các Field sẽ được hin thtrên màn hình.  
- Chú ý: Mt bng có thcó nhiu tab. Một tab tương ứng vi mt bảng trong cơ sở  
dliu.  
- Sau khi to Window, sdụng window “Menu” để to menu trti window mi  
to.  
Hình 5. Tạo Menu của Adempiere  
Các chú ý khi tạo window:  
20  
 

Tải về để xem bản đầy đủ

pdf 67 trang yennguyen 04/05/2025 120
Bạn đang xem 30 trang mẫu của tài liệu "Khóa luận Ứng dụng ERP Adempiere trong quản lý hợp đồng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfkhoa_luan_ung_dung_erp_adempiere_trong_quan_ly_hop_dong.pdf