-- Group: billingSelections
-- Name: detail
-- Notes: used by dspBillingSelections
--- Copyright (c) 1999-2014 by OpenMFG LLC, d/b/a xTuple.
--- See www.xtuple.com/CPAL for the full text of the software license.
+-- Copyright (c) 1999-2014 by OpenMFG LLC, d/b/a xTuple.
+-- See www.xtuple.com/CPAL for the full text of the software license.
SELECT cobmisc_id, cohead_id,
cohead_number, cust_number, cust_name,
WHERE ((cobmisc_cohead_id=cohead_id)
AND (cohead_cust_id=cust_id)
AND (coitem_cohead_id=cohead_id)
- AND (cobill_coitem_id=coitem_id)
+ AND (cobill_coitem_id=coitem_id) AND (COALESCE(cobill_invcnum,0) = 0)
AND (NOT cobmisc_posted))
GROUP BY cobmisc_id, cohead_id, cohead_number, cust_number,
cust_name, cobmisc_misc, cobmisc_freight, cobmisc_tax, cobmisc_payment
-CREATE OR REPLACE FUNCTION _usrprivTrigger() RETURNS TRIGGER AS $$
+CREATE OR REPLACE FUNCTION _usrprivTrigger() RETURNS TRIGGER AS $$
-- Copyright (c) 1999-2014 by OpenMFG LLC, d/b/a xTuple.
-- See www.xtuple.com/CPAL for the full text of the software license.
DECLARE
-- This looks like a candidate for a foreign key but isn't.
-- fkeys don't work if the foreign key value resides in a child of the
-- table and not the table itself.
+ IF (NOT EXISTS(SELECT usrpriv_id
+ FROM usrpriv, priv
+ WHERE ((usrpriv_priv_id=priv_id) AND (priv_name ='MaintainUsers')
+ AND (usrpriv_username=geteffectivextuser())))) THEN
+ RAISE EXCEPTION 'User have no privileges to modify user privileges.';
+ END IF;
+
IF ((TG_OP = 'UPDATE' OR TG_OP = 'INSERT') AND
(NOT EXISTS(SELECT priv_id
FROM priv