core-jgi/db/ddlutils/postgresql/views/RV_BPARTNER.sql

164 lines
5.9 KiB
MySQL
Raw Normal View History

DROP VIEW rv_bpartner;
CREATE OR REPLACE VIEW rv_bpartner AS
SELECT bp.ad_client_id,
bp.ad_org_id,
bp.isactive,
bp.created,
bp.createdby,
bp.updated,
bp.updatedby,
bp.c_bpartner_id,
bp.value,
bp.name,
bp.name2,
bp.description,
bp.issummary,
bp.c_bp_group_id,
bp.isonetime,
bp.isprospect,
bp.isvendor,
bp.iscustomer,
bp.isemployee,
bp.issalesrep,
bp.referenceno,
bp.duns,
bp.url,
bp.ad_language,
bp.taxid,
bp.istaxexempt,
bp.c_invoiceschedule_id,
bp.rating,
bp.salesvolume,
bp.numberemployees,
bp.naics,
bp.firstsale,
bp.acqusitioncost,
bp.potentiallifetimevalue,
bp.actuallifetimevalue,
bp.shareofcustomer,
bp.paymentrule,
bp.so_creditlimit,
bp.so_creditused,
bp.so_creditused - bp.so_creditlimit AS so_creditavailable,
bp.c_paymentterm_id,
bp.m_pricelist_id,
bp.m_discountschema_id,
bp.c_dunning_id,
bp.isdiscountprinted,
bp.so_description,
bp.poreference,
bp.paymentrulepo,
bp.po_pricelist_id,
bp.po_discountschema_id,
bp.po_paymentterm_id,
bp.documentcopies,
bp.c_greeting_id,
bp.invoicerule,
bp.deliveryrule,
bp.freightcostrule,
bp.deliveryviarule,
bp.salesrep_id,
bp.sendemail,
bp.bpartner_parent_id,
bp.invoice_printformat_id,
bp.socreditstatus,
bp.shelflifeminpct,
bp.ad_orgbp_id,
bp.flatdiscount,
bp.totalopenbalance,
c.ad_user_id,
c.name AS contactname,
c.description AS contactdescription,
c.email,
c.supervisor_id,
c.emailuser,
c.c_greeting_id AS bpcontactgreeting,
c.title,
c.comments,
c.phone,
c.phone2,
c.fax,
c.lastcontact,
c.lastresult,
c.birthday,
c.ad_orgtrx_id,
c.emailverify,
c.ldapuser,
c.emailverifydate,
c.notificationtype,
l.c_bpartner_location_id,
a.postal,
a.city,
a.address1,
a.address2,
a.address3,
a.c_region_id,
COALESCE(r.name, a.regionname) AS regionname,
a.c_country_id,
cc.name AS countryname,
bp.c_taxgroup_id AS c_bp_c_taxgroup_id,
bp.dunninggrace AS c_bp_dunninggrace,
bp.ismanufacturer AS c_bp_ismanufacturer,
bp.ispotaxexempt AS c_bp_ispotaxexempt,
bp.logo_id AS c_bp_logo_id,
l.ad_org_id AS c_bp_location_ad_org_id,
l.c_bpartner_id AS c_bp_location_c_bpartner_id,
l.c_location_id AS c_bp_location_c_location_id,
l.created AS c_bp_location_created,
l.createdby AS c_bp_location_createdby,
l.c_salesregion_id AS c_bp_location_salesregion_id,
l.fax AS c_bp_location_fax,
l.isactive AS c_bp_location_isactive,
l.isbillto AS c_bp_location_isbillto,
l.isdn AS c_bp_location_isdn,
l.ispayfrom AS c_bp_location_ispayfrom,
l.isremitto AS c_bp_location_isremitto,
l.isshipto AS c_bp_location_isshipto,
l.name AS c_bp_location_name,
l.phone AS c_bp_location_phone,
l.phone2 AS c_bp_location_phone2,
l.updated AS c_bp_location_updated,
l.updatedby AS c_bp_location_updatedby,
c.ad_org_id AS ad_user_ad_org_id,
c.c_bpartner_id AS ad_user_c_bpartner_id,
c.c_bpartner_location_id AS ad_user_c_bpartner_location_id,
c.created AS ad_user_created,
c.createdby AS ad_user_createdby,
c.isactive AS ad_user_isactive,
c.updated AS ad_user_updated,
c.updatedby AS ad_user_updatedby,
c.value AS ad_user_value,
a.address4,
a.ad_org_id AS c_location_ad_org_id,
a.c_city_id,
a.c_location_id,
a.created AS c_location_created,
a.createdby AS c_location_createdby,
a.isactive AS c_location_isactive,
a.postal_add,
a.updated AS c_location_updated,
a.updatedby AS c_location_updatedby,
r.ad_org_id AS c_region_ad_org_id,
r.c_country_id AS c_region_c_country_id,
r.description AS c_region_description,
r.isactive AS c_region_isactive,
r.isdefault,
cc.ad_language AS c_country_ad_language,
cc.c_currency_id AS c_country_c_currency_id,
cc.countrycode,
cc.description AS c_country_description,
cc.isactive AS c_country_isactive
FROM c_bpartner bp
LEFT JOIN c_bpartner_location l
ON bp.c_bpartner_id = l.c_bpartner_id AND l.isactive = 'Y'
LEFT JOIN ad_user c
ON bp.c_bpartner_id = c.c_bpartner_id AND (c.c_bpartner_location_id IS NULL OR c.c_bpartner_location_id = l.c_bpartner_location_id) AND c.isactive = 'Y'
LEFT JOIN c_location a
ON l.c_location_id = a.c_location_id
LEFT JOIN c_region r
ON a.c_region_id = r.c_region_id
JOIN c_country cc
ON a.c_country_id = cc.c_country_id
;