DBA Data[Home] [Help]

APPS.HZ_HIERARCHY_PUB SQL Statements

The following lines contain the word 'select', 'insert', 'update' or 'delete':

Line: 44

PROCEDURE do_update_link(
    p_hierarchy_node_rec      IN     HIERARCHY_NODE_REC_TYPE,
    x_return_status           IN OUT NOCOPY VARCHAR2
);
Line: 49

PROCEDURE do_update_link_pvt(
    p_hierarchy_node_rec      IN     HIERARCHY_NODE_REC_TYPE
);
Line: 126

    SELECT *
    FROM   hz_temp_rel_gt
    ORDER BY date1,date2;
Line: 142

        insert into hz_temp_rel_gt(date1,date2,pc_flag) values(p_d1(i),p_d2(i),p_pc(i));
Line: 191

select effective_start_date,effective_end_date,'P' parent_child_flag
from hz_hierarchy_nodes
where parent_id=p_id
and parent_table_name=p_table_name
and parent_object_type=p_object_type
and hierarchy_type=p_hierarchy_type
and level_number=1
union
select effective_start_date,effective_end_date,'C' parent_child_flag
from hz_hierarchy_nodes
where child_id=p_id
and child_table_name=p_table_name
and child_object_type=p_object_type
and hierarchy_type=p_hierarchy_type
and level_number=1;
Line: 208

 select to_date(to_char(effective_start_date,'dd/mm/yyyy')||'12:00:00 AM','dd/mm/yyyy hh:mi:ss AM'),
        to_date(to_char(effective_end_date,  'dd/mm/yyyy')||'11:59:59 PM','dd/mm/yyyy hh:mi:ss PM'),
        'P' parent_child_flag
 from hz_hierarchy_nodes
 where parent_id=p_id
 and parent_table_name=p_table_name
 and parent_object_type=p_object_type
 and hierarchy_type=p_hierarchy_type
 and level_number=1
 union
 select to_date(to_char(effective_start_date,'dd/mm/yyyy')||'00:00:00','dd/mm/yyyy hh24:mi:ss'),
        to_date(to_char(effective_end_date,  'dd/mm/yyyy')||'23:59:59','dd/mm/yyyy hh24:mi:ss'),
        'C' parent_child_flag
 from hz_hierarchy_nodes
 where child_id=p_id
 and child_table_name=p_table_name
 and child_object_type=p_object_type
 and hierarchy_type=p_hierarchy_type
 and level_number=1;
Line: 238

delete from hz_hierarchy_nodes
where parent_id=p_node_id
and parent_table_name=p_table_name
and parent_object_type=p_object_type
and hierarchy_type=p_hierarchy_type
and level_number=0;
Line: 269

	hz_utility_v2pub.debug(p_message=>'HZ_HIERARCHY_NODES_PKG.insert_row (+) l_tp = '||l_tp||' l_lc = '||l_lc ,
	                       p_prefix=>l_debug_prefix,
			       p_msg_level=>fnd_log.level_procedure);
Line: 274

    HZ_HIERARCHY_NODES_PKG.Insert_Row(
                X_ROWID                      => l_rowid,
                X_HIERARCHY_TYPE             => p_hierarchy_type,
                X_PARENT_ID                  => p_node_id,
                X_PARENT_TABLE_NAME          => p_table_name,
                X_PARENT_OBJECT_TYPE         => p_object_type,
                X_CHILD_ID                   => p_node_id,
                X_CHILD_TABLE_NAME           => p_table_name,
                X_CHILD_OBJECT_TYPE          => p_object_type,
                X_LEVEL_NUMBER               => 0,
                X_TOP_PARENT_FLAG            => l_tp,
                X_LEAF_CHILD_FLAG            => l_lc,
                X_EFFECTIVE_START_DATE       => l_start_date(1),
                X_EFFECTIVE_END_DATE         => l_end_date(1),
                X_STATUS                     => NULL,
                X_RELATIONSHIP_ID            => NULL,
                X_ACTUAL_CONTENT_SOURCE      => p_actual_content_source
            );
Line: 458

	hz_utility_v2pub.debug(p_message=> 'HZ_HIERARCHY_NODES_PKG.insert_row (+) l_tp = '||l_tp||' l_lc = '||l_lc,
	                       p_prefix=>l_debug_prefix,
			       p_msg_level=>fnd_log.level_procedure);
Line: 464

    HZ_HIERARCHY_NODES_PKG.Insert_Row(
                X_ROWID                      => l_rowid,
                X_HIERARCHY_TYPE             => p_hierarchy_type,
                X_PARENT_ID                  => p_node_id,
                X_PARENT_TABLE_NAME          => p_table_name,
                X_PARENT_OBJECT_TYPE         => p_object_type,
                X_CHILD_ID                   => p_node_id,
                X_CHILD_TABLE_NAME           => p_table_name,
                X_CHILD_OBJECT_TYPE          => p_object_type,
                X_LEVEL_NUMBER               => 0,
                X_TOP_PARENT_FLAG            => l_tp,
                X_LEAF_CHILD_FLAG            => l_lc,
                X_EFFECTIVE_START_DATE       => l_start_date(i)+l_const,
                X_EFFECTIVE_END_DATE         => l_end_date(i),
                X_STATUS                     => NULL,
                X_RELATIONSHIP_ID            => NULL,
                X_ACTUAL_CONTENT_SOURCE      => p_actual_content_source
            );
Line: 568

        SELECT UNIQUE PARENT_ID,
               PARENT_TABLE_NAME,
               PARENT_OBJECT_TYPE,
               LEVEL_NUMBER
/*
               TOP_PARENT_FLAG,
               EFFECTIVE_START_DATE,
               EFFECTIVE_END_DATE
*/
        FROM   HZ_HIERARCHY_NODES
        WHERE  CHILD_ID = p_hierarchy_node_rec.parent_id
        AND    CHILD_TABLE_NAME = p_hierarchy_node_rec.parent_table_name
        AND    CHILD_OBJECT_TYPE = p_hierarchy_node_rec.parent_object_type
        AND    HIERARCHY_TYPE = p_hierarchy_node_rec.hierarchy_type

        AND    (EFFECTIVE_START_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                EFFECTIVE_END_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                l_existing_start_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
                OR
                l_existing_end_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
               )
        AND    NVL(status,'A') = 'A'
        ORDER BY LEVEL_NUMBER ASC;
Line: 601

        SELECT UNIQUE CHILD_ID,
               CHILD_TABLE_NAME,
               CHILD_OBJECT_TYPE,
               LEVEL_NUMBER
/*
               LEAF_CHILD_FLAG,
               EFFECTIVE_START_DATE,
               EFFECTIVE_END_DATE
*/
        FROM   HZ_HIERARCHY_NODES
        WHERE  PARENT_ID = p_hierarchy_node_rec.child_id
        AND    PARENT_TABLE_NAME = p_hierarchy_node_rec.child_table_name
        AND    PARENT_OBJECT_TYPE = p_hierarchy_node_rec.child_object_type
        AND    HIERARCHY_TYPE = p_hierarchy_node_rec.hierarchy_type

        AND    (EFFECTIVE_START_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                EFFECTIVE_END_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                l_existing_start_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
                OR
                l_existing_end_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
               )
        AND    NVL(status,'A') = 'A'
        ORDER BY LEVEL_NUMBER ASC;
Line: 633

        SELECT PARENT_ID,
               PARENT_TABLE_NAME,
               PARENT_OBJECT_TYPE,
               EFFECTIVE_START_DATE,
               EFFECTIVE_END_DATE
        FROM   HZ_HIERARCHY_NODES a
        WHERE  CHILD_ID = p_child_id
        AND    CHILD_TABLE_NAME = p_child_table_name
        AND    CHILD_OBJECT_TYPE = p_child_object_type
        AND    HIERARCHY_TYPE = p_hierarchy_node_rec.hierarchy_type
        AND    (EFFECTIVE_START_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                EFFECTIVE_END_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                l_existing_start_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
                OR
                l_existing_end_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
               )
        AND    NVL(status,'A') = 'A'
        AND    LEVEL_NUMBER = 1
        -- Fix for Bug 5662272
        -- Filter out end dated records, if there is a future record existing
        AND    NOT EXISTS (SELECT NULL FROM HZ_HIERARCHY_NODES b
                           WHERE b.PARENT_ID = a.PARENT_ID
                           AND   b.PARENT_TABLE_NAME = a.PARENT_TABLE_NAME
                           AND   b.PARENT_OBJECT_TYPE = a.PARENT_OBJECT_TYPE
                           AND   b.CHILD_ID = a.CHILD_ID
                           AND   b.CHILD_TABLE_NAME = a.CHILD_TABLE_NAME
                           AND   b.CHILD_OBJECT_TYPE = a.CHILD_OBJECT_TYPE
                           AND   b.HIERARCHY_TYPE = a.HIERARCHY_TYPE
                           AND   b.LEVEL_NUMBER = a.LEVEL_NUMBER
                           AND   NVL(b.status,'A') = 'A'
                           AND   b.EFFECTIVE_END_DATE > a.EFFECTIVE_END_DATE
               )
        ORDER BY RELATIONSHIP_ID DESC;
Line: 677

        SELECT LEVEL_NUMBER,
               TOP_PARENT_FLAG,
               LEAF_CHILD_FLAG,
               EFFECTIVE_START_DATE,
               EFFECTIVE_END_DATE
        FROM   HZ_HIERARCHY_NODES a
        WHERE  PARENT_ID = p_parent_id
        AND    PARENT_TABLE_NAME = p_parent_table_name
        AND    PARENT_OBJECT_TYPE = p_parent_object_type
        AND    CHILD_ID = p_child_id
        AND    CHILD_TABLE_NAME = p_child_table_name
        AND    CHILD_OBJECT_TYPE = p_child_object_type
        AND    (EFFECTIVE_START_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                EFFECTIVE_END_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                l_existing_start_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
                OR
                l_existing_end_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
               )
        AND    NVL(status,'A') = 'A'
        -- Fix for Bug 5662272
        -- For the same level, if there are 2 records, then take the latest one and filter out
        -- record with lower end date. That record may have been end dated and a new one is created
        AND    NOT EXISTS (SELECT NULL FROM HZ_HIERARCHY_NODES b
                           WHERE b.PARENT_ID = a.PARENT_ID
                           AND   b.PARENT_TABLE_NAME = a.PARENT_TABLE_NAME
                           AND   b.PARENT_OBJECT_TYPE = a.PARENT_OBJECT_TYPE
                           AND   b.CHILD_ID = a.CHILD_ID
                           AND   b.CHILD_TABLE_NAME = a.CHILD_TABLE_NAME
                           AND   b.CHILD_OBJECT_TYPE = a.CHILD_OBJECT_TYPE
                           AND   b.HIERARCHY_TYPE = a.HIERARCHY_TYPE
                           AND   b.LEVEL_NUMBER = a.LEVEL_NUMBER
                           AND   NVL(b.status,'A') = 'A'
                           AND   b.EFFECTIVE_END_DATE > a.EFFECTIVE_END_DATE
               )
		;
Line: 744

    HZ_HIERARCHY_NODES_PKG.Insert_Row(
        X_ROWID                      => l_direct_link_rowid,
        X_HIERARCHY_TYPE             => p_hierarchy_node_rec.hierarchy_type,
        X_PARENT_ID                  => p_hierarchy_node_rec.parent_id,
        X_PARENT_TABLE_NAME          => p_hierarchy_node_rec.parent_table_name,
        X_PARENT_OBJECT_TYPE         => p_hierarchy_node_rec.parent_object_type,
        X_CHILD_ID                   => p_hierarchy_node_rec.child_id,
        X_CHILD_TABLE_NAME           => p_hierarchy_node_rec.child_table_name,
        X_CHILD_OBJECT_TYPE          => p_hierarchy_node_rec.child_object_type,
        X_LEVEL_NUMBER               => 1,
        X_TOP_PARENT_FLAG            => NULL,
        X_LEAF_CHILD_FLAG            => NULL,
        X_EFFECTIVE_START_DATE       => p_hierarchy_node_rec.effective_start_date,
        X_EFFECTIVE_END_DATE         => p_hierarchy_node_rec.effective_end_date,
        X_STATUS                     => p_hierarchy_node_rec.status,
        X_RELATIONSHIP_ID            => p_hierarchy_node_rec.relationship_id,
        X_ACTUAL_CONTENT_SOURCE      => p_hierarchy_node_rec.actual_content_source
    );
Line: 828

      SELECT EFFECTIVE_START_DATE, EFFECTIVE_END_DATE
      INTO   l_existing_start_date, l_existing_end_date
      FROM   HZ_HIERARCHY_NODES
      WHERE  PARENT_ID = p_hierarchy_node_rec.parent_id
        AND  CHILD_ID = p_hierarchy_node_rec.child_id
        AND  LEVEL_NUMBER = 1
        AND  RELATIONSHIP_ID = p_hierarchy_node_rec.relationship_id ;
Line: 916

                HZ_HIERARCHY_NODES_PKG.Insert_Row(
                    X_ROWID                      => l_rowid,
                    X_HIERARCHY_TYPE             => p_hierarchy_node_rec.hierarchy_type,
                    X_PARENT_ID                  => r_get_all_parents.parent_id,
                    X_PARENT_TABLE_NAME          => r_get_all_parents.parent_table_name,
                    X_PARENT_OBJECT_TYPE         => r_get_all_parents.parent_object_type,
                    X_CHILD_ID                   => r_get_all_children.child_id,
                    X_CHILD_TABLE_NAME           => r_get_all_children.child_table_name,
                    X_CHILD_OBJECT_TYPE          => r_get_all_children.child_object_type,
                    X_LEVEL_NUMBER               => l_level_number,
                    X_TOP_PARENT_FLAG            => NULL,
                    X_LEAF_CHILD_FLAG            => NULL,
                    X_EFFECTIVE_START_DATE       => l_effective_start_date,
                    X_EFFECTIVE_END_DATE         => l_effective_end_date,
                    X_STATUS                     => NULL,
                    X_RELATIONSHIP_ID            => NULL,
                    X_ACTUAL_CONTENT_SOURCE      => p_hierarchy_node_rec.actual_content_source
                );
Line: 968

 Do_update_link procedure to traverse the tree recursively to figure out parents
 at each step and then update the hierarchy nodes dates
------------------------------------------------------------------------------+*/
PROCEDURE do_update_link_pvt(
    p_hierarchy_node_rec      IN     HIERARCHY_NODE_REC_TYPE
) IS

  l_debug_prefix		CONSTANT VARCHAR2(30) := '';
Line: 1000

  l_LAST_UPDATED_BY                   NUMBER;
Line: 1001

  l_LAST_UPDATE_DATE                  DATE;
Line: 1002

  l_LAST_UPDATE_LOGIN                 NUMBER;
Line: 1018

        SELECT CHILD_ID,
               CHILD_OBJECT_TYPE,
               CHILD_TABLE_NAME
        FROM   HZ_HIERARCHY_NODES
        WHERE  PARENT_ID = ll_child_id
        AND    PARENT_TABLE_NAME = ll_child_table
        AND    PARENT_OBJECT_TYPE = ll_child_object_type
        AND    HIERARCHY_TYPE = l_hierarchy_type
        AND    (EFFECTIVE_START_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                EFFECTIVE_END_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                l_existing_start_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
                OR
                l_existing_end_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
               )
        AND    NVL(status,'A') = 'A'
        ORDER BY LEVEL_NUMBER ASC;
Line: 1042

        SELECT PARENT_ID, PARENT_OBJECT_TYPE, CHILD_ID, CHILD_OBJECT_TYPE, rowid
        FROM  HZ_HIERARCHY_NODES a
        WHERE PARENT_ID = l_parent_id
        AND   PARENT_TABLE_NAME = l_parent_table
        AND   PARENT_OBJECT_TYPE = l_parent_object_type
        AND   CHILD_ID = l_child_id
        AND   CHILD_TABLE_NAME = l_child_table
        AND   CHILD_OBJECT_TYPE = l_child_object_type
        AND   HIERARCHY_TYPE = l_hierarchy_type
        AND   (EFFECTIVE_START_DATE BETWEEN l_existing_start_date AND l_existing_end_date
               OR
               EFFECTIVE_END_DATE BETWEEN l_existing_start_date AND l_existing_end_date
               OR
               l_existing_start_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
               OR
               l_existing_end_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
              )
        AND   NVL(status,'A') = 'A'
        -- Fix for Bug 5662272
        -- Here problem is, it will pick up any 1 record in random and update end date for that
        -- This way it may inactivae end dated record and leave active record unchanged.
        -- Change it pick up the records for which start date and end date for level 1 relationship
        -- matches (most likely that will be the date for this link also.). If No such record
        -- exists, then pick up the greatest effective_end_date rec (most linkely will be the active one)
        -- and execute cursor only once
        AND   NOT  EXISTS (SELECT NULL FROM HZ_HIERARCHY_NODES b
                           WHERE b.PARENT_ID = a.PARENT_ID
                           AND   b.PARENT_TABLE_NAME = a.PARENT_TABLE_NAME
                           AND   b.PARENT_OBJECT_TYPE = a.PARENT_OBJECT_TYPE
                           AND   b.CHILD_ID = a.CHILD_ID
                           AND   b.CHILD_TABLE_NAME = a.CHILD_TABLE_NAME
                           AND   b.CHILD_OBJECT_TYPE = a.CHILD_OBJECT_TYPE
                           AND   b.HIERARCHY_TYPE = a.HIERARCHY_TYPE
                           AND   b.LEVEL_NUMBER = a.LEVEL_NUMBER
                           AND   NVL(b.status,'A') = 'A'
                           AND   b.EFFECTIVE_START_DATE = l_existing_start_date
                           AND   b.EFFECTIVE_END_DATE = l_existing_end_date
                           AND   a.ROWID <> b.ROWID
              )
      -- Move this condition inside cursor loop
      --AND  ROWNUM = 1
      ORDER BY effective_end_date desc;
Line: 1094

	    SELECT parent_id, parent_object_type, parent_table_name
	    FROM   hz_hierarchy_nodes
	    WHERE  hierarchy_type = l_hierarchy_type
	    AND    child_table_name = l_child_table
	    AND    child_object_type = l_child_object_type
	    AND    child_id = l_child_id
	    AND    level_number = 1
	    AND    SYSDATE+0.0001 BETWEEN effective_start_date AND effective_end_date
        AND    NVL(status,'A') = 'A'
	    ;
Line: 1213

     hz_utility_v2pub.debug(p_message=>'do_update_link_pvt (+)',
	                       p_prefix=>l_debug_prefix,
	 		               p_msg_level=>fnd_log.level_procedure);
Line: 1228

  l_LAST_UPDATED_BY     := HZ_UTILITY_V2PUB.last_updated_by;
Line: 1229

  l_LAST_UPDATE_DATE    := HZ_UTILITY_V2PUB.last_update_date;
Line: 1230

  l_LAST_UPDATE_LOGIN   := HZ_UTILITY_V2PUB.last_update_login;
Line: 1235

    SELECT EFFECTIVE_START_DATE,EFFECTIVE_END_DATE
    INTO   l_existing_start_date,l_existing_end_date
    FROM   HZ_HIERARCHY_NODES
    WHERE  PARENT_ID = p_hierarchy_node_rec.parent_id
      AND  CHILD_ID = p_hierarchy_node_rec.child_id
      AND  LEVEL_NUMBER = 1
      AND  RELATIONSHIP_ID = p_hierarchy_node_rec.relationship_id ;
Line: 1295

              UPDATE HZ_HIERARCHY_NODES
              SET EFFECTIVE_START_DATE = NVL(p_hierarchy_node_rec.effective_start_date, EFFECTIVE_START_DATE),
                  EFFECTIVE_END_DATE = NVL(p_hierarchy_node_rec.effective_end_date, EFFECTIVE_END_DATE),
                  -- added for Bug 5662272 (This will update Status values for I which help in
				  -- eleminating deleted rows from all the cursors
                  STATUS = NVL(p_hierarchy_node_rec.status, STATUS),
                  LAST_UPDATED_BY = l_last_updated_by,
  		          LAST_UPDATE_DATE = l_last_update_date,
                  LAST_UPDATE_LOGIN = l_last_update_login
              WHERE ROWID = c_par_child_rec.ROWID;
Line: 1319

	hz_utility_v2pub.debug(p_message=>'do_update_link_pvt (-)',
	                       p_prefix=>l_debug_prefix,
	 		               p_msg_level=>fnd_log.level_procedure);
Line: 1324

END do_update_link_pvt;
Line: 1329

 |              do_update_link
 |
 | DESCRIPTION
 |              updates hierarchial relationship between two nodes and corrosponding links.
 |
 | SCOPE - PRIVATE
 |
 | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
 |
 | ARGUMENTS  : IN:
 |              OUT:
 |          IN/ OUT:
 |                    p_hierarchy_node_rec
 |                    x_return_status
 |
 | RETURNS    : NONE
 |
 | NOTES
 |
 | MODIFICATION HISTORY
 |
 +===========================================================================*/

PROCEDURE do_update_link(
    p_hierarchy_node_rec                IN     HIERARCHY_NODE_REC_TYPE,
    x_return_status                     IN OUT NOCOPY VARCHAR2
) IS
/*  -- Moved below logic into procedure do_update_link_pvt for Bug 4662744 (Nishant 30-Mar-2006)
    -- End dating of hierarchy in case of multiple parents was not correct

    -- Bug 4902909.
    -- we'll get the parents and children of the relationship,
    -- based on the existing start dates.
    -- This is because, if the new dates are used, the data will be picked up
    -- in to the cursor only if there is some overlap between the old and new dates.
    -- If the old and new date ranges are mutually exclusive, then the where
    -- used for the cursors will prevent any data from being picked up.
    -- Also the relationship API will not pass the existing dates.
    -- these are picked up from the HZ_HIERARCHY_NODES table itself,
    -- from the level 1 recordusing the parent_id, child_i and relationship_id
    -- passed through the  p_hierarchy_node_rec.
    -- once obtained, these current dates will be used to pickup data in to the cursors.
    l_existing_start_date               DATE;
Line: 1378

        SELECT PARENT_ID,
               PARENT_TABLE_NAME,
               PARENT_OBJECT_TYPE,
               LEVEL_NUMBER,
               TOP_PARENT_FLAG,
               EFFECTIVE_START_DATE,
               EFFECTIVE_END_DATE
        FROM   HZ_HIERARCHY_NODES
        WHERE  CHILD_ID = p_hierarchy_node_rec.parent_id
        AND    CHILD_TABLE_NAME = p_hierarchy_node_rec.parent_table_name
        AND    CHILD_OBJECT_TYPE = p_hierarchy_node_rec.parent_object_type
        AND    HIERARCHY_TYPE = p_hierarchy_node_rec.hierarchy_type
        AND    (EFFECTIVE_START_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                EFFECTIVE_END_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                l_existing_start_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
                OR
                l_existing_end_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
               )
        -- AND    NVL(RELATIONSHIP_ID, p_hierarchy_node_rec.relationship_id) = p_hierarchy_node_rec.relationship_id
        ORDER BY LEVEL_NUMBER ASC;
Line: 1408

        SELECT CHILD_ID,
               CHILD_TABLE_NAME,
               CHILD_OBJECT_TYPE,
               LEVEL_NUMBER,
               LEAF_CHILD_FLAG,
               EFFECTIVE_START_DATE,
               EFFECTIVE_END_DATE
        FROM   HZ_HIERARCHY_NODES
        WHERE  PARENT_ID = p_hierarchy_node_rec.child_id
        AND    PARENT_TABLE_NAME = p_hierarchy_node_rec.child_table_name
        AND    PARENT_OBJECT_TYPE = p_hierarchy_node_rec.child_object_type
        AND    HIERARCHY_TYPE = p_hierarchy_node_rec.hierarchy_type
        AND    (EFFECTIVE_START_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                EFFECTIVE_END_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                OR
                l_existing_start_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
                OR
                l_existing_end_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
               )
        -- AND    NVL(RELATIONSHIP_ID, p_hierarchy_node_rec.relationship_id) = p_hierarchy_node_rec.relationship_id
        ORDER BY LEVEL_NUMBER ASC;
Line: 1440

/* -- Moved below logic into procedure do_update_link_pvt for Bug 4662744 (Nishant 30-Mar-2006)
   -- End dating of hierarchy in case of multiple parents was not correct

  Select EFFECTIVE_START_DATE,EFFECTIVE_END_DATE into l_existing_start_date,l_existing_end_date
      from HZ_HIERARCHY_NODES
      where PARENT_ID=p_hierarchy_node_rec.parent_id
         AND CHILD_ID=p_hierarchy_node_rec.child_id
         AND LEVEL_NUMBER=1
         AND RELATIONSHIP_ID=p_hierarchy_node_rec.relationship_id ;
Line: 1471

            UPDATE HZ_HIERARCHY_NODES
            SET EFFECTIVE_START_DATE = NVL(p_hierarchy_node_rec.effective_start_date, EFFECTIVE_START_DATE),
                EFFECTIVE_END_DATE = NVL(p_hierarchy_node_rec.effective_end_date, EFFECTIVE_END_DATE),
                LAST_UPDATED_BY = HZ_UTILITY_V2PUB.last_updated_by,
		LAST_UPDATE_DATE = HZ_UTILITY_V2PUB.last_update_date,
                LAST_UPDATE_LOGIN = HZ_UTILITY_V2PUB.last_update_login
            WHERE PARENT_ID = r_get_all_parents.parent_id
            AND   PARENT_TABLE_NAME = r_get_all_parents.parent_table_name
            AND   PARENT_OBJECT_TYPE = r_get_all_parents.parent_object_type
            AND   CHILD_ID = r_get_all_children.child_id
            AND   CHILD_TABLE_NAME = r_get_all_children.child_table_name
            AND   CHILD_OBJECT_TYPE = r_get_all_children.child_object_type
            AND   HIERARCHY_TYPE = p_hierarchy_node_rec.hierarchy_type
            AND   (EFFECTIVE_START_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                   OR
                   EFFECTIVE_END_DATE BETWEEN l_existing_start_date AND l_existing_end_date
                   OR
                   l_existing_start_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
                   OR
                   l_existing_end_date BETWEEN EFFECTIVE_START_DATE AND EFFECTIVE_END_DATE
                  );
Line: 1505

     do_update_link_pvt(p_hierarchy_node_rec);
Line: 1532

END do_update_link;
Line: 1701

 * PROCEDURE update_link
 *
 * DESCRIPTION
 *     Updates a hierarchial relationship between two nodes.
 *
 * EXTERNAL PROCEDURES/FUNCTIONS ACCESSED
 *
 * ARGUMENTS
 *   IN:
 *     p_init_msg_list                Initialize message stack if it is set to
 *                                    FND_API.G_TRUE. Default is FND_API.G_FALSE.
 *     p_hierarchy_node_rec           Hierarchy node record.
 *   IN/OUT:
 *   OUT:
 *     x_return_status                Return status after the call. The status can
 *                                    be FND_API.G_RET_STS_SUCCESS (success),
 *                                    FND_API.G_RET_STS_ERROR (error),
 *                                    FND_API.G_RET_STS_UNEXP_ERROR (unexpected error).
 *     x_msg_count                    Number of messages in message stack.
 *     x_msg_data                     Message text if x_msg_count is 1.
 *
 * NOTES
 *
 * MODIFICATION HISTORY
 *
 *    31-JAN-00  Indrajit Sen   o Created
 *
 */

PROCEDURE update_link(
    p_init_msg_list                         IN         VARCHAR2 := FND_API.G_FALSE,
    p_hierarchy_node_rec                    IN         HIERARCHY_NODE_REC_TYPE,
    x_return_status                         OUT NOCOPY VARCHAR2,
    x_msg_count                             OUT NOCOPY NUMBER,
    x_msg_data                              OUT NOCOPY VARCHAR2
) IS
l_debug_prefix		       VARCHAR2(30) := '';
Line: 1740

    SAVEPOINT update_link;
Line: 1747

	hz_utility_v2pub.debug(p_message=>'update_link (+)',
	                       p_prefix=>l_debug_prefix,
			       p_msg_level=>fnd_log.level_procedure);
Line: 1760

    do_update_link(p_hierarchy_node_rec,
                   x_return_status);
Line: 1777

	hz_utility_v2pub.debug(p_message=>'update_link (-)',
	                       p_prefix=>l_debug_prefix,
			       p_msg_level=>fnd_log.level_procedure);
Line: 1787

        ROLLBACK TO update_link;
Line: 1803

	hz_utility_v2pub.debug(p_message=> 'l_line_number = '||l_line_number||' update_link (-)' ,
	                       p_prefix=>l_debug_prefix,
			       p_msg_level=>fnd_log.level_procedure);
Line: 1810

        ROLLBACK TO update_link;
Line: 1826

	hz_utility_v2pub.debug(p_message=> 'l_line_number = '||l_line_number||' update_link (-)' ,
	                       p_prefix=>l_debug_prefix,
			       p_msg_level=>fnd_log.level_procedure);
Line: 1833

        ROLLBACK TO update_link;
Line: 1852

	hz_utility_v2pub.debug(p_message=> 'l_line_number = '||l_line_number||' update_link (-)' ,
	                       p_prefix=>l_debug_prefix,
			       p_msg_level=>fnd_log.level_procedure);
Line: 1858

END update_link;
Line: 1901

    SELECT a.ROWID row_id, a.*
    FROM   HZ_RELATIONSHIPS a
    WHERE  RELATIONSHIP_TYPE = p_rel_type
    ORDER BY RELATIONSHIP_ID;
Line: 1911

    SELECT *
    FROM   HZ_RELATIONSHIP_TYPES
    WHERE  RELATIONSHIP_TYPE = p_rel_type
    AND    FORWARD_REL_CODE = p_forward_rel_code
    AND    SUBJECT_TYPE = p_subject_type
    AND    OBJECT_TYPE = p_object_type;
Line: 1923

    SELECT SUBJECT_ID,
           SUBJECT_TABLE_NAME,
           SUBJECT_TYPE
    FROM   HZ_RELATIONSHIPS
    WHERE  OBJECT_ID = p_child_id
    AND    OBJECT_TABLE_NAME = p_child_table_name
    AND    OBJECT_TYPE = p_child_object_type
    AND    RELATIONSHIP_TYPE = p_rel_type
    AND    DIRECTION_CODE = 'P'
    AND    (START_DATE BETWEEN NVL(p_start_date, SYSDATE)
                          AND NVL(p_end_date, TO_DATE('31-12-4712 00:00:01', 'DD-MM-YYYY HH24:MI:SS'))
           OR
           END_DATE BETWEEN NVL(p_start_date, SYSDATE)
                          AND NVL(p_end_date, TO_DATE('31-12-4712 00:00:01', 'DD-MM-YYYY HH24:MI:SS'))
           OR
           NVL(p_start_date, SYSDATE) BETWEEN START_DATE AND END_DATE
           OR
           NVL(p_end_date, TO_DATE('31-12-4712 00:00:01', 'DD-MM-YYYY HH24:MI:SS')) BETWEEN START_DATE AND END_DATE
           );
Line: 2004

                SELECT 1 INTO l_count
                FROM   HZ_RELATIONSHIPS
                WHERE  OBJECT_ID = l_child_id
                AND    OBJECT_TABLE_NAME = l_child_table_name
                AND    OBJECT_TYPE = l_child_object_type
                AND    RELATIONSHIP_TYPE = r1.relationship_type
                AND    DIRECTION_CODE = 'P'
                AND    (START_DATE BETWEEN NVL(r1.start_date, SYSDATE)
                                      AND NVL(r1.end_date, TO_DATE('31-12-4712 00:00:01', 'DD-MM-YYYY HH24:MI:SS'))
                       OR
                       END_DATE BETWEEN NVL(r1.start_date, SYSDATE)
                                      AND NVL(r1.end_date, TO_DATE('31-12-4712 00:00:01', 'DD-MM-YYYY HH24:MI:SS'))
                       OR
                       NVL(r1.start_date, SYSDATE) BETWEEN START_DATE AND END_DATE
                       OR
                       NVL(r1.end_date, TO_DATE('31-12-4712 00:00:01', 'DD-MM-YYYY HH24:MI:SS')) BETWEEN START_DATE AND END_DATE
                       );
Line: 2111

            UPDATE HZ_RELATIONSHIPS SET DIRECTION_CODE = 'P' WHERE ROWID = r1.row_id;
Line: 2113

            UPDATE HZ_RELATIONSHIPS SET DIRECTION_CODE = 'C' WHERE ROWID = r1.row_id;
Line: 2119

            UPDATE HZ_RELATIONSHIPS SET DIRECTION_CODE = 'C' WHERE ROWID = r1.row_id;
Line: 2121

            UPDATE HZ_RELATIONSHIPS SET DIRECTION_CODE = 'P' WHERE ROWID = r1.row_id;
Line: 2136

        UPDATE HZ_RELATIONSHIP_TYPES
        SET HIERARCHICAL_FLAG = 'Y',
            MULTIPLE_PARENT_ALLOWED = NVL(p_multi_parent_allowed, 'N'),
            INCL_UNRELATED_ENTITIES = NVL(p_incl_unrelated_entities, 'N')
        WHERE RELATIONSHIP_TYPE = p_rel_type;