Home » SQL & PL/SQL » SQL & PL/SQL » ORACLE error 6550 in FDPSTP
ORACLE error 6550 in FDPSTP [message #543619] Wed, 15 February 2012 23:06 Go to next message
GoGreen
Messages: 28
Registered: February 2012
Location: Java Island
Junior Member

Hi,

I am creating a package. In case my package, i am want to run pararel all procedure (FillAndSend_IM1,FillAndSend_IM2,FillAndSend_IM3,FillAndSend_IM4 ) .

in package i using dbms_job.submit,

dbms_job.submit( l_job, 'FillAndSend_IM1;' );
dbms_job.submit( l_job, 'FillAndSend_IM2;' );
dbms_job.submit( l_job, 'FillAndSend_IM3;' );
dbms_job.submit( l_job, 'FillAndSend_IM4;' );

when procedure is runing , found error
"ORACLE error 6550 in FDPSTP

Cause: FDPSTP failed due to ORA-06550: line 1, column 93:
PLS-00201: identifier 'FILLANDSEND_IM1' must be declared"

How and where i must be declared ?

Thank you,
gvE5

Re: ORACLE error 6550 in FDPSTP [message #543630 is a reply to message #543619] Thu, 16 February 2012 00:59 Go to previous messageGo to next message
Michel Cadot
Messages: 68770
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
When you are running the procedure which contains this code or when the job is running?
Are ALL the ' correct in your code?

Use SQL*Plus and copy and paste your session, the WHOLE session.

Before, Please read OraFAQ Forum Guide and How to use [code] tags and make your code easier to read.
Make sure that lines of code do not exceed 80 characters when you format.
Indent the code, use code tags and align the columns in result.
Use the "Preview Message" button to verify.
Also always post your Oracle version, with 4 decimals.

Regards
Michel
Re: ORACLE error 6550 in FDPSTP [message #543798 is a reply to message #543630] Thu, 16 February 2012 21:51 Go to previous messageGo to next message
GoGreen
Messages: 28
Registered: February 2012
Location: Java Island
Junior Member

DB 9.2.0.6
OS SUN

I want Job running in procedure, and I have attached a sample procedure.

Procedure fillandsend_im2; fillandsend_im3 and fillandsend_im4 not copy because same as fillandsend_im1 different in parameter where " AND SUBSTR (Gr_store, 3, 3) BETWEEN '100' AND '140'" => im2 SUBSTR (Gr_store, 3, 3) between '141' and '170' ,im3 SUBSTR (Gr_store, 3, 3) between '111' and '200', im4 SUBSTR (Gr_store, 3, 3) between '201' and '300',

record by site := 100 record.

I hope the process can be faster, if using a parallel process, and now the process is running 4 hours. start 7.00 finish 11.00.

Sorry if code not good, because i am beginner Smile

Thanks
GVE5


Re: ORACLE error 6550 in FDPSTP [message #543799 is a reply to message #543798] Thu, 16 February 2012 22:04 Go to previous messageGo to next message
GoGreen
Messages: 28
Registered: February 2012
Location: Java Island
Junior Member

i having correction "parameter where" in procedure fillandsend_im3 SUBSTR (Gr_store, 3, 3) between '171' and '200'

thanks
GVE5
Re: ORACLE error 6550 in FDPSTP [message #543806 is a reply to message #543799] Fri, 17 February 2012 00:56 Go to previous messageGo to next message
Michel Cadot
Messages: 68770
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
You didn't answer to my question:
Quote:
[The error raises] When you are running the procedure which contains this code or when the job is running?


You didn't post what I asked:
Quote:
Use SQL*Plus and copy and paste your session, the WHOLE session


Many of us can't or don't want to download files, so post them inline in text mode and post them formatted.

First thing: comment all WHEN OTHERS part and rerun (and post us, that is copy and paste, the result).

Regards
Michel
Re: ORACLE error 6550 in FDPSTP [message #543834 is a reply to message #543806] Fri, 17 February 2012 02:58 Go to previous messageGo to next message
GoGreen
Messages: 28
Registered: February 2012
Location: Java Island
Junior Member

When you are running the procedure which contains this code or when the job is running?

---- When I running the procedure which contains this code

execute ap_im_int_pkg.ap_im_int_start;
found error :
ORA-06550: line 1, column 93:
PLS-00201: identifier 'FILLANDSEND_IM1' must be declared
ORA-06550: line 1, column 93:
PL/SQL: Statement ignored


Sorry , text can't inline and formatted, i has been create in notepad and result inline and formatted. when i copy & paste in Posting form body .( justification is left ) .

thanks
GvE5

CREATE OR REPLACE PACKAGE ap_im_int_pkg
AS
PROCEDURE ap_im_int_start;

PROCEDURE gr2ora_im;

PROCEDURE fillandsend_im1;

PROCEDURE temp2orawksh (
vinvoice_id ap_invoices_interface.invoice_id%TYPE,
vinvoice_num ap_invoices_interface.invoice_num%TYPE,
vinvoice_type_lookup_code ap_invoices_interface.invoice_type_lookup_code%TYPE,
vinvoice_date ap_invoices_interface.invoice_date%TYPE,
vvendor_num ap_invoices_interface.vendor_num%TYPE,
vvendor_site_code ap_invoices_interface.vendor_site_code%TYPE,
vinvoice_amount ap_invoices_interface.invoice_amount%TYPE,
vinvoice_currency_code ap_invoices_interface.invoice_currency_code%TYPE,
vterms_id ap_invoices_interface.terms_id%TYPE,
vterms_name ap_invoices_interface.terms_name%TYPE,
vdescription ap_invoices_interface.description%TYPE,
vpay_group_lookup_code ap_invoices_interface.pay_group_lookup_code%TYPE,
vgl_date ap_invoices_interface.gl_date%TYPE,
vterms_date ap_invoices_interface.terms_date%TYPE,
vattribute2 ap_invoices_interface.attribute2%TYPE,
vorg_id ap_invoices_interface.org_id%TYPE,
vattribute3 VARCHAR2,
vattribute4 VARCHAR2
);

PROCEDURE temp2orawksd (
vinvoice_id ap_invoice_lines_interface.invoice_id%TYPE,
vinvoice_line_id ap_invoice_lines_interface.invoice_line_id%TYPE,
vamount ap_invoice_lines_interface.amount%TYPE,
vaccounting_date ap_invoice_lines_interface.accounting_date%TYPE,
vdescription ap_invoice_lines_interface.description%TYPE,
vdist_code_concatenated ap_invoice_lines_interface.dist_code_concatenated%TYPE,
vattribute1 ap_invoice_lines_interface.attribute1%TYPE,
vorg_id ap_invoice_lines_interface.org_id%TYPE,
vattribute3 VARCHAR2,
vattribute4 VARCHAR2
);

PROCEDURE deltempflag_im;

FUNCTION checkdescr (descr IN VARCHAR2, inv_amount IN NUMBER)
RETURN NUMBER;

PROCEDURE createcancelim (descr IN VARCHAR2);

FUNCTION checkinvnumb (v_invoice IN VARCHAR2)
RETURN NUMBER;
END ap_im_int_pkg;
/


CREATE OR REPLACE PACKAGE BODY ap_im_int_pkg
AS
PROCEDURE ap_im_int_start
IS
l_job NUMBER;
BEGIN
-- insert into temporary table from GrSystem
gr2ora_im;

-- testing : 1 job to running
BEGIN
DBMS_JOB.submit (l_job, 'FillAndSend_IM1;');
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line (SQLERRM);
END;

-- 3. delete all record if flag = 'P' in Temporary Table
deltempflag_im;
-- 4. Commit
COMMIT;
END;

-- *********************************************
PROCEDURE gr2ora_im
IS
BEGIN
INSERT INTO ap_im_int_ora
(im_interface_id, invoice_num, invoice_type_lookup_code,
invoice_date, vendor_num, vendor_site_code, amount,
invoice_currency_code, terms_name, description,
pay_group_lookup_code, gl_date, terms_date, gr_store,
accounting_date, type_code, sales_chanel, division,
inventory, dept)
SELECT im_interface_id, invoice_num, invoice_type_lookup_code,
invoice_date, vendor_num, vendor_site_code, amount,
invoice_currency_code, terms_name, description,
pay_group_lookup_code, gl_date, terms_date, gr_store,
accounting_date, type_code, sales_chanel, division,
inventory, DECODE (sales_chanel, '6', 'CAFETARIA', dept)
FROM ap_im_int@link2prd.com
ORDER BY invoice_num, type_code;

IF TRUNC (SYSDATE) <= TO_DATE ('01/04/2011', 'dd/mm/yyyy')
THEN
UPDATE ap_im_int_ora
SET gl_date = TO_DATE ('01/04/2011', 'dd/mm/yyyy'),
accounting_date = TO_DATE ('01/04/2011', 'dd/mm/yyyy')
WHERE flag IS NULL AND SUBSTR (gr_store, 3, 3) = '227';
END IF;

UPDATE ap_im_int_ora
SET gl_date = TRUNC (SYSDATE - 1),
accounting_date = TRUNC (SYSDATE - 1)
WHERE TO_CHAR (gl_date, 'yyyymm') < TO_CHAR (TRUNC (SYSDATE - 6), 'yyyymm')
AND flag IS NULL;
END;

-- *********************************************
PROCEDURE fillandsend_im1
IS
CURSOR gr_data
IS
SELECT *
FROM ap_im_int_ora
WHERE flag IS NULL
AND SUBSTR (gr_store, 3, 3) IN (
SELECT store_code
FROM parameter_ora
WHERE module = 'MATC'
AND status = 1)
AND amount <> 0
AND type_code = '8'
AND SUBSTR (gr_store, 3, 3) BETWEEN '100' AND '140'
ORDER BY SUBSTR (gr_store, 3, 3),
vendor_num,
vendor_site_code,
invoice_num;

rgr gr_data%ROWTYPE;
nno NUMBER;


cnewseq ap_invoices_interface.invoice_id%TYPE;
ctermsid ap_invoices_interface.terms_id%TYPE;
cvendor_site_code rgr.vendor_site_code%TYPE;
cvendor_num rgr.vendor_num%TYPE;
cinvoice_num rgr.invoice_num%TYPE;
cgrstored rgr.gr_store%TYPE;
cinv_num rgr.invoice_num%TYPE;

ccancel CHAR (1);
vreturn NUMBER;
vstorenew VARCHAR2 (3);
vsubstore VARCHAR2 (3);
vtoko_tampil VARCHAR2 (10) := 1;
dummy VARCHAR2 (100);
vattribute4 VARCHAR2 (3);

lcreate BOOLEAN := TRUE;
BEGIN
cvendor_num := 'X';
cvendor_site_code := 'X';
cinvoice_num := 'X';

OPEN gr_data;

LOOP
FETCH gr_data INTO rgr;
EXIT WHEN gr_data%NOTFOUND;

vreturn := 1;
dummy := NULL;
ctermsid := supp_int_pkg.findtermid (rgr.terms_name);
lcreate := TRUE;

IF SUBSTR (rgr.invoice_num, INSTR (rgr.invoice_num, 'CL', 1), 2) = 'CL' AND ctermsid <> 0
THEN
vreturn := checkinvnumb (SUBSTR (rgr.invoice_num, 1, 13));
ctermsid := vreturn;
END IF;

IF ctermsid <> 0
THEN
ctermsid := supp_int_pkg.findtermid (rgr.terms_name);
ccancel := 'N';

IF checkdescr (rgr.description, ROUND (rgr.amount, 2)) = 1
THEN
createcancelim (rgr.description);
ccancel := 'Y';
ELSE
IF SUBSTR (rgr.invoice_num, -1) = 'R'
THEN
BEGIN
SELECT invoice_num
INTO dummy
FROM ap_invoices_all
WHERE description = rgr.description
AND invoice_type_lookup_code = 'STANDARD'
AND invoice_amount = ROUND (rgr.amount, 2)
AND invoice_num =
SUBSTR (rgr.invoice_num,
1,
LENGTH (rgr.invoice_num) - 1
)
AND ROWNUM = 1
ORDER BY creation_date DESC, invoice_id DESC;

createcancelim (rgr.description);
ccancel := 'Y';
lcreate := TRUE;

EXCEPTION
WHEN NO_DATA_FOUND
THEN
lcreate := TRUE;
END;
ELSE
BEGIN
SELECT 1
INTO dummy
FROM ap_invoices_all
WHERE description = rgr.description
AND invoice_type_lookup_code = 'STANDARD'
AND invoice_amount = ROUND (rgr.amount, 2)
AND invoice_num = rgr.invoice_num
AND ROWNUM = 1
ORDER BY creation_date DESC, invoice_id DESC;

lcreate := FALSE;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
BEGIN
SELECT invoice_num
INTO dummy
FROM ap_invoices_all
WHERE description = rgr.description
AND invoice_type_lookup_code = 'STANDARD'
AND invoice_amount = ROUND (rgr.amount, 2)
AND ROWNUM = 1
ORDER BY creation_date DESC, invoice_id DESC;

createcancelim (rgr.description);
ccancel := 'Y';
lcreate := TRUE;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
lcreate := TRUE;
END;
END;
END IF;
END IF;

cinv_num := rgr.invoice_num;
cnewseq := TO_NUMBER ( TO_CHAR (SYSTIMESTAMP, 'yymm')|| TO_CHAR (supp_int_pkg.getnewseq ()));

IF ( SUBSTR (rgr.gr_store, 3, 3) = '100'
OR SUBSTR (rgr.gr_store, 3, 3) = '199'
)
AND rgr.sales_chanel = 3
THEN
vstorenew := '201';
vsubstore := '201';
ELSE
IF supp_int_pkg.func_grbrancmart (SUBSTR (rgr.gr_store, 3, 3)) = '201'
THEN
vstorenew := '201';
vsubstore := '201';
ELSE
vstorenew := SUBSTR (rgr.gr_store, 3, 3);

IF SUBSTR (rgr.gr_store, 3, 3) IN ('199', '100')
THEN
vsubstore := '101';
ELSE
vsubstore := SUBSTR (rgr.gr_store, 3, 3);
END IF;
END IF;
END IF;

vattribute4 := vsubstore;

IF lcreate
THEN
IF SUBSTR (rgr.vendor_site_code, 1, 1) <> 'C'
AND (rgr.vendor_num <> cvendor_num)
OR (rgr.vendor_site_code <> cvendor_site_code)
OR (rgr.invoice_num <> cinvoice_num)
THEN

temp2orawksh (cnewseq,
cinv_num,
rgr.invoice_type_lookup_code,
rgr.invoice_date,
rgr.vendor_num,
rgr.vendor_site_code,
ROUND (rgr.amount, 2),
rgr.invoice_currency_code,
ctermsid,
rgr.terms_name,
rgr.description,
rgr.pay_group_lookup_code,
rgr.gl_date,
rgr.terms_date,
rgr.dept,
supp_int_pkg.findorg_id (vstorenew),
rgr.inventory,
vattribute4
);
cvendor_num := rgr.vendor_num;
cvendor_site_code := rgr.vendor_site_code;
cinvoice_num := rgr.invoice_num;
END IF;
END IF;

nno := TO_CHAR (supp_int_pkg.getnewseq ());

IF lcreate
THEN -
IF vsubstore IN ('100', '199')
THEN
vsubstore := '101';
END IF;

temp2orawksd (cnewseq,
nno,
ROUND (rgr.amount, 2),
rgr.accounting_date,
rgr.description,
supp_int_pkg.func_griyamart (vstorenew)
|| '.000.9922001.000.'
|| vsubstore
|| '.00',
rgr.dept,
supp_int_pkg.findorg_id (vstorenew),
rgr.inventory,
vattribute4
);

UPDATE ap_im_int_ora
SET flag = 'P'
WHERE im_interface_id = rgr.im_interface_id
RETURNING invoice_num, gr_store
INTO cinvoicenum, cgrstored;

UPDATE ap_im_int_ora
SET flag = 'P'
WHERE invoice_num = cinvoicenum
AND gr_store = cgrstored
AND flag IS NULL;

END IF;


END IF;

IF SUBSTR (rgr.gr_store, 3, 3) <> vsite_display
vsite_display := SUBSTR (rgr.gr_store, 3, 3);
END IF;
END LOOP;
END;

-- *********************************************
PROCEDURE temp2orawksh (
vinvoice_id ap_invoices_interface.invoice_id%TYPE,
vinvoice_num ap_invoices_interface.invoice_num%TYPE,
vinvoice_type_lookup_code ap_invoices_interface.invoice_type_lookup_code%TYPE,
vinvoice_date ap_invoices_interface.invoice_date%TYPE,
vvendor_num ap_invoices_interface.vendor_num%TYPE,
vvendor_site_code ap_invoices_interface.vendor_site_code%TYPE,
vinvoice_amount ap_invoices_interface.invoice_amount%TYPE,
vinvoice_currency_code ap_invoices_interface.invoice_currency_code%TYPE,
vterms_id ap_invoices_interface.terms_id%TYPE,
vterms_name ap_invoices_interface.terms_name%TYPE,
vdescription ap_invoices_interface.description%TYPE,
vpay_group_lookup_code ap_invoices_interface.pay_group_lookup_code%TYPE,
vgl_date ap_invoices_interface.gl_date%TYPE,
vterms_date ap_invoices_interface.terms_date%TYPE,
vattribute2 ap_invoices_interface.attribute2%TYPE,
vorg_id ap_invoices_interface.org_id%TYPE,
vattribute3 VARCHAR2,
vattribute4 VARCHAR2
)
IS
BEGIN
INSERT INTO ap_invoices_interface
(invoice_id, invoice_num, invoice_type_lookup_code,
invoice_date, vendor_num, vendor_site_code,
invoice_amount, invoice_currency_code, terms_id,
terms_name, description, creation_date, created_by,
SOURCE, doc_category_code, payment_method_lookup_code,
pay_group_lookup_code, gl_date, terms_date,
attribute2, org_id, attribute3, attribute4
)
VALUES (vinvoice_id, vinvoice_num, vinvoice_type_lookup_code,
vinvoice_date, vvendor_num, vvendor_site_code,
vinvoice_amount, vinvoice_currency_code, vterms_id,
vterms_name, vdescription, SYSDATE, '1091',
'G.O.L.D', 'STD INV', 'CHECK',
vpay_group_lookup_code, vgl_date, vterms_date,
vattribute2, vorg_id, vattribute3, vattribute4
);
EXCEPTION
WHEN DUP_VAL_ON_INDEX
THEN
DBMS_OUTPUT.put_line ('ERROR : Invoice ID : ' || vinvoice_id);
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line (SQLERRM);
END;

-- *********************************************\
PROCEDURE temp2orawksd (
vinvoice_id ap_invoice_lines_interface.invoice_id%TYPE,
vinvoice_line_id ap_invoice_lines_interface.invoice_line_id%TYPE,
vamount ap_invoice_lines_interface.amount%TYPE,
vaccounting_date ap_invoice_lines_interface.accounting_date%TYPE,
vdescription ap_invoice_lines_interface.description%TYPE,
vdist_code_concatenated ap_invoice_lines_interface.dist_code_concatenated%TYPE,
vattribute1 ap_invoice_lines_interface.attribute1%TYPE,
vorg_id ap_invoice_lines_interface.org_id%TYPE,
vattribute3 VARCHAR2,
vattribute4 VARCHAR2
)
IS
BEGIN

INSERT INTO ap_invoice_lines_interface
(invoice_id, invoice_line_id, line_number,
line_type_lookup_code, amount, accounting_date,
description, dist_code_concatenated, created_by,
creation_date, attribute1, org_id, attribute3, attribute4
)
VALUES (vinvoice_id, vinvoice_line_id, 1,
'ITEM', vamount, vaccounting_date,
vdescription, vdist_code_concatenated, '1091',
SYSDATE, vattribute1, vorg_id, vattribute3, vattribute4
);
EXCEPTION
WHEN DUP_VAL_ON_INDEX
THEN
DBMS_OUTPUT.put_line ('ERROR : Invoice ID : ' || vinvoice_id);
DBMS_OUTPUT.put_line ('Invoice Line_ID' || vinvoice_line_id);
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line (SQLERRM);
END;

-- *********************************************
PROCEDURE deltempflag_im
IS
BEGIN
DELETE ap_im_int_ora
WHERE flag = 'P' AND TRUNC (date_from_gr) < TRUNC (SYSDATE) - 120;

UPDATE ap_im_int_ora
SET flag = 'X'
WHERE flag IS NULL
AND invoice_num LIKE '%CL'
AND TRUNC (date_from_gr) = TRUNC (SYSDATE) - 2;
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line (SQLERRM);
END;

-- *********************************************
FUNCTION checkdescr (descr IN VARCHAR2, inv_amount IN NUMBER)
RETURN NUMBER
IS
nreturn NUMBER := 0;
cdesc VARCHAR2 (80);
camt NUMBER;
BEGIN
SELECT description, invoice_amount
INTO cdesc, camt
FROM ap_invoices_all
WHERE description = descr
AND invoice_type_lookup_code = 'STANDARD'
AND ROWNUM = 1
ORDER BY creation_date DESC;

IF cdesc = descr AND NVL (camt, 0) <> inv_amount
THEN
nreturn := 1;
ELSE
nreturn := 0;
END IF;
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line (SQLERRM);
RETURN nreturn;
END;

-- *********************************************
PROCEDURE createcancelim (descr IN VARCHAR2)
IS
cnewseq ap_invoices_interface.invoice_id%TYPE;
vinvoice_id ap_invoices_all.invoice_id%TYPE;
vinvoice_num ap_invoices_all.invoice_num%TYPE;
vinvoice_type_lookup_code ap_invoices_all.invoice_type_lookup_code%TYPE;
vinvoice_date ap_invoices_all.invoice_date%TYPE;
vvendor_num ap_invoices_interface.vendor_num%TYPE;
vvendor_site_code ap_invoices_interface.vendor_site_code%TYPE;
vvendor_id ap_invoices_all.vendor_id%TYPE;
vvendor_site_id ap_invoices_all.vendor_site_id%TYPE;
vinvoice_amount ap_invoices_all.invoice_currency_code%TYPE;
vinvoice_currency_code ap_invoices_all.invoice_currency_code%TYPE;
vterms_id ap_invoices_all.terms_id%TYPE;
vdescription ap_invoices_all.description%TYPE;
vpay_group_lookup_code ap_invoices_all.pay_group_lookup_code%TYPE;
vgl_date ap_invoices_all.gl_date%TYPE;
vterms_date ap_invoices_all.terms_date%TYPE;
vattribute2 ap_invoices_all.attribute2%TYPE;
vattribute4 ap_invoices_all.attribute4%TYPE;
vorg_id ap_invoices_all.org_id%TYPE;

CURSOR detail_data
IS
SELECT *
FROM ap_invoice_distributions_all
WHERE invoice_id = vinvoice_id;

rdetail detail_data%ROWTYPE;
nno NUMBER;
BEGIN
SELECT invoice_id, invoice_num, invoice_type_lookup_code,
invoice_date, vendor_id, vendor_site_id, invoice_amount,
invoice_currency_code, terms_id, description,
pay_group_lookup_code, gl_date, terms_date, attribute2,
org_id, attribute4
INTO vinvoice_id, vinvoice_num, vinvoice_type_lookup_code,
vinvoice_date, vvendor_id, vvendor_site_id, vinvoice_amount,
vinvoice_currency_code, vterms_id, vdescription,
vpay_group_lookup_code, vgl_date, vterms_date, vattribute2,
vorg_id, vattribute4
FROM (SELECT *
FROM ap_invoices_all
WHERE description = descr
AND invoice_type_lookup_code = 'STANDARD'
ORDER BY creation_date DESC, invoice_id DESC)
WHERE ROWNUM = 1;

SELECT segment1
INTO vvendor_num
FROM po_vendors
WHERE vendor_id = vvendor_id;

SELECT vendor_site_code
INTO vvendor_site_code
FROM po_vendor_sites_all
WHERE vendor_id = vvendor_id AND vendor_site_id = vvendor_site_id;

cnewseq := TO_NUMBER ( TO_CHAR (SYSTIMESTAMP, 'yymm')|| TO_CHAR (supp_int_pkg.getnewseq ()) );

IF INSTR (vinvoice_num, '(N', 1, 1) != 0
THEN
vinvoice_num := SUBSTR (vinvoice_num, 1, INSTR (vinvoice_num, '(N', 1, 1) - 1);
END IF;

ap_ret_int_pkg.temp2orawksh (cnewseq,
vinvoice_num
|| ' (C-'
|| TO_CHAR (SYSTIMESTAMP, 'yyyymmdd')
|| ')',
'CREDIT',
vinvoice_date,
vvendor_num,
vvendor_site_code,
ROUND (vinvoice_amount, 2) * -1,
vinvoice_currency_code,
vterms_id,
vdescription,
vpay_group_lookup_code,
SYSDATE - 1,
vterms_date,
vattribute2,
vorg_id,
vattribute4
);

-- ********* DETAIL **********
OPEN detail_data;

LOOP
FETCH detail_data
INTO rdetail;

EXIT WHEN detail_data%NOTFOUND;
nno := TO_CHAR (supp_int_pkg.getnewseq ());
ap_ret_int_pkg.temp2orawksd (cnewseq,
nno,
rdetail.distribution_line_number,
rdetail.line_type_lookup_code,
ROUND (rdetail.amount, 2) * -1,
SYSDATE - 1,
rdetail.description,
rdetail.amount_includes_tax_flag,
NULL,
rdetail.dist_code_combination_id,
rdetail.attribute1,
rdetail.org_id,
rdetail.tax_code_override_flag,
rdetail.tax_code_id,
NULL,
rdetail.tax_code_override_flag,
vattribute4
);

END LOOP;
END;

FUNCTION checkinvnumb (v_invoice IN VARCHAR2)
RETURN NUMBER
IS
nreturn NUMBER;
BEGIN
SELECT 1
INTO nreturn
FROM ap_invoices_all
WHERE invoice_num = v_invoice AND ROWNUM = 1
ORDER BY ROWID DESC;

RETURN (nreturn);
EXCEPTION
WHEN NO_DATA_FOUND
THEN
RETURN (0);
WHEN OTHERS
THEN
RETURN (1);
END;
END ap_im_int_pkg;
/



[Updated on: Fri, 17 February 2012 03:27]

Report message to a moderator

Re: ORACLE error 6550 in FDPSTP [message #543837 is a reply to message #543834] Fri, 17 February 2012 03:22 Go to previous messageGo to next message
Michel Cadot
Messages: 68770
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
There is no 'FILLANDSEND_IM1' at line 1 of what you posted.

Regards
Michel
Re: ORACLE error 6550 in FDPSTP [message #543838 is a reply to message #543834] Fri, 17 February 2012 03:24 Go to previous messageGo to next message
Michel Cadot
Messages: 68770
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
Quote:
I want copy paste, but why all justification left ?


Michel Cadot wrote on Thu, 16 February 2012 07:59
When you are running the procedure which contains this code or when the job is running?
Are ALL the ' correct in your code?

Use SQL*Plus and copy and paste your session, the WHOLE session.

Before, Please read OraFAQ Forum Guide and How to use [code] tags and make your code easier to read.
Make sure that lines of code do not exceed 80 characters when you format.
Indent the code, use code tags and align the columns in result.
Use the "Preview Message" button to verify.
Also always post your Oracle version, with 4 decimals.

Regards
Michel

Re: ORACLE error 6550 in FDPSTP [message #543840 is a reply to message #543838] Fri, 17 February 2012 03:35 Go to previous messageGo to next message
GoGreen
Messages: 28
Registered: February 2012
Location: Java Island
Junior Member

Ok, i will try to copy & paste from sqlplus.

thanks
GvE5

Re: ORACLE error 6550 in FDPSTP [message #543852 is a reply to message #543840] Fri, 17 February 2012 04:11 Go to previous messageGo to next message
Michel Cadot
Messages: 68770
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
Including the package creation AND formating what you post.

Regards
Michel

[Updated on: Fri, 17 February 2012 04:12]

Report message to a moderator

Re: ORACLE error 6550 in FDPSTP [message #544603 is a reply to message #543852] Wed, 22 February 2012 21:38 Go to previous messageGo to next message
GoGreen
Messages: 28
Registered: February 2012
Location: Java Island
Junior Member


sorry, i has been try, run in sqlplus ( copy paste ) but result justification is left.
How the techniques if i will create pararell process and pararell process to be running when execute procedure;

thanks
gvE5

SQL> CREATE OR REPLACE PACKAGE apps.je_ap_im_int_pkg
  2  AS
  3  /******************************************************************************/
  4     PROCEDURE je_ap_im_int_start;
  5                      --(errbuf out nocopy varchar2, retcode out nocopy number)
  6  
  7     PROCEDURE gold2ora_im;
  8  
  9     PROCEDURE fillandsend_im1;
 10  
 11     PROCEDURE temp2orawksh (
 12        vinvoice_id                 ap_invoices_interface.invoice_id%TYPE,
 13        vinvoice_num                ap_invoices_interface.invoice_num%TYPE,
 14        vinvoice_type_lookup_code   ap_invoices_interface.invoice_type_lookup_code%TYPE,
 15        vinvoice_date               ap_invoices_interface.invoice_date%TYPE,
 16        vvendor_num                 ap_invoices_interface.vendor_num%TYPE,
 17        vvendor_site_code           ap_invoices_interface.vendor_site_code%TYPE,
 18        vinvoice_amount             ap_invoices_interface.invoice_amount%TYPE,
 19        vinvoice_currency_code      ap_invoices_interface.invoice_currency_code%TYPE,
 20        vterms_id                   ap_invoices_interface.terms_id%TYPE,
 21        vterms_name                 ap_invoices_interface.terms_name%TYPE,
 22        vdescription                ap_invoices_interface.description%TYPE,
 23        vpay_group_lookup_code      ap_invoices_interface.pay_group_lookup_code%TYPE,
 24        vgl_date                    ap_invoices_interface.gl_date%TYPE,
 25        vterms_date                 ap_invoices_interface.terms_date%TYPE,
 26        vattribute2                 ap_invoices_interface.attribute2%TYPE,
 27        vorg_id                     ap_invoices_interface.org_id%TYPE,
 28        vattribute3                 VARCHAR2,
 29        vattribute4                 VARCHAR2
 30     );
 31  
 32     PROCEDURE temp2orawksd (
 33        vinvoice_id               ap_invoice_lines_interface.invoice_id%TYPE,
 34        vinvoice_line_id          ap_invoice_lines_interface.invoice_line_id%TYPE,
 35        vamount                   ap_invoice_lines_interface.amount%TYPE,
 36        vaccounting_date          ap_invoice_lines_interface.accounting_date%TYPE,
 37        vdescription              ap_invoice_lines_interface.description%TYPE,
 38        vdist_code_concatenated   ap_invoice_lines_interface.dist_code_concatenated%TYPE,
 39        vattribute1               ap_invoice_lines_interface.attribute1%TYPE,
 40        vorg_id                   ap_invoice_lines_interface.org_id%TYPE,
 41        vattribute3               VARCHAR2,
 42        vattribute4               VARCHAR2
 43     );
 44  
 45     PROCEDURE deltempflag_im;
 46  
 47     FUNCTION checkdescr (descr IN VARCHAR2, inv_amount IN NUMBER)
 48        RETURN NUMBER;
 49  
 50     PROCEDURE createcancelim (descr IN VARCHAR2);
 51  
 52     FUNCTION checkinvnumb (v_invoice IN VARCHAR2)
 53        RETURN NUMBER;
 54  END je_ap_im_int_pkg;
 55  /

Package created.

SQL> CREATE OR REPLACE PACKAGE BODY apps.je_ap_im_int_pkg
  2  AS
  3     PROCEDURE je_ap_im_int_start
  4     IS
  5        l_job   NUMBER;
  6     BEGIN
  7        gold2ora_im;
  8  
  9        BEGIN
 10           DBMS_JOB.submit (l_job, 'FillAndSend_IM1;');
 11        EXCEPTION
 12           WHEN OTHERS
 13           THEN
 14              DBMS_OUTPUT.put_line (SQLERRM);
 15        END;
 16  
 17        -- 3. delete all record   'P' di Temp
 18        deltempflag_im;
 19        -- 4. Commit
 20        COMMIT;
 21     END;
 22  -- *********************************************
 23     PROCEDURE gold2ora_im
 24     IS
 25     BEGIN
 26        INSERT INTO je_ap_im_int_ora
 27                    (im_interface_id, invoice_num, invoice_type_lookup_code,
 28                     invoice_date, vendor_num, vendor_site_code, amount,
 29                     invoice_currency_code, terms_name, description,
 30                     pay_group_lookup_code, gl_date, terms_date, gold_store,
 31                     accounting_date, type_code, sales_chanel, division,
 32                     inventory, dept)
 33           SELECT   im_interface_id, invoice_num, invoice_type_lookup_code,
 34                    invoice_date, vendor_num, vendor_site_code, amount,
 35                    invoice_currency_code, terms_name, description,
 36                    pay_group_lookup_code, gl_date, terms_date, gold_store,
 37                    accounting_date, type_code, sales_chanel, division,
 38                    inventory, DECODE (sales_chanel, '6', 'CAFETARIA', dept)
 39               FROM [email]je_ap_im_int@link2prd.com[/email]
 40           ORDER BY invoice_num, type_code;
 41  
 42        IF TRUNC (SYSDATE) <= TO_DATE ('01/04/2011', 'dd/mm/yyyy')
 43        THEN
 44           UPDATE je_ap_im_int_ora
 45              SET gl_date = TO_DATE ('01/04/2011', 'dd/mm/yyyy'),
 46                  accounting_date = TO_DATE ('01/04/2011', 'dd/mm/yyyy')
 47            WHERE flag IS NULL AND SUBSTR (gold_store, 3, 3) = '227';
 48        END IF;
 49  
 50        UPDATE je_ap_im_int_ora
 51           SET gl_date = TRUNC (SYSDATE - 1),
 52               accounting_date = TRUNC (SYSDATE - 1)
 53         WHERE TO_CHAR (gl_date, 'yyyymm') <
 54                                         TO_CHAR (TRUNC (SYSDATE - 6), 'yyyymm')
 55           AND flag IS NULL;
 56     END;
 57  
 58  -- *********************************************
 59   PROCEDURE fillandsend_im1
 60     IS
 61        CURSOR gold_data
 62        IS
 63           SELECT   *
 64               FROM je_ap_im_int_ora
 65              WHERE flag IS NULL
 66                AND SUBSTR (gold_store, 3, 3) IN (
 67                                            SELECT store_code
 68                                              FROM je_parameter_ora
 69                                             WHERE module = 'MATC'
 70                                                   AND status = 1)
 71                AND amount <> 0
 72                AND type_code = '8'
 73                AND SUBSTR (gold_store, 3, 3) BETWEEN '100' AND '140' /* first parameter */
 74           ORDER BY SUBSTR (gold_store, 3, 3),
 75                    vendor_num,
 76                    vendor_site_code,
 77                    invoice_num;
 78  
 79        rgr                 gold_data%ROWTYPE;
 80        ljob                NUMBER;
 81        cnewseq             ap_invoices_interface.invoice_id%TYPE;
 82        ctermsid            ap_invoices_interface.terms_id%TYPE;
 83        nno                 NUMBER;
 84        cvendor_num         rgr.vendor_num%TYPE;
 85        cvendor_site_code   rgr.vendor_site_code%TYPE;
 86        cinvoice_num        rgr.invoice_num%TYPE;
 87        cinv_num            rgr.invoice_num%TYPE;
 88        ccancel             CHAR (1);
 89        vreturn             NUMBER;
 90        vstorenew           VARCHAR2 (3);
 91        vsubstore           VARCHAR2 (3);
 92        vtoko_tampil        VARCHAR2 (10)                           := 1;
 93        dummy               VARCHAR2 (100);
 94        lcreate             BOOLEAN                                 := TRUE;
 95        vattribute4         VARCHAR2 (3);
 96        cinvoicenum         rgr.invoice_num%TYPE;
 97        cgoldstored         rgr.gold_store%TYPE;
 98     BEGIN
 99        cvendor_num := 'X';
100        cvendor_site_code := 'X';
101        cinvoice_num := 'X';
102  
103        OPEN gold_data;
104  
105        LOOP
106           FETCH gold_data
107            INTO rgr;
108  
109           EXIT WHEN gold_data%NOTFOUND;
110           vreturn := 1;
111           dummy := NULL;                                     -- RESET 05092011
112           ctermsid := je_supp_int_pkg.findtermid (rgr.terms_name);
113           lcreate := TRUE;
114  
115           IF     SUBSTR (rgr.invoice_num, INSTR (rgr.invoice_num, 'CL', 1), 2) =
116                                                                           'CL'
117              AND ctermsid <> 0
118           THEN
119              vreturn := checkinvnumb (SUBSTR (rgr.invoice_num, 1, 13));
120              ctermsid := vreturn;
121           END IF;
122  
123           IF ctermsid <> 0
124           THEN
125              ctermsid := je_supp_int_pkg.findtermid (rgr.terms_name);
126              ccancel := 'N';
127  
128              IF checkdescr (rgr.description, ROUND (rgr.amount, 2)) = 1
129              THEN
130                 createcancelim (rgr.description);
131                 ccancel := 'Y';
132              ELSE
133                 IF SUBSTR (rgr.invoice_num, -1) = 'R'
134                 THEN
135                    BEGIN
136                       SELECT   invoice_num
137                           INTO dummy
138                           FROM ap_invoices_all
139                          WHERE description = rgr.description
140                            AND invoice_type_lookup_code = 'STANDARD'
141                            AND invoice_amount = ROUND (rgr.amount, 2)
142                            AND invoice_num =
143                                   SUBSTR (rgr.invoice_num,
144                                           1,
145                                           LENGTH (rgr.invoice_num) - 1
146                                          )
147                            AND ROWNUM = 1
148                       ORDER BY creation_date DESC, invoice_id DESC;
149  
150                       createcancelim (rgr.description);
151                       ccancel := 'Y';
152                       lcreate  := TRUE;
153                    EXCEPTION
154                       WHEN NO_DATA_FOUND
155                       THEN
156                          lcreate := TRUE;
157                    END;
158                 ELSE
159                    BEGIN
160                       SELECT   1
161                           INTO dummy
162                           FROM ap_invoices_all
163                          WHERE description = rgr.description
164                            AND invoice_type_lookup_code = 'STANDARD'
165                            AND invoice_amount = ROUND (rgr.amount, 2)
166                            AND invoice_num = rgr.invoice_num
167                            AND ROWNUM = 1
168                       ORDER BY creation_date DESC, invoice_id DESC;
169  
170                       lcreate := FALSE;
171                    EXCEPTION
172                       WHEN NO_DATA_FOUND
173                       THEN
174                          BEGIN
175                             SELECT   invoice_num
176                                 INTO dummy
177                                 FROM ap_invoices_all
178                                WHERE description = rgr.description
179                                  AND invoice_type_lookup_code = 'STANDARD'
180                                  AND invoice_amount = ROUND (rgr.amount, 2)
181                                  AND ROWNUM = 1
182                             ORDER BY creation_date DESC, invoice_id DESC;
183  
184                             -- Cancel dan buat header & detail invoice
185                             createcancelim (rgr.description);
186                             ccancel := 'Y';
187                             lcreate := TRUE;
188                          EXCEPTION
189                             WHEN NO_DATA_FOUND
190                             THEN
191                                lcreate := TRUE;
192                          END;
193                    END;
194                 END IF;
195              END IF;
196  
197              cinv_num := rgr.invoice_num;
198              cnewseq :=
199                 TO_NUMBER (   TO_CHAR (SYSTIMESTAMP, 'yymm')
200                            || TO_CHAR (je_supp_int_pkg.getnewseq ())
201                           );
202  
203              IF     (   SUBSTR (rgr.gold_store, 3, 3) = '100'
204                      OR SUBSTR (rgr.gold_store, 3, 3) = '199'
205                     )
206                 AND rgr.sales_chanel = 3
207              THEN
208                 vstorenew := '201';
209                 vsubstore := '201';
210              ELSE
211                 IF je_supp_int_pkg.je_func_gry (SUBSTR (rgr.gold_store,
212                                                               3,
213                                                               3
214                                                              )
215                                                      ) = '201'
216                 THEN
217                    vstorenew := '201';
218                    vsubstore := '201';
219                                      -- substr(rGr.GOLD_STORE,3,3); 28/09/2011
220                 ELSE
221                    vstorenew := SUBSTR (rgr.gold_store, 3, 3);
222  
223                    IF SUBSTR (rgr.gold_store, 3, 3) IN ('199', '100')
224                    THEN
225                       vsubstore := '101';
226                    ELSE
227                       vsubstore := SUBSTR (rgr.gold_store, 3, 3);
228                    END IF;
229                 END IF;
230              END IF;
231  
232              vattribute4 := vsubstore;
233  
234              IF lcreate
235              THEN
236                 IF        SUBSTR (rgr.vendor_site_code, 1, 1) <> 'C'
237                       AND (rgr.vendor_num <> cvendor_num)
238                    OR (rgr.vendor_site_code <> cvendor_site_code)
239                    OR (rgr.invoice_num <> cinvoice_num)
240                 THEN
241                    -- Tulis ke Header
242                    temp2orawksh (cnewseq,
243                                  cinv_num,
244                                  rgr.invoice_type_lookup_code,
245                                  rgr.invoice_date,
246                                  rgr.vendor_num,
247                                  rgr.vendor_site_code,
248                                  ROUND (rgr.amount, 2),
249                                  rgr.invoice_currency_code,
250                                  ctermsid,
251                                  rgr.terms_name,
252                                  rgr.description,
253                                  rgr.pay_group_lookup_code,
254                                  rgr.gl_date,
255                                  rgr.terms_date,
256                                  rgr.dept,
257                                  je_supp_int_pkg.findorg_id (vstorenew),
258                                  rgr.inventory,
259                                  vattribute4
260                                 );
261                    cvendor_num := rgr.vendor_num;
262                    cvendor_site_code := rgr.vendor_site_code;
263                    cinvoice_num := rgr.invoice_num;
264                 END IF;
265              END IF;
266  
267              nno := TO_CHAR (je_supp_int_pkg.getnewseq ());
268  
269              IF lcreate
270              THEN                                        -- lCreate -- 05092011
271                 IF vsubstore IN ('100', '199')
272                 THEN
273                    vsubstore := '101';
274                 END IF;
275  
276                 temp2orawksd (cnewseq,
277                               nno,
278                               ROUND (rgr.amount, 2),
279                               rgr.accounting_date,
280                               rgr.description,
281                                  je_supp_int_pkg.je_func_gry (vstorenew)
282                               || '.000.9922001.000.'
283                               || vsubstore
284                               || '.00',
285                               rgr.dept,
286                               je_supp_int_pkg.findorg_id (vstorenew),
287                               rgr.inventory,
288                               vattribute4
289                              );
290  
291                 UPDATE    je_ap_im_int_ora
292                       SET flag = 'P'
293                     WHERE im_interface_id = rgr.im_interface_id
294                 RETURNING invoice_num, gold_store
295                      INTO cinvoicenum, cgoldstored;
296  
297                 UPDATE je_ap_im_int_ora
298                    SET flag = 'P'
299                  WHERE invoice_num = cinvoicenum
300                    AND gold_store = cgoldstored
301                    AND flag IS NULL;
302  
303                 DBMS_OUTPUT.put_line ('Flag = P');
304                 DBMS_OUTPUT.put_line ('  ');
305              END IF;
306           END IF;
307  
308           IF SUBSTR (rgr.gold_store, 3, 3) <> vtoko_tampil
309           THEN
310              fnd_file.put_line
311                         (fnd_file.LOG,
312                             'Invoice Matching Interface for Operating Unit : '
313                          || SUBSTR (rgr.gold_store, 3, 3)
314                         );
315              vtoko_tampil := SUBSTR (rgr.gold_store, 3, 3);
316           END IF;
317        END LOOP;
318     END;
319  
320  
321  -- *********************************************
322     PROCEDURE temp2orawksh (
323        vinvoice_id                 ap_invoices_interface.invoice_id%TYPE,
324        vinvoice_num                ap_invoices_interface.invoice_num%TYPE,
325        vinvoice_type_lookup_code   ap_invoices_interface.invoice_type_lookup_code%TYPE,
326        vinvoice_date               ap_invoices_interface.invoice_date%TYPE,
327        vvendor_num                 ap_invoices_interface.vendor_num%TYPE,
328        vvendor_site_code           ap_invoices_interface.vendor_site_code%TYPE,
329        vinvoice_amount             ap_invoices_interface.invoice_amount%TYPE,
330        vinvoice_currency_code      ap_invoices_interface.invoice_currency_code%TYPE,
331        vterms_id                   ap_invoices_interface.terms_id%TYPE,
332        vterms_name                 ap_invoices_interface.terms_name%TYPE,
333        vdescription                ap_invoices_interface.description%TYPE,
334        vpay_group_lookup_code      ap_invoices_interface.pay_group_lookup_code%TYPE,
335        vgl_date                    ap_invoices_interface.gl_date%TYPE,
336        vterms_date                 ap_invoices_interface.terms_date%TYPE,
337        vattribute2                 ap_invoices_interface.attribute2%TYPE,
338        vorg_id                     ap_invoices_interface.org_id%TYPE,
339        vattribute3                 VARCHAR2,
340        vattribute4                 VARCHAR2
341     )
342     IS
343     BEGIN
344        DBMS_OUTPUT.put_line ('Masuk ke Header');
345  
346        INSERT INTO ap_invoices_interface
347                    (invoice_id, invoice_num, invoice_type_lookup_code,
348                     invoice_date, vendor_num, vendor_site_code,
349                     invoice_amount, invoice_currency_code, terms_id,
350                     terms_name, description, creation_date, created_by,
351                     SOURCE, doc_category_code, payment_method_lookup_code,
352                     pay_group_lookup_code, gl_date, terms_date,
353                     attribute2, org_id, attribute3, attribute4
354                    )
355             VALUES (vinvoice_id, vinvoice_num, vinvoice_type_lookup_code,
356                     vinvoice_date, vvendor_num, vvendor_site_code,
357                     vinvoice_amount, vinvoice_currency_code, vterms_id,
358                     vterms_name, vdescription, SYSDATE, '1091',
359                     'G.O.L.D', 'STD INV', 'CHECK',
360                     vpay_group_lookup_code, vgl_date, vterms_date,
361                     vattribute2, vorg_id, vattribute3, vattribute4
362                    );
363     EXCEPTION
364        WHEN DUP_VAL_ON_INDEX
365        THEN
366           DBMS_OUTPUT.put_line ('ERROR : Invoice ID : ' || vinvoice_id);
367        WHEN OTHERS
368        THEN
369           fnd_file.put_line
370                  (fnd_file.LOG,
371                      'ERROR Insert Into AP_INVOICES_INTERFACE, Invoice num : '
372                   || vinvoice_num
373                   || ' Attribute 3 :'
374                   || vattribute3
375                  );
376     END;
377  
378  -- *********************************************\
379     PROCEDURE temp2orawksd (
380        vinvoice_id               ap_invoice_lines_interface.invoice_id%TYPE,
381        vinvoice_line_id          ap_invoice_lines_interface.invoice_line_id%TYPE,
382        vamount                   ap_invoice_lines_interface.amount%TYPE,
383        vaccounting_date          ap_invoice_lines_interface.accounting_date%TYPE,
384        vdescription              ap_invoice_lines_interface.description%TYPE,
385        vdist_code_concatenated   ap_invoice_lines_interface.dist_code_concatenated%TYPE,
386        vattribute1               ap_invoice_lines_interface.attribute1%TYPE,
387        vorg_id                   ap_invoice_lines_interface.org_id%TYPE,
388        vattribute3               VARCHAR2,
389        vattribute4               VARCHAR2
390     )
391     IS
392     BEGIN
393        DBMS_OUTPUT.put_line ('Masuk ke Detail');
394        DBMS_OUTPUT.put_line ('Invoice ID : ' || vinvoice_id);
395        DBMS_OUTPUT.put_line ('Invoice Line_ID' || vinvoice_line_id);
396        DBMS_OUTPUT.put_line (' ');
397  
398        INSERT INTO ap_invoice_lines_interface
399                    (invoice_id, invoice_line_id, line_number,
400                     line_type_lookup_code, amount, accounting_date,
401                     description, dist_code_concatenated, created_by,
402                     creation_date, attribute1, org_id, attribute3, attribute4
403                    )
404             VALUES (vinvoice_id, vinvoice_line_id, 1,
405                     'ITEM', vamount, vaccounting_date,
406                     vdescription, vdist_code_concatenated, '1091',
407                     SYSDATE, vattribute1, vorg_id, vattribute3, vattribute4
408                    );
409     EXCEPTION
410        WHEN DUP_VAL_ON_INDEX
411        THEN
412           DBMS_OUTPUT.put_line ('ERROR : Invoice ID : ' || vinvoice_id);
413           DBMS_OUTPUT.put_line ('Invoice Line_ID' || vinvoice_line_id);
414        WHEN OTHERS
415        THEN
416           fnd_file.put_line
417               (fnd_file.LOG,
418                   'ERROR insert into AP_INVOICE_LINES_INTERFACE, Invoice ID: '
419                || vinvoice_id
420                || ' Attribute 3 :'
421                || vattribute3
422               );
423     END;
424  
425  -- *********************************************
426     PROCEDURE deltempflag_im
427     IS
428     BEGIN
429        DELETE      je_ap_im_int_ora
430              WHERE flag = 'P' AND TRUNC (date_from_gold) <
431                                                           TRUNC (SYSDATE)
432                                                           - 120;
433  
434        UPDATE je_ap_im_int_ora
435           SET flag = 'X'
436         WHERE flag IS NULL
437           AND invoice_num LIKE '%CL'
438           AND TRUNC (date_from_gold) = TRUNC (SYSDATE) - 2;
439     END;
440  
441  -- *********************************************
442     FUNCTION checkdescr (descr IN VARCHAR2, inv_amount IN NUMBER)
443        RETURN NUMBER
444     IS
445        nreturn   NUMBER        := 0;
446        cdesc     VARCHAR2 (80);
447        camt      NUMBER;
448     BEGIN
449        SELECT   description, invoice_amount
450            INTO cdesc, camt
451            FROM ap_invoices_all
452           WHERE description = descr
453             AND invoice_type_lookup_code = 'STANDARD'
454             AND ROWNUM = 1
455        ORDER BY creation_date DESC;
456  
457        IF cdesc = descr AND NVL (camt, 0) <> inv_amount
458        THEN
459           nreturn := 1;
460        ELSE
461           nreturn := 0;
462        END IF;
463  
464        RETURN (nreturn);
465     EXCEPTION
466        WHEN OTHERS
467        THEN
468           RETURN nreturn;
469     END;
470  
471  -- *********************************************
472     PROCEDURE createcancelim (descr IN VARCHAR2)
473     IS
474        cnewseq                     ap_invoices_interface.invoice_id%TYPE;
475        vinvoice_id                 ap_invoices_all.invoice_id%TYPE;
476        vinvoice_num                ap_invoices_all.invoice_num%TYPE;
477        vinvoice_type_lookup_code   ap_invoices_all.invoice_type_lookup_code%TYPE;
478        vinvoice_date               ap_invoices_all.invoice_date%TYPE;
479        vvendor_num                 ap_invoices_interface.vendor_num%TYPE;
480        vvendor_site_code           ap_invoices_interface.vendor_site_code%TYPE;
481        vvendor_id                  ap_invoices_all.vendor_id%TYPE;
482        vvendor_site_id             ap_invoices_all.vendor_site_id%TYPE;
483        vinvoice_amount             ap_invoices_all.invoice_currency_code%TYPE;
484        vinvoice_currency_code      ap_invoices_all.invoice_currency_code%TYPE;
485        vterms_id                   ap_invoices_all.terms_id%TYPE;
486        vdescription                ap_invoices_all.description%TYPE;
487        vpay_group_lookup_code      ap_invoices_all.pay_group_lookup_code%TYPE;
488        vgl_date                    ap_invoices_all.gl_date%TYPE;
489        vterms_date                 ap_invoices_all.terms_date%TYPE;
490        vattribute2                 ap_invoices_all.attribute2%TYPE;
491        vattribute4                 ap_invoices_all.attribute4%TYPE;
492        vorg_id                     ap_invoices_all.org_id%TYPE;
493  
494        CURSOR detail_data
495        IS
496           SELECT *
497             FROM ap_invoice_distributions_all
498            WHERE invoice_id = vinvoice_id;
499  
500        rdetail                     detail_data%ROWTYPE;
501        nno                         NUMBER;
502     BEGIN
503        SELECT invoice_id, invoice_num, invoice_type_lookup_code,
504               invoice_date, vendor_id, vendor_site_id, invoice_amount,
505               invoice_currency_code, terms_id, description,
506               pay_group_lookup_code, gl_date, terms_date, attribute2,
507               org_id, attribute4
508          INTO vinvoice_id, vinvoice_num, vinvoice_type_lookup_code,
509               vinvoice_date, vvendor_id, vvendor_site_id, vinvoice_amount,
510               vinvoice_currency_code, vterms_id, vdescription,
511               vpay_group_lookup_code, vgl_date, vterms_date, vattribute2,
512               vorg_id, vattribute4
513          FROM (SELECT   *
514                    FROM ap_invoices_all
515                   WHERE description = descr
516                     AND invoice_type_lookup_code = 'STANDARD'
517                ORDER BY creation_date DESC, invoice_id DESC)
518         WHERE ROWNUM = 1;
519  
520        SELECT segment1
521          INTO vvendor_num
522          FROM po_vendors
523         WHERE vendor_id = vvendor_id;
524  
525        SELECT vendor_site_code
526          INTO vvendor_site_code
527          FROM po_vendor_sites_all
528         WHERE vendor_id = vvendor_id AND vendor_site_id = vvendor_site_id;
529  
530        -- Bikin Seq baru, tgl hari ini + Sequence
531        cnewseq :=
532           TO_NUMBER (   TO_CHAR (SYSTIMESTAMP, 'yymm')
533                      || TO_CHAR (je_supp_int_pkg.getnewseq ())
534                     );
535  
536        IF INSTR (vinvoice_num, '(N', 1, 1) != 0
537        THEN
538           vinvoice_num :=
539                  SUBSTR (vinvoice_num, 1, INSTR (vinvoice_num, '(N', 1, 1) - 1);
540        END IF;
541  
542        je_ap_ret_int_pkg.temp2orawksh (cnewseq,
543                                           vinvoice_num
544                                        || ' (C-'
545                                        || TO_CHAR (SYSTIMESTAMP, 'yyyymmdd')
546                                        || ')',
547                                        'CREDIT',
548                                        vinvoice_date,
549                                        vvendor_num,
550                                        vvendor_site_code,
551                                        ROUND (vinvoice_amount, 2) * -1,
552                                        vinvoice_currency_code,
553                                        vterms_id,
554                                        NULL,
555                                        vdescription,
556                                        vpay_group_lookup_code,
557                                        SYSDATE - 1,
558                                        vterms_date,
559                                        vattribute2,
560                                        vorg_id,
561                                        vattribute4
562                                       );
563  
564        OPEN detail_data;
565  
566        LOOP
567           FETCH detail_data
568            INTO rdetail;
569  
570           EXIT WHEN detail_data%NOTFOUND;
571           nno := TO_CHAR (je_supp_int_pkg.getnewseq ());
572           je_ap_ret_int_pkg.temp2orawksd (cnewseq,
573                                           nno,
574                                           rdetail.distribution_line_number,
575                                           rdetail.line_type_lookup_code,
576                                           ROUND (rdetail.amount, 2) * -1,
577                                           SYSDATE - 1,
578                                           rdetail.description,
579                                           rdetail.amount_includes_tax_flag,
580                                           NULL,
581                                           rdetail.dist_code_combination_id,
582                                           rdetail.attribute1,
583                                           rdetail.org_id,
584                                           rdetail.tax_code_override_flag,
585                                           rdetail.tax_code_id,
586                                           NULL,
587                                           rdetail.tax_code_override_flag,
588                                           vattribute4
589                                          );
590           fnd_file.put_line (fnd_file.LOG,
591                                 'Invoice Matching Cancelled : '
592                              || SUBSTR (je_store_name (vorg_id),
593                                           INSTR (je_store_name (vorg_id),
594                                                  CHR (10),
595                                                  1,
596                                                  1
597                                                 )
598                                         + 1,
599                                         10
600                                        )
601                              || ' - '
602                              || vinvoice_num
603                             );
604        END LOOP;
605     END;
606  
607     FUNCTION checkinvnumb (v_invoice IN VARCHAR2)
608        RETURN NUMBER
609     IS
610        nreturn   NUMBER;
611     BEGIN
612        SELECT   1
613            INTO nreturn
614            FROM ap_invoices_all
615           WHERE invoice_num = v_invoice AND ROWNUM = 1
616        ORDER BY ROWID DESC;
617  
618        RETURN (nreturn);
619     EXCEPTION
620        WHEN NO_DATA_FOUND
621        THEN
622           RETURN (0);
623        WHEN OTHERS
624        THEN
625           RETURN (1);
626     END;
627  END je_ap_im_int_pkg;

* {code} tags added by BlackSwan Please do so yourself in the future

[Updated on: Wed, 22 February 2012 22:04] by Moderator

Report message to a moderator

Re: ORACLE error 6550 in FDPSTP [message #544605 is a reply to message #544603] Wed, 22 February 2012 22:06 Go to previous message
BlackSwan
Messages: 26766
Registered: January 2009
Location: SoCal
Senior Member
It would be helpful if you followed Posting Guidelines - http://www.orafaq.com/forum/t/88153/0/

Consider Reading The Fine Manual on parallel
http://www.oracle.com/pls/db112/search?word=parallel&partno=
Previous Topic: Help with query
Next Topic: Reg Stored Procedures
Goto Forum:
  


Current Time: Tue Sep 09 21:47:24 CDT 2025