DBA Data[Home] [Help]

APPS.FUN_RULE_OBJECTS_PUB SQL Statements

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

Line: 25

PROCEDURE do_update_rule_object(
    p_update_instance     IN VARCHAR2 DEFAULT 'N',
    p_rule_object_rec      IN OUT NOCOPY RULE_OBJECTS_REC_TYPE,
    p_object_version_number IN OUT NOCOPY   NUMBER,
    x_return_status         IN OUT NOCOPY   VARCHAR2
);
Line: 88

    FUN_RULE_OBJECTS_PKG.Insert_Row (
        X_ROWID                                =>l_rowid,
        X_RULE_OBJECT_ID                       =>p_rule_object_rec.rule_object_id,
        X_APPLICATION_ID                       =>p_rule_object_rec.application_id,
        X_RULE_OBJECT_NAME                     =>p_rule_object_rec.rule_object_name,
        X_RESULT_TYPE                          =>p_rule_object_rec.result_type,
        X_REQUIRED_FLAG                        =>p_rule_object_rec.required_flag,
        X_USE_DEFAULT_VALUE_FLAG               =>p_rule_object_rec.use_default_value_flag,
        X_DEFAULT_APPLICATION_ID               =>p_rule_object_rec.default_application_id,
        X_DEFAULT_VALUE                        =>p_rule_object_rec.default_value,
        X_FLEX_VALUE_SET_ID                    =>p_rule_object_rec.flex_value_set_id,
        X_FLEXFIELD_NAME                       =>p_rule_object_rec.flexfield_name,
        X_FLEXFIELD_APP_SHORT_NAME             =>p_rule_object_rec.flexfield_app_short_name,
	X_MULTI_RULE_RESULT_FLAG               =>p_rule_object_rec.multi_rule_result_flag,
        X_CREATED_BY_MODULE                    =>p_rule_object_rec.created_by_module,
        X_USER_RULE_OBJECT_NAME                =>p_rule_object_rec.user_rule_object_name,
        X_DESCRIPTION                          =>p_rule_object_rec.description,
        X_USE_INSTANCE_FLAG                    =>p_rule_object_rec.use_instance_flag
    );
Line: 217

    FUN_RULE_OBJECTS_PKG.Insert_Row (
		X_ROWID                                =>l_rowid,
		X_RULE_OBJECT_ID                       =>NULL,
		X_APPLICATION_ID                       =>l_rule_object_instance_rec.application_id,
		X_RULE_OBJECT_NAME                     =>l_rule_object_instance_rec.rule_object_name,
		X_RESULT_TYPE                          =>l_rule_object_instance_rec.result_type,
		X_REQUIRED_FLAG                        =>l_rule_object_instance_rec.required_flag,
		X_USE_DEFAULT_VALUE_FLAG               =>l_rule_object_instance_rec.use_default_value_flag,
		X_DEFAULT_APPLICATION_ID               =>l_rule_object_instance_rec.default_application_id,
		X_DEFAULT_VALUE                        =>l_rule_object_instance_rec.default_value,
		X_FLEX_VALUE_SET_ID                    =>l_rule_object_instance_rec.flex_value_set_id,
		X_FLEXFIELD_NAME                       =>l_rule_object_instance_rec.flexfield_name,
		X_FLEXFIELD_APP_SHORT_NAME             =>l_rule_object_instance_rec.flexfield_app_short_name,
		X_MULTI_RULE_RESULT_FLAG               =>l_rule_object_instance_rec.multi_rule_result_flag,
		X_CREATED_BY_MODULE                    =>l_rule_object_instance_rec.created_by_module,
		X_USER_RULE_OBJECT_NAME                =>l_rule_object_instance_rec.user_rule_object_name,
		X_DESCRIPTION                          =>l_rule_object_instance_rec.description,
		X_USE_INSTANCE_FLAG                    =>l_rule_object_instance_rec.use_instance_flag,
		X_INSTANCE_LABEL                       =>l_rule_object_instance_rec.instance_label,
		X_PARENT_RULE_OBJECT_ID                =>l_rule_object_instance_rec.parent_rule_object_id,
		X_ORG_ID                               =>l_rule_object_instance_rec.org_id
    );
Line: 243

	    SELECT RULE_OBJECT_ID INTO X_RULE_OBJECT_ID
	    FROM FUN_RULE_OBJECTS_B WHERE RULE_OBJECT_NAME = p_rule_object_name
	    AND  APPLICATION_ID = p_application_id
            AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
 	          (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
            AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
   	          ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
            AND PARENT_RULE_OBJECT_ID IS NOT NULL;
Line: 285

 |              do_update_rule_object
 |
 | DESCRIPTION
 |              Updates user customizable objects
 |
 | SCOPE - PRIVATE
 |
 | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
 |
 | ARGUMENTS  : IN:
 |              OUT:
 |          IN/ OUT:
 |                    p_rule_object_rec
 |                    p_object_version_number
 |                    x_return_status
 |
 | RETURNS    : NONE
 |
 | NOTES
 |
 | MODIFICATION HISTORY
 |
 +===========================================================================*/

PROCEDURE do_update_rule_object(
    p_update_instance           IN VARCHAR2 DEFAULT 'N',
    p_rule_object_rec           IN OUT    NOCOPY RULE_OBJECTS_REC_TYPE,
    p_object_version_number     IN OUT NOCOPY  NUMBER,
    x_return_status             IN OUT NOCOPY  VARCHAR2
) IS

    l_object_version_number             NUMBER;
Line: 322

        SELECT OBJECT_VERSION_NUMBER,
               ROWID
        INTO   l_object_version_number,
               l_rowid
        FROM   FUN_RULE_OBJECTS_B
        WHERE  RULE_OBJECT_ID = p_rule_object_rec.rule_object_id
        FOR UPDATE OF rule_object_id NOWAIT;
Line: 352

    IF(    p_update_instance   = 'Y' ) THEN
      -- call for validations of Rule Object Instance.
      FUN_RULE_VALIDATE_PKG.validate_rule_object_instance(
           'U',
            p_rule_object_rec,
            l_rowid,
            x_return_status
       );
Line: 374

    FUN_RULE_OBJECTS_PKG.Update_Row (
        X_RULE_OBJECT_ID                       =>p_rule_object_rec.rule_object_id,
        X_APPLICATION_ID                       =>p_rule_object_rec.application_id,
        X_RULE_OBJECT_NAME                     =>p_rule_object_rec.rule_object_name,
        X_RESULT_TYPE                          =>p_rule_object_rec.result_type,
        X_REQUIRED_FLAG                        =>p_rule_object_rec.required_flag,
        X_USE_DEFAULT_VALUE_FLAG               =>p_rule_object_rec.use_default_value_flag,
        X_DEFAULT_APPLICATION_ID               =>p_rule_object_rec.default_application_id,
        X_DEFAULT_VALUE                        =>p_rule_object_rec.default_value,
        X_FLEX_VALUE_SET_ID                    =>p_rule_object_rec.flex_value_set_id,
        X_FLEXFIELD_NAME                       =>p_rule_object_rec.flexfield_name,
        X_FLEXFIELD_APP_SHORT_NAME             =>p_rule_object_rec.flexfield_app_short_name,
	X_MULTI_RULE_RESULT_FLAG               =>p_rule_object_rec.multi_rule_result_flag,
        X_OBJECT_VERSION_NUMBER                =>p_object_version_number,
        X_CREATED_BY_MODULE                    =>p_rule_object_rec.created_by_module,
        X_USER_RULE_OBJECT_NAME                =>p_rule_object_rec.user_rule_object_name,
        X_DESCRIPTION                          =>p_rule_object_rec.description,
	X_USE_INSTANCE_FLAG                    =>p_rule_object_rec.use_instance_flag,
	X_INSTANCE_LABEL                       =>p_rule_object_rec.instance_label,
	X_PARENT_RULE_OBJECT_ID                =>p_rule_object_rec.parent_rule_object_id,
        X_ORG_ID                               =>p_rule_object_rec.org_id
    );
Line: 548

      SELECT RULE_OBJECT_ID INTO X_RULE_OBJECT_ID
      FROM FUN_RULE_OBJECTS_B
      WHERE RULE_OBJECT_NAME = p_rule_object_name
      AND   APPLICATION_ID   = p_application_id
      AND ( (INSTANCE_LABEL IS NULL  AND p_instance_label IS NULL) OR
	  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
      AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
	  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
      AND PARENT_RULE_OBJECT_ID IS NOT NULL;
Line: 613

 * PROCEDURE update_rule_object
 *
 * DESCRIPTION
 *     Updates User customizable objects
 *
 * 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_rules_object_rec             User Customizable Object record.
 *   IN/OUT:
 *     p_object_version_number        Used for locking the being updated record.
 *   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
 *
 *   10-Sep-2004    Amulya Mishra     Created.
 *
 */

PROCEDURE update_rule_object (
    p_init_msg_list             IN     VARCHAR2 := FND_API.G_FALSE,
    p_rule_object_rec           IN     RULE_OBJECTS_REC_TYPE,
    p_object_version_number     IN OUT NOCOPY NUMBER,
    x_return_status             OUT NOCOPY    VARCHAR2,
    x_msg_count                 OUT NOCOPY    NUMBER,
    x_msg_data                  OUT NOCOPY    VARCHAR2
) IS

    l_rule_object_rec                    RULE_OBJECTS_REC_TYPE := p_rule_object_rec;
Line: 657

    SELECT
      B.RULE_OBJECT_ID,
      B.APPLICATION_ID,
      B.RULE_OBJECT_NAME,
      B.RESULT_TYPE,
      B.REQUIRED_FLAG,
      B.USE_DEFAULT_VALUE_FLAG,
      ATTR.DEFAULT_APPLICATION_ID,
      ATTR.DEFAULT_VALUE,
      B.FLEX_VALUE_SET_ID,
      B.FLEXFIELD_NAME,
      B.FLEXFIELD_APP_SHORT_NAME,
      B.MULTI_RULE_RESULT_FLAG,
      B.CREATED_BY_MODULE,
      B.OBJECT_VERSION_NUMBER,
      TL.USER_RULE_OBJECT_NAME,
      TL.DESCRIPTION,
      B.USE_INSTANCE_FLAG,
      B.INSTANCE_LABEL,
      B.PARENT_RULE_OBJECT_ID,
      B.ORG_ID
    FROM FUN_RULE_OBJECTS_B B, FUN_RULE_OBJECTS_TL TL, FUN_RULE_OBJ_ATTRIBUTES ATTR
    WHERE B.PARENT_RULE_OBJECT_ID = p_rule_object_id
    AND   B.RULE_OBJECT_ID = ATTR.RULE_OBJECT_ID
    AND   B.RULE_OBJECT_ID = TL.RULE_OBJECT_ID
    AND   TL.LANGUAGE = 'US';
Line: 686

    SAVEPOINT update_rule_objects;
Line: 718

    do_update_rule_object(
                             'N',  --Update for Rule Object Instance Parameter
                             l_rule_object_rec,
                             p_object_version_number,
                             x_return_status);
Line: 766

	   --This validation is done in do_update_rule_object().

           l_rule_object_rec.parent_rule_object_id	:= C_REC.parent_rule_object_id;
Line: 773

	    do_update_rule_object(
                                    'Y',  --Update for Rule Object Instance Parameter
				     l_rule_object_rec,
				     C_REC.OBJECT_VERSION_NUMBER,
				     x_return_status);
Line: 794

        ROLLBACK TO update_rule_objects;
Line: 802

        ROLLBACK TO update_rule_objects;
Line: 810

        ROLLBACK TO update_rule_objects;
Line: 819

END update_rule_object;
Line: 829

 *     FUN_RULES_PKG.Select_Row
 *
 * 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_rule_objects                 User customizable objects name.
 *   IN/OUT:
 *   OUT:
 *     x_rule_object_rec              Returned class category record.
 *     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
 *
 *   10-Sep-2004    Amulya Mishra         Created.
 *
 */

PROCEDURE get_rule_object_rec (
    p_init_msg_list                         IN     VARCHAR2 := FND_API.G_FALSE,
    p_rule_object_name                      IN     VARCHAR2,
    p_application_id                        IN     NUMBER,
    p_instance_label                        IN     VARCHAR2,
    p_org_id                                IN     NUMBER,
    x_rule_object_rec                       OUT    NOCOPY RULE_OBJECTS_REC_TYPE,
    x_return_status                         OUT NOCOPY    VARCHAR2,
    x_msg_count                             OUT NOCOPY    NUMBER,
    x_msg_data                              OUT NOCOPY    VARCHAR2
) IS

BEGIN

    --Initialize message list if p_init_msg_list is set to TRUE.
    IF FND_API.to_Boolean(p_init_msg_list) THEN
        FND_MSG_PUB.initialize;
Line: 891

    FUN_RULE_OBJECTS_PKG.Select_Row (
        X_RULE_OBJECT_NAME                     =>x_rule_object_rec.rule_object_name,
	X_RULE_OBJECT_ID                       =>x_rule_object_rec.rule_object_id,
	X_APPLICATION_ID                       =>x_rule_object_rec.application_id,
	X_USER_RULE_OBJECT_NAME                =>x_rule_object_rec.user_rule_object_name,
	X_DESCRIPTION                          =>x_rule_object_rec.description,
	X_RESULT_TYPE                          =>x_rule_object_rec.result_type,
	X_REQUIRED_FLAG                        =>x_rule_object_rec.required_flag,
	X_USE_DEFAULT_VALUE_FLAG               =>x_rule_object_rec.use_default_value_flag,
	X_DEFAULT_APPLICATION_ID               =>x_rule_object_rec.default_application_id,
	X_DEFAULT_VALUE                        =>x_rule_object_rec.default_value,
        X_FLEX_VALUE_SET_ID                    =>x_rule_object_rec.flex_value_set_id,
        X_FLEXFIELD_NAME                       =>x_rule_object_rec.flexfield_name,
        X_FLEXFIELD_APP_SHORT_NAME             =>x_rule_object_rec.flexfield_app_short_name,
	X_MULTI_RULE_RESULT_FLAG               =>x_rule_object_rec.multi_rule_result_flag,
	X_CREATED_BY_MODULE                    =>x_rule_object_rec.created_by_module,
	X_USE_INSTANCE_FLAG                    =>x_rule_object_rec.use_instance_flag,
	X_INSTANCE_LABEL                       =>x_rule_object_rec.instance_label,
	X_PARENT_RULE_OBJECT_ID                =>x_rule_object_rec.parent_rule_object_id,
        X_ORG_ID                               =>x_rule_object_rec.org_id
    );
Line: 958

 *     FUN_RULES_PKG.Select_Row
 *
 * 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_rule_objects                 User customizable objects name.
 *   IN/OUT:
 *   OUT:
 *     x_rule_object_rec              Returned class category record.
 *     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
 *
 *   10-Sep-2004    Amulya Mishra         Created.
 *
 */

PROCEDURE get_rule_object_rec (
    p_init_msg_list                         IN     VARCHAR2 := FND_API.G_FALSE,
    p_rule_object_id                        IN     NUMBER,
    x_rule_object_rec                       OUT    NOCOPY RULE_OBJECTS_REC_TYPE,
    x_return_status                         OUT NOCOPY    VARCHAR2,
    x_msg_count                             OUT NOCOPY    NUMBER,
    x_msg_data                              OUT NOCOPY    VARCHAR2
) IS

BEGIN

    --Initialize message list if p_init_msg_list is set to TRUE.
    IF FND_API.to_Boolean(p_init_msg_list) THEN
        FND_MSG_PUB.initialize;
Line: 1014

    FUN_RULE_OBJECTS_PKG.Select_Row_Rob_Id (
        X_RULE_OBJECT_NAME                     =>x_rule_object_rec.rule_object_name,
	X_RULE_OBJECT_ID                       =>x_rule_object_rec.rule_object_id,
	X_APPLICATION_ID                       =>x_rule_object_rec.application_id,
	X_USER_RULE_OBJECT_NAME                =>x_rule_object_rec.user_rule_object_name,
	X_DESCRIPTION                          =>x_rule_object_rec.description,
	X_RESULT_TYPE                          =>x_rule_object_rec.result_type,
	X_REQUIRED_FLAG                        =>x_rule_object_rec.required_flag,
	X_USE_DEFAULT_VALUE_FLAG               =>x_rule_object_rec.use_default_value_flag,
	X_DEFAULT_APPLICATION_ID               =>x_rule_object_rec.default_application_id,
	X_DEFAULT_VALUE                        =>x_rule_object_rec.default_value,
        X_FLEX_VALUE_SET_ID                    =>x_rule_object_rec.flex_value_set_id,
        X_FLEXFIELD_NAME                       =>x_rule_object_rec.flexfield_name,
        X_FLEXFIELD_APP_SHORT_NAME             =>x_rule_object_rec.flexfield_app_short_name,
	X_MULTI_RULE_RESULT_FLAG               =>x_rule_object_rec.multi_rule_result_flag,
	X_CREATED_BY_MODULE                    =>x_rule_object_rec.created_by_module,
	X_USE_INSTANCE_FLAG                    =>x_rule_object_rec.use_instance_flag,
	X_INSTANCE_LABEL                       =>x_rule_object_rec.instance_label,
	X_PARENT_RULE_OBJECT_ID                =>x_rule_object_rec.parent_rule_object_id,
        X_ORG_ID                               =>x_rule_object_rec.org_id
    );
Line: 1075

 * PROCEDURE delete_rule_object
 *
 * DESCRIPTION
 *     Deletes User customizable objects.
 *
 * 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_rule_object_name             User customizable object Name.
 *     p_application_id               Application Id
 *   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
 *
 *   10-Sep-2004    Amulya Mishra       Created.
 *
 */

PROCEDURE delete_rule_object(
    p_init_msg_list           IN        VARCHAR2 := FND_API.G_FALSE,
    p_rule_object_name        IN        VARCHAR2,
    p_application_id	      IN        NUMBER,
    x_return_status           OUT NOCOPY       VARCHAR2,
    x_msg_count               OUT NOCOPY       NUMBER,
    x_msg_data                OUT NOCOPY       VARCHAR2
) IS

    l_rule_object_id                     number;
Line: 1118

    SELECT
      B.APPLICATION_ID,
      B.RULE_OBJECT_NAME,
      B.INSTANCE_LABEL,
      B.ORG_ID
    FROM FUN_RULE_OBJECTS_B B, FUN_RULE_OBJECTS_TL TL, FUN_RULE_OBJ_ATTRIBUTES ATTR
    WHERE B.PARENT_RULE_OBJECT_ID = p_rule_object_id
    AND   B.RULE_OBJECT_ID = ATTR.RULE_OBJECT_ID
    AND   B.RULE_OBJECT_ID = TL.RULE_OBJECT_ID
    AND   TL.LANGUAGE = 'US';
Line: 1132

    SAVEPOINT delete_rule_object;
Line: 1138

     SELECT RULE_OBJECT_ID INTO l_rule_object_id FROM FUN_RULE_OBJECTS_B
     WHERE RULE_OBJECT_NAME = p_rule_object_name
     AND   APPLICATION_ID   = p_application_id
     AND   INSTANCE_LABEL IS NULL
     AND   ORG_ID  IS NULL
     AND   PARENT_RULE_OBJECT_ID IS NULL;
Line: 1155

    DELETE FROM FUN_RULE_PARAM_VALUES FRPV
    WHERE RULE_DETAIL_ID IN (SELECT RULE_DETAIL_ID
                             FROM FUN_RULE_DETAILS FRD , FUN_RULE_OBJECTS_B FROB
                             WHERE FROB.RULE_OBJECT_ID = FRD.RULE_OBJECT_ID
                             AND FROB.RULE_OBJECT_NAME = P_RULE_OBJECT_NAME);
Line: 1162

    DELETE FROM FUN_RULE_CRIT_PARAMS_TL FRCP
    WHERE CRITERIA_PARAM_ID IN (SELECT CRITERIA_PARAM_ID
                                FROM FUN_RULE_OBJECTS_B FROB, FUN_RULE_CRIT_PARAMS_B FRCPB
				WHERE FROB.RULE_OBJECT_ID = FRCPB.RULE_OBJECT_ID
  			        AND RULE_OBJECT_NAME = P_RULE_OBJECT_NAME);
Line: 1168

    DELETE FROM FUN_RULE_CRIT_PARAMS_B FRCP
    WHERE RULE_OBJECT_ID IN (SELECT RULE_OBJECT_ID
                             FROM FUN_RULE_OBJECTS_B WHERE
			     RULE_OBJECT_NAME = P_RULE_OBJECT_NAME);
Line: 1173

    DELETE FROM FUN_RULE_DETAILS FRD
    WHERE RULE_OBJECT_ID IN (SELECT RULE_OBJECT_ID
                             FROM FUN_RULE_OBJECTS_B WHERE
			     RULE_OBJECT_NAME = P_RULE_OBJECT_NAME);
Line: 1177

    DELETE FROM FUN_RULE_CRITERIA FRC
    WHERE RULE_DETAIL_ID IN (SELECT RULE_DETAIL_ID
                             FROM FUN_RULE_DETAILS FRD , FUN_RULE_OBJECTS_B FROB
			     WHERE FROB.RULE_OBJECT_ID = FRD.RULE_OBJECT_ID
			     AND FROB.RULE_OBJECT_NAME = P_RULE_OBJECT_NAME);
Line: 1185

    DELETE FROM FUN_RULE_TEST_MULTIRULE FRTP
    WHERE TEST_ID IN (SELECT TEST_ID
		      FROM FUN_RULE_TESTS FRT , FUN_RULE_OBJECTS_B FROB
		      WHERE FROB.RULE_OBJECT_ID = FRT.RULE_OBJECT_ID
		      AND FROB.RULE_OBJECT_NAME = P_RULE_OBJECT_NAME);
Line: 1191

    DELETE FROM FUN_RULE_TEST_RESULTS FRTR
    WHERE TEST_ID IN (SELECT TEST_ID
                      FROM FUN_RULE_TESTS FRT , FUN_RULE_OBJECTS_B FROB
		      WHERE FROB.RULE_OBJECT_ID = FRT.RULE_OBJECT_ID
		      AND FROB.RULE_OBJECT_NAME = P_RULE_OBJECT_NAME);
Line: 1197

    DELETE FROM FUN_RULE_TEST_MVAL_RES FRTMR
    WHERE TEST_ID IN (SELECT TEST_ID
                      FROM FUN_RULE_TESTS FRT , FUN_RULE_OBJECTS_B FROB
		      WHERE FROB.RULE_OBJECT_ID = FRT.RULE_OBJECT_ID
		      AND FROB.RULE_OBJECT_NAME = P_RULE_OBJECT_NAME);
Line: 1203

    DELETE FROM FUN_RULE_TEST_PARAMS FRTP
    WHERE TEST_ID IN (SELECT TEST_ID
                      FROM FUN_RULE_TESTS FRT , FUN_RULE_OBJECTS_B FROB
		      WHERE FROB.RULE_OBJECT_ID = FRT.RULE_OBJECT_ID
		      AND FROB.RULE_OBJECT_NAME = P_RULE_OBJECT_NAME);
Line: 1209

    DELETE FROM FUN_RULE_TESTS FRT
    WHERE RULE_OBJECT_ID IN (SELECT RULE_OBJECT_ID
                             FROM FUN_RULE_OBJECTS_B WHERE
			     RULE_OBJECT_NAME = P_RULE_OBJECT_NAME);
Line: 1223

    FUN_RULE_OBJECTS_PKG.Delete_Row (
        X_RULE_OBJECT_NAME                     =>p_rule_object_name,
        X_APPLICATION_ID                       =>p_application_id
    );
Line: 1238

            delete_rule_object_instance(
               p_application_id          => C_REC.application_id,
               p_rule_object_name        => C_REC.rule_object_name,
               p_instance_label          => C_REC.instance_label,
               p_org_id                  => C_REC.org_id,
               x_return_status           => x_return_status,
               x_msg_count               => x_msg_count,
               x_msg_data                => x_msg_data);
Line: 1267

        ROLLBACK TO delete_rule_object;
Line: 1275

        ROLLBACK TO delete_rule_object;
Line: 1283

        ROLLBACK TO delete_rule_object;
Line: 1292

END delete_rule_object;
Line: 1297

 * Use this routine to delete a rule object instance. The API deletes a record in the
 * FUN_RULE_OBJECTS_B table after checking if the USE_INSTANCE_FLAG is Y or not.
 *
 *
 * p_init_msg_list    Initialize message stack if it is set to FND_API.G_TRUE. Default is FND_API.G_FALSE.
 * p_application_id   Application identifier
 * p_rule_object_name Name of Rule Object
 * p_instance_label   Name of the Instance.
 * x_return_status    Return status after the call.
 * x_msg_count        Number of messages in message stack.
 * x_msg_data         Message text if x_msg_count is 1.
 *
 * 27-Dec-2005    Amulya Mishra     Created
 */

PROCEDURE delete_rule_object_instance(
    p_init_msg_list           IN      VARCHAR2 := FND_API.G_FALSE,
    p_application_id          IN      NUMBER,
    p_rule_object_name        IN      VARCHAR2,
    p_instance_label          IN      VARCHAR2,
    p_org_id                  IN      NUMBER,
    x_return_status           OUT NOCOPY       VARCHAR2,
    x_msg_count               OUT NOCOPY       NUMBER,
    x_msg_data                OUT NOCOPY       VARCHAR2
) IS

l_rule_object_id              NUMBER;
Line: 1328

    SAVEPOINT delete_rule_object_instance;
Line: 1334

      SELECT RULE_OBJECT_ID INTO l_rule_object_id FROM FUN_RULE_OBJECTS_B
      WHERE RULE_OBJECT_NAME = p_rule_object_name
      AND   APPLICATION_ID   = p_application_id
      AND ( (INSTANCE_LABEL IS NULL  AND p_instance_label IS NULL) OR
	  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
      AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
	  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
      AND PARENT_RULE_OBJECT_ID IS NOT NULL;
Line: 1354

    DELETE FROM FUN_RULE_PARAM_VALUES FRPV
    WHERE RULE_DETAIL_ID IN (SELECT RULE_DETAIL_ID
                             FROM FUN_RULE_DETAILS FRD , FUN_RULE_OBJECTS_B FROB
                             WHERE FROB.RULE_OBJECT_ID = FRD.RULE_OBJECT_ID
                             AND FROB.RULE_OBJECT_NAME = P_RULE_OBJECT_NAME
			     AND FROB.APPLICATION_ID = P_APPLICATION_ID
			    AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
				  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
			    AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
				  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
			    AND PARENT_RULE_OBJECT_ID IS NOT NULL);
Line: 1367

    DELETE FROM FUN_RULE_CRIT_PARAMS_TL FRCP
    WHERE CRITERIA_PARAM_ID IN (SELECT CRITERIA_PARAM_ID
                                FROM FUN_RULE_OBJECTS_B FROB, FUN_RULE_CRIT_PARAMS_B FRCPB
				WHERE FROB.RULE_OBJECT_ID = FRCPB.RULE_OBJECT_ID
  			        AND RULE_OBJECT_NAME = P_RULE_OBJECT_NAME
				AND FROB.APPLICATION_ID = P_APPLICATION_ID
			    AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
				  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
			    AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
				  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
			    AND PARENT_RULE_OBJECT_ID IS NOT NULL);
Line: 1381

    DELETE FROM FUN_RULE_CRIT_PARAMS_B FRCP
    WHERE RULE_OBJECT_ID IN (SELECT RULE_OBJECT_ID
                             FROM FUN_RULE_OBJECTS_B WHERE
			     RULE_OBJECT_NAME = P_RULE_OBJECT_NAME
				AND APPLICATION_ID = P_APPLICATION_ID
			    AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
				  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
			    AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
				  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
			    AND PARENT_RULE_OBJECT_ID IS NOT NULL);
Line: 1392

    DELETE FROM FUN_RULE_DETAILS FRD
    WHERE RULE_OBJECT_ID IN (SELECT RULE_OBJECT_ID
                             FROM FUN_RULE_OBJECTS_B WHERE
			     RULE_OBJECT_NAME = P_RULE_OBJECT_NAME
			     AND APPLICATION_ID = P_APPLICATION_ID
			    AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
				  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
			    AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
				  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
			    AND PARENT_RULE_OBJECT_ID IS NOT NULL);
Line: 1403

    DELETE FROM FUN_RULE_CRITERIA FRC
    WHERE RULE_DETAIL_ID IN (SELECT RULE_DETAIL_ID
                             FROM FUN_RULE_DETAILS FRD , FUN_RULE_OBJECTS_B FROB
			     WHERE FROB.RULE_OBJECT_ID = FRD.RULE_OBJECT_ID
			     AND RULE_OBJECT_NAME = P_RULE_OBJECT_NAME
			     AND FROB.APPLICATION_ID = P_APPLICATION_ID
			    AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
				  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
			    AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
				  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
			    AND PARENT_RULE_OBJECT_ID IS NOT NULL);
Line: 1418

    DELETE FROM FUN_RULE_TEST_MULTIRULE FRTP
    WHERE TEST_ID IN (SELECT TEST_ID
		      FROM FUN_RULE_TESTS FRT , FUN_RULE_OBJECTS_B FROB
		      WHERE FROB.RULE_OBJECT_ID = FRT.RULE_OBJECT_ID
		      AND RULE_OBJECT_NAME = P_RULE_OBJECT_NAME
 		      AND FROB.APPLICATION_ID = P_APPLICATION_ID
			    AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
				  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
			    AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
				  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
			    AND PARENT_RULE_OBJECT_ID IS NOT NULL);
Line: 1431

    DELETE FROM FUN_RULE_TEST_RESULTS FRTR
    WHERE TEST_ID IN (SELECT TEST_ID
                      FROM FUN_RULE_TESTS FRT , FUN_RULE_OBJECTS_B FROB
		      WHERE FROB.RULE_OBJECT_ID = FRT.RULE_OBJECT_ID
		      AND RULE_OBJECT_NAME = P_RULE_OBJECT_NAME
 		      AND FROB.APPLICATION_ID = P_APPLICATION_ID
			    AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
				  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
			    AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
				  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
			    AND PARENT_RULE_OBJECT_ID IS NOT NULL);
Line: 1444

    DELETE FROM FUN_RULE_TEST_MVAL_RES FRTMR
    WHERE TEST_ID IN (SELECT TEST_ID
                      FROM FUN_RULE_TESTS FRT , FUN_RULE_OBJECTS_B FROB
		      WHERE FROB.RULE_OBJECT_ID = FRT.RULE_OBJECT_ID
		      AND RULE_OBJECT_NAME = P_RULE_OBJECT_NAME
		      AND FROB.APPLICATION_ID = P_APPLICATION_ID
			    AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
				  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
			    AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
				  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
			    AND PARENT_RULE_OBJECT_ID IS NOT NULL);
Line: 1457

    DELETE FROM FUN_RULE_TEST_PARAMS FRTP
    WHERE TEST_ID IN (SELECT TEST_ID
                      FROM FUN_RULE_TESTS FRT , FUN_RULE_OBJECTS_B FROB
		      WHERE FROB.RULE_OBJECT_ID = FRT.RULE_OBJECT_ID
			     AND RULE_OBJECT_NAME = P_RULE_OBJECT_NAME
			     AND FROB.APPLICATION_ID = P_APPLICATION_ID
			    AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
				  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
			    AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
				  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
			    AND PARENT_RULE_OBJECT_ID IS NOT NULL);
Line: 1470

    DELETE FROM FUN_RULE_TESTS FRT
    WHERE RULE_OBJECT_ID IN (SELECT RULE_OBJECT_ID
                             FROM FUN_RULE_OBJECTS_B WHERE
			     RULE_OBJECT_NAME = P_RULE_OBJECT_NAME
			     AND APPLICATION_ID = P_APPLICATION_ID
			    AND ( (INSTANCE_LABEL IS NULL AND p_instance_label IS NULL) OR
				  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
			    AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
				  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
			    AND PARENT_RULE_OBJECT_ID IS NOT NULL);
Line: 1491

    FUN_RULE_OBJECTS_PKG.Delete_Row (
        X_RULE_OBJECT_ID                     =>l_rule_object_id
    );
Line: 1503

        ROLLBACK TO delete_rule_object_instance;
Line: 1511

        ROLLBACK TO delete_rule_object_instance;
Line: 1519

        ROLLBACK TO delete_rule_object_instance;
Line: 1528

END delete_rule_object_instance;
Line: 1538

    SELECT 'Y' INTO l_dummy
    FROM FUN_RULE_CRIT_PARAMS_B FRCP, FUN_RULE_OBJECTS_B FROB
    WHERE FROB.RULE_OBJECT_ID = FRCP.RULE_OBJECT_ID
    AND FROB.RULE_OBJECT_NAME = p_rule_object_name
    AND FRCP.PARAM_NAME = p_parameter_name;
Line: 1601

      SELECT 'Y' INTO l_param_value
      FROM FUN_RULE_OBJECTS_B
      WHERE RULE_OBJECT_NAME = p_rule_object_name
      AND   APPLICATION_ID   = p_application_id
      AND ( (INSTANCE_LABEL IS NULL  AND p_instance_label IS NULL) OR
	  (INSTANCE_LABEL IS NOT NULL AND p_instance_label IS NOT NULL AND INSTANCE_LABEL = p_instance_label))
      AND ( (ORG_ID IS NULL AND p_org_id IS NULL) OR
	  ( ORG_ID IS NOT NULL AND p_org_id IS NOT NULL AND ORG_ID = p_org_id))
      AND PARENT_RULE_OBJECT_ID IS NOT NULL;
Line: 1745

        Delete all of the original rules and test cases.
    End if
 Else if P_INSTANCE_FLAG = 'N' then
    Set USE_INSTANCE_FLAG to 'N' for the rule object
    Delete all object instances
 Else
     Invalid P_INSTANCE_FLAG -- error
 End if

 */


PROCEDURE convert_use_instance(
    p_init_msg_list           		 IN      VARCHAR2 := FND_API.G_FALSE,
    p_rule_object_id                     IN      NUMBER,
    p_use_instance_flag                  IN      VARCHAR2,
    p_instance_label                     IN      VARCHAR2 DEFAULT NULL,
    P_ORG_ID                             IN      NUMBER DEFAULT NULL,
    x_return_status           		 OUT NOCOPY     VARCHAR2,
    x_msg_count               		 OUT NOCOPY     NUMBER,
    x_msg_data                		 OUT NOCOPY     VARCHAR2
)
IS
    CURSOR C_RULE_OBJECT_INSTANCES(p_rule_object_id NUMBER) IS
    SELECT APPLICATION_ID,RULE_OBJECT_NAME,
           RULE_OBJECT_ID, INSTANCE_LABEL, ORG_ID
    FROM FUN_RULE_OBJECTS_B
    WHERE PARENT_RULE_OBJECT_ID = p_rule_object_id;
Line: 1810

       SELECT USE_INSTANCE_FLAG , APPLICATION_ID, RULE_OBJECT_NAME
       INTO l_use_instance_flag, l_application_id, l_rule_object_name
       FROM FUN_RULE_OBJECTS_B
       WHERE RULE_OBJECT_ID = p_rule_object_id;
Line: 1825

       UPDATE FUN_RULE_OBJECTS_B
       SET USE_INSTANCE_FLAG ='Y'
       WHERE RULE_OBJECT_ID = p_rule_object_id;
Line: 1848

           UPDATE FUN_RULE_DETAILS
	   SET RULE_OBJECT_ID = x_rule_object_id
	   WHERE RULE_OBJECT_ID = p_rule_object_id;
Line: 1854

	   UPDATE FUN_RULE_TESTS
	   SET RULE_OBJECT_ID = x_rule_object_id
	   WHERE RULE_OBJECT_ID = p_rule_object_id;
Line: 1861

           delete_rule_object(
               p_rule_object_name  => l_rule_object_name,
               p_application_id	   => l_application_id,
               x_return_status     => x_return_status,
               x_msg_count         => x_msg_count ,
               x_msg_data          => x_msg_data
           );
Line: 1875

        SELECT PARENT_RULE_OBJECT_ID
        INTO l_parent_rule_object_id
        FROM FUN_RULE_OBJECTS_B
        WHERE RULE_OBJECT_ID = p_rule_object_id;
Line: 1883

       UPDATE FUN_RULE_OBJECTS_B
       SET USE_INSTANCE_FLAG ='N',
           INSTANCE_LABEL    = null,
	   ORG_ID            = null,
	   PARENT_RULE_OBJECT_ID = null
       WHERE RULE_OBJECT_ID = p_rule_object_id;
Line: 1895

        delete_rule_object_instance(
                p_application_id          => c_rec.application_id,
                p_rule_object_name        => c_rec.rule_object_name,
                p_instance_label          => c_rec.instance_label,
                p_org_id                  => c_rec.org_id,
                x_return_status           => x_return_status,
                x_msg_count               => x_msg_count,
                x_msg_data                => x_msg_data
         );