Diễn đàn TVKT PYTHIS
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Hiện Record History ở form customize.

2 posters

Go down

Hiện Record History ở form customize. Empty Hiện Record History ở form customize.

Bài gửi by pts_chiennh Wed Aug 18, 2010 1:19 pm

Chào các ACE.

Record History là 1 tính năng rất tiện dụng nhằm trace dữ liệu. Vào help>Record History ( lol! )(viết cho đầy đủ thôi chớ ai cũng biết rồi)

Đối với form chuẩn của Oracle thì tính năng này (record history) thì khỏi phải nói, còn đối với form customize thì sao?? (mờ tịt hà)
Vậy làm sao để cho nó sáng lên?? Qua vài thao tác như sau:
1. Vào PL/SQL developer >tìm đến table (tbl mà mình tham chiếu từ FORM BUILDER thông qua block) .
vd:
trong Form builder e có 1 block gọi là OM_CACULATE_PRICE_ALL tham chiếu đến tbl OM_CACULATE_PRICE_ALL trong Database

2. Thêm các field này vào OM_CACULATE_PRICE_ALL
CREATED_BY NUMBER Y
CREATION_DATE DATE Y
LAST_UPDATED_BY NUMBER Y
LAST_UPDATE_DATE DATE Y
LAST_UPDATE_LOGIN NUMBER Y

3. Quay trở lại Form builder thêm các item :
CREATED_BY
CREATION_DATE
LAST_UPDATED_BY
LAST_UPDATE_DATE
LAST_UPDATE_LOGIN
để tham chiếu đến các fields mình thêm ở trong database

4. Đồng thời ở trigger pre-insert (tại block OM_CACULATE_PRICE_ALL) thêm vài dòng mã :
:OM_CACULATE_PRICE_ALL.CREATED_BY := FND_GLOBAL.USER_ID;
:OM_CACULATE_PRICE_ALL.CREATION_DATE := sysdate;
:OM_CACULATE_PRICE_ALL.LAST_UPDATE_LOGIN:=fnd_profile.value('LOGIN_ID');
FND_STANDARD.SET_WHO;

Tương tự với trigger pre-update (cũng tại block OM_CACULATE_PRICE_ALL):

:OM_CACULATE_PRICE_ALL.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
:OM_CACULATE_PRICE_ALL.LAST_UPDATE_DATE := sysdate;
:OM_CACULATE_PRICE_ALL.LAST_UPDATE_LOGIN:=fnd_profile.value('LOGIN_ID');

FND_STANDARD.SET_WHO;

5. Lưu và builder lên server
6.Hoàn thành

Kết quả đây nè:

Hiện Record History ở form customize. 8-18-201012-46-22PM

TFR.

pts_chiennh

Tổng số bài gửi : 24
Join date : 31/07/2010

Về Đầu Trang Go down

Hiện Record History ở form customize. Empty Re: Hiện Record History ở form customize.

Bài gửi by lão_bà Wed Aug 18, 2010 2:25 pm

pts_chiennh đã viết:Chào các ACE.

Record History là 1 tính năng rất tiện dụng nhằm trace dữ liệu. Vào help>Record History ( lol! )(viết cho đầy đủ thôi chớ ai cũng biết rồi)

Đối với form chuẩn của Oracle thì tính năng này (record history) thì khỏi phải nói, còn đối với form customize thì sao?? (mờ tịt hà)
Vậy làm sao để cho nó sáng lên?? Qua vài thao tác như sau:
1. Vào PL/SQL developer >tìm đến table (tbl mà mình tham chiếu từ FORM BUILDER thông qua block) .
vd:
trong Form builder e có 1 block gọi là OM_CACULATE_PRICE_ALL tham chiếu đến tbl OM_CACULATE_PRICE_ALL trong Database

2. Thêm các field này vào OM_CACULATE_PRICE_ALL
CREATED_BY NUMBER Y
CREATION_DATE DATE Y
LAST_UPDATED_BY NUMBER Y
LAST_UPDATE_DATE DATE Y
LAST_UPDATE_LOGIN NUMBER Y

3. Quay trở lại Form builder thêm các item :
CREATED_BY
CREATION_DATE
LAST_UPDATED_BY
LAST_UPDATE_DATE
LAST_UPDATE_LOGIN
để tham chiếu đến các fields mình thêm ở trong database

4. Đồng thời ở trigger pre-insert (tại block OM_CACULATE_PRICE_ALL) thêm vài dòng mã :
:OM_CACULATE_PRICE_ALL.CREATED_BY := FND_GLOBAL.USER_ID;
:OM_CACULATE_PRICE_ALL.CREATION_DATE := sysdate;
:OM_CACULATE_PRICE_ALL.LAST_UPDATE_LOGIN:=fnd_profile.value('LOGIN_ID');
FND_STANDARD.SET_WHO;

Tương tự với trigger pre-update (cũng tại block OM_CACULATE_PRICE_ALL):

:OM_CACULATE_PRICE_ALL.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
:OM_CACULATE_PRICE_ALL.LAST_UPDATE_DATE := sysdate;
:OM_CACULATE_PRICE_ALL.LAST_UPDATE_LOGIN:=fnd_profile.value('LOGIN_ID');

FND_STANDARD.SET_WHO;

5. Lưu và builder lên server
6.Hoàn thành

Kết quả đây nè:

Hiện Record History ở form customize. 8-18-201012-46-22PM

TFR.
Goodjob, cái này rất hữu ích và xứng đáng được thưởng nè. Mai mốt đi karaoke nhớ nhắc lão bố trí cho 1 em chân dài nhé cheers
lão_bà
lão_bà

Tổng số bài gửi : 45
Join date : 30/07/2010

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết