Sie sind auf Seite 1von 2

August 11, 2008

How to Get Supplier Bank Detail In R12


Filed under: Oracle Application,Oracle Payables,Oracle Purchasing,SQL Tags:
hz_code_assignments, hz_organization_profiles, hz_parties, IBY_EXT_BANK_ACCOUNTS,
Supplier Bank In R12 Ahmad Bilal @ 1:26 pm
In Release 12, Payables Supplier Bank Information is stored somewhere else instead of PO_VENDORS table as in
11i. After going thru the guides, it seems that the bank information (such as bank account numbers, etc) for suppliers
may be in TCA or in Cash Management Bank Model. Please provide the tables names where bank account
information and other bank related information is stored?
By Using Following Queries you can get Required Information on Basis on Supplier Site Name
/* For Supplier Bank Account Number Use This One */
SELECT bank_account_name, bank_account_num, branch_id
FROM iby_ext_bank_accounts
WHERE ext_bank_account_id IN (
SELECT ext_bank_account_id
FROM iby_account_owners
WHERE account_owner_party_id IN (
SELECT party_id
FROM hz_party_sites
WHERE party_site_name LIKE
'%UPC%'))
/* USE THIS QUERY TO GET BANK NAME AND BANK BRANCH NAME OF SUPPLIER BANK*/
SELECT bankorgprofile.home_country bank_home_country,
bankorgprofile.party_id bank_party_id,
bankorgprofile.organization_name bank_name,
bankorgprofile.bank_or_branch_number bank_number,
branchparty.party_id branch_party_id,
branchparty.party_name bank_branch_name, branchparty.party_id
FROM hz_organization_profiles bankorgprofile,
hz_code_assignments bankca,
hz_parties branchparty,
hz_organization_profiles branchorgprofile,
hz_code_assignments branchca,
hz_relationships brrel,
hz_code_assignments branchtypeca,
hz_contact_points branchcp,
hz_contact_points edicp
WHERE SYSDATE BETWEEN TRUNC (bankorgprofile.effective_start_date)
AND NVL (TRUNC (bankorgprofile.effective_end_date),
SYSDATE + 1
)
AND bankca.class_category = 'BANK_INSTITUTION_TYPE'
AND bankca.class_code IN ('BANK', 'CLEARINGHOUSE')
AND bankca.owner_table_name = 'HZ_PARTIES'
AND (bankca.status = 'A' OR bankca.status IS NULL)
AND bankca.owner_table_id = bankorgprofile.party_id

AND
AND
AND
AND

AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND
AND

branchparty.party_type = 'ORGANIZATION'
branchparty.status = 'A'
branchorgprofile.party_id = branchparty.party_id
SYSDATE BETWEEN TRUNC (branchorgprofile.effective_start_date)
AND NVL (TRUNC (branchorgprofile.effective_end_date),
SYSDATE + 1
)
branchca.class_category = 'BANK_INSTITUTION_TYPE'
branchca.class_code IN ('BANK_BRANCH', 'CLEARINGHOUSE_BRANCH')
branchca.owner_table_name = 'HZ_PARTIES'
(branchca.status = 'A' OR branchca.status IS NULL)
branchca.owner_table_id = branchparty.party_id
bankorgprofile.party_id = brrel.object_id
brrel.relationship_type = 'BANK_AND_BRANCH'
brrel.relationship_code = 'BRANCH_OF'
brrel.status = 'A'
brrel.subject_table_name = 'HZ_PARTIES'
brrel.subject_type = 'ORGANIZATION'
brrel.object_table_name = 'HZ_PARTIES'
brrel.object_type = 'ORGANIZATION'
brrel.subject_id = branchparty.party_id
branchtypeca.class_category(+) = 'BANK_BRANCH_TYPE'
branchtypeca.primary_flag(+) = 'Y'
branchtypeca.owner_table_name(+) = 'HZ_PARTIES'
branchtypeca.owner_table_id(+) = branchparty.party_id
branchtypeca.status(+) = 'A'
branchcp.owner_table_name(+) = 'HZ_PARTIES'
branchcp.owner_table_id(+) = branchparty.party_id
branchcp.contact_point_type(+) = 'EFT'
branchcp.status(+) = 'A'
edicp.owner_table_name(+) = 'HZ_PARTIES'
edicp.owner_table_id(+) = branchparty.party_id
edicp.contact_point_type(+) = 'EDI'
edicp.status(+) = 'A'

AND branchca.owner_table_id = :iby_branch_id /*USER BRANCH ID FROM ABOVE


QUERY*/
If anyone have a better solution then please update

Das könnte Ihnen auch gefallen