DBA Data[Home] [Help]

APPS.JDR_MDS_INTERNAL dependencies on JDR_PATHS

Line 82: jdr_paths, jdr_components, jdr_attributes

78: comp_use,
79: att_name,
80: att_value
81: FROM
82: jdr_paths, jdr_components, jdr_attributes
83: WHERE
84: path_docid IN
85: (SELECT
86: path_docid

Line 88: jdr_paths

84: path_docid IN
85: (SELECT
86: path_docid
87: FROM
88: jdr_paths
89: START WITH
90: path_docid = docID
91: CONNECT BY PRIOR
92: path_docid=path_owner_docid

Line 107: CURSOR c_trans(docid jdr_paths.path_docid%TYPE, lang VARCHAR2) IS

103: -- Cursor to retrieve XLIFF translations
104: -- This query will retrieve the translations for a specified
105: -- document (as well as sub-documents if it's a package file) and
106: -- specified language; and will retrieve the base language as well.
107: CURSOR c_trans(docid jdr_paths.path_docid%TYPE, lang VARCHAR2) IS
108: SELECT
109: atl_comp_docid,
110: atl_comp_ref,
111: atl_name,

Line 116: atl_comp_docid IN (SELECT path_docid FROM jdr_paths

112: atl_value
113: FROM
114: jdr_attributes_trans
115: WHERE
116: atl_comp_docid IN (SELECT path_docid FROM jdr_paths
117: START WITH path_docid = docID
118: CONNECT BY PRIOR path_docid=path_owner_docid) AND
119: atl_lang = lang
120: ORDER BY

Line 130: TYPE pathdocidtab IS TABLE OF jdr_paths.path_docid%TYPE;

126: TYPE CharArray IS VARRAY(100) OF VARCHAR2(128);
127: TYPE NumArray IS VARRAY(100) OF NUMBER;
128:
129: -- Types needed for bulk bind
130: TYPE pathdocidtab IS TABLE OF jdr_paths.path_docid%TYPE;
131: TYPE pathnametab IS TABLE OF VARCHAR2(400);
132: TYPE pathtypetab IS TABLE OF jdr_paths.path_type%TYPE;
133: TYPE pathseqtab IS TABLE OF jdr_paths.path_seq%TYPE;
134: TYPE pathownertab IS TABLE OF jdr_paths.path_owner_docid%TYPE;

Line 132: TYPE pathtypetab IS TABLE OF jdr_paths.path_type%TYPE;

128:
129: -- Types needed for bulk bind
130: TYPE pathdocidtab IS TABLE OF jdr_paths.path_docid%TYPE;
131: TYPE pathnametab IS TABLE OF VARCHAR2(400);
132: TYPE pathtypetab IS TABLE OF jdr_paths.path_type%TYPE;
133: TYPE pathseqtab IS TABLE OF jdr_paths.path_seq%TYPE;
134: TYPE pathownertab IS TABLE OF jdr_paths.path_owner_docid%TYPE;
135: TYPE compseqtab IS TABLE OF jdr_components.comp_seq%TYPE;
136: TYPE compelementtab IS TABLE OF jdr_components.comp_element%TYPE;

Line 133: TYPE pathseqtab IS TABLE OF jdr_paths.path_seq%TYPE;

129: -- Types needed for bulk bind
130: TYPE pathdocidtab IS TABLE OF jdr_paths.path_docid%TYPE;
131: TYPE pathnametab IS TABLE OF VARCHAR2(400);
132: TYPE pathtypetab IS TABLE OF jdr_paths.path_type%TYPE;
133: TYPE pathseqtab IS TABLE OF jdr_paths.path_seq%TYPE;
134: TYPE pathownertab IS TABLE OF jdr_paths.path_owner_docid%TYPE;
135: TYPE compseqtab IS TABLE OF jdr_components.comp_seq%TYPE;
136: TYPE compelementtab IS TABLE OF jdr_components.comp_element%TYPE;
137: TYPE compleveltab IS TABLE OF jdr_components.comp_level%TYPE;

Line 134: TYPE pathownertab IS TABLE OF jdr_paths.path_owner_docid%TYPE;

130: TYPE pathdocidtab IS TABLE OF jdr_paths.path_docid%TYPE;
131: TYPE pathnametab IS TABLE OF VARCHAR2(400);
132: TYPE pathtypetab IS TABLE OF jdr_paths.path_type%TYPE;
133: TYPE pathseqtab IS TABLE OF jdr_paths.path_seq%TYPE;
134: TYPE pathownertab IS TABLE OF jdr_paths.path_owner_docid%TYPE;
135: TYPE compseqtab IS TABLE OF jdr_components.comp_seq%TYPE;
136: TYPE compelementtab IS TABLE OF jdr_components.comp_element%TYPE;
137: TYPE compleveltab IS TABLE OF jdr_components.comp_level%TYPE;
138: TYPE compgroupingtab IS TABLE OF jdr_components.comp_grouping%TYPE;

Line 153: mPreviousDocID jdr_paths.path_docid%TYPE;

149: mPackageStack NumArray := NULL;
150: mPackageLevel INTEGER;
151: mPreviousLevel jdr_components.comp_level%TYPE;
152: mPreviousComp jdr_components.comp_seq%TYPE;
153: mPreviousDocID jdr_paths.path_docid%TYPE;
154: mPreviousType jdr_paths.path_type%TYPE;
155: mPartialChunk VARCHAR2(32000);
156: mPartialXLIFFChunk VARCHAR2(32000);
157: mPathType jdr_paths.path_type%TYPE;

Line 154: mPreviousType jdr_paths.path_type%TYPE;

150: mPackageLevel INTEGER;
151: mPreviousLevel jdr_components.comp_level%TYPE;
152: mPreviousComp jdr_components.comp_seq%TYPE;
153: mPreviousDocID jdr_paths.path_docid%TYPE;
154: mPreviousType jdr_paths.path_type%TYPE;
155: mPartialChunk VARCHAR2(32000);
156: mPartialXLIFFChunk VARCHAR2(32000);
157: mPathType jdr_paths.path_type%TYPE;
158: mIndex INTEGER;

Line 157: mPathType jdr_paths.path_type%TYPE;

153: mPreviousDocID jdr_paths.path_docid%TYPE;
154: mPreviousType jdr_paths.path_type%TYPE;
155: mPartialChunk VARCHAR2(32000);
156: mPartialXLIFFChunk VARCHAR2(32000);
157: mPathType jdr_paths.path_type%TYPE;
158: mIndex INTEGER;
159: mFormatted INTEGER;
160: mFetchComplete BOOLEAN;
161: mPathIds pathdocidtab;

Line 326: docID JDR_PATHS.PATH_DOCID%TYPE) RETURN VARCHAR2

322: --
323: -- Create the XML header for the given document ID
324: --
325: FUNCTION addXMLHeader(
326: docID JDR_PATHS.PATH_DOCID%TYPE) RETURN VARCHAR2
327: IS
328: xml_version jdr_paths.path_xml_version%TYPE;
329: xml_encoding jdr_paths.path_xml_encoding%TYPE;
330: BEGIN

Line 328: xml_version jdr_paths.path_xml_version%TYPE;

324: --
325: FUNCTION addXMLHeader(
326: docID JDR_PATHS.PATH_DOCID%TYPE) RETURN VARCHAR2
327: IS
328: xml_version jdr_paths.path_xml_version%TYPE;
329: xml_encoding jdr_paths.path_xml_encoding%TYPE;
330: BEGIN
331: -- Get the version and encoding
332: SELECT

Line 329: xml_encoding jdr_paths.path_xml_encoding%TYPE;

325: FUNCTION addXMLHeader(
326: docID JDR_PATHS.PATH_DOCID%TYPE) RETURN VARCHAR2
327: IS
328: xml_version jdr_paths.path_xml_version%TYPE;
329: xml_encoding jdr_paths.path_xml_encoding%TYPE;
330: BEGIN
331: -- Get the version and encoding
332: SELECT
333: path_xml_version, path_xml_encoding

Line 337: jdr_paths

333: path_xml_version, path_xml_encoding
334: INTO
335: xml_version, xml_encoding
336: FROM
337: jdr_paths
338: WHERE
339: path_docid = docID;
340:
341: -- ###

Line 384: pName JDR_PATHS.PATH_NAME%TYPE;

380: allowChildDoc BOOLEAN,
381: includePackage BOOLEAN) RETURN NUMBER
382: IS
383: packageName VARCHAR2(512);
384: pName JDR_PATHS.PATH_NAME%TYPE;
385: pType JDR_PATHS.PATH_TYPE%TYPE;
386: pSeq JDR_PATHS.PATH_SEQ%TYPE;
387: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE := 0;
388: docID JDR_PATHS.PATH_DOCID%TYPE := -1;

Line 385: pType JDR_PATHS.PATH_TYPE%TYPE;

381: includePackage BOOLEAN) RETURN NUMBER
382: IS
383: packageName VARCHAR2(512);
384: pName JDR_PATHS.PATH_NAME%TYPE;
385: pType JDR_PATHS.PATH_TYPE%TYPE;
386: pSeq JDR_PATHS.PATH_SEQ%TYPE;
387: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE := 0;
388: docID JDR_PATHS.PATH_DOCID%TYPE := -1;
389: lastSlashPos BINARY_INTEGER;

Line 386: pSeq JDR_PATHS.PATH_SEQ%TYPE;

382: IS
383: packageName VARCHAR2(512);
384: pName JDR_PATHS.PATH_NAME%TYPE;
385: pType JDR_PATHS.PATH_TYPE%TYPE;
386: pSeq JDR_PATHS.PATH_SEQ%TYPE;
387: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE := 0;
388: docID JDR_PATHS.PATH_DOCID%TYPE := -1;
389: lastSlashPos BINARY_INTEGER;
390: BEGIN

Line 387: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE := 0;

383: packageName VARCHAR2(512);
384: pName JDR_PATHS.PATH_NAME%TYPE;
385: pType JDR_PATHS.PATH_TYPE%TYPE;
386: pSeq JDR_PATHS.PATH_SEQ%TYPE;
387: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE := 0;
388: docID JDR_PATHS.PATH_DOCID%TYPE := -1;
389: lastSlashPos BINARY_INTEGER;
390: BEGIN
391: packageName := fullPathName;

Line 388: docID JDR_PATHS.PATH_DOCID%TYPE := -1;

384: pName JDR_PATHS.PATH_NAME%TYPE;
385: pType JDR_PATHS.PATH_TYPE%TYPE;
386: pSeq JDR_PATHS.PATH_SEQ%TYPE;
387: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE := 0;
388: docID JDR_PATHS.PATH_DOCID%TYPE := -1;
389: lastSlashPos BINARY_INTEGER;
390: BEGIN
391: packageName := fullPathName;
392:

Line 412: FROM jdr_paths

408:
409: -- Now get the ID for the document
410: SELECT path_docid, path_type, path_seq
411: INTO docID, pType, pSeq
412: FROM jdr_paths
413: WHERE path_name = pName AND path_owner_docid = ownerID;
414:
415: IF (pType = 'PACKAGE') THEN
416: IF (pSeq = 0) THEN

Line 450: -- Creates an entry in the jdr_paths table for the document or package.

446: -----------------------------------------------------------------------------
447:
448:
449: --
450: -- Creates an entry in the jdr_paths table for the document or package.
451: -- The full name of the document/package must be specified. Any packages
452: -- which do not already exist will be created as well.
453: --
454: -- Parameters:

Line 473: FROM jdr_paths

469: xmlencoding VARCHAR2) RETURN NUMBER
470: IS
471: CURSOR c(packageName VARCHAR2, ownerID NUMBER) IS
472: SELECT path_docid
473: FROM jdr_paths
474: WHERE path_name = packageName AND
475: path_owner_docid = ownerID AND
476: path_seq = -1 AND
477: path_type = 'PACKAGE';

Line 479: ownerID jdr_paths.path_docid%TYPE := 0;

475: path_owner_docid = ownerID AND
476: path_seq = -1 AND
477: path_type = 'PACKAGE';
478:
479: ownerID jdr_paths.path_docid%TYPE := 0;
480: newDocID jdr_paths.path_docid%TYPE := 0;
481: docID jdr_paths.path_docid%TYPE := 0;
482: pathSeq jdr_paths.path_seq%TYPE := 0;
483: packageName jdr_paths.path_name%TYPE;

Line 480: newDocID jdr_paths.path_docid%TYPE := 0;

476: path_seq = -1 AND
477: path_type = 'PACKAGE';
478:
479: ownerID jdr_paths.path_docid%TYPE := 0;
480: newDocID jdr_paths.path_docid%TYPE := 0;
481: docID jdr_paths.path_docid%TYPE := 0;
482: pathSeq jdr_paths.path_seq%TYPE := 0;
483: packageName jdr_paths.path_name%TYPE;
484: slashpos INTEGER := 1;

Line 481: docID jdr_paths.path_docid%TYPE := 0;

477: path_type = 'PACKAGE';
478:
479: ownerID jdr_paths.path_docid%TYPE := 0;
480: newDocID jdr_paths.path_docid%TYPE := 0;
481: docID jdr_paths.path_docid%TYPE := 0;
482: pathSeq jdr_paths.path_seq%TYPE := 0;
483: packageName jdr_paths.path_name%TYPE;
484: slashpos INTEGER := 1;
485: tempdoc VARCHAR2(1024) := fullPathName;

