IF _ar.aropen_journalnumber IS NULL THEN
RAISE EXCEPTION 'not a valid open id..';
END IF;
---
--- -- verify dupes
--- SELECT count(aropen_id) INTO v_tmp FROM aropen WHERE
--- aropen_journalnumber = _ar.aropen_journalnumber;
---
--- IF (v_tmp != 1 ) THEN
--- RAISE EXCEPTION 'duplicate aropen with same journal number % found ' , _ar.aropen_journalnumber;
--- END IF;
---
- --
-
- -- looking for (123 (discrep) ,135,153);
-
- -- alterntaive case - an invoice is to/from accnt id 150/149 (direct ship?);
SELECT
--araccnt_freight_accnt_id
RAISE EXCEPTION 'aropen is missing gltrans in A/R account aropen_id=%' ,i_aropen_id;
END IF;
-
--- SELECT
--- gltrans_sequence,
--- gltrans_amount
--- INTO
--- v_gl_seq,
--- v_gl_ar_amount
--- FROM
--- gltrans
--- WHERE
--- gltrans_journalnumber = _ar.aropen_journalnumber
--- AND
--- gltrans_accnt_id = v_ar_accnt_id;
---
--- IF NOT FOUND THEN
--- -- if it's a reciept without any applications?
--- -- then nothing is posted to A/R
--- SELECT
--- gltrans_sequence,
--- gltrans_amount
--- INTO
--- v_gl_seq,
--- v_gl_ar_amount
--- FROM
--- gltrans
--- WHERE
---
--- gltrans_journalnumber = _ar.aropen_journalnumber
--- AND
--- gltrans_accnt_id = v_credit_accnt_id
--- AND
--- gltrans_amount > 0;
--- IF NOT FOUND THEN
---
--- RAISE EXCEPTION 'can not find sequence for journaln nubmer %, accnt_id = %',_ar.aropen_journalnumber,v_credit_accnt_id ;
--- END IF;
--- END IF;
---
--- -- we should verify this apopen..
---
---
--- SELECT
--- gltrans_id,
--- gltrans_misc_id,
--- gltrans_amount * -1.0,
--- ROUND( _ar.aropen_amount / _ar.aropen_curr_rate, 3 ) - ROUND(-1.0 * gltrans_amount,3)
--- INTO
--- v_gl_id,
--- v_gl_misc_id,
--- v_gltrans_amount,
--- v_diff
--- FROM
--- gltrans
--- WHERE
--- gltrans_sequence = v_gl_seq
--- AND
--- gltrans_accnt_id = v_credit_accnt_id
--- AND
--- -- within $1
--- ROUND( _ar.aropen_amount / _ar.aropen_curr_rate, 2 ) > (ROUND(-1.0 * gltrans_amount,2) -1)
--- AND
--- ROUND( _ar.aropen_amount / _ar.aropen_curr_rate, 2 ) < (ROUND(-1.0 * gltrans_amount,2) +1)
--- AND
--- gltrans_source = 'A/R'
--- AND
--- gltrans_doctype = 'CM'
--- LIMIT 1;
---
--- IF NOT FOUND THEN
---
--- -- IF v_order_number IS NULL OR v_order_number = '' THEN
--- -- RAISE NOTICE 'skip aropen, as it points to a direct shipment?';
--- -- RETURN 'SKIP';
--- -- END IF;
---
--- -- IF _ar.aropen_amount = 0.00 THEN
--- -- RAISE NOTICE 'skip aropen, zero dollar';
--- -- RETURN 'SKIP';
--- -- END IF;
---
---
---
--- RAISE EXCEPTION 'aropen is missing gltrans in A/R account aropen_id=% glseq=%, accnt_id=% value=%' ,i_aropen_id, v_gl_seq, v_credit_accnt_id, _ar.aropen_amount / _ar.aropen_curr_rate ;
--- END IF;
-
IF (v_gl_misc_id IS NULL) THEN
-- UPDATE gltrans SET gltrans_misc_id = i_aropen_id WHERE gltrans_id = v_gl_id;
END IF;