Monday, October 18, 2010

How to incorporate the logic of viewing the concurrent request output from the custom form?

If the requirement is to incorporate the logic of viewing the concurrent request output from the custom form instead of viewing the output through standard view request form, apply the below approach.

1. Attach FNDCONC.pll file to the custom form.
2. In the WHEN-BUTTON-PRESS trigger of the object in the custom form call the following package
EDITOR_PKG.REPORT(req_id, save_output_flag);

Tuesday, October 5, 2010

Vendors with no Invoices

select segment1 VENDOR#,

vendor_name NAME,
vendor_site_code SITE_CODE,
end_date_active VEND_INACTIVE,
inactive_date SITE_INACTIVE
from po_vendors vend,
po_vendor_sites_all sites,
ap_invoices_all inv
where vend.vendor_id = sites.vendor_id
and sites.vendor_site_id = inv.vendor_site_id(+)
and inv.vendor_site_id is null;

Fetch Profile values at different levels

This query will give the values of the profile option set at different level. Use the profile option name or user profile option name which you see in the front end.

SELECT user_profile_option_name,SUBSTR(e.profile_option_name,1,25) PROFILE
,DECODE(a.level_id,10001,'Site',10002,'Application',10003,'Resp',10004,'User') "Level"
,DECODE(a.level_id,10001,'Site',10002,c.application_short_name,10003,b.responsibility_name,10004,d.user_name) LValue
,NVL(a.profile_option_value,'Is Null') Value
,SUBSTR(a.last_update_date,1,25) UPDATED_DATE
FROM fnd_profile_option_values a
, fnd_responsibility_tl b
, fnd_application c
,fnd_user d
, fnd_profile_options e
, fnd_profile_options_tl f
WHERE 1=1
AND f.user_profile_option_name in ('&User_Profile_Name')
AND e.profile_option_id = a.profile_option_id AND a.level_value = b.responsibility_id (+)
AND a.level_value = c.application_id (+) AND a.level_value = d.user_id (+)
AND f.PROFILE_OPTION_NAME(+)=e.profile_option_name
ORDER BY e.profile_option_name;

Reference