Line 482: pathSeq jdr_paths.path_seq%TYPE := 0;

478:
479: ownerID jdr_paths.path_docid%TYPE := 0;
480: newDocID jdr_paths.path_docid%TYPE := 0;
481: docID jdr_paths.path_docid%TYPE := 0;
482: pathSeq jdr_paths.path_seq%TYPE := 0;
483: packageName jdr_paths.path_name%TYPE;
484: slashpos INTEGER := 1;
485: tempdoc VARCHAR2(1024) := fullPathName;
486: BEGIN

Line 483: packageName jdr_paths.path_name%TYPE;

479: ownerID jdr_paths.path_docid%TYPE := 0;
480: newDocID jdr_paths.path_docid%TYPE := 0;
481: docID jdr_paths.path_docid%TYPE := 0;
482: pathSeq jdr_paths.path_seq%TYPE := 0;
483: packageName jdr_paths.path_name%TYPE;
484: slashpos INTEGER := 1;
485: tempdoc VARCHAR2(1024) := fullPathName;
486: BEGIN
487:

Line 562: -- Creates an entry in the jdr_paths document.

558: END;
559:
560:
561: --
562: -- Creates an entry in the jdr_paths document.
563: --
564: -- Parameters:
565: -- username - user who is creating the document
566: -- pathname - the name of the document/package (not fully qualified)

Line 580: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,

576: --
577: FUNCTION createPath(
578: username VARCHAR2,
579: pathname VARCHAR2,
580: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,
581: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
582: docType VARCHAR2,
583: xmlversion VARCHAR2 DEFAULT NULL,
584: xmlencoding VARCHAR2 DEFAULT NULL) RETURN NUMBER

Line 581: pathSeq JDR_PATHS.PATH_SEQ%TYPE,

577: FUNCTION createPath(
578: username VARCHAR2,
579: pathname VARCHAR2,
580: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,
581: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
582: docType VARCHAR2,
583: xmlversion VARCHAR2 DEFAULT NULL,
584: xmlencoding VARCHAR2 DEFAULT NULL) RETURN NUMBER
585: IS

Line 586: docID JDR_PATHS.PATH_DOCID%TYPE;

582: docType VARCHAR2,
583: xmlversion VARCHAR2 DEFAULT NULL,
584: xmlencoding VARCHAR2 DEFAULT NULL) RETURN NUMBER
585: IS
586: docID JDR_PATHS.PATH_DOCID%TYPE;
587: BEGIN
588: -- Get the next document ID
589: SELECT jdr_document_id_s.NEXTVAL INTO docID FROM DUAL;
590:

Line 591: INSERT INTO jdr_paths

587: BEGIN
588: -- Get the next document ID
589: SELECT jdr_document_id_s.NEXTVAL INTO docID FROM DUAL;
590:
591: INSERT INTO jdr_paths
592: (PATH_NAME, PATH_DOCID, PATH_OWNER_DOCID, PATH_TYPE, PATH_SEQ,
593: PATH_XML_VERSION, PATH_XML_ENCODING,
594: CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_DATE,
595: LAST_UPDATE_LOGIN)

Line 624: FROM jdr_paths

620: DECLARE
621: cnt INTEGER;
622: BEGIN
623: SELECT path_docid INTO docID
624: FROM jdr_paths
625: WHERE
626: path_name = pathname AND
627: path_owner_docid = ownerID AND
628: path_type = docType AND

Line 638: FROM jdr_paths

634: -- be explained by a corrupt sequence; otherwise, we are dealing with
635: -- a name conflict.
636: WHEN NO_DATA_FOUND THEN
637: SELECT count(*) INTO cnt
638: FROM jdr_paths
639: WHERE
640: path_name = pathname AND
641: path_owner_docid = ownerID;
642:

Line 660: -- in the jdr_paths table will remain.

656: -- docID - ID of the document to delete
657: -- isDrop - should the document be dropped as well. If TRUE, then the
658: -- document will be completely removed. If FALSE, then only
659: -- the contents of the document will be deleted, and the entry
660: -- in the jdr_paths table will remain.
661: --
662: -- Notes:
663: -- If the document is a package document, then the "child" documents will
664: -- be deleted as well.

Line 667: docID JDR_PATHS.PATH_DOCID%TYPE,

663: -- If the document is a package document, then the "child" documents will
664: -- be deleted as well.
665: --
666: PROCEDURE deleteDocument(
667: docID JDR_PATHS.PATH_DOCID%TYPE,
668: isDrop BOOLEAN DEFAULT FALSE)
669: IS
670: BEGIN
671: -- Delete the attributes of the document

Line 673: (SELECT path_docid FROM jdr_paths

669: IS
670: BEGIN
671: -- Delete the attributes of the document
672: DELETE jdr_attributes WHERE att_comp_docid IN
673: (SELECT path_docid FROM jdr_paths
674: START WITH path_docid = docid
675: CONNECT BY PRIOR path_docid=path_owner_docid);
676:
677: -- Delete the components of the document

Line 679: (SELECT path_docid FROM jdr_paths

675: CONNECT BY PRIOR path_docid=path_owner_docid);
676:
677: -- Delete the components of the document
678: DELETE jdr_components WHERE comp_docid IN
679: (SELECT path_docid FROM jdr_paths
680: START WITH path_docid = docid
681: CONNECT BY PRIOR path_docid=path_owner_docid);
682:
683: --

Line 684: -- If isDrop is TRUE, then delete the document from the jdr_paths

680: START WITH path_docid = docid
681: CONNECT BY PRIOR path_docid=path_owner_docid);
682:
683: --
684: -- If isDrop is TRUE, then delete the document from the jdr_paths
685: -- table. Otherwise, mark the path_seq to a special value (-2).
686: --
687: -- We have to go through this complexity because:
688: -- (1) When updating a document, we want to make sure that the

Line 690: -- the row from the jdr_paths table and create a new one later.

686: --
687: -- We have to go through this complexity because:
688: -- (1) When updating a document, we want to make sure that the
689: -- document ID is preserved. As such, we can not simply remove
690: -- the row from the jdr_paths table and create a new one later.
691: --
692: -- (2) However, there could be a scenario where a package document that
693: -- is originally in the package, is removed at some later time. In
694: -- order to insure that these "dangling" packages get deleted

Line 700: DELETE jdr_paths where path_docid IN

696: -- document, the path_seq has not been changed to a postive integer,
697: -- then we know the document should be removed.
698: --
699: IF (isDrop) THEN
700: DELETE jdr_paths where path_docid IN
701: (SELECT path_docid FROM jdr_paths
702: START WITH path_docid = docid
703: CONNECT BY PRIOR path_docid=path_owner_docid);
704: ELSE

Line 701: (SELECT path_docid FROM jdr_paths

697: -- then we know the document should be removed.
698: --
699: IF (isDrop) THEN
700: DELETE jdr_paths where path_docid IN
701: (SELECT path_docid FROM jdr_paths
702: START WITH path_docid = docid
703: CONNECT BY PRIOR path_docid=path_owner_docid);
704: ELSE
705: UPDATE jdr_paths SET path_seq = -2

Line 705: UPDATE jdr_paths SET path_seq = -2

701: (SELECT path_docid FROM jdr_paths
702: START WITH path_docid = docid
703: CONNECT BY PRIOR path_docid=path_owner_docid);
704: ELSE
705: UPDATE jdr_paths SET path_seq = -2
706: WHERE path_seq > 0 AND path_docid IN
707: (SELECT path_docid FROM jdr_paths
708: START WITH path_docid = docid
709: CONNECT BY PRIOR path_docid=path_owner_docid);

Line 707: (SELECT path_docid FROM jdr_paths

703: CONNECT BY PRIOR path_docid=path_owner_docid);
704: ELSE
705: UPDATE jdr_paths SET path_seq = -2
706: WHERE path_seq > 0 AND path_docid IN
707: (SELECT path_docid FROM jdr_paths
708: START WITH path_docid = docid
709: CONNECT BY PRIOR path_docid=path_owner_docid);
710: END IF;
711:

Line 724: docID JDR_PATHS.PATH_DOCID%TYPE)

720: -- If the document is a package document, the "child" documents of the
721: -- package document will be dropped as well.
722: --
723: PROCEDURE dropDocument(
724: docID JDR_PATHS.PATH_DOCID%TYPE)
725: IS
726: BEGIN
727: -- ###
728: -- ### Should we allow the dropping of child documents and/or packages?

Line 742: docID JDR_PATHS.PATH_DOCID%TYPE,

