82
tailieuquantrihethongerporacle-160506072133.DOC PERP/DO030 PYTHIS TÀI LIỆU QUẢN TRỊ HỆ THỐNG MAINTAIN SYSTEM (LINUX) HỆ THỐNG THÔNG TIN QUẢN LÝ DOANH NGHIỆP – PERP PERP SOLUTIONS Page 1 of 82

Tai lieu quan tri he thong erp oracle

Embed Size (px)

Citation preview

Page 1: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO030PYTHIS

TÀI LIỆU QUẢN TRỊ HỆ THỐNG

MAINTAIN SYSTEM (LINUX)

HỆ THỐNG THÔNG TIN

QUẢN LÝ DOANH NGHIỆP – PERP

PERP SOLUTIONS Page 1 of 82

Page 2: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO030PYTHIS

Giới thiệu\

Đối tượng sử dụng

Tài liệu này biên soạn nhằm mục đích hỗ trợ người quản trị hệ thống trong việc cài đặt, cấu hình, bảo trì hệ thống.

Đối tượng sử dụng của tài liệu chính là người quản trị hệ thống của khách hàng, và các tư vấn triển khai.

Về cấu trúc tài liệu chia thành ba phần chính

Phần 1 – Cài đặt, cấu hình cơ sở dữ liệu

Phần 2 – Cài đặt, cấu hình Oracle Form Reports Services

Phần 3 – Cài đặt ứng dụng

Phần 4 – Sao lưu và phục hồi

Phần 5 – Cài đặt, cấu hình BIPublisher

PERP SOLUTIONS Page 2 of 82

Page 3: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Phần 1 – Cài đặt database

Mục đích

Phần này trình bày các bước chuẩn bị, tiến hành, và cấu hình cài đặt Oracle Database sử dụng trình cài đặt Oracle Universal Installer (OUI). Đây là công cụ giao diện người sử dụng (GUI) cho phép xem phần mềm Oracle đã được cài trên máy, cài đặt mới phần mềm Oracle, và gỡ bỏ khi không còn sử dụng.

Phần này bao gồm hai phần chính

Chuẩn bị trước

Tiến hành cài đặt

Chuẩn bị trước

Yêu cầu phần cứng

Hệ thống cần phải có cấu hình phần cứng tối thiểu sau:

• RAM tối thiếu 1024 MB

• SWAP

Swap = 1.5 x RAM nếu RAM ~ 1025 ÷ 2048 MB

Swap = RAM nếu RAM ~ 2049 ÷ 8192 MB

Swap = 0.75 x RAM nếu RAM > 8193

• /tmp >= 400MB

• Dung lượng ổ cứng 1.5 GB ÷ 3.5 GB phụ thuộc vào kiểu cài đặt

Tiến hành kiểm tra các yêu cầu.

Mở một cửa sổ Terminal (click chuột phải trên màn hình Desktop, chọn Open Terminal)

PERP SOLUTIONS Page 3 of 82

Page 4: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Chú ý: Tất cả các bước trong phần chuẩn bị trước khi cài đặt này phải được thực hiện quyền của user root.

Sau khi mở cửa sổ Termial ta đăng nhập vào user root bằng lệnh su

[oracle@perp-center] $ su – root

Password:

[root@perp-center~]#

Ta để ý thấy dưới đặc quyền user root, dấu nhắc con trỏ là #

Xem dung lượng RAM

[root@perp-center~]# grep MemTotal /proc/meminfo

MemTotal: 2066484 kb

[root@perp-center~]#

Xem độ lớn swap

[root@perp-center~]# grep SwapTotal /proc/meminfo

SwapTotal: 5116692 kb

[root@perp-center~]#

Yêu cầu phần mềm

• Hệ điều hành+ Red Hat Enterprise Linux 3.0+ Red Hat Enterprise Linux 4.0+ Red Hat Enterprise Linux 5.0

• Kernal Version+ Red Hat Enterprise Linux 3.0: 2.4.21-27.EL+ Red Hat Enterprise Linux 4.0: 2.6.9-5.0.5.EL+ Red Hat Enterprise Linux 5.0: 2.6.18-164.EL5

• Packages+ make-3.79.1+ gcc-3.2.3-34+ glibc-2.3.2-95.20+ compat-db-4.0.14-5+ compat-gcc-7.3-2.96.128+ compat-gcc-c++-7.3-2.96.128+ compat-libstdc++-7.3-2.96.128+ compat-libstdc++-devel-7.3-2.96.128+ openmotif21-2.1.30-8+ setarch-1.3-1

Tiến hành kiểm tra hệ thống có đáp ứng yêu cầu không

Xem nhà phân phối và phiên bản của Linux OS

rname -a

PERP SOLUTIONS Page 4 of 82

Page 5: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Xem Thông tin về Kernel

Kiểm tra gói package_name đã được cài đặt chưa

# rpm –qa package_name

Ví dụ để kiểm tra gới make-3.79.1, từ dấu nhắc trong cửa sổ terminal

Như ta thấy kết quả nhận được là một danh sách các gói có tên chứa chuỗi “make” trong đó có make-3.79.1-17 – điều này chứng tỏ gói này đã được cài đặt.

Trong trường hợp một gói nào đó chưa được cài đặt (kết quả truy vấn không có) thì ta phải cài đặt thêm gói đó. Cách cài đặt một gói package_name:

Đăng nhập cửa sổ termial với đặc quyền user root

# cd duong_dan_thu_muc_chua_file_nguon_goi

# rpm –i package_name

Thiết lập cấu hình tên máy chủ

-Thiết lập host gắn với IP Address

$su - root

Password:****

#vi /etc/hosts

Chuyển sang chế độ insert bấm phím i

Với máy chủ đã cài đặt tên là perp-center và id=192.168.0.149 Thêm dòng:

172.0.0.1 localhost.pythis.com localhost

192.168.0.149 perp-center.pythis.com perp-center

Bấm ESC, và thực hiện lệnh ghi lại

:wq

PERP SOLUTIONS Page 5 of 82

Page 6: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Tạo user và group user hệ điều hành

1. Tạo Oracle Inventory Group

# /usr/sbin/groupadd oinstall

2. Tạo OSDBA Group

# /usr/sbin/groupadd dba

3. Tạo OSOPER GROUP (optional)

# /usr/sbin/groupadd oper

4. Tạo OS user “oracle”

# /usr/sbin/useradd –g oinstall –G dba [,oper] oracle

Trong trường hợp user oracle đã tồn tại, hiệu lại thuộc tính user

# /usr/sbin/usermod –g oinstall –G dba[,open] oracle

5. Thiết lập password cho user “oracle”

Passwd oracle

6. Kiểm tra sự tồn tại của user nobody

# id nobody

Trong trường hợp nobody chưa được tạo, tiến hành tạo user nobody như lệnh sau:

# /usr/sbin/useradd nobody

Cấu hình các tham số nhân hệ điều hành (Kernel)

Hệ thống cần phải có cấu hình phần cứng tối thiểu sau:

Dùng trình soản thảo văn bản bất kỳ (vim), tạo mới hoặc hiệu chỉnh (nếu đã có) file /etc/sysctl.conf, them hoặc hiệu chỉnh các dòng dưới đây:

kernel.shmall = 2097152

kernel.shmmax = 2147483648 =4G =4*1024*1024

kernel.shmmni = 4096

kernel.sem = 256 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

rmem_default = 262144

rmem_max = 262144

wmem_default = 262144

PERP SOLUTIONS Page 6 of 82

Page 7: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

wmem_max = 262144

Ví dụ, ta dùng trình soạn thảo vim để làm

Sau khi nhập lệnh trên và gõ phím enter, trình vim sẽ mở file sysctl.conf (mặc định trong chế độ đọc)

Dùng phím mũi tên lên (), xuống () hoặc phím “j”, “k” để

Trong trường hợp file sysctl.conf không tồn tại những dòng trên hoặc có nhưng chưa đúng, ta thực hiện lệnh “i” (chỉ cần gõ phím i) để thêm mới hoặc chỉnh sửa lại những dòng trên cho đúng. (trong trường hợp chưa có thì nên thêm vào cuối file).

Sau khi hoàn thành nội dung file trong như hình dưới, lúc này ta nhấn phím “ESC” rồi nhập lệnh “:wq” (lệnh không có dấu nháy kép “ ) để ghi nhận thay đổi và thoát khỏi trình vim.

Chú ý:

1. Nếu ta không chắc chắn về nhứng gì đã chỉnh sửa file khi dùng vim, ta có thể thoát khỏi vim mà không ghi nhận thay đổi bằng lệnh “:q!”, sau đó mở file và thực hiện lại.

2.T rong giao diện đồ họa GUI ta có thể sử dụng trình soạn thảo khác (chẳng hạn như gedit) để thực hiện bước này.

Khởi động lại hệ thống

sysctl -p

$ reboot

Thiết lập Shell Limits cho user oracle

Dùng trình soạn thảo văn bản them những dòng sau vào file /etc/security/limits.conf

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

PERP SOLUTIONS Page 7 of 82

Page 8: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Hiệu chỉnh hoặc thêm (nếu chưa có) dòng sau vào file /etc/pam.d/login

session required /lib/security/pam_limits.so

Thiết lập shell default cho user oracle bằng cách them các dòng sau vào file /etc/profile

if [ $USER = "oracle" ]; then

if [ $SHELL = "/bin/ksh" ]; then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi

Chỉ định thư mục cài đặt (tùy chọn)

/perp/orasoft/product/10.2.0/db10gr2/

Cấu hình môi trường người sử dụng

Hiệu chỉnh lại umask trong file shell startup (/home/oracle/.bask_profile)

- Mở một cửa sổ terminal mới

- Thực hiện lệnh

$ cd ~

- Dùng vim them mới hoặc hiệu chỉnh (trong trường hợp đã có) dòng sau:

Umask 022

Thiết lập biến môi trường DISPLAY trong trường hợp không thực hiện việc cài đặt tại máy chủ (mà thực hiện từ một máy tram remote vào máy chủ).

Dùng lệnh

$ DISPLAY=local_host:0.0; export DISPLAY

Vncserver - 1 , 2 ,3

DISPLAY=192.168.0.215:1.0 export …..

xclock

Ở đây, local_host là ip hoặc hostname của máy trạm

Ví dụ:

[oracle@perp-center~]$ DISPLAY=10.0.0.10:0.0; export DISPLAY

PERP SOLUTIONS Page 8 of 82

Page 9: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Tiến hành cài đặt

Ở đây ta giả sử bộ cài ORACLE DATABASE 10g Release 2 đặt trong thư mục /perp/setup/DB10gR2_Linux

Chú ý: Thực hiện việc cài đặt này phải được thực hiện dưới đặc quyền user oracle.

Mở một cửa sổ terminal.

[oracle@perp-center~]$ cd /perp/setup/DB10gR2_Linux/

[oracle@perp-center~]$ll

[oracle@perp-center~]$chmod –R 775 *

[oracle@perp-center DB10gR2_Linux]$ ./runInstaller

Tiếp tục thực hiện theo các bước sau:

Bước 1 – Chọn phương thức cài đặt

Lựa chọn Advanced Installation

PERP SOLUTIONS Page 9 of 82

Page 10: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Bước 2 – Chỉ định Inventory Directory và Credentials

Bước 3 – Chọn kiểu cài đặt

Bước 4 – Chỉ định Oracle và thư mục cài đặt

Tên home: OraDb10g_home

Thư mục cài đặt: /perp/orasoft/product/10.2.0/db10gr2

PERP SOLUTIONS Page 10 of 82

Page 11: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Bước 5 – Trình cài đặt kiểm tra các yêu cầu cần thiết

Bước này, hệ thống tiến hành kiểm tra các yêu cầu trước khi cài đặt. Nếu một trong những yêu cầu đặt ra không thỏa mãn thì bước này trình cài đặt sẽ có thông điệp đưa ra yêu cầu đáp ứng tùy vào mức độ.

Bước 6 – Chọn lựa cấu hình cài đặt

Lựa chọn tạo database luôn hay chỉ tạo phần mềm? Chọn tạo luôn database.

PERP SOLUTIONS Page 11 of 82

Page 12: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Bước 7 – Chọn kiểu cơ sở dữ liệu cần tạo

Bước 8 – Định tên và chọn bộ ký tự (character set) cho database

Database Naming

Global Database Name: Nhập envdb.enviet.com

SID: Nhập perpdb

Database Character Set

PERP SOLUTIONS Page 12 of 82

Page 13: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Chọn Unicode standard UTF-8 AL32UTF8

Database Examples

Đánh dấu Create database …

Bước 9 – Tùy chọn trình quản lý cơ sở dữ liệu

Mỗi hệ quản trị cơ sở dữ liệu database 10g có thể được quản lý tập trung bằng trình quản lý Oracle Enterprise Manager 10g Grid Control hay Oracle Enterprise Manager 10g Database Control.

Ở đây, ta dùng trình quản lý Database Control.

PERP SOLUTIONS Page 13 of 82

Page 14: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Bước 10 – Chỉ định cơ chế và nơi lưu trữ cơ sở dữ liệu

Chọn File System: Sử dụng cơ chế lưu trữ cơ sở dữ liệu theo hệ thống file; và chỉ định vị trí nơi lưu trữ database file là: /perp/orasoft/oradata/

Bước 11– Lựa chọn cơ chế sao lưu và phục hồi

Chọn Do not enable Automated backups – Không cho phép cơ chế sao lưu tự động. Việc sao lưu, phục hồi tự động này sẽ được cấu hình sau.

PERP SOLUTIONS Page 14 of 82

Page 15: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Bước 12 – Thiết lập mật khẩu cho các giản đồ (schema) cơ sở dữ liệu

Có thể lựa chọn thiết lập mật khẩu cho từng user riêng hoặc tất cả các user có cùng mật khẩu.

Bước 13 – Tổng kết các thành phần được lựa chọn cài đặt

Tại bước này trình cài đặt đưa ra danh sách các thành phần đã lựa chọn sẽ được cài đặt trên hệ thống.

PERP SOLUTIONS Page 15 of 82

Page 16: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Bước 14– Tiến trình cài đặt

Trạng thái tiến trình cài đặt các thành phần được lựa chọn.

Bước 15 – Tạo và cấu hình cơ sở dữ liệu

PERP SOLUTIONS Page 16 of 82

Page 17: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Bước 16 – Thực thi kịch bản cấu hình

Khi trình cài đặt đưa ra cửa sổ thong điệp như hình dưới ta thực hiện

1. Mở một cửa sổ Terminal

2. Đăng nhập với đặc quyền user root

3. Chạy scipts trong đường dẫn được cung cấp trong cửa sổ

Ví dụ các bước thực hiện:

$ su – root

$ password

# cd /perp/orasoft/oradb/

# ./root.sh

Sau khi script thực hiện xong, ta quay trở lại cửa sổ trình cài đặt và click nút “OK” để tiếp tục.

PERP SOLUTIONS Page 17 of 82

Page 18: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Bước 17 – Kết thúc quá trình cài đặt

Sau khi thực hiện xong việc cài đặt và cấu hình database, trình cài đặt sẽ chuyển đến màn hình dưới. Click vào nút “Exit” để kết thúc quá trình cài đặt.

PERP SOLUTIONS Page 18 of 82

Page 19: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Phần 2 – Cài đặt và cấu hình Form Report Services

Mục đích

Phần này trình các bước tiến hành cài đặt và cấu hình Oracle Forms Reports Serives.

Phần này bao gồm các phần

Chuẩn bị trước

Tiến hành cài đạt

Cấu hình

Chuẩn bị trước

Yêu cầu phần cứng

Hệ thống cần phải có cấu hình phần cứng tối thiểu sau:

• RAM tối thiếu 1024 MBYêu cầu phần mềm

Nếu cài IAS 10g thêm vào

Tiến hành cài đặt

Mở một cửa sổ Terminal mới đăng nhập với đặc quyền user oracle, thiết lập biến môi trường LD_ASSUME_KERNEL và tiến hành chạy trình cài đặt:

PERP SOLUTIONS Page 19 of 82

Page 20: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Việc đầu tiên trình cài đặt Oracle Universal Installer (OUI) làm là kiểm tra các yêu cầu phần cứng phần mềm cài đặt trên máy có đáp ứng yêu cầu cài đặt không? Hình trên là kết quả kiểm tra và dòng cuối cùng OUI có thong báo là có một số gói phần mềm cài đặt trên máy có phiên bản không đúng với yêu cầu cài đặt và hỏi ta có tiếp tục cài đặt không? Thông báo lỗi này có là do ta dung OS RedHat phiên bản 4, phiên bản này các gói trên được cập nhật phiên bản mới hơn. Vì thế ở đây ta vẫn tiếp tục cài đặt: - nhập y để tiếp tục.

Welcome

Chương trình hiển thị phần cài đặt form&report service

Bấm Next để thực hiện bước tiếp theo.

Analyzing dependencies

PERP SOLUTIONS Page 20 of 82

Page 21: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Lựa chọn các ngôn ngữ sử dụng

Ở đây ta chọn ngôn ngữ là English.

Chỉ định Instance Name và mật khẩu cho user ias_admin

Tất cả các instance của Oracle Application Server Forms and Reports Services được cài đặt trên một máy phải có một tên duy nhât.

Mỗi instance có một mật khẩu, mật khẩu này mặc định có ít nhất 5 ký tự, trong đó phải có một chữ số.

PERP SOLUTIONS Page 21 of 82

Page 22: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Tên của user administrator là: ias_admin

Provide Outgoing Mail Server Infomation

Summary

PERP SOLUTIONS Page 22 of 82

Page 23: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Install

Setup Privileges

PERP SOLUTIONS Page 23 of 82

Page 24: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Configuration Assistants

PERP SOLUTIONS Page 24 of 82

Page 25: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

End of Installation

Kiểm tra kết quả cài đặt

Vào thử địa chỉ web cho người sử dụng: ví dụ ở đây là, http://perp-center.pythis.com:7777, bấm sang Tab Demonstrations, bấm tiếp mục, Business Intelligence and Forms

PERP SOLUTIONS Page 25 of 82

Page 26: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Để kiểm tra Form service có hoạt động không bấm vào mục Forms Services, chương trình sẽ thực hiện cài Jinitiator 1.3.1.17,cài đặt chương trình này xong nếu Form Test hiển thị nghĩa là việc cài Form Service đã hoạt động tốt.

Để kiểm tra Report service có hoạt động không bấm vào mục Reports Services, chương trình hiển thị mà hình chạy report test chọn dạng chạy Test a JSP Web Report ... và dạng Test a Paper Report on the Web ... Nếu Report Test hiển thị nghĩa là việc cài Report Service đã hoạt động tốt.

PERP SOLUTIONS Page 26 of 82

Page 27: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

PERP SOLUTIONS Page 27 of 82

Page 28: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Phần 3 – Cài đặt ứng dụng PERP

Cài đặt cơ sở dữ liệu của ứng dụng

Tạo database TNSListener

Kiểm tra xem trong Service có TNSListener, Thông thường tên của Service này là: Oracle<Oracle Database Home>TNSListener. Nếu chưa có thì thực hiên tạo theo các bước sau:

Từ dấu nhắc của cửa sổ Terminal

$ export ORACLE_HOME= /perp/orasoft/product/10.2.0/db10gr2

$ export ORACLE_SID=perpdb

$ cd $ORACLE_HOME/bin

$ ./netca

Màn hình hiển thị phần config cho mạng như sau:

Chọn Listener Configuration, bấm Next.

PERP SOLUTIONS Page 28 of 82

Page 29: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Chọn Add, bấm Next

Màn hình hiển thị tên Listener mặc định, không sửa đổi bấm Next.

PERP SOLUTIONS Page 29 of 82

Page 30: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Màn hình hiển thị giao thức thục hiện là TCP, không sửa bấm Next.

Màn hình hiển thị cổng mặc định là 1521, không sửa bấm Next.

Màn hình hiển thị có thực hiện config 1 Listener nào khác không, chọn No và bấm Next.

PERP SOLUTIONS Page 30 of 82

Page 31: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Hệ thống báo việc tạo Listener đã hoàn thành bấm Next để tiếp tục.

Bấm finsh để kết thúc việc tạo Listener. Vào Service của Windows kiểm tra sẽ có thêm dịch vụ OracleOraDb10g_home1TNSListener Nếu nó chưa Start thì Start nó.Tạo TNSName để kết nối đến CSDL

Tạo TNSName tai 2 Home: Database và Form&Report Service để kết nối vào cơ sở dữ liệu.

Từ dấu nhắc của cửa sổ Terminal

$ export ORACLE_HOME= /perp/orasoft/product/10.2.0/db10gr2

$ export ORACLE_SID=perpdb

$ cd $ORACLE_HOME/bin

$ ./netca

Màn hình hiển thị phần config cho mạng như sau:

PERP SOLUTIONS Page 31 of 82

Page 32: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Chọn Local Net Service Name configuration. Bấm Next.

Chọn Add , bấm Next.

PERP SOLUTIONS Page 32 of 82

Page 33: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Gõ tên cơ sở dữ liệu đã tạo trước đó, ở đây cơ sở dữ liệu là PERPDB. Bấm Next

PERP SOLUTIONS Page 33 of 82

Page 34: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Chọn giao thức kết nối là TCP. Bấm Next.

Gõ tên máy chủ ở đó cài Database Server, sau đó bấm Next.

Chon Yes, perform a test để kỉểm tra việc kết nối vào cơ sở dữ liệu. Bấm Next để tiếp tục.

PERP SOLUTIONS Page 34 of 82

Page 35: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Nếu không kết nối được bấm Change Login để thay đổi User và Password để kiểm tra việc kết nối.

Nếu vẫn không kêt nối được kiểm tra đường truyền, TNSListener Service, OracleServicePERPDB đã Start chưa, nếu chưa thì Start và kiểm tra lại.

Nếu kết nối thành công bấm Next để tiếp tục

PERP SOLUTIONS Page 35 of 82

Page 36: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Phần Net Service Name mặc định là tên Service Name,ở đây là PERPDB giữ nguyên bấm NEXT.

Chọn No, bấm Next.

PERP SOLUTIONS Page 36 of 82

Page 37: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Chương trình hiển thị Net Service Name đã cấu hình xong, bấm Next.

Bấm Finish để kết thúc. Kiểm tra trong file

/perp/orasoft/product/10.2.0/db10gr2/network/admin/tnsnames.ora

Có phần config sau:

PERPDB =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = perp-center)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = perpdb)

)

)

PERP SOLUTIONS Page 37 of 82

Page 38: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Copy toàn bộ nội dung trên vào cuối file:

/perp/orasoft/product/10.2.0/frs101202/network/admin/tnsnames.ora

Lưu thay đổi lại, Thực hiện kiểm tra kết nối đến cơ sở dữ liệu tại Home bằng lệnh$ export ORACLE_HOME=/perp/orasoft/product/10.2.0/db10gr2$ export ORACLE_SID=perpdb$ cd $ORACLE_HOME/bin$ ./tnsping perpdbTNS Ping Utility for Linux: Version 10.1.0.4.2 - Production on 10-APR-2007 10:21:42Copyright (c) 1997, 2003, Oracle. All rights reserved.Used parameter files:/perp/orasoft/product/10.2.0/frs101202/network/admin/sqlnet.oraUsed TNSNAMES adapter to resolve the aliasAttempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = perp-center)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = perpdb)))OK (0 msec)

Chú ý: có thể đỏi tên máy chủ trong HOST = perp-center bằng địa chỉ IP của máy đó nếu kêt nối từ SQLPLUS không thành công, hoặc xem thêm tại liệu Admin của Oracle.

Tạo file lưu trữ và Schema của ứng dụng

Bước 1: Kết nối từ SQLPLUS vào cơ sở dữ liệu với User system.$ export ORACLE_HOME= /perp/orasoft/product/10.2.0/db10gr2$ export ORACLE_SID=perpdb$ cd $ORACLE_HOME/bin$ ./sqlplus SQL*Plus: Release 10.2.0.1.0 - Production on Tue Apr 10 10:35:05 2007Copyright (c) 1982, 2005, Oracle. All rights reserved.Enter user-name: system/oracle@perpdb

Bước 2: Tạo file lưu trũ ứng dụng, ở đây đặt là /perp/data/perpdb/perpdata.bdf

Kích thước 1GB, Max Size 3GSQL>CREATE TABLESPACE PERPDATA DATAFILE '/perp/data/perpdb/perpdata.bdf' SIZE 1G REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE 3G LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

Bước 3: Tạo User Database lưu trữ ứng dụngSQL> create user perp identified by perp001 default tablespace perpdata;SQL> alter user perp identified by <passwd_new>SQL> grant dba to perp;

Bước 4: Thực hiện tạo các đối tượng cơ sở dữ liệu cho ứng dụng có thể thực hiện theo 1 trong 2 cách sau:

Cách 1: Tạo từ file DMP$ export ORACLE_HOME= /perp/orasoft/product/10.2.0/db10gr2$ export NLS_LANG=AMERICAN_AMERICA.UTF8$ export ORACLE_SID=perpdb$ cd $ORACLE_HOME/bin$ ./imp system/oracle fromuser=perp touser=perp file=/perp/setup/perp.dmp

PERP SOLUTIONS Page 38 of 82

Page 39: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Sau khi IMPORT xong vào hệ thống với user perp/perp001 kiểm tra lại các thông tin sau:SQL>connect perp/perp001@perpdbSQL>SELECT count(*) FROM USER_TABLESCOUNT(*)---------- 500

Cách 2: Tạo từ các file Scripts

Kết nối vào CSDL với user PERP thực hiện chạy các file Script

SQL>connect perp/perp001@perpdb;

SQL>@@setup.sql

POLICYChu y: neu ma user_nhom_ptrien khac voi ten User vua tao tren thi phai lam them cac buoc sau: thuc hien tao lai policy cho user truy cap vao ung dung SQL>connect user_vua_tao/pass@DB_NAME

Vd: connect perp/perp001@perpdb

SQL>select count(*) from EMPLOYEES=>Nếu hệ thống báo lỗi POLICY thì thực hiện như sau:SQL>connect sys/<sys_pwd>@dbname as sysdba;SQL>@<ORACLE_HOME_DATABASE>/rdbms/admin/dbmsrlsa.sqlSQL>@<ORACLE_HOME_DATABASE>/rdbms/admin/prvtrlsa.plb

Vi du : connect sys/oracle@perpdb as sysdba; @/perp/orasoft/product/10.2.0/db10gr2/rdbms\admin\dbmsrlsa.sql @/perp/orasoft/product/10.2.0/db10gr2/rdbms\admin\prvtrlsa.plb

Gan quyen cho user moi vua tao tren SQL>grant connect, resource to user_moi; SQL>grant execute on DBMS_RLS to user_moi; SQL>grant execute on DBMS_SESSION to user_moi; SQL>grant alter session to user_moi;

Ket noi vao user moi vua tao SQL>connect user_moi/pass@DB_NAME Thực hiện bỏ phần POLICY: SQL>Begin DBMS_RLS.DROP_POLICY( OBJECT_NAME => 'EMPLOYEES' ,POLICY_NAME =>'EMPLOYEES_POL' ); End; / Thực hiện tạo lại POLICY: SQL>Begin DBMS_RLS.ADD_POLICY( OBJECT_NAME =>'EMPLOYEES' ,POLICY_NAME =>'EMPLOYEES_POL'

PERP SOLUTIONS Page 39 of 82

Page 40: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

, POLICY_FUNCTION =>'set_hr_context.predicate_emp' ); End; /

Lưu ý: Nếu vẫn k select được employees table thì copy, tạo lại procedure set_hr_context, sau đó compile set_hr_context -> chạy lại policy -> select employees để thử lại;

Cài đặt Ứng dụng

Cấu trúc thư mục của ứng dụng

Source đặt trong thư mục: /perp/apps

Tên thư mục Nội dung/perp/apps Thư mục chứa ứng dụng/perp/apps/product Thư mục chứa ứng dụng chạy thực /perp/apps/test Thư mục chứa ứng dụng để kiểm tra (nếu có)/perp/apps/dev Thư mục chứa ứng dụng để phát triển (nếu có)Ví dụ thư mục product:/perp/apps/product/conf Chứa các file config/perp/apps/product/fin Chứa hệ thống kế toán/perp/apps/product/hr Chứa hệ thống nhân sự/perp/apps/product/inv Chứa hệ thống vật tư/perp/apps/product/proj Chứa ứng dụng quản lý dự án/perp/apps/product/po Chứa hệ thống đặt hang/perp/apps/product/sales Chứa hệ thống bán hàng/perp/apps/product/sec Chứa phần ứng dụng phân quyền/perp/apps/product/fonts Chứa các font chữ sử dụng trong báo cáo.

khi bien dich lib cung nhu copy font trong linux: tao 3 file chu thuong + viet Hoa + viet Hoa chu cai dau tien.Cách đơn giản là thực hiện lệnh sau để giải nén file font.tgz vào thư mục font: tar –xvzf font.tgz

/perp/apps/product/icons Chứa các icon và logo sử dụng trong form và báo cáo/perp/apps/product/libs Chứa các file thư viện dùng chung/perp/apps/product/home Thư mục chứa trang chủ của hệ thống/perp/apps/product/tmp Thư mục chứa các file tạm thời khi ứng dụng chạyThực hiện Setup trang Home, ICONS

Bước 1: Mở file /perp/apps/product/conf/perp.conf chỉnh sửa lại đường dẫn cho đúng nếu thư mục khác thư mục trong tài liệu.

Alias /perp/ "/perp/apps/product/home/"<Directory "perp">Options Indexes MultiViewsAllowOverride NoneOrder allow,denyAllow from all</Directory>

Alias /Images/ "/perp/apps/product/images/"<Directory "/Images/">Options Indexes MultiViewsAllowOverride None

PERP SOLUTIONS Page 40 of 82

Page 41: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Order allow,denyAllow from all</Directory>

Alias /perp_icons/ "/perp/apps/product/icons/"<Directory "perp_icons">Options Indexes MultiViewsAllowOverride NoneOrder allow,denyAllow from all</Directory>

Mở file /perp/orasoft/product/10.2.0/frs101202/Apache/Apache/conf/httpd.conf

Add thêm đoạn config chỉ đến thư mục chứa file config của ứng dụng PERP

#Include PERP applications

include "/perp/apps/product/conf/perp.conf"

Lưu file này lại, và restart lại HTTP Server sau đó vào thử với địa chỉ

http://host_name:<port>/perp/home.html

http://host_name:<port>/perp_icons/save.gif

nếu không kết nối được yêu cầu kiểm tra lại đường dẫn.

Hiệu chỉnh file: /perp/orasoft/product/10.2.0/frs101202/forms/java/oracle/forms/registry/Registry.dat

tìm đoạn default.icons.iconpath sửa thêm đường dẫn đến các icons như saudefault.icons.iconpath=/perp_icons/

default.icons.iconextension=gif

Thiết lập các biến môi trường của form Ứng dụng PERP

Thiết lập ngôn ngữ UNICODE cho phần tiếng Việt

Bước 1: cd /perp/apps/product/conf/

tar –xzf fontsolutions.tgz (hoac tar –xvzf fontsolutions.tar.gz)

cd fontsolutions

Xem file hướng dẫn README.txt

$ vi README.txt

$ export ORACLE_HOME=/perp/orasoft/product/10.2.0/frs101202

$ export PERP_APP=/perp/apps/product

Install Font:

$ ./configurefonts.sh

Bước 2: Sửa lại biến môi trường NLS_LANG trong file

PERP SOLUTIONS Page 41 of 82

Page 42: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

$ORACLE_HOME/bin/report.sh như sau: NLS_LANG=AMERICAN_AMERICA.UTF8

Thiết lập các biến môi trường của form Ứng dụng PERP

Copy file /perp/orasoft/product/10.2.0/frs101202/forms/server/default.env

vào thư mục /perp/orasoft/product/10.2.0/frs101202/forms/server, sửa tên thành perp.env. Sửa lại đường dẫn trong file perp.env cho phù hợp.

Các đường dẫn cần lưu ý:

Biến môi trường Ý nghĩa Hiện tạiORACLE_HOME Thư mục cài

đặt Oracle Form&Report Service hoặc IAS

/perp/orasoft/product/10.2.0/frs101202Thông thường không thay đổi, giữ nguyên đường dẫn mặc định

PATH Đường dẫn đến các file thực hiện sau khi cài Oracle Form&Report Service hoặc IAS

/perp/orasoft/product/10.2.0/frs101202/binThông thường không thay đổi, giữ nguyên đường dẫn mặc định

FORMS Thư mục chứa Form Service

/perp/orasoft/product/10.2.0/frs101202/formsThông thường không thay đổi, giữ nguyên đường dẫn mặc định

CLASSPATH Đường dẫn đến các thư viện Java

/perp/orasoft/product/10.2.0/frs101202Thông thường không thay đổi, giữ nguyên đường dẫn mặc định

FORMS_PATH Thư mục chứa đường dẫn đến các form của ứng dụng

/perp/orasoft/product/10.2.0/frs101202/forms:/perp/apps/product/libs:/perp/apps/product/fin/forms:/perp/apps/product/hr/forms:/perp/apps/product/inv/forms:/perp/apps/product/po/forms:/perp/apps/product/proj/forms:/perp/apps/product/sales/forms:/perp/apps/product/sec/forms

NLS_LANG Sử dụng bảng mã Unicode

AMERICAN_AMERICA.UTF8

Thiết lập các Ứng dụng PERP

Mở file /perp/orasoft/product/10.2.0/frs101202/forms/server/formsweb.cfg

Thêm toàn bộ nội dung sau vào cuối file:#---------------------------------------------------#--- Cau hinh App#Cau hinh phan ung dung ke toan[perp_fin]envFile=perp.envwidth=800height=600separateFrame=TRUEuserid=perp/perp001@perpdbform=perp_login.fmxotherparams=p_root_app_name=FIN p_app_name=perp_fin

#Cau hinh phan ung dung quan ly kho

PERP SOLUTIONS Page 42 of 82

Page 43: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

[perp _inv]envFile=perp.envwidth=800height=600separateFrame=TRUEuserid=perp/perp001@perpdbform=perp_login.fmxotherparams=p_root_app_name=INV p_app_name=perp_inv

#Cau hinh phan ung dung quan ly ban hang[perp _sales]envFile=perp.envwidth=800height=600separateFrame=TRUEuserid=perp/perp001@perpdbform=perp_login.fmxotherparams=p_root_app_name=SALES p_app_name=perp_sales

#Cau hinh phan ung dung quan ly mua hang[perp _po]envFile=perp.envwidth=800height=600separateFrame=TRUEuserid=perp/perp001@perpdbform=perp_login.fmxotherparams=p_root_app_name=PO p_app_name=perp_po

#Cau hinh phan ung dung quan ly du an[perp _proj]envFile=perp.envwidth=800height=600separateFrame=TRUEuserid=perp/perp001@perpdbform=perp_login.fmxotherparams=p_root_app_name=PROJ p_app_name=perp_pro

#Cau hinh phan ung dung quan san xuat[perp_mrp]envFile=perp.envwidth=800height=600separateFrame=TRUEuserid=perp/perp001@perpdbform=perp_login.fmxotherparams=p_root_app_name=MRP p_app_name=perp_Mrp

#Cau hinh phan ung dung quan ly nhan su[perp_hr]envFile=perp.envwidth=800height=600separateFrame=TRUEuserid=perp/perp001@perpdbarchive_jini=frmall_jinit.jar,frmwebutil.jar,jacob.jararchive=frmall.jarform=perp_login.fmxotherparams=p_root_app_name=HR p_app_name=perp_hr

#Cau hinh phan quan tri he thong[perp_adm]envFile=perp.envwidth=800height=600

PERP SOLUTIONS Page 43 of 82

Page 44: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

separateFrame=TRUEuserid=perp/perp001@perpdbform=perp_login.fmxotherparams=p_root_app_name=ADMIN p_app_name=perp_adm

Lưu ý:

- Có thể sửa tên các tag [perp_hr],[perp_po],[perp_inv],[perp_adm]…v.v.. sau khi sửa tên tag thì phải sửa đường link trong file home.html cho phù hợp với tên tag vừa đổi:

- tên file môi trường perp.env phải đúng với tên file môi trường đã tạo trong thư mục: /perp/orasoft/product/10.2.0/frs101202/forms/server/

- userid: khai báo tên/pass@db_sid đã tạo ở các bước trước.

- Các tham số còn lại giữ nguyên

Sau khi copy xong và save file trên lại, vào trinh quản lý Oracle Enterprise Manager:

http://host_name:port ở đây là http://perp-center.pythis.com:1810

với User: ias_admin và Password: frs10gadmin.

Thực hiện Retart All. Sau khi retart xong kiểm tra xem các ứng dụng đã config hoạt động như thế nào.

Bấm mục Forms trong danh sách của trang quản tri hệ thống hiện thị trang quản lý ứng dụng form service. Tại dây có thể xem đường dẫn chạy ứng dụng

PERP SOLUTIONS Page 44 of 82

Page 45: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Thực hiện kiểm tra ứng dụng:http: // perp-center.pythis.com:7777/forms90/l90servlet hoặc: http: // perp-center.pythis.com:7777/forms/frmservlet (tùy thuộc version)http://perp-center.pythis.com:7777 /forms/frmservlet?config=perp_fin http://perp-center.pythis.com:7777 /forms/frmservlet?config=perp_invhttp://perp-center.pythis.com:7777 /forms/frmservlet?config=perp_pohttp://perp-center.pythis.com:7777/forms/frmservlet?config=perp_saleshttp://perp-center.pythis.com:7777/forms/frmservlet?config=perp_hrhttp://perp-center.pythis.com:7777/forms/frmservlet?config=perp_adm

Đối với hệ thống perp cai đặt chung voi ebs, port list có thể thay đổi,mở file sau để kiểm tra: /perp/orasoft/product/10.2.0/frs101202/install/portlist.ini

Thiết lập các biến môi trường của report Ứng dụng PERP

Bước 1: Kiểm tra tên Report Server, kết nối vào trang web quản lý Oracle Enterprise Manager:

http://host_name:port ở đây là http://perp-center.pythis.com:1810

với User: ias_admin và Password: frs10gadmin.

PERP SOLUTIONS Page 45 of 82

Page 46: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Thông thường Report Server là REP_<tên máy chủ> ví dụ ở đây là REP_PERP-CENTER.

Bước 2: Cài đặt đường dẫn đến các report của ứng dụng :

Mở file: <ORACLE_FRService_HOME>/reports/conf/<tên report server>_<Oracle Home>.conf, ở đây là file /perp/orasoft/product/10.2.0/frs101202/reports/conf/rep_perp-center_oracleas1.conf

Cuối file:

<pluginParam name="textpds" type="file">textpds.conf</pluginParam>

</server>

Thay bằng:<pluginParam name="textpds" type="file">textpds.conf</pluginParam><environment id="perp_pts"> <envVariable name="REPORTS_PATH" value="/perp/apps/product/fin/reports:/perp/apps/product/hr/reports:/perp/apps/product/inv/reports:/perp/apps/product/mrp/reports:/perp/apps/product/po/reports:/perp/apps/product/proj/reports:/perp/apps/product/sales/reports:/perp/apps/product/fonts:/perp/apps/product/libs:/perp/apps/product/images"/> </environment></server>

Bước 3: Cập nhật tham số tên report server trong bảng system_paras bằng lệnh Update sau:SQL> connect perp/perp001@perpdb;SQL> update system_paras set VALUE='<tên report server>_<Oracle Home>' #tên report serverwhere upper(code)='REP_SERVER';SQL> update system_paras set VALUE='perp_pts' #tên khai bao trong biến environment idwhere upper(code)= REP_ENVID';SQL>COMMIT;

Retart lại Form&Report Service bằng trang web Oracle Enterprise Manager

PERP SOLUTIONS Page 46 of 82

Page 47: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Thiết lập Phần Upload/Download tài liệu, Ảnh cho phần Nhân sự

Phần này chỉ cấu hình riêng cho phần nhân sự tiên lương, có phần Load ảnh trong lý lịch cá nhân và phần quản lý văn bản.

Bước 1: Mở file /perp/apps/product/conf/webutil_106/server/webutil.cfg sửa đổi nội dung cho phù hợp#NOTE: By default the file transfer is disabled as a security measuretransfer.database.enabled=TRUEtransfer.appsrv.enabled=TRUEtransfer.appsrv.workAreaRoot=/perp/apps/product/tmptransfer.appsrv.accessControl=FALSE#List transfer.appsrv.read.<n> directoriestransfer.appsrv.read.1=/perp/apps/product/tmp#List transfer.appsrv.write.<n> directoriestransfer.appsrv.write.1=/perp/apps/product/tmp

Bước 2: Copy toàn bộ nội dung trong thư mục /perp/apps/product/conf/webutil_106 vào trong thư mục $ORACLE_HOME/forms/server/ , chương trình sẽ hỏi bạn có ghi đè nội dung thư mục này lên các thư mục đã có không, chọn Yes to All.

Bước 3: Thực hiện kết nối vào cở sở dữ liệu chạy các script của gói webutil lien quan đến việc Upload/download..:SQL>connect perp/perp001@perpdb;SQL>@/perp/apps/product/conf/webutil_106/create_webutil_db.sqlSQL>@/perp/apps/product/conf/webutil_106/createtab.sql

Bước 4: Thực hiện bổ sung them vào cuối file cấu hình của /perp/apps/product/conf/perp.conf đoạn sau (nếu chưa có):Alias /webutil/ "/perp/orasoft/product/10.2.0/frs101202/forms/webutil/"<Directory "webutil">

Options Indexes MultiViewsAllowOverride NoneOrder allow,denyAllow from all

</Directory>

Bước 5: Thực hiện các bước đăng ký thư viện webutil$export ORACLE_HOME="/perp/orasoft/product/10.2.0/frs101202$ export PATH=$PATH:$ORACLE_HOME/jdk/bin$ cd $ORACLE_HOME/forms/webutil$ ./sign_webutil.sh $ORACLE_HOME/forms/java/frmwebutil.jar$ ./sign_webutil.sh $ORACLE_HOME/forms/java/jacob.jar

Bước 6: Dịch lại file thư viện webutil.pllexport ORACLE_HOME=/perp/orasoft/product/10.2.0/frs101202export NLS_LANG=AMERICAN_AMERICA.UTF8export ORACLE_TOOL=$ORACLE_HOME/binexport libs_top=/…/Install PERP/THU_MUC_UNG_DUNG/apps/product/libsexport FORMS_PATH=$libs_topexport TERM=vt220export ORACLE_TERM=vt220$ORACLE_HOME/bin/frmcmp_batch.sh userid=perp/perp001@perpdb module=$ORACLE_HOME/forms/webutil.pll module_type=library compile_all=yes

B7: Biên dịch form, libs:

PERP SOLUTIONS Page 47 of 82

Page 48: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Sửa dường dẫn user/pass trong file /perp/apps/product/<phanhebatky:hr|po|proj|…>/forms/compile.shexport ORACLE_HOME=/perp/orasoft/product/10.2.0/frs101202export NLS_LANG=AMERICAN_AMERICA.UTF8export ORACLE_TOOL=$ORACLE_HOME/binexport libs_top=/perp/apps/product/libsexport FORMS_PATH=$libs_topexport TERM=vt220export ORACLE_TERM=vt220#cd den thu muc can bien dichfor i in *.pll do/perp/orasoft/product/10.2.0/frs101202/bin/frmcmp_batch.sh userid=perp/perp001@perpdb batch=yes module=$i module_type=library compile_all=yes window_state=minimizedonefor i in *.fmbdo/perp/orasoft/product/10.2.0/frs101202/bin/frmcmp_batch.sh userid=perp/perp001@perpdb batch=yes module=$i module_type=form compile_all=yes window_state=minimizedonefor i in *.mmbdo/perp/orasoft/product/10.2.0/frs101202/bin/frmcmp_batch.sh userid=perp/perp001@perpdb batch=yes module=$i module_type=menu compile_all=yes window_state=minimizedone

Chạy lệnh : ./compile.sh

Bước 8: Kiểm tra xem file /perp/orasoft/product/10.2.0/frs101202/forms/server/perp.env có đoạn config sau không nếu không bổ sung thêm:

WEBUTIL_CONFIG= /perp/orasoft/product/10.2.0/frs101202/forms/server /webutil.cfg

PERP SOLUTIONS Page 48 of 82

Page 49: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Phần 4 – Sao lưu và phục hồi cơ sở dữ liệu

Mục đích

Hầu hết các hệ thống quản trị cơ sở dữ liệu yêu cầu rất cao về sao lưu và phục hồi. Là người quản trị hệ thống cơ sở dữ liệu chịu trách nhiệm về sao lưu và phục hồi, tức là đảm bảo:

Quản lý hoạt động phức tạp của việc sao lưu và phục hồi

Giảm thiểu các lỗi người dùng có thể xảy ra

Tạo bản sao lưu đáng tin cậy và scalable

Tận dụng hết những khả năng của phần cứng

Make backups proportional to the size of transactional changes, not to the size of database

Make recovery time proportional to the amount of data recovered

Phần này nhằm giới thiệu cho người quản trị hệ thống một phương pháp sao lưu phục hồi của Oracle sử dụng trình tiện ích Export & Recovery Manager.

1 - Import & export database

$ export ORACLE_HOME=<database_path>

$ export NLS_LANG=AMERICAN_AMERICA.UTF8

$ export ORACLE_SID=db11g

$ cd $ORACLE_HOME/bin

$ ./imp userid=system/oracle fromuser=perp_old touser=perp file=/u01/app/oracle/perp/setup/perp.dmp

$ ./exp userid=perp/perp001 file=/u01/app/oracle/perp/setup/perp.dmp

2 - Giới thiệu RMAN

Recovery Manager (RMAN) là trình tiện ích có thể quản lý tất cả các hoạt động sao lưu và phục hồi Oracle database.

Cấu trúc RMAN là sự kết hợp của một chương trình thực thi (trình tiện ích RMAN) và sử lý nền tương tác với một hoặc nhiều cơ sở dữ liệu và với các thiết bị nhập/xuất. Dưới đây là những thành phần cấu trúc chính:

• RMAN executable

• Server processes

• Channels

• Target database

• Revover catalog database (optional)

• Media management layer (optional)

PERP SOLUTIONS Page 49 of 82

Page 50: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

• Backups, backup sets, and backup piecesRMAN Executable

RMAN executable, thường được gọi là rman, là chương trình quản lý tất cả toán tử sao lưu và phục hồi. Bạn tương tác với RMAN executable để chỉ rõ thao tác sao lưu và phục phồi mà bạn muốn thực hiện.

Trình thực thi sau đó sẽ tương tác với target database khởi động hệ nền nếu cần thiết, và thực hiện các toán tử mà bạn yêu cầu. Cuối cùng RMAN executable ghi nhận các bước thực hiện này trong file điều khiển của target database và recovery catalog database.Server Processces

RMAN server processes là những xử lý nền, bắt đầu trên server, được sử dụng để liên lạc giữa RMAN và database. Chúng cũng liên lạc giữa RMAN và đĩa cứng, băng từ hày các thiết bị nhập/xuất khác. Channels

Một channel là một tiến trình xử lý của một RMAN server bắt đầu khi nó cần liên kết với thiết bị nhập xuất, như đĩa cứng hay băng từ. Một channel là những gì đọc và ghi các file RMAN backup. Thông qua việc chỉ định channel, chúng ta kiểm soát các đặc điểm vào/ra:

• Kiểu thiết bị vào/ra đang đọc hay ghi là đĩa cứng hay băng từ

• Số tiến trình đang đồng thời truy cập vào một thiết bị vào/ra

• Kích cỡ lớn nhất của file được tạo trên thiết bị vào/ra

• Tốc độ lớn nhất và các file cơ sở dữ liệu được đọc

• Số lượng lớn nhất các file được mở tại một thời điểmTarget database

Target database là database mà RMAN thực hiện việc sao lưu, phục hồi, và recovery. Đây là database sở hữu các datafiles, control files, và archived redo files cần sao lưu, phục hồi, hay recovered.

Backups, Backupset, và Backup PiecesRMAN backup

Một bản sao lưu toàn bộ hay một phần database. Là kết quả lệnh RMAN backup. Một backup chứa một hoặc nhiều backup set.

Backup set

Một nhóm logic các file sao lưu – các mẩu sao lưu (backup pieces) – được tạo khi lệnh sao lưu RMAN được đưa ra. Một backup set là tên mà … Một backup set chứa một hoặc nhiều backup pieces.

Backup piece

Một file vật lý nhị phân được tạo bởi RMAN trong quá trình sao lưu. Backup pieces được ghi nhận vào môi trường sao lưu, có thể là đĩa cứng hay băng từ. Chúng chứa các khối (block) từ datafile, archived redo files, và control file của target database.

3 - Cấu hình RMAN

Thiết lập mode archivelog trên databaseBước 1: Shutdown database

SQL> connect / as sysdba

SQL> shutdown immediateBước 2: Start instance trong mode mount và exclusive

SQL> startup mount exclusive;SQL> alter system set log_archive_dest_1='location=/u01/app/oracle/oradata/db11g/archive' SCOPE=spfile;

PERP SOLUTIONS Page 50 of 82

Page 51: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

SQL> alter system set log_archive_format='perp_arch _%s_%t_%r.arc' SCOPE=spfile;

####SQL> alter system set log_archive_start=TRUE SCOPE=spfile;SQL> alter system set db_recovery_file_dest = '/u01/app/oracle/flash_recovery_area';

SQL> alter system set db_recovery_file_dest_size=50G scope=spfile;

Bước 3: Cho phép mode archive log

SQL> alter database archivelog

SQL> select log_mode from v$database;Bước 4: Đưa database về mode open

SQL> alter database open

SQL> alter system switch logfile;Tạo giản đồ RMAN và CatalogBước 1: Tạo tablespace RMAN và user RMAN trong database

Đăng nhập vào Oracle database với đặc quyền user sys

SQL> connect sys/sys_password@tns_target_connection as sysdba

(vidu: SQL> connect sys/sys_password@db11g as sysdba)

SQL> create tablespace rman datafile '/u01/app/oracle/oradata/db11g/rman01.dbf' size 200M;

SQL> create user rman identified by rman001 default tablespace rman temporary tablespace TEMP quota unlimited on rman;

SQL> grant dba, connect, resource, sysdba to rman;

SQL> grant recovery_catalog_owner to rman;

Bước 2: Đăng ký target database với catalog database

$./rman target sys/sys_password@tns_target_connection catalog rman/rman_password@tns_catalog_connection

(vidu: $./rman target sys/spcvn1820@db11g catalog rman/rman001@db11g)

RMAN> create catalog

RMAN> register database;

Hoac

$./rman

RMAN> connect catalog rman/rman_password@tns_catalog_connection

(vidu: RMAN> connect catalog rman/rman001@db11g)

RMAN> connect target sys/sys_password@tns_target_connection

PERP SOLUTIONS Page 51 of 82

Page 52: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

(RMAN> connect target sys/spcvn1820@db11g)

RMAN> create catalog

RMAN> register database;Thiết lập cấu hình sao lưu

Kết nối vào rman và chạy những lệnh sau để thiết lập cấu hình sao lưu:

Bước 1: Cấu hình tự động sao lưu control file:

RMAN> configure controlfile autobackup format for device type disk to '/u01/app/oracle/backup/db11g/datafile/perp_control_%Y%M%D_%F.dbf';

Bước 2: Cấu hình retention policy

RMAN> configure retention policy to redundancy 2;

(Retention policy=2 có nghĩa là Oracle giữ 2 bản backup set mới nhất)Bước 3: Cấu hình kích cỡ lớn nhất của backup set.

RMAN> configure maxsetsize to 3500M;

4 - Backup Script

Thư mục sao lưu

Thư mục sao lưu là nơi để lưu trữ tất cả các file sao lưu trước khi chép vào thiết bị lưu trữ an toàn như băng từ.

Thư mục lưu trữ trên perp:

/u01/app/oracle/backup/db11g/datafile – Thư mục này chứa bản sao lưu của datafiles, và controlfiles

/u01/app/oracle/backup/db11g/archive – Thư mục này chứa bản sao lưu của archivelog files.

Đảm bảo rằng user oracle có đặc quyền ghi và đọc trên những thư mục này.Full Backup Database

Full backup database được tiến hành thường xuyên vào Chủ nhật hàng tuần. Kiểu sao lưu này sao lưu toàn bộ data file, redolog file, và control file.

Chạy câu lệnh sau để tạo full backup set:

RMAN> backup database format '/u01/app/oracle/backup/db11g/datafile/perp_%Y%M%D_%U.bkp';

Backup Archivelog files:

Sao lưu toàn bộ archivelog file hiện hành, Archivelog file được sao lưu vào các ngày trong tuần. Chạy lệnh sau để tạo sao lưu archivelog cho một ngày:

RMAN> backup archivelog all format '/u01/app/oracle/backup/db11g /archive/perp_arc_%Y%M%D_%U.arc' delete input;

---Tham so delete input se delete cac archivelog vua duoc backup xong.Sao lưu control file hiện hành:

RMAN> backup current controlfile;Kiểm tra backup set:

RMAN> list backupset;Xóa bỏ Backupset lỗi thời

PERP SOLUTIONS Page 52 of 82

Page 53: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Hàng tuần người quản trị phải thực hiện việc xóa tất cả các backupset lỗi thời để tiết kiệm khoảng trống đĩa. Oracle có cung cấp một lệnh để đưa ra tất cả các backupset lỗi thời. Oracle đánh dấu một backupset là lỗi thời phụ thuộc vào giá trị sử dụng (retention value) được thiết lập trên phần cấu hình. Ví dụ nếu người quản trị thiết lập giá trị retention là 2, thì Oracle luôn luôn giữ lại 2 backupset mới nhất và đánh dấu tất cả các backupset khác là lỗi thời.

Chạy lệnh sau để liệt kê tất cả các backupset lỗi thời:

RMAN> report obsolete;

Để xóa backupset lỗi thời dung lệnh sau:

RMAN> delete obsolete;

Xóa tất cả file backup:

RMAN> delete backup;

5 - Recover Scenarios

Mất Control File

Control file đóng vai trò rất quan trọng trong Oracle database. Nó lưu giữ tất cả các thông tin vật lý về database như tên database, vị trí của các data file, các thông tin kiểm soát, vv…Vì vài trò quan trọng này nên Oracle không thể không có control file.

Các bước sau mô tả việc thực hiện phục hồi các control file trong trường hợp bị mất:Bước 1: Shutdown database

RMAN> shutdown immediateBước 2: Start database trong mode nomount

RMAN> startup nomountBước 3: Khôi phục control file từ backup set trong trường hợp không muốn thay đổi vị trí đặt control file

RMAN> restore controlfile from autobackup;

(truong hop da dung backup current controlfile format ‘duong_dan’, thi khi restore controle file, dung lenh sau: RMAN> restore controlfile from ‘duong_dan’;)

Trong trường hợp muốn thay đổi vị trí đặt control file, dung lệnh

RMAN> restore controlfile to '/new_control_file_location'

new_control_file_location: đường dẫn chỉ đến thư mục chứa các control file mới được khôi phục

Bước xx: Hiệu chỉnh file initSID.ora tham số control_files chỉ đến vị trí mới của control file.Bước 4: Đổi database về mode mount

RMAN> sql 'alter database mount';Bước 5: Khôi phục lại database

RMAN> recover database;Bước 6: Đổi database về mode open

RMAN> sql 'alter database open resetlogs';Mất Data FileBước 1: Start database để nhận biết data file bị hỏng.

RMAN> shutdown immediate;

RMAN> startup;

PERP SOLUTIONS Page 53 of 82

Page 54: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Bước 2: Shutdown database và start database lại trong mode momount

RMAN> shutdown immediate;

RMAN> startup nomount;Bước 3: Đổi database về mode mount

RMAN> sql 'alter database mount';Bước 4: Phục hồi data file bị hỏng từ backup set

RMAN> restore datafile 'corrupted_data_file_name_path';

corrupted_data_file_name_path: Đường dẫn chỉ đến file data file bị hỏng.Bước 5: Khôi phục tất cả các data file bị hỏng và sử dụng tất cả archivelog file.

RMAN> recover database;Bước 6: Đổi database về mode open

RMAN> sql 'alter database open';Mất tất cả Data File

Trong trường hợp database bị mất tất cả data file, người quản trị cần thực hiện những bước sau để phục hồi lại database:Bước 1: Start database để nhận biết những data file bị hỏng.

RMAN> shutdown abort;

RMAN> exit

$./rman target sys/sys_password

(vidu: $./rman target sys/spcvn1820)

RMAN> startupBước 2: Shutdown database và start database lại trong mode nomount.

RMAN> shutdown immediate

RMAN> startup nomountBước 3: Đổi database về mode mount

RMAN> sql 'alter database mount';Bước 4: Phục hồi tất cả data file bị hỏng từ backup set.

RMAN> restore database;Bước 5: Khôi phục tất cả các data file bị hỏng và sử dụng tất cả archivelog file.

RMAN> recover database;Bước 6: Đổi database về mode open

RMAN> sql 'alter database open';

PERP SOLUTIONS Page 54 of 82

Page 55: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Phần 5 – Cài đặt cấu hình BIPublisher

Tùy chọn cài đặt

Oracle Universal Installer được dùng để cài đặt BI Publisher với 1 instance OC4J- Oracle Containers for Java riêng biệt hoặc có thể được cài tích hợp vào Oracle Application Server 10.1.3.1.0 ( và các version sau). Tuy nhiên chúng ta có thể deploy BIPublisher trên nền J2ee Application Server khác.

Có 3 tùy chọn:

Basic - Oracle Universal Installer Basic cài đặt phiên bản Oracle Standalone Application Server (Oracle Container for Java 10.1.3.1 và SunJDK 1.5.0-b5)

Advanced - Oracle Universal Installer Advanced option cài đặt BIPublisher vào Oracle Application Server 10.1.3.1 (hoặc các phiên bản sau) tồn tại.

Manual – cho phép cài vào 1 hoặc nhiều J2EE Server

Yêu cầu hệ thống

Oracle BI Publisher hỗ trợ các OS sau:

• Oracle Enterprise Linux 5• Oracle Enterprise Linux 4, Update 4• Microsoft Windows 2000 Server • Microsoft Windows 2003 Server R2 (32 bit)• Red Hat Enterprise Linux 4.x, 5.x• Novell SUSE Linux 9.x• Mac OS X

Hỗ trợ nền Application Server sau:

• Oracle Application Server 10.1.3.1• Oracle Containers for Java 10.1.3.1• BEA WebLogic 8.1, 9.2, 10• Apache Tomcat 5.5.x• IBM Websphere 6.1• Sun Java System Web Server 6.1, 7.0• JBoss Application Server 4.0

Thực hiện cài đặt

Run Oracle Universal Installer

Chạy file cài đặt.

o Cài đặt trên Windows:

Chuyển đến thư mục cài đặt Oracle BI Publisher

Run setup.exe.

o Cài đặt trên Linux or Unix:

Chuyển đến thư mục cài đặt Oracle BI Publisher:

PERP SOLUTIONS Page 55 of 82

Page 56: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

cd install

Run script runInstaller:

./runInstaller

Cửa sổ cài đặt xuất hiện

Click Next.

Xác định đường dẫn cài đặt.

Select Basic.

PERP SOLUTIONS Page 56 of 82

Page 57: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Nhập pass quản trị OC4J Administrator (oc4jadmin).

Xem lại thông tin trước khi cài đặt, Click Install bắt đầu cài đặt

PERP SOLUTIONS Page 57 of 82

Page 58: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Màn hình End of Installation thông báo tiến trình cài đặt thành công và hướng dẫn cách start, stop BI Publisher, đường dẫn đăng nhập vào BI Publisher và các chi tiết vùa cài đặt. Và được lưu trong file BI_Publisher_readme.txt.

Log in vào BI Publisher Server

Note: Sau khi kết thúc cài đặt BI Publisher sẽ được tự động start. Nếu thực hiện start BI Publisher khi nó đang chạy, thì start command sẽ trả về lỗi.

1. Chạy BI Publisher application sử dụng 1 trong những cách sau đây:

PERP SOLUTIONS Page 58 of 82

Page 59: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

o Trên Windows:

Click Start > Programs > Oracle - OracleHomeName > BI Publisher Server

OracleHomeName là tên được đặt trong quá trình cài đặt Oracle BI Publisher.

o Hoặc mở bằng trình duyệt với URL sau: http://hostname:port/xmlpserver

Ví dụ: http://localhost:9704/xmlpserver

2. Đăng nhập với username "Administrator", password "Administrator" mặc định.

Thay đổi username/password đăng nhập

Important: thay đổi username/password bằng cách vào tab Account dưới Preferences.

Cấu hình JDBC Data Source1. Chọn Admin tab.2. Trong phần Data Sources, chọn JDBC Connection link.

Field Entry

Database Type: Chọn Oracle 11g, Oracle 10g, or Oracle 9i từ danh sách.

Connection String: Nhập chuỗi kết nối : jdbc:oracle:thin:@<hostname>:<port>:<oracle SID>vidu:jdbc:oracle:thin:@mydatabaseserver.com:1521:bipscheduler

Database Driver Class:

oracle.jdbc.driver.OracleDriver

3. Đặt tên JDBC ví dụ "demo".4. Trong màn hình Update Data Source, thay đổi chuỗi kết nối chỉ đến Oracle 10g

database connect với user schema cần truy cập để lấy dữ liệu.5. Click Test Connection để kiểm tra việc kết nối đến database.6. Click Apply để lưu mọi thay đổi.

Tạo web service tích hợp BIPublisher vào OracleForm

Các version sử dụng trong việc tạo web service

Oracle Forms 10.1.2.3

Oracle JDeveloper 10.1.3.4 - http://www.oracle.com/technology/software/products/jdev/htdocs/soft10134.html

BI Publisher Enterprise 10.1.3.4 on WebLogic Server 10.3

(hoặc cũng có thể làm việc trên OC4J Application Server theo cùng cách)

PERP SOLUTIONS Page 59 of 82

Page 60: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Kiểm tra service WSDL có tồn tại hay không

http://<host>:<port>/xmlpserver/services/PublicReportService?wsdl

Tạo 1 webservice dùng Oracle Jdeveloper thực hiện trên máy client

Tạo new application

Chọn No Template

Đặt tên project là BIP_WebService

PERP SOLUTIONS Page 60 of 82

Page 61: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Chọn tạo Project BIP_WebService.jpr trong phần Navigator và chọn Project Property.

Sau đó chọn Compiler và thiết lập Source và Target là 1.4(bởi vì nó sử dụng JRE của Form 10.1.2)

Nếu có thông qua 1 proxy thi phải định nghĩa thêm trong Tools_menu nằm dưới Preferences trong mục Web Browser and Proxy

Khi làm việc với Oracle Forms bạn phải thay đổi version của JDK được sử dụng trong dự án. Chọn Librares trong thuộc tính dự án và nhấn nút change version J2SE

PERP SOLUTIONS Page 61 of 82

Page 62: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Trong cửa sổ Edit J2SE Definition, chọn Projects ở bên trái của sổ.

Chọn New > Browser , chọn đường dẫn đến thư mục Java.exe từ $ORACLE_HOME\jdk\jre\bin

PERP SOLUTIONS Page 62 of 82

Page 63: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Click OK

Sau khi save Project. Click phải chuột vào Project > Chọn New > chọn Category Bussiness Tier > Webservice > sau đó chọn item Web Service Proxy.

PERP SOLUTIONS Page 63 of 82

Page 64: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Chọn đường dẫn tài liệu WSDL của BIPublisher:

http://<machine>:<port>/<yourappname>/services/PublicReportService?wsdl

mặc định <yourappname> là xmlpserver

Click Next > Next , sau đó nhập package name là bip_webservice.proxy

PERP SOLUTIONS Page 64 of 82

Page 65: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Click Next > Next > Finish

Màn hình kế tiếp xuất hiện sau khi tạo xong proxy

PERP SOLUTIONS Page 65 of 82

Page 66: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Edit method main() trong class PublicReportServiceClient

public static void main(String[] args) {try {bip_webservice.proxy.PublicReportServiceClient myPort =new bip_webservice.proxy.PublicReportServiceClient();System.out.println("calling " + myPort.getEndpoint());// Add your own code herefinal String username = "Administrator";final String password = "Administrator";final String reportAbsolutePath = "/Web Service Test/Employees/Employees.xdo";// Testing runReportSystem.out.println("Testing runReport Service");ReportRequest repRequest = new ReportRequest();Page 13 of 31repRequest.setReportAbsolutePath(reportAbsolutePath);repRequest.setAttributeTemplate("Simple");repRequest.setAttributeFormat("pdf");repRequest.setAttributeLocale("en-US");repRequest.setSizeOfDataChunkDownload(-1);ParamNameValue[] paramNameValue = new ParamNameValue[2];paramNameValue[0] = new ParamNameValue();paramNameValue[0].setName("p_deptno");paramNameValue[0].setValues(new String[] {"20"});paramNameValue[1] = new ParamNameValue();paramNameValue[1].setName("p_job");paramNameValue[1].setValues(new String[] {"CLERK"});repRequest.setParameterNameValues(paramNameValue);ReportResponse repResponse = new ReportResponse();repResponse = myPort.runReport(repRequest,username,password);String contentType = repResponse.getReportContentType();System.out.println(contentType);byte[] baReport = repResponse.getReportBytes();FileOutputStream fio = new FileOutputStream("C:\\temp\\test.pdf");fio.write(baReport);

fio.close();

PERP SOLUTIONS Page 66 of 82

Page 67: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Employees.xdo là tên và định dạng của báo cáo BIPubisher

Sau đó ta có thể test Web Service Proxy bằng cách click RUN từ menu context của PublicReportServiceClient.java hoặc trên thanh toolbar. Trong suốt quá trình test main() method sẽ được sử dụng

Để gọi runReport() từ OracleForm chúng ta cần thêm 1 đoạn code để tránh việc gọi phương thức main() từ bên ngoài

Trước tiên, ta định nghĩa tham số trong class PublicReportServiceClient

public class ReportServiceClient {private bip_webservice.proxy.PublicReportService _port;private String username;private String password;private String reportPath;private String format;private String template;private String locale;private int sizeOfDataChunkDownload;private String paramName;private String paramValue;private String outFile;

Và khởi tạo giá trị:

public PublicReportServiceClient() throws Exception {ServiceFactory factory = ServiceFactory.newInstance();_port =((bip_webservice.proxy.PublicReportServiceService)factory.loadService(bip_webservice.proxy.PublicReportServiceService.class)).getPublicReportService();username=null;password=null;reportPath=null;format=null;template=null;locale=”en-US”sizeOfDataChunkDownload=-1;

PERP SOLUTIONS Page 67 of 82

Page 68: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

paramName=null;paramValue=null;outFile=null;

}

Tiếp theo, thêm method callRunReport() để gọi runReport() trong web service client

ParamNameValue là 1 object cần để truyền tham số(gồm có tên và giá trị) vào web service

public void callRunReport (String reportPath, String paramName, String paramValue,String username, String password, String format, String template, String outFile) {try {bip_webservice.proxy.PublicReportServiceClient myPort =new bip_webservice.proxy.PublicReportServiceClient();// Calling runReportReportRequest repRequest = new ReportRequest();repRequest.setReportAbsolutePath(reportPath);repRequest.setAttributeTemplate(template);repRequest.setAttributeFormat(format);repRequest.setAttributeLocale(locale);repRequest.setSizeOfDataChunkDownload(sizeOfDataChunkDownload);ParamNameValue[] paramNameValue = new ParamNameValue[1];paramNameValue[0] = new ParamNameValue();paramNameValue[0].setName(paramName);String[] values = new String[1];values[0] = paramValue;paramNameValue[0].setValues(values);repRequest.setParameterNameValues(paramNameValue);ReportResponse repResponse = new ReportResponse();repResponse = myPort.runReport(repRequest,username,password);byte[] baReport = repResponse.getReportBytes();FileOutputStream fio = new FileOutputStream(outFile);fio.write(baReport);fio.close();

PERP SOLUTIONS Page 68 of 82

Page 69: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

} catch (Exception ex) {ex.printStackTrace();}

}

Nếu muốn thay đổi địa chỉ của webservice (gồm hostname, port và application) thì edit trong file PublicReportServiceSoapBinding_Stub.java:

Deploy file webservice ra file .jar

Click phải vào Project, chọn new từ context menu, chọn item jar file từ Category: General – Deployment Profiles.

PERP SOLUTIONS Page 69 of 82

Page 70: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Đặt tên file là mystub

Chọn option filter để chọn những file cần thiết

PERP SOLUTIONS Page 70 of 82

Page 71: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Click phải lên file mustub.deploy và chọn deploy to jar file

Cài đặt, cấu hình Oracle Form & Report Service

Add ClassPath

Copy thư mục chứa các file thư viện BIPublisher bip_libs vào đường dẫn sau: /perp/apps/ trên server

Add Classpath mới vào đúng file .env của ứng dụng đang chạy.

CLASSPATH=/perp/orasoft/product/10.2.0/frs10gr2/j2ee/OC4J_BI_Forms/applications/formsapp/formsweb/WEB-INF/lib/frmsrv.jar:/perp/orasoft/product/10.2.0/frs10gr2/jlib/repository.jar:/perp/orasoft/product/10.2.0/frs10gr2/jlib/ldapjclnt10.jar:/perp/orasoft/product/10.2.0/frs10gr2/jlib/debugger.jar:/perp/orasoft/product/10.2.0/frs10gr2/jlib/ewt3.jar:/perp/orasoft/product/10.2.0/frs10gr2/jlib/share.jar:/perp/orasoft/product/10.2.0/frs10gr2/jlib/utj.jar:/perp/orasoft/product/10.2.0/frs10gr2/jlib/zrclient.jar:/perp/orasoft/product/10.2.0/frs10gr2/reports/jlib/rwrun.jar:/perp/orasoft/product/10.2.0/frs10gr2/forms/java/frmwebutil.jar:/perp/orasoft/product/10.2.0/frs10gr2/forms/java/jacob.jar:/perp/orasoft/product/10.2.0/frs10gr2/jdk/jre/lib/rt.jar:/perp/orasoft/product/10.2.0/apps/libs:/perp/apps/bip_li

PERP SOLUTIONS Page 71 of 82

Page 72: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

bs/dms.jar:/perp/apps/bip_libs/i18nAPI_v3.jar:/perp/apps/bip_libs/jaxrpc-api.jar:/perp/apps/bip_libs/jewt4.jar:/perp/apps/bip_libs/oc4jclient.jar:/perp/apps/bip_libs/ocrs12.jar:/perp/apps/bip_libs/ojdbc14.jar:/perp/apps/bip_libs/ojdbc14dms.jar:/perp/apps/bip_libs/ojdl.jar:/perp/apps/bip_libs/orai18n.jar:/perp/apps/bip_libs/orasaaj.jar:/perp/apps/bip_libs/soap.jar:/perp/apps/bip_libs/versioninfo.jar:/perp/apps/bip_libs/wsclient.jar:/perp/apps/bip_libs/wsclient_extended_101320.jar:/perp/apps/bip_libs/xdocore.jar:/perp/apps/bip_libs/xmlparserv2.jar:/perp/apps/bip_libs/xsdlib.jar:/perp/apps/bip_libs/bisample.jarCấu hình formsweb.cfg

Và cấu hình tương tự trong formsweb.cfg

[bip_webservice]envFile=bip_webservice.env

...

Test ứng dụng

Test ứng dụng bằng cách chạy form xuất báo cáo excel được tích hợp sẵn vào ứng dụng hoặc có thể chạy riêng biệt để kiểm tra(cần xem lại phần cấu hình perp để thực hiện bước này)

http://<host>:<port>/forms/frmservlet?config=bip_webservice

Add template va datatemplate vào BIPublisher

Các bước thực hiện

Đăng nhập BIPublisher bằng đường dẫn sau:

http://<host>:<port>/xmlpserver

Cấu hình connection

Chọn JDBC Connection

PERP SOLUTIONS Page 72 of 82

Page 73: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Chọn Add Data Source, sau đó tạo thêm 1 JDBC mới:

Tên Data Source là: test

Connection String là: jdbc:oracle:thin:@<host>:<port>:<sid>

Vidu: jdbc:oracle:thin:@192.168.20.8:1521:TEST

Click test để kiểm tra kết nối đến Database Oracle

Click Apply để lưu lại thay đổi.

Tao report mới

Click tab Report tạo thư mục mới để lưu trữ các báo cáo:

PERP SOLUTIONS Page 73 of 82

Page 74: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Tạo báo cáo mới và đặt tên báo cáo:

Add datasource

Sau đó chọn edit để hiệu chỉnh báo cáo, chọn Data Source để connect tới database dang sử dụng:

PERP SOLUTIONS Page 74 of 82

Page 75: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Click Save để lưu lại

Add data template

Chọn data model > click new để thêm mới

Nhập tên data model và chọn loại dữ liệu, ở đây ta chọn là data template

Copy data-template paste vào mục Details > DataTemplate:

<dataTemplate name="HR40732" defaultPackage="HR40732"><properties><property name="xml_tag_case" value="upper"/></properties><parameters><parameter name="P_USER_NAME" dataType="character"/><parameter name="P_EMP_ID" dataType="number"/><parameter name="P_CCE_ID" dataType="character"/><parameter name="P_AUS_ID" dataType="number"/><parameter name="P_TXT_TITLE" dataType="character" defaultValue="BẢNG THANH TOÁN LƯƠNG THÁNG 12 NĂM 2007"/><parameter name="P_OUN_ID" dataType="character"/><parameter name="P_REPORT_DATE" dataType="character"/><parameter name="P_GRO_ID" dataType="character"/><parameter name="P_END_DATE" dataType="character"/><parameter name="P_POS_ID" dataType="character"/><parameter name="P_APE_ID" dataType="character"/><parameter name="P_PLACE" dataType="character"/><parameter name="P_APE_START_DATE" dataType="character"/><parameter name="P_APE_END_DATE" dataType="character"/><parameter name="P_START_DATE" dataType="character"/></parameters>

PERP SOLUTIONS Page 75 of 82

Page 76: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

<lexicals></lexicals><dataQuery><sqlStatement name="Q_1"><![CDATA[SELECT S1.*, HR40732.cf_loaiformula(:CS_LOAI, LOAI_LUONG) CF_LOAI, HR40732.cf_cce_nameformula(CCE_NUMBER, CCE_NAME) CF_cce_name, HR40732.cf_21formula(COL_08, COL_09) CF_10, HR40732.cf_22formula(COL_19, COL_20, COL_21, COL_22, COL_23, COL_24) CF_25, HR40732.cf_05formula(COL_04, COL_05) CF_06FROM (SELECT 'LUONG THNG' loai_luong, POS.pos_sip, OUN.name oun_name, OUN.oun_number, CCE.cce_number, CCE.cce_name,EMP.emp_id, EMP.last_name, EMP.full_name col_02, EMP.emp_number col_03,PRO.salary_coefficient col_04, PRO.subsidy_coefficient col_05, PRO.amount_03 col_07, PRO.coefficient_01 col_08, PRO.coefficient_02 col_09, PRO.amount_06 col_11, PRO.amount_07 col_12, PRO.para_01 col_13, PRO.product_salary col_14, TO_NUMBER(PRO.attribute2) col_15,PRO.night_shift_salary col_16, PRO.other_income col_17, PRO.working_salary col_18, PRO.society_insurance_amount + PRO.health_insurance_amount + PRO.unemployed_insurance_amount col_19, PRO.tax_amount col_20, PRO.union_dues col_21, PRO.party_dues col_22, (PRO.amount_19 + PRO.amount_21) col_23, PRO.discount_amount col_24, TO_NUMBER(PRO.attribute7) col_26,TO_NUMBER(PRO.ATTRIBUTE1) cong_lt, PRO.QL_MARK cong_c3FROM organization_units OUN, cost_centers CCE, groups GRO, positions POS, process_of_works POW,employees EMP, pay_rolls PROWHERE OUN.oun_id = CCE.oun_id AND CCE.cce_id = PRO.cce_id AND GRO.gro_id = PRO.gro_id AND POS.pos_id(+) = POW.pos_id AND POW.emp_id = EMP.emp_id AND EMP.emp_id = PRO.emp_id AND NVL(CCE.cce_type, '0') <> 'CHXD' AND POW.from_date <= to_date(:p_end_date, 'dd-mm-rrrr') AND (POW.to_date >= to_date(:p_end_date, 'dd-mm-rrrr') OR POW.to_date IS NULL) AND (CCE.oun_id IN (SELECT oun_idFROM organization_units START WITH oun_id = :p_oun_id CONNECT BY PRIOR oun_id = oun_id_child_of) OR :p_oun_id IS NULL) AND (PRO.cce_id = :p_cce_id OR :p_cce_id IS NULL) AND (PRO.gro_id = :p_gro_id OR :p_gro_id IS NULL) AND (PRO.emp_id = :p_emp_id OR :p_emp_id IS NULL) AND (POW.pos_id = :p_pos_id OR :p_pos_id IS NULL) AND PRO.ape_id = :p_ape_idUNION ALL

SELECT Min('TRUY LINH/TRUY THU') loai_luong,Min(POS.pos_sip) KEEP (DENSE_RANK LAST ORDER BY POW.from_date) pos_sip, OUN.name oun_name, OUN.oun_number, CCE.cce_number, CCE.cce_name, EMP.emp_id, EMP.last_name, EMP.full_name col_02, EMP.emp_number col_03,SUM(TPR.salary_coefficient - PRO.salary_coefficient) col_04, SUM(TPR.subsidy_coefficient - PRO.subsidy_coefficient) col_05, SUM(TPR.amount_03 - PRO.amount_03) col_07, SUM(TPR.coefficient_01 - PRO.coefficient_01) col_08, SUM(TPR.coefficient_02 - PRO.coefficient_02) col_09, SUM(TPR.amount_06 - PRO.amount_06) col_11, SUM(TPR.amount_07 - PRO.amount_07) col_12, SUM(NULL) col_13, SUM(TPR.product_salary - PRO.product_salary) col_14, SUM(NVL(TO_NUMBER(TPR.attribute2),0) - NVL(TO_NUMBER(PRO.attribute2), 0)) col_15,SUM(TPR.night_shift_salary - PRO.night_shift_salary) col_16, SUM(TPR.other_income - PRO.other_income) col_17, SUM(TPR.working_salary - PRO.working_salary) col_18, SUM(TPR.society_insurance_amount - PRO.society_insurance_amount) + SUM(TPR.health_insurance_amount - PRO.health_insurance_amount) col_19, SUM(TPR.tax_amount - PRO.tax_amount) col_20, SUM(TPR.union_dues - PRO.union_dues) col_21,

PERP SOLUTIONS Page 76 of 82

Page 77: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

SUM(TPR.party_dues - PRO.party_dues) col_22,SUM(TPR.amount_19 - PRO.amount_19) col_23,SUM(TPR.discount_amount - PRO.discount_amount) col_24,SUM(TO_NUMBER(NVL(TPR.attribute7, '0')) - TO_NUMBER(NVL(PRO.attribute7,'0'))) col_26,SUM(NULL) cong_lt, SUM(NULL) cong_c3FROM organization_units OUN, cost_centers CCE, groups GRO, positions POS, process_of_works POW,employees EMP, temp_pay_rolls TPR, pay_rolls PROWHERE OUN.oun_id = CCE.oun_id AND CCE.cce_id = PRO.cce_id AND GRO.gro_id = PRO.gro_id AND POS.pos_id(+) = POW.pos_id AND POW.emp_id = EMP.emp_id AND EMP.emp_id = PRO.emp_id AND TPR.ape_id = PRO.ape_id AND TPR.emp_id = PRO.emp_id AND NVL(CCE.cce_type, '0') <> 'CHXD' AND (NVL(TPR.amount_03, 0) <> NVL(PRO.amount_03, 0) OR NVL(TPR.amount_06, 0) <> NVL(PRO.amount_06, 0) OR NVL(TPR.working_salary, 0) <> NVL(PRO.working_salary, 0)) AND POW.from_date <= to_date(:p_end_date, 'dd-mm-rrrr') AND (POW.to_date >= to_date(:p_end_date, 'dd-mm-rrrr') OR POW.to_date IS NULL) AND (CCE.oun_id IN (SELECT oun_idFROM organization_units START WITH oun_id = :p_oun_id CONNECT BY PRIOR oun_id = oun_id_child_of) OR :p_oun_id IS NULL) AND PRO.ape_id IN (SELECT ape_id FROM acc_periods WHERE start_date BETWEEN to_date(:p_ape_start_date, 'dd-mm-rrrr') AND to_date(:p_ape_end_date, 'dd-mm-rrrr') AND adjustment_period = 'N') AND (PRO.cce_id = :p_cce_id OR :p_cce_id IS NULL) AND (PRO.gro_id = :p_gro_id OR :p_gro_id IS NULL) AND (PRO.emp_id = :p_emp_id OR :p_emp_id IS NULL) AND (POW.pos_id = :p_pos_id OR :p_pos_id IS NULL)GROUP BY OUN.name, OUN.oun_number, CCE.cce_number, CCE.cce_name, EMP.emp_id, EMP.last_name, EMP.full_name, EMP.emp_number) S1ORDER BY S1.oun_number, S1.cce_number, S1.pos_sip, S1.last_name

]]></sqlStatement></dataQuery><dataStructure><group name="G_OUN" dataType="varchar2" source="Q_1"><element name="OUN_NUMBER" dataType="varchar2" value="OUN_NUMBER"/><element name="CS_LOAI" function="count" dataType="number" value="G_LOAI.LOAI_LUONG"/><element name="OUN_NAME" dataType="varchar2" value="OUN_NAME"/><element name="CS_04" function="sum" dataType="number" value="G_EMP_NAME.COL_04"/><element name="CS_05" function="sum" dataType="number" value="G_EMP_NAME.COL_05"/><element name="CS_06" function="sum" dataType="number" value="G_EMP_NAME.CF_06"/><element name="CS_07" function="sum" dataType="number" value="G_EMP_NAME.COL_07"/><element name="CS_08" function="sum" dataType="number" value="G_EMP_NAME.COL_08"/><element name="CS_09" function="sum" dataType="number" value="G_EMP_NAME.COL_09"/><element name="CS_10" function="sum" dataType="number" value="G_EMP_NAME.CF_10"/><element name="CS_11" function="sum" dataType="number" value="G_EMP_NAME.COL_11"/><element name="CS_12" function="sum" dataType="number" value="G_EMP_NAME.COL_12"/><element name="CS_13" function="sum" dataType="number" value="G_EMP_NAME.COL_13"/><element name="CS_14" function="sum" dataType="number" value="G_EMP_NAME.COL_14"/><element name="CS_15" function="sum" dataType="number" value="G_EMP_NAME.COL_15"/><element name="CS_16" function="sum" dataType="number" value="G_EMP_NAME.COL_16"/><element name="CS_17" function="sum" dataType="number" value="G_EMP_NAME.COL_17"/><element name="CS_18" function="sum" dataType="number" value="G_EMP_NAME.COL_18"/><element name="CS_19" function="sum" dataType="number" value="G_EMP_NAME.COL_19"/><element name="CS_20" function="sum" dataType="number" value="G_EMP_NAME.COL_20"/><element name="CS_21" function="sum" dataType="number" value="G_EMP_NAME.COL_21"/><element name="CS_22" function="sum" dataType="number" value="G_EMP_NAME.COL_22"/><element name="CS_23" function="sum" dataType="number" value="G_EMP_NAME.COL_23"/><element name="CS_24" function="sum" dataType="number" value="G_EMP_NAME.COL_24"/><element name="CS_25" function="sum" dataType="number" value="G_EMP_NAME.CF_25"/><element name="CS_26" function="sum" dataType="number" value="G_EMP_NAME.COL_26"/><element name="CS_CONG_LT" function="sum" dataType="number" value="G_EMP_NAME.CONG_LT"/><element name="CS_CONG_C3" function="sum" dataType="number" value="G_EMP_NAME.CONG_C3"/><group name="G_LOAI" dataType="varchar2" source="Q_1"><element name="LOAI_LUONG" dataType="varchar2" value="LOAI_LUONG"/><element name="CF_LOAI" dataType="varchar2" value="CF_LOAI"/><element name="STT_OUN" function="count" dataType="number" value="G_EMP_NAME.EMP_ID"/><group name="G_CCE" dataType="varchar2" source="Q_1"><element name="CCE_NAME" dataType="varchar2" value="CCE_NAME"/><element name="CCE_NUMBER" dataType="varchar2" value="CCE_NUMBER"/><element name="CF_cce_name" dataType="varchar2" value="CF_cce_name"/><group name="G_EMP_NAME" dataType="varchar2" source="Q_1"><element name="CONG_LT" dataType="number" value="CONG_LT"/><element name="CONG_C3" dataType="number" value="CONG_C3"/><element name="COL_05" dataType="number" value="COL_05"/><element name="COL_21" dataType="number" value="COL_21"/><element name="COL_22" dataType="number" value="COL_22"/><element name="COL_02" dataType="varchar2" value="COL_02"/><element name="COL_03" dataType="varchar2" value="COL_03"/>

PERP SOLUTIONS Page 77 of 82

Page 78: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

<element name="COL_04" dataType="number" value="COL_04"/><element name="COL_07" dataType="number" value="COL_07"/><element name="COL_08" dataType="number" value="COL_08"/><element name="COL_09" dataType="number" value="COL_09"/><element name="COL_11" dataType="number" value="COL_11"/><element name="COL_12" dataType="number" value="COL_12"/><element name="COL_13" dataType="number" value="COL_13"/><element name="COL_14" dataType="number" value="COL_14"/><element name="COL_15" dataType="number" value="COL_15"/><element name="COL_16" dataType="number" value="COL_16"/><element name="COL_17" dataType="number" value="COL_17"/><element name="COL_18" dataType="number" value="COL_18"/><element name="COL_19" dataType="number" value="COL_19"/><element name="COL_20" dataType="number" value="COL_20"/><element name="COL_23" dataType="number" value="COL_23"/><element name="COL_24" dataType="number" value="COL_24"/><element name="COL_26" dataType="number" value="COL_26"/><element name="EMP_ID" dataType="varchar2" value="EMP_ID"/><element name="LAST_NAME" dataType="varchar2" value="LAST_NAME"/><element name="POS_SIP" dataType="number" value="POS_SIP"/><element name="CF_10" dataType="number" value="CF_10"/><element name="CF_25" dataType="number" value="CF_25"/><element name="CF_06" dataType="number" value="CF_06"/></group></group></group></group><element name="CF_co_logo" dataType="varchar2" value="HR40732.cf_co_logoformula()"/><element name="CF_co_name" dataType="varchar2" value="HR40732.cf_co_nameformula()"/><element name="CF_group_name" dataType="varchar2" value="HR40732.cf_group_nameformula()"/><element name="CF_report_date" dataType="varchar2" value="HR40732.cf_report_dateformula()"/><element name="CF_report_title" dataType="varchar2" value="HR40732.cf_report_title()"/></dataStructure></dataTemplate>

Add parameter

Thêm các tham số giá trị để test báo cáo:

PERP SOLUTIONS Page 78 of 82

Page 79: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Upload template

Upload mẫu báo cáo dược thiết kế lên BIPublisher Server > Chọn nút Browser để chọn file rtf cần upload > sau đó chọn Upload

Click Save để lưu lại các thay đổi, BIPublisher tự động tạo ra file .xdo được lưu trên server.

View reports

sau đó click View để xem lai báo cáo vừa thêm:

Nhập giá trị cần test vào sau đó click view:

PERP SOLUTIONS Page 79 of 82

Page 80: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Kết quả xuất ra theo nhiều định dang(rtf, pdf, word, excel, html, xml data,..) tùy theo yêu cầu:

Backup template vừa tạo

Sau đó vào thư mục /perp/orasoft/BIPHome1/xmlp/XMLP/Users/~administrator để kiểm tra file xdo vừa tạo. Backup thư muc chứa các file xdo và template để restore & recover các báo cáo khi cần thiết.

PERP SOLUTIONS Page 80 of 82

Page 81: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Phần 6: Start & stop serviceStart - Stop Database

Start listener & database[root@perp-center ~]# su – oracle[oracle@perp-center ~]$ cd /perp/orasoft/product/10.2.0/db10gr2/bin[oracle@perp-center bin]$ export ORACLE_HOME=/perp/orasoft/product/10.2.0/db10gr2[oracle@perp-center bin]$ ./lsnrctl status[oracle@perp-center bin]$ ./lsnrctl start[oracle@perp-center bin]$ ./sqlplus / as sysdbasql>startupsql>exit

Stop listener & database[root@perp-center ~]# su – oracle[oracle@perp-center ~]$ cd /perp/orasoft/product/10.2.0/db10gr2/bin[oracle@perp-center bin]$ export ORACLE_HOME=/perp/orasoft/product/10.2.0/db10gr2[oracle@perp-center bin]$ ./lsnrctl status [oracle@perp-center bin]$ ./sqlplus / as sysdbasql>shutdown immediatesql>exit[oracle@perp-center bin]$ ./lsnrctl stop

Start & stop Oracle Application Server

Start Oracle Application Server

[oracle@perp-center ~]$ cd /perp/orasoft/product/10.2.0/frs10gr2/bin

[oracle@perp-center bin]$ export ORACLE_HOME=/perp/orasoft/product/10.2.0/frs10gr2

[oracle@perp-center bin]$ ./emctl status iasconsole

[oracle@perp-center bin]$ ./emctl start iasconsole

[oracle@perp-center bin]$ cd ../opmn/bin

[oracle@perp-center bin]$ ./opmnctl status

[oracle@perp-center bin]$ ./opmnctl startallStop Oracle Application Server

[oracle@perp-center ~]$ cd /perp/orasoft/product/10.2.0/frs10gr2/bin

[oracle@perp-center bin]$ export ORACLE_HOME=/perp/orasoft/product/10.2.0/frs10gr2

[oracle@perp-center bin]$ ./emctl status iasconsole

[oracle@perp-center bin]$ ./emctl stop iasconsole

[oracle@perp-center bin]$ cd ../opmn/bin

[oracle@perp-center bin]$ ./opmnctl status

[oracle@perp-center bin]$ ./opmnctl stopall

PERP SOLUTIONS Page 81 of 82

Page 82: Tai lieu quan tri he thong erp oracle

tailieuquantrihethongerporacle-160506072133.DOC PERP/DO020PYTHIS

Start & stop BIPublisher Server

Start: /perp/orasoft/BIPHome1/oc4j_bi/bin/oc4j -startStop: /perp/orasoft/BIPHome1/oc4j_bi/bin/oc4j -shutdown -port <ORMI port> -password <password>Hoặc click <ctrl + c> ngay trên terminal BIPublisher đang start để stop BIPublisher

PERP SOLUTIONS Page 82 of 82