DBA Data[Home] [Help]

APPS.HZ_CONTACT_PREFERENCE_VALIDATE SQL Statements

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

Line: 18

PROCEDURE preference_date_nonupdateable(
    p_column                                IN     VARCHAR2,
    p_column_value                          IN     DATE,
    p_old_column_value                      IN     DATE,
    p_restricted                            IN     VARCHAR2 DEFAULT 'Y',
    x_return_status                         IN OUT NOCOPY VARCHAR2
);
Line: 56

PROCEDURE preference_date_nonupdateable(
    p_column                                IN     VARCHAR2,
    p_column_value                          IN     DATE,
    p_old_column_value                      IN     DATE,
    p_restricted                            IN     VARCHAR2 DEFAULT 'Y',
    x_return_status                         IN OUT NOCOPY VARCHAR2
) IS

    l_error                                 BOOLEAN := FALSE;
Line: 90

        FND_MESSAGE.SET_NAME( 'AR', 'HZ_NONUPDATEABLE_PREF_DATE' );
Line: 96

END preference_date_nonupdateable;
Line: 98

PROCEDURE get_updated_record (
    p_contact_preference_id   IN         NUMBER,
    p_update_field_rec        IN         HZ_CONTACT_PREFERENCE_V2PUB.CONTACT_PREFERENCE_REC_TYPE,
    x_updated_cp_rec          OUT NOCOPY        HZ_CONTACT_PREFERENCE_V2PUB.CONTACT_PREFERENCE_REC_TYPE
)
IS
BEGIN

    SELECT
        CONTACT_PREFERENCE_ID,
        CONTACT_LEVEL_TABLE,
        CONTACT_LEVEL_TABLE_ID,
        CONTACT_TYPE,
        DECODE ( p_update_field_rec.preference_code, null, PREFERENCE_CODE,  p_update_field_rec.preference_code),
        DECODE( p_update_field_rec.preference_topic_type, NULL, PREFERENCE_TOPIC_TYPE, FND_API.G_MISS_CHAR, NULL, p_update_field_rec.PREFERENCE_TOPIC_TYPE ),
        DECODE( p_update_field_rec.preference_topic_type_id, NULL, PREFERENCE_TOPIC_TYPE_ID, FND_API.G_MISS_NUM, NULL, p_update_field_rec.preference_topic_type_id ),
        DECODE( p_update_field_rec.preference_topic_type_code, NULL, PREFERENCE_TOPIC_TYPE_CODE, FND_API.G_MISS_CHAR, NULL, p_update_field_rec.preference_topic_type_code ),
        DECODE( p_update_field_rec.preference_start_date, NULL, PREFERENCE_START_DATE, FND_API.G_MISS_DATE, NULL, p_update_field_rec.preference_start_date ),
        DECODE( p_update_field_rec.preference_end_date, NULL, PREFERENCE_END_DATE, FND_API.G_MISS_DATE, NULL, p_update_field_rec.preference_end_date ),
        DECODE( p_update_field_rec.preference_start_time_hr, NULL, PREFERENCE_START_TIME_HR, FND_API.G_MISS_NUM, NULL, p_update_field_rec.preference_start_time_hr ),
        DECODE( p_update_field_rec.preference_end_time_hr, NULL, PREFERENCE_END_TIME_HR, FND_API.G_MISS_NUM, NULL, p_update_field_rec.preference_end_time_hr ),
        DECODE( p_update_field_rec.preference_start_time_mi, NULL, PREFERENCE_START_TIME_MI, FND_API.G_MISS_NUM, NULL, p_update_field_rec.preference_start_time_mi ),
        DECODE( p_update_field_rec.preference_end_time_mi, NULL, PREFERENCE_END_TIME_MI, FND_API.G_MISS_NUM, NULL, p_update_field_rec.preference_end_time_mi ),
        DECODE( p_update_field_rec.max_no_of_interactions, NULL, MAX_NO_OF_INTERACTIONS, FND_API.G_MISS_NUM, NULL, p_update_field_rec.max_no_of_interactions),
        DECODE( p_update_field_rec.max_no_of_interact_uom_code, NULL, MAX_NO_OF_INTERACT_UOM_CODE, FND_API.G_MISS_CHAR, NULL, p_update_field_rec.max_no_of_interact_uom_code ),
        DECODE( p_update_field_rec.requested_by, NULL, REQUESTED_BY, FND_API.G_MISS_CHAR, NULL, p_update_field_rec.requested_by ),
        DECODE( p_update_field_rec.reason_code, NULL, REASON_CODE, FND_API.G_MISS_CHAR, NULL, p_update_field_rec.REASON_CODE ),
        DECODE( p_update_field_rec.status, NULL, STATUS, p_update_field_rec.status )

    INTO
        x_updated_cp_rec.CONTACT_PREFERENCE_ID,
        x_updated_cp_rec.CONTACT_LEVEL_TABLE,
        x_updated_cp_rec.CONTACT_LEVEL_TABLE_ID,
        x_updated_cp_rec.CONTACT_TYPE,
        x_updated_cp_rec.PREFERENCE_CODE,
        x_updated_cp_rec.PREFERENCE_TOPIC_TYPE,
        x_updated_cp_rec.PREFERENCE_TOPIC_TYPE_ID,
        x_updated_cp_rec.PREFERENCE_TOPIC_TYPE_CODE,
        x_updated_cp_rec.PREFERENCE_START_DATE,
        x_updated_cp_rec.PREFERENCE_END_DATE,
        x_updated_cp_rec.PREFERENCE_START_TIME_HR,
        x_updated_cp_rec.PREFERENCE_END_TIME_HR,
        x_updated_cp_rec.PREFERENCE_START_TIME_MI,
        x_updated_cp_rec.PREFERENCE_END_TIME_MI,
        x_updated_cp_rec.MAX_NO_OF_INTERACTIONS,
        x_updated_cp_rec.MAX_NO_OF_INTERACT_UOM_CODE,
        x_updated_cp_rec.REQUESTED_BY,
        x_updated_cp_rec.REASON_CODE,
        x_updated_cp_rec.STATUS
    FROM HZ_CONTACT_PREFERENCES
    WHERE CONTACT_PREFERENCE_ID = p_contact_preference_id;
Line: 151

END get_updated_record;
Line: 157

    p_create_update_flag                    IN     VARCHAR2,
    p_contact_preference_rec                IN     HZ_CONTACT_PREFERENCE_V2PUB.CONTACT_PREFERENCE_REC_TYPE,
    p_rowid                                 IN     ROWID,
    x_return_status                         IN OUT NOCOPY VARCHAR2

) IS
    l_debug_prefix                          VARCHAR2(100) := ''; -- 'validate_contact_preference'
Line: 204

    IF p_create_update_flag = 'C' THEN
    --If primary key value is passed, check for uniqueness.
      IF p_contact_preference_rec.contact_preference_id IS NOT NULL AND
          p_contact_preference_rec.contact_preference_id <> FND_API.G_MISS_NUM
      THEN
        BEGIN
            SELECT 'Y' INTO l_dummy
            FROM   HZ_CONTACT_PREFERENCES
            WHERE  CONTACT_PREFERENCE_ID = p_contact_preference_rec.contact_preference_id;
Line: 233

    IF p_create_update_flag = 'U' THEN
        SELECT  CONTACT_PREFERENCE_ID, CONTACT_LEVEL_TABLE,
                CONTACT_LEVEL_TABLE_ID, CONTACT_TYPE,
                PREFERENCE_CODE, PREFERENCE_START_DATE, PREFERENCE_END_DATE,
                PREFERENCE_TOPIC_TYPE,PREFERENCE_TOPIC_TYPE_CODE,
                PREFERENCE_START_TIME_HR,PREFERENCE_END_TIME_HR,
                PREFERENCE_START_TIME_MI,PREFERENCE_END_TIME_MI,
                MAX_NO_OF_INTERACT_UOM_CODE, REASON_CODE, REQUESTED_BY, STATUS ,
                CREATED_BY_MODULE, APPLICATION_ID
        INTO l_contact_preference_id, l_contact_level_table,
             l_contact_level_table_id, l_contact_type,
             l_preference_code, l_preference_start_date, l_preference_end_date,
             l_preference_topic_type, l_preference_topic_type_code,
             l_preference_start_time_hr, l_preference_end_time_hr,
             l_preference_start_time_mi, l_preference_end_time_mi,
             l_max_no_of_interact_uom_code, l_reason_code, l_requested_by, l_status ,
             l_created_by_module, l_application_id
        FROM HZ_CONTACT_PREFERENCES
        WHERE ROWID = p_rowid;
Line: 263

    IF p_create_update_flag = 'C' THEN
        HZ_UTILITY_V2PUB.validate_mandatory (
            p_create_update_flag                    => p_create_update_flag,
            p_column                                => 'contact_level_table',
            p_column_value                          => p_contact_preference_rec.contact_level_table,
            x_return_status                         => x_return_status );
Line: 278

    IF p_create_update_flag = 'U' THEN
        HZ_UTILITY_V2PUB.validate_nonupdateable (
            p_column                                => 'contact_level_table',
            p_column_value                          => p_contact_preference_rec.contact_level_table,
            p_old_column_value                      => l_contact_level_table,
            x_return_status                         => x_return_status );
Line: 287

           hz_utility_v2pub.debug(p_message=>'contact_level_table is non-updateable.' ||
            'x_return_status = ' || x_return_status,
                                  p_prefix =>l_debug_prefix,
                                  p_msg_level=>fnd_log.level_statement);
Line: 296

    IF p_create_update_flag = 'C' THEN
            HZ_UTILITY_V2PUB.validate_lookup (
                p_column                                => 'contact_level_table',
                p_lookup_type                           => 'SUBJECT_TABLE',
                p_column_value                          => p_contact_preference_rec.contact_level_table,
                x_return_status                         => x_return_status );
Line: 321

    IF p_create_update_flag = 'C' THEN
        HZ_UTILITY_V2PUB.validate_mandatory (
            p_create_update_flag                    => p_create_update_flag,
            p_column                                => 'contact_level_table_id',
            p_column_value                          => p_contact_preference_rec.contact_level_table_id,
            x_return_status                         => x_return_status );
Line: 337

    IF p_create_update_flag = 'U' THEN
        HZ_UTILITY_V2PUB.validate_nonupdateable (
            p_column                                => 'contact_level_table_id',
            p_column_value                          => p_contact_preference_rec.contact_level_table_id,
            p_old_column_value                      => l_contact_level_table_id,
            x_return_status                         => x_return_status );
Line: 346

           hz_utility_v2pub.debug(p_message=>'contact_level_table_id is non-updateable.' ||
            'x_return_status = ' || x_return_status,
                                  p_prefix =>l_debug_prefix,
                                  p_msg_level=>fnd_log.level_statement);
Line: 356

    IF p_create_update_flag = 'C' THEN
        IF p_contact_preference_rec.contact_level_table = 'HZ_PARTIES' THEN
            BEGIN
                SELECT 'Y' INTO l_dummy
                FROM HZ_PARTIES
                WHERE PARTY_ID = p_contact_preference_rec.contact_level_table_id;
Line: 373

                SELECT 'Y' INTO l_dummy
                FROM HZ_PARTY_SITES
                WHERE PARTY_SITE_ID = p_contact_preference_rec.contact_level_table_id;
Line: 387

                SELECT 'Y' INTO l_dummy
                FROM HZ_CONTACT_POINTS
                WHERE CONTACT_POINT_ID = p_contact_preference_rec.contact_level_table_id;
Line: 419

    IF p_create_update_flag = 'C' THEN
        HZ_UTILITY_V2PUB.validate_mandatory (
            p_create_update_flag                    => p_create_update_flag,
            p_column                                => 'contact_type',
            p_column_value                          => p_contact_preference_rec.contact_type,
            x_return_status                         => x_return_status );
Line: 435

    IF p_create_update_flag = 'U' THEN
        HZ_UTILITY_V2PUB.validate_nonupdateable (
            p_column                                => 'contact_type',
            p_column_value                          => p_contact_preference_rec.contact_type,
            p_old_column_value                      => l_contact_type,
            x_return_status                         => x_return_status );
Line: 444

           hz_utility_v2pub.debug(p_message=>'contact_type is non-updateable.' ||
            'x_return_status = ' || x_return_status,
                                  p_prefix =>l_debug_prefix,
                                  p_msg_level=>fnd_log.level_statement);
Line: 453

    IF p_create_update_flag = 'C' THEN
        HZ_UTILITY_V2PUB.validate_lookup (
            p_column                                => 'contact_type',
            p_lookup_type                           => 'CONTACT_TYPE',
            p_column_value                          => p_contact_preference_rec.contact_type,
            x_return_status                         => x_return_status );
Line: 476

            select contact_point_type,
                   decode(contact_point_type, 'PHONE', 'CALL', 'FAX', 'FAX',
                          'SMS', 'SMS', 'EMAIL','EMAIL', 'TLX', 'TLX', 'EDI', 'EDI', contact_point_type)
            into l_contact_point_type, l_correct_contact_type
            FROM HZ_CONTACT_POINTS
            WHERE  contact_point_id =  p_contact_preference_rec.contact_level_table_id;
Line: 517

        p_create_update_flag                    => p_create_update_flag,
        p_column                                => 'preference_code',
        p_column_value                          => p_contact_preference_rec.preference_code,
        x_return_status                         => x_return_status );
Line: 532

       ( p_create_update_flag = 'C' OR
         ( p_create_update_flag = 'U' AND
           p_contact_preference_rec.preference_code <> NVL (l_preference_code, FND_API.G_MISS_CHAR))) THEN

         HZ_UTILITY_V2PUB.validate_lookup (
             p_column                                => 'preference_code',
             p_lookup_type                           => 'PREFERENCE_CODE',
             p_column_value                          => p_contact_preference_rec.preference_code,
             x_return_status                         => x_return_status );
Line: 558

       ( p_create_update_flag = 'C' OR
         ( p_create_update_flag = 'U' AND
           p_contact_preference_rec.preference_topic_type <> NVL (l_preference_topic_type, FND_API.G_MISS_CHAR))) THEN

        HZ_UTILITY_V2PUB.validate_lookup (
            p_column                                => 'preference_topic_type',
            p_lookup_type                           => 'PREFERENCE_TOPIC_TYPE',
            p_column_value                          => p_contact_preference_rec.preference_topic_type,
            x_return_status                         => x_return_status );
Line: 582

        SELECT TAG
        INTO l_tag
        FROM FND_LOOKUP_VALUES
        WHERE
              LANGUAGE = userenv('LANG') AND
              START_DATE_ACTIVE < sysdate AND
             (  END_DATE_ACTIVE is null OR
                END_DATE_ACTIVE = FND_API.G_MISS_DATE OR
                END_DATE_ACTIVE > sysdate) AND
              LOOKUP_TYPE = 'PREFERENCE_TOPIC_TYPE' AND
              LOOKUP_CODE = p_contact_preference_rec.preference_topic_type;
Line: 598

                p_create_update_flag                    => p_create_update_flag,
                p_column                                => 'preference_topic_type_id',
                p_column_value                          => p_contact_preference_rec.preference_topic_type_id,
                x_return_status                         => x_return_status );
Line: 612

                SELECT 'Y' INTO l_dummy
                FROM AMS_SOURCE_CODES
                WHERE source_code_id = p_contact_preference_rec.preference_topic_type_id;
Line: 626

                SELECT 'Y' INTO l_dummy
                FROM AS_INTEREST_TYPES_B
                WHERE interest_type_id = p_contact_preference_rec.preference_topic_type_id;
Line: 640

                SELECT 'Y' INTO l_dummy
                FROM AS_INTEREST_CODES_B
                WHERE interest_code_id = p_contact_preference_rec.preference_topic_type_id;
Line: 673

               p_create_update_flag                    => p_create_update_flag,
               p_column                                => 'preference_topic_type_code',
               p_column_value                          => p_contact_preference_rec.preference_topic_type_code,
               x_return_status                         => x_return_status );
Line: 689

               ( p_create_update_flag = 'C' OR
                 ( p_create_update_flag = 'U' AND
                   p_contact_preference_rec.preference_topic_type_code <> NVL (l_preference_topic_type_code, FND_API.G_MISS_CHAR))) THEN

                HZ_UTILITY_V2PUB.validate_lookup (
                p_column                                => 'preference_topic_type_code',
                p_lookup_type                           => p_contact_preference_rec.preference_topic_type,
                p_column_value                          => p_contact_preference_rec.preference_topic_type_code,
                x_return_status                         => x_return_status );
Line: 717

               p_create_update_flag                    => p_create_update_flag,
               p_column                                => 'preference_topic_type_code',
               p_column_value                          => p_contact_preference_rec.preference_topic_type_code,
               x_return_status                         => x_return_status );
Line: 740

            p_create_update_flag                    => p_create_update_flag,
            p_column                                => 'preference_start_date',
            p_column_value                          => p_contact_preference_rec.preference_start_date,
            x_return_status                         => x_return_status );
Line: 754

    IF p_create_update_flag = 'C' AND
       p_contact_preference_rec.preference_end_date is not null AND
       p_contact_preference_rec.preference_end_date <> FND_API.G_MISS_DATE AND
       trunc(p_contact_preference_rec.preference_end_date) < trunc(sysdate) THEN
          FND_MESSAGE.SET_NAME( 'AR', 'HZ_INVALID_PREFERENCE_END_DATE' );
Line: 773

    IF p_create_update_flag = 'U' AND trunc(p_contact_preference_rec.preference_start_date) < trunc(sysdate) THEN
        preference_date_nonupdateable(
            p_column                                => 'preference_start_date',
            p_column_value                          => p_contact_preference_rec.preference_start_date,
            p_old_column_value                      => l_preference_start_date,
            x_return_status                         => x_return_status );
Line: 782

           hz_utility_v2pub.debug(p_message=>'preference_start_date is non-updateable when the new date is less than sysdate.' ||
            'x_return_status = ' || x_return_status,
                                  p_prefix =>l_debug_prefix,
                                  p_msg_level=>fnd_log.level_statement);
Line: 789

    IF p_create_update_flag = 'U' AND trunc(p_contact_preference_rec.preference_end_date) < trunc(sysdate) THEN
        preference_date_nonupdateable(
            p_column                                => 'preference_end_date',
            p_column_value                          => p_contact_preference_rec.preference_end_date,
            p_old_column_value                      => l_preference_end_date,
            x_return_status                         => x_return_status );
Line: 798

           hz_utility_v2pub.debug(p_message=>'preference_end_date is non-updateable when the new date is less than sysdate.' ||
            'x_return_status = ' || x_return_status,
                                  p_prefix =>l_debug_prefix,
                                  p_msg_level=>fnd_log.level_statement);
Line: 807

        p_create_update_flag                    => p_create_update_flag,
        p_start_date_column_name                => 'preference start date',
        p_start_date                            => p_contact_preference_rec.preference_start_date,
        p_old_start_date                        => l_preference_start_date,
        p_end_date_column_name                  => 'Preference end date', -- Bug 4954622
        p_end_date                              => p_contact_preference_rec.preference_end_date,
        p_old_end_date                          => l_preference_end_date,
        x_return_status                         => x_return_status );
Line: 919

       ( p_create_update_flag = 'C' OR
         ( p_create_update_flag = 'U' AND
           p_contact_preference_rec.max_no_of_interact_uom_code <> NVL (l_max_no_of_interact_uom_code, FND_API.G_MISS_CHAR))) THEN

        HZ_UTILITY_V2PUB.validate_lookup (
            p_column                                => 'max_no_of_interact_uom_code',
            p_lookup_type                           => 'MAX_NO_OF_INTERACT_UOM_CODE',
            p_column_value                          => p_contact_preference_rec.max_no_of_interact_uom_code,
            x_return_status                         => x_return_status );
Line: 943

            p_create_update_flag                    => p_create_update_flag,
            p_column                                => 'preference_start_date',
            p_column_value                          => p_contact_preference_rec.preference_start_date,
            x_return_status                         => x_return_status );
Line: 962

        p_create_update_flag                    => p_create_update_flag,
        p_column                                => 'requested_by',
        p_column_value                          => p_contact_preference_rec.requested_by,
        x_return_status                         => x_return_status );
Line: 977

       ( p_create_update_flag = 'C' OR
         ( p_create_update_flag = 'U' AND
           p_contact_preference_rec.requested_by <> NVL (l_requested_by, FND_API.G_MISS_CHAR))) THEN

        HZ_UTILITY_V2PUB.validate_lookup (
            p_column                                => 'requested_by',
            p_lookup_type                           => 'REQUESTED_BY',
            p_column_value                          => p_contact_preference_rec.requested_by,
            x_return_status                         => x_return_status );
Line: 1002

       ( p_create_update_flag = 'C' OR
         ( p_create_update_flag = 'U' AND
           p_contact_preference_rec.reason_code <> NVL (l_reason_code, FND_API.G_MISS_CHAR))) THEN

        HZ_UTILITY_V2PUB.validate_lookup (
            p_column                                => 'reason_code',
            p_lookup_type                           => 'REASON_CODE',
            p_column_value                          => p_contact_preference_rec.reason_code,
            x_return_status                         => x_return_status );
Line: 1026

    IF p_create_update_flag = 'U' THEN
        HZ_UTILITY_V2PUB.validate_cannot_update_to_null (
            p_column                                => 'status',
            p_column_value                          => p_contact_preference_rec.status,
            x_return_status                         => x_return_status );
Line: 1034

           hz_utility_v2pub.debug(p_message=>'status cannot be updated to null.' ||
            'x_return_status = ' || x_return_status,
                                  p_prefix =>l_debug_prefix,
                                  p_msg_level=>fnd_log.level_statement);
Line: 1043

       ( p_create_update_flag = 'C' OR
         ( p_create_update_flag = 'U' AND
           p_contact_preference_rec.status <> NVL (l_status, FND_API.G_MISS_CHAR))) THEN

        HZ_UTILITY_V2PUB.validate_lookup (
            p_column                                => 'status',
            p_lookup_type                           => 'CODE_STATUS',
            p_column_value                          => p_contact_preference_rec.status,
            x_return_status                         => x_return_status );
Line: 1078

      p_create_update_flag     => p_create_update_flag,
      p_created_by_module      => p_contact_preference_rec.created_by_module,
      p_old_created_by_module  => l_created_by_module,
      x_return_status          => x_return_status);
Line: 1088

      p_create_update_flag     => p_create_update_flag,
      p_application_id         => p_contact_preference_rec.application_id,
      p_old_application_id     => l_application_id,
      x_return_status          => x_return_status);
Line: 1097

      IF p_create_update_flag = 'C' THEN
      BEGIN
          SELECT contact_preference_id INTO l_contact_pref_dup_id
          FROM   HZ_CONTACT_PREFERENCES
          WHERE
          --  check contact_level_table and contact_level_table_id
                 contact_level_table = p_contact_preference_rec.contact_level_table AND
                 contact_level_table_id = p_contact_preference_rec.contact_level_table_id  AND
                 status = 'A' AND
/*Bug Number 3067948.According to bug number 1919493,end_date and start_date can be  trunc(sysdate) ))  AND
*/
          --  check other unique column
                 contact_type ||  preference_topic_type ||
                 preference_topic_type_id || preference_topic_type_code
                 =
                 p_contact_preference_rec.contact_type ||
                 p_contact_preference_rec.preference_topic_type ||
                 p_contact_preference_rec.preference_topic_type_id ||
                 p_contact_preference_rec.preference_topic_type_code  AND

          -- check preference_start_date preference_end_date overlap
                 NOT ( ( p_contact_preference_rec.preference_end_date is not null AND
                         --Bug Number 3067948.
                         p_contact_preference_rec.preference_end_date <> fnd_api.g_miss_date AND
                     p_contact_preference_rec.preference_end_date < preference_start_date ) OR
                   ( preference_end_date is not null and
                     p_contact_preference_rec.preference_start_date > preference_end_date )) AND

          -- check preference_start_time_hr/mi preference_end_time_hr/mi overlap
                 NOT ( ( decode(preference_start_time_hr, null, 0, preference_start_time_hr) * 60 +
                         decode(preference_start_time_mi, null, 0, preference_start_time_mi) >
                         decode(p_contact_preference_rec.preference_end_time_hr, null, 24, p_contact_preference_rec.preference_end_time_hr) * 60 +
                         decode (p_contact_preference_rec.preference_end_time_mi, null, 60, p_contact_preference_rec.preference_end_time_mi) ) OR
                       ( decode(preference_end_time_hr, null, 24, preference_end_time_hr ) * 60 +
                         decode(preference_end_time_mi, null, 60, preference_end_time_mi ) <
                         decode(p_contact_preference_rec.preference_start_time_hr, null, 0, p_contact_preference_rec.preference_start_time_hr) * 60 +
                         decode(p_contact_preference_rec.preference_start_time_mi, null, 0, p_contact_preference_rec.preference_start_time_mi ) ) ) AND
                 ROWNUM =1;
Line: 1164

      ELSIF p_create_update_flag = 'U' THEN
      BEGIN
          get_updated_record (
              p_contact_preference_id  => l_contact_preference_id,
              p_update_field_rec       => p_contact_preference_rec,
              x_updated_cp_rec         => l_contact_preference_rec
          );
Line: 1172

          SELECT contact_preference_id INTO l_contact_pref_dup_id
          FROM   HZ_CONTACT_PREFERENCES
          WHERE
          --  check contact_level_table and contact_level_table_id
                 contact_preference_id <> l_contact_preference_id AND
                 contact_level_table = l_contact_preference_rec.contact_level_table AND
                 contact_level_table_id = l_contact_preference_rec.contact_level_table_id  AND
                 status = 'A' AND

/*Bug Number 3067948.According to bug number 1919493,end_date and start_date can be  trunc(sysdate) ))  AND
*/
          --  check other unique column
                 contact_type ||  preference_topic_type ||
                 preference_topic_type_id || preference_topic_type_code
                 =
                 l_contact_preference_rec.contact_type ||
                 l_contact_preference_rec.preference_topic_type ||
                 l_contact_preference_rec.preference_topic_type_id ||
                 l_contact_preference_rec.preference_topic_type_code  AND

          -- check preference_start_date preference_end_date overlap
                 NOT ( ( l_contact_preference_rec.preference_end_date is not null and
                     l_contact_preference_rec.preference_end_date < preference_start_date ) OR
                   ( preference_end_date is not null and
                     l_contact_preference_rec.preference_start_date > preference_end_date )) AND

          -- check preference_start_time_hr/mi preference_end_time_hr/mi overlap
                 NOT ( ( decode(preference_start_time_hr, null, 0, preference_start_time_hr) * 60 +
                         decode(preference_start_time_mi, null, 0, preference_start_time_mi) >
                         decode(l_contact_preference_rec.preference_end_time_hr, null, 24, l_contact_preference_rec.preference_end_time_hr) * 60 +
                         decode (l_contact_preference_rec.preference_end_time_mi, null, 60, l_contact_preference_rec.preference_end_time_mi) ) OR
                       ( decode(preference_end_time_hr, null, 24, preference_end_time_hr ) * 60 +
                         decode(preference_end_time_mi, null, 60, preference_end_time_mi ) <
                         decode(l_contact_preference_rec.preference_start_time_hr, null, 0, l_contact_preference_rec.preference_start_time_hr) * 60 +
                         decode(l_contact_preference_rec.preference_start_time_mi, null, 0, l_contact_preference_rec.preference_start_time_mi ) ) ) AND
                 ROWNUM =1;