738: -- A "single" document is simply a document which is not a package document.
739: -- See comments for exportDocumentAsXML for more information.
740: --
741: FUNCTION exportSingleDocument(
742: docID JDR_PATHS.PATH_DOCID%TYPE,
743: iFormatted INTEGER,
744: exportFinished OUT INTEGER) RETURN VARCHAR2
745: IS
746: chunk VARCHAR2(32000);

Line 921: docID JDR_PATHS.PATH_DOCID%TYPE,

917: --
918: -- See comments for exportDocumentAsXML for more information.
919: --
920: FUNCTION exportPackageDocument(
921: docID JDR_PATHS.PATH_DOCID%TYPE,
922: iFormatted INTEGER DEFAULT 1,
923: exportFinished OUT INTEGER) RETURN VARCHAR2
924: IS
925: chunk VARCHAR2(32000);

Line 1284: docID jdr_paths.path_docid%TYPE;

1280: formatted INTEGER DEFAULT 1,
1281: allowChildDoc INTEGER DEFAULT 0,
1282: includePackage INTEGER DEFAULT 0) RETURN VARCHAR2
1283: IS
1284: docID jdr_paths.path_docid%TYPE;
1285: BEGIN
1286: --
1287: -- A non-null fullName indicates that this is the first time this function
1288: -- is being called for this document. If so, we need to find the

Line 1308: SELECT path_type INTO mPathType FROM jdr_paths WHERE path_docid = docid;

1304: --
1305: -- #(2417655) Save the path type in a package variable, so if/when we
1306: -- re-enter this procedure, we will know whether we are exporting
1307: -- a package or a document.
1308: SELECT path_type INTO mPathType FROM jdr_paths WHERE path_docid = docid;
1309: IF (mPathType = 'PACKAGE') THEN
1310: RETURN (exportPackageDocument(docID, mFormatted, exportFinished));
1311: ELSE
1312: RETURN (exportSingleDocument(docID, mFormatted, exportFinished));

Line 1334: docID jdr_paths.path_docid%TYPE;

1330: document VARCHAR2,
1331: language VARCHAR2) RETURN VARCHAR2
1332: IS
1333: r_trans c_trans%ROWTYPE;
1334: docID jdr_paths.path_docid%TYPE;
1335: chunk VARCHAR2(32000);
1336: newxml VARCHAR2(32000);
1337: baseLanguage jdr_attributes.att_value%TYPE;
1338: compref VARCHAR2(400);

Line 1574: docID JDR_PATHS.PATH_DOCID%TYPE := -1;

1570: cacheName VARCHAR2(64);
1571: pathLevel INTEGER;
1572: endIdx INTEGER := -1;
1573: pathNames pathnametab := pathnametab();
1574: docID JDR_PATHS.PATH_DOCID%TYPE := -1;
1575: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE := 0;
1576: pType JDR_PATHS.PATH_TYPE%TYPE;
1577: cachePackage BOOLEAN := TRUE;
1578: BEGIN

Line 1575: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE := 0;

1571: pathLevel INTEGER;
1572: endIdx INTEGER := -1;
1573: pathNames pathnametab := pathnametab();
1574: docID JDR_PATHS.PATH_DOCID%TYPE := -1;
1575: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE := 0;
1576: pType JDR_PATHS.PATH_TYPE%TYPE;
1577: cachePackage BOOLEAN := TRUE;
1578: BEGIN
1579: -- #(3234805) If the document does not start with a forward slash,

Line 1576: pType JDR_PATHS.PATH_TYPE%TYPE;

1572: endIdx INTEGER := -1;
1573: pathNames pathnametab := pathnametab();
1574: docID JDR_PATHS.PATH_DOCID%TYPE := -1;
1575: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE := 0;
1576: pType JDR_PATHS.PATH_TYPE%TYPE;
1577: cachePackage BOOLEAN := TRUE;
1578: BEGIN
1579: -- #(3234805) If the document does not start with a forward slash,
1580: -- then it's an invalid document name

Line 1665: FROM jdr_paths

1661: -- we are at the leaf package
1662: LOOP
1663: SELECT path_docid, path_type
1664: INTO docID, pType
1665: FROM jdr_paths
1666: WHERE path_name = pathNames(pathLevel) AND path_owner_docid = ownerID;
1667:
1668: -- Check to see if the package should be cached
1669: IF (cachePackage) THEN

Line 1741: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,

1737: -- Returns the ID of the path or -1 if no such path exists
1738: --
1739: FUNCTION getDocumentID(
1740: name VARCHAR2,
1741: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,
1742: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
1743: docType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER
1744: IS
1745: docid JDR_PATHS.PATH_OWNER_DOCID%TYPE;

Line 1742: pathSeq JDR_PATHS.PATH_SEQ%TYPE,

1738: --
1739: FUNCTION getDocumentID(
1740: name VARCHAR2,
1741: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,
1742: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
1743: docType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER
1744: IS
1745: docid JDR_PATHS.PATH_OWNER_DOCID%TYPE;
1746: seq JDR_PATHS.PATH_SEQ%TYPE;

Line 1743: docType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER

1739: FUNCTION getDocumentID(
1740: name VARCHAR2,
1741: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,
1742: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
1743: docType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER
1744: IS
1745: docid JDR_PATHS.PATH_OWNER_DOCID%TYPE;
1746: seq JDR_PATHS.PATH_SEQ%TYPE;
1747: BEGIN

Line 1745: docid JDR_PATHS.PATH_OWNER_DOCID%TYPE;

1741: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,
1742: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
1743: docType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER
1744: IS
1745: docid JDR_PATHS.PATH_OWNER_DOCID%TYPE;
1746: seq JDR_PATHS.PATH_SEQ%TYPE;
1747: BEGIN
1748: -- Find the docid for the specified attributes
1749: SELECT path_docid, path_seq INTO docid, seq

Line 1746: seq JDR_PATHS.PATH_SEQ%TYPE;

1742: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
1743: docType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER
1744: IS
1745: docid JDR_PATHS.PATH_OWNER_DOCID%TYPE;
1746: seq JDR_PATHS.PATH_SEQ%TYPE;
1747: BEGIN
1748: -- Find the docid for the specified attributes
1749: SELECT path_docid, path_seq INTO docid, seq
1750: FROM jdr_paths

Line 1750: FROM jdr_paths

1746: seq JDR_PATHS.PATH_SEQ%TYPE;
1747: BEGIN
1748: -- Find the docid for the specified attributes
1749: SELECT path_docid, path_seq INTO docid, seq
1750: FROM jdr_paths
1751: WHERE
1752: path_name = name AND
1753: path_owner_docid = ownerID AND
1754: path_type = docType;

Line 1758: UPDATE jdr_paths SET path_seq = pathSeq

1754: path_type = docType;
1755:
1756: -- If the sequence differs, then update it to the specified sequence
1757: IF (seq <> pathSeq) THEN
1758: UPDATE jdr_paths SET path_seq = pathSeq
1759: WHERE
1760: path_docid = docid;
1761: END IF;
1762:

Line 1810: FROM jdr_paths

1806: name VARCHAR2(512) := '';
1807: i INTEGER;
1808: BEGIN
1809: SELECT path_name BULK COLLECT INTO pathNames
1810: FROM jdr_paths
1811: START WITH path_docid = docid
1812: CONNECT BY PRIOR path_owner_docid = path_docid
1813: ORDER BY LEVEL DESC;
1814:

Line 1836: pathSeq jdr_paths.path_seq%TYPE := 0;

1832: --
1833: FUNCTION getPackageDocument(
1834: docID NUMBER) RETURN NUMBER
1835: IS
1836: pathSeq jdr_paths.path_seq%TYPE := 0;
1837: ownerID jdr_paths.path_owner_docid%TYPE;
1838: newDocid jdr_paths.path_docid%TYPE := docID;
1839: BEGIN
1840: LOOP

Line 1837: ownerID jdr_paths.path_owner_docid%TYPE;

1833: FUNCTION getPackageDocument(
1834: docID NUMBER) RETURN NUMBER
1835: IS
1836: pathSeq jdr_paths.path_seq%TYPE := 0;
1837: ownerID jdr_paths.path_owner_docid%TYPE;
1838: newDocid jdr_paths.path_docid%TYPE := docID;
1839: BEGIN
1840: LOOP
1841: -- Retrieve the parent of the previous document

Line 1838: newDocid jdr_paths.path_docid%TYPE := docID;

1834: docID NUMBER) RETURN NUMBER
1835: IS
1836: pathSeq jdr_paths.path_seq%TYPE := 0;
1837: ownerID jdr_paths.path_owner_docid%TYPE;
1838: newDocid jdr_paths.path_docid%TYPE := docID;
1839: BEGIN
1840: LOOP
1841: -- Retrieve the parent of the previous document
1842: SELECT path_owner_docid, path_seq

Line 1844: FROM jdr_paths

1840: LOOP
1841: -- Retrieve the parent of the previous document
1842: SELECT path_owner_docid, path_seq
1843: INTO ownerID, pathSeq
1844: FROM jdr_paths
1845: WHERE path_docid = newDocID;
1846: EXIT WHEN pathSeq <= 0;
1847: newDocID := ownerID;
1848: END LOOP;

Line 1906: docID JDR_PATHS.PATH_DOCID%TYPE,

1902: -- docID - ID of the document to lock
1903: -- attempts - number of seconds to wait for a lock
1904: --
1905: PROCEDURE lockDocument(
1906: docID JDR_PATHS.PATH_DOCID%TYPE,
1907: attempts INTEGER DEFAULT MAX_SECONDS_TO_WAIT_FOR_LOCK
1908: )
1909: IS
1910: tmpdocID JDR_PATHS.PATH_DOCID%TYPE;

Line 1910: tmpdocID JDR_PATHS.PATH_DOCID%TYPE;

1906: docID JDR_PATHS.PATH_DOCID%TYPE,
1907: attempts INTEGER DEFAULT MAX_SECONDS_TO_WAIT_FOR_LOCK
1908: )
1909: IS
1910: tmpdocID JDR_PATHS.PATH_DOCID%TYPE;
1911: cont BOOLEAN := TRUE;
1912: num_attempts INTEGER := attempts;
1913: RESOURCE_BUSY EXCEPTION;
1914: PRAGMA EXCEPTION_INIT(RESOURCE_BUSY, -54);

Line 1919: FROM jdr_paths

1915: BEGIN
1916: WHILE (cont) LOOP
1917: BEGIN
1918: SELECT path_docid INTO tmpdocID
1919: FROM jdr_paths
1920: WHERE path_docid = docID
1921: FOR UPDATE NOWAIT;
1922:
1923: cont := false;

Line 1940: -- JDR_PATHS and deletes the contents of the document

1936: --
1937: -- Performs all steps that are necessary before a top-levle document is
1938: -- saved/updated which includes:
1939: -- (1) If the document already exists, updates the "who" columns in
1940: -- JDR_PATHS and deletes the contents of the document
1941: -- (2) If the document does not exist yet, creates a new entry in the
1942: -- JDR_PATHS table
1943: --
1944: -- Parameters:

Line 1942: -- JDR_PATHS table

1938: -- saved/updated which includes:
1939: -- (1) If the document already exists, updates the "who" columns in
1940: -- JDR_PATHS and deletes the contents of the document
1941: -- (2) If the document does not exist yet, creates a new entry in the
1942: -- JDR_PATHS table
1943: --
1944: -- Parameters:
1945: -- username - user who is updating/inserting the document
1946: -- fullPathName - fully qualified name of the document/package file

Line 1963: docID jdr_paths.path_docid%TYPE;

1959: pathType VARCHAR2,
1960: xmlversion VARCHAR2,
1961: xmlencoding VARCHAR2) RETURN NUMBER
1962: IS
1963: docID jdr_paths.path_docid%TYPE;
1964: pathSeq jdr_paths.path_seq%TYPE;
1965: BEGIN
1966:
1967: -- Check if the document already exists

Line 1964: pathSeq jdr_paths.path_seq%TYPE;

1960: xmlversion VARCHAR2,
1961: xmlencoding VARCHAR2) RETURN NUMBER
1962: IS
1963: docID jdr_paths.path_docid%TYPE;
1964: pathSeq jdr_paths.path_seq%TYPE;
1965: BEGIN
1966:
1967: -- Check if the document already exists
1968: docID := getDocumentID(fullPathName, pathType);

Line 1997: SELECT path_seq INTO pathSeq FROM jdr_paths WHERE path_docid = docID;

1993: END;
1994: ELSE
1995: -- #(2456503) Make sure that the document/package file does not already
1996: -- conflict with a document/package which already exists.
1997: SELECT path_seq INTO pathSeq FROM jdr_paths WHERE path_docid = docID;
1998:
1999: -- If attempting to save a document, then the path which we retrieved
2000: -- must be a top-level document (i.e. pathSeq = -1). If pathSeq > 0,
2001: -- this means that there is already a document of the same name inside a

Line 2021: UPDATE jdr_paths

2017: -- Lock the document
2018: lockDocument(docID);
2019:
2020: -- Document already exists, so update the "who" columns
2021: UPDATE jdr_paths
2022: SET path_xml_version = xmlversion,
2023: path_xml_encoding = xmlencoding,
2024: last_updated_by = username,
2025: last_update_date = SYSDATE,

Line 2041: -- JDR_PATHS

2037: --
2038: -- Performs all steps that are necessary before a package document is
2039: -- saved/updated which includes:
2040: -- (1) If the document already exists, updates the "who" columns in
2041: -- JDR_PATHS
2042: -- (2) If the document does not exist yet, creates a new entry in the
2043: -- JDR_PATHS table
2044: --
2045: -- Parameters:

Line 2043: -- JDR_PATHS table

2039: -- saved/updated which includes:
2040: -- (1) If the document already exists, updates the "who" columns in
2041: -- JDR_PATHS
2042: -- (2) If the document does not exist yet, creates a new entry in the
2043: -- JDR_PATHS table
2044: --
2045: -- Parameters:
2046: -- username - user who is updating/inserting the document
2047: -- pathname - name of the document/package

Line 2058: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,

2054: --
2055: FUNCTION prepareDocumentForInsert(
2056: username VARCHAR2,
2057: pathname VARCHAR2,
2058: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,
2059: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
2060: pathType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER
2061: IS
2062: docID jdr_paths.path_docid%TYPE;

Line 2059: pathSeq JDR_PATHS.PATH_SEQ%TYPE,

2055: FUNCTION prepareDocumentForInsert(
2056: username VARCHAR2,
2057: pathname VARCHAR2,
2058: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,
2059: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
2060: pathType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER
2061: IS
2062: docID jdr_paths.path_docid%TYPE;
2063: BEGIN

Line 2060: pathType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER

2056: username VARCHAR2,
2057: pathname VARCHAR2,
2058: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,
2059: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
2060: pathType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER
2061: IS
2062: docID jdr_paths.path_docid%TYPE;
2063: BEGIN
2064:

Line 2062: docID jdr_paths.path_docid%TYPE;

2058: ownerID JDR_PATHS.PATH_OWNER_DOCID%TYPE,
2059: pathSeq JDR_PATHS.PATH_SEQ%TYPE,
2060: pathType JDR_PATHS.PATH_TYPE%TYPE) RETURN NUMBER
2061: IS
2062: docID jdr_paths.path_docid%TYPE;
2063: BEGIN
2064:
2065: -- Check if the document already exists
2066: docID := getDocumentID(pathname, ownerID, pathSeq, pathType);

Line 2073: UPDATE jdr_paths

2069: -- Document does not exist yet, so create it now
2070: docID := createPath(username, pathname, ownerID, pathSeq, pathType);
2071: ELSE
2072: -- Document already exists, so update the "who" columns
2073: UPDATE jdr_paths
2074: SET last_updated_by = username,
2075: last_update_date = SYSDATE,
2076: last_update_login = username
2077: WHERE path_docid = docID;

Line 2103: FROM jdr_attributes, jdr_paths

2099: att_comp_seq,
2100: att_seq,
2101: att_name
2102: FROM (SELECT path_docid
2103: FROM jdr_attributes, jdr_paths
2104: WHERE path_docid = att_comp_docid AND
2105: path_name = baseName AND
2106: att_comp_seq = 0 AND
2107: att_name = 'customizes' AND

Line 2123: FROM jdr_attributes, jdr_paths

2119: CURSOR c_translations(fullName VARCHAR2, baseName VARCHAR2, compID VARCHAR2) IS
2120: SELECT atl_comp_docid,
2121: atl_comp_ref
2122: FROM (SELECT path_docid
2123: FROM jdr_attributes, jdr_paths
2124: WHERE path_docid = att_comp_docid AND
2125: path_name = baseName AND
2126: att_comp_seq = 0 AND
2127: att_name = 'customizes' AND

Line 2137: FROM jdr_attributes, jdr_paths

2133: -- Retrieve all of the customization documents which customize the
2134: -- specified base document.
2135: CURSOR c_documents(fullName VARCHAR2, baseName VARCHAR2) IS
2136: SELECT path_docid, created_by, jdr_mds_internal.getDocumentName(path_docid)
2137: FROM jdr_attributes, jdr_paths
2138: WHERE path_docid = att_comp_docid AND
2139: path_name = baseName AND
2140: att_comp_seq = 0 AND
2141: att_name = 'customizes' AND

Line 2148: oldBaseName jdr_paths.path_name%TYPE;

2144: oldDocName VARCHAR2(512);
2145: newDocName VARCHAR2(512);
2146: oldCustDocName VARCHAR2(512);
2147: newCustDocName VARCHAR2(512);
2148: oldBaseName jdr_paths.path_name%TYPE;
2149: newBaseName jdr_paths.path_name%TYPE;
2150: oldCompName jdr_components.comp_id%TYPE;
2151: newCompName jdr_components.comp_id%TYPE;
2152: docID jdr_paths.path_docid%TYPE;

Line 2149: newBaseName jdr_paths.path_name%TYPE;

2145: newDocName VARCHAR2(512);
2146: oldCustDocName VARCHAR2(512);
2147: newCustDocName VARCHAR2(512);
2148: oldBaseName jdr_paths.path_name%TYPE;
2149: newBaseName jdr_paths.path_name%TYPE;
2150: oldCompName jdr_components.comp_id%TYPE;
2151: newCompName jdr_components.comp_id%TYPE;
2152: docID jdr_paths.path_docid%TYPE;
2153: ownerID jdr_paths.path_docid%TYPE;

Line 2152: docID jdr_paths.path_docid%TYPE;

2148: oldBaseName jdr_paths.path_name%TYPE;
2149: newBaseName jdr_paths.path_name%TYPE;
2150: oldCompName jdr_components.comp_id%TYPE;
2151: newCompName jdr_components.comp_id%TYPE;
2152: docID jdr_paths.path_docid%TYPE;
2153: ownerID jdr_paths.path_docid%TYPE;
2154: attCompSeq jdr_attributes.att_comp_seq%TYPE;
2155: attSeq jdr_attributes.att_seq%TYPE;
2156: attName jdr_attributes.att_name%TYPE;

Line 2153: ownerID jdr_paths.path_docid%TYPE;

2149: newBaseName jdr_paths.path_name%TYPE;
2150: oldCompName jdr_components.comp_id%TYPE;
2151: newCompName jdr_components.comp_id%TYPE;
2152: docID jdr_paths.path_docid%TYPE;
2153: ownerID jdr_paths.path_docid%TYPE;
2154: attCompSeq jdr_attributes.att_comp_seq%TYPE;
2155: attSeq jdr_attributes.att_seq%TYPE;
2156: attName jdr_attributes.att_name%TYPE;
2157: oldCompRef jdr_attributes_trans.atl_comp_ref%TYPE;

Line 2159: username jdr_paths.created_by%TYPE;

2155: attSeq jdr_attributes.att_seq%TYPE;
2156: attName jdr_attributes.att_name%TYPE;
2157: oldCompRef jdr_attributes_trans.atl_comp_ref%TYPE;
2158: newCompRef jdr_attributes_trans.atl_comp_ref%TYPE;
2159: username jdr_paths.created_by%TYPE;
2160: oldPeriodPos INTEGER;
2161: newPeriodPos INTEGER;
2162: slashPos INTEGER;
2163: custPos INTEGER;

Line 2377: UPDATE jdr_paths

2373: END IF;
2374:
2375: -- Update the path with the new base name and new owner ID
2376: BEGIN
2377: UPDATE jdr_paths
2378: SET path_name = newBaseName,
2379: path_owner_docid = ownerID
2380: WHERE path_docid = docID;
2381: EXCEPTION

Line 2427: docID JDR_PATHS.PATH_DOCID%TYPE)

2423: -- In order make sure that all references to C are destroyed, this needs to
2424: -- be called after saving FOO.
2425: --
2426: PROCEDURE removeDanglingReferences(
2427: docID JDR_PATHS.PATH_DOCID%TYPE)
2428: IS
2429: BEGIN
2430: DELETE jdr_paths
2431: WHERE path_seq=-2 AND path_docid IN

Line 2430: DELETE jdr_paths

2426: PROCEDURE removeDanglingReferences(
2427: docID JDR_PATHS.PATH_DOCID%TYPE)
2428: IS
2429: BEGIN
2430: DELETE jdr_paths
2431: WHERE path_seq=-2 AND path_docid IN
2432: (SELECT path_docid FROM jdr_paths
2433: START WITH path_docid = docid
2434: CONNECT BY PRIOR path_docid=path_owner_docid);

Line 2432: (SELECT path_docid FROM jdr_paths

2428: IS
2429: BEGIN
2430: DELETE jdr_paths
2431: WHERE path_seq=-2 AND path_docid IN
2432: (SELECT path_docid FROM jdr_paths
2433: START WITH path_docid = docid
2434: CONNECT BY PRIOR path_docid=path_owner_docid);
2435: END;
2436: