[Home] [Help]
50: NOTES
51:
52: -----------------------------------------------------------------------------*/
53: PROCEDURE Convert_Child_VS_Select_Expr (
54: p_parent_vs_row IN ego_value_sets_v%ROWTYPE
55: , p_convert_date IN VARCHAR2 := FND_API.G_FALSE
56: , x_column_name IN OUT NOCOPY VARCHAR2
57: )
58: IS
102: correctly in the Java layer.
103:
104: -----------------------------------------------------------------------------*/
105: PROCEDURE Build_Child_VS_Select_Exprs (
106: p_parent_vs_row IN ego_value_sets_v%ROWTYPE
107: , x_id_column_type OUT NOCOPY fnd_flex_validation_tables.id_column_type%TYPE
108: , x_value_column_type OUT NOCOPY fnd_flex_validation_tables.value_column_type%TYPE
109: , x_id_column_name OUT NOCOPY fnd_flex_validation_tables.id_column_name%TYPE
110: , x_value_column_name OUT NOCOPY fnd_flex_validation_tables.value_column_name%TYPE
6483: ,x_msg_count OUT NOCOPY NUMBER
6484: ,x_msg_data OUT NOCOPY VARCHAR2
6485: ) IS
6486: l_api_name VARCHAR2(30);
6487: l_parent_vs_row ego_value_sets_v%ROWTYPE;
6488: l_maximum_size ego_value_sets_v.maximum_size%TYPE;
6489: l_format_code ego_value_sets_v.format_code%TYPE;
6490: l_minimum_value ego_value_sets_v.minimum_value%TYPE;
6491: l_maximum_value ego_value_sets_v.maximum_value%TYPE;
6484: ,x_msg_data OUT NOCOPY VARCHAR2
6485: ) IS
6486: l_api_name VARCHAR2(30);
6487: l_parent_vs_row ego_value_sets_v%ROWTYPE;
6488: l_maximum_size ego_value_sets_v.maximum_size%TYPE;
6489: l_format_code ego_value_sets_v.format_code%TYPE;
6490: l_minimum_value ego_value_sets_v.minimum_value%TYPE;
6491: l_maximum_value ego_value_sets_v.maximum_value%TYPE;
6492: l_long_list_flag ego_value_sets_v.longlist_flag%TYPE;
6485: ) IS
6486: l_api_name VARCHAR2(30);
6487: l_parent_vs_row ego_value_sets_v%ROWTYPE;
6488: l_maximum_size ego_value_sets_v.maximum_size%TYPE;
6489: l_format_code ego_value_sets_v.format_code%TYPE;
6490: l_minimum_value ego_value_sets_v.minimum_value%TYPE;
6491: l_maximum_value ego_value_sets_v.maximum_value%TYPE;
6492: l_long_list_flag ego_value_sets_v.longlist_flag%TYPE;
6493: l_owner NUMBER;
6486: l_api_name VARCHAR2(30);
6487: l_parent_vs_row ego_value_sets_v%ROWTYPE;
6488: l_maximum_size ego_value_sets_v.maximum_size%TYPE;
6489: l_format_code ego_value_sets_v.format_code%TYPE;
6490: l_minimum_value ego_value_sets_v.minimum_value%TYPE;
6491: l_maximum_value ego_value_sets_v.maximum_value%TYPE;
6492: l_long_list_flag ego_value_sets_v.longlist_flag%TYPE;
6493: l_owner NUMBER;
6494: l_return_status_inf VARCHAR2(1);
6487: l_parent_vs_row ego_value_sets_v%ROWTYPE;
6488: l_maximum_size ego_value_sets_v.maximum_size%TYPE;
6489: l_format_code ego_value_sets_v.format_code%TYPE;
6490: l_minimum_value ego_value_sets_v.minimum_value%TYPE;
6491: l_maximum_value ego_value_sets_v.maximum_value%TYPE;
6492: l_long_list_flag ego_value_sets_v.longlist_flag%TYPE;
6493: l_owner NUMBER;
6494: l_return_status_inf VARCHAR2(1);
6495: l_inf_where_clause VARCHAR2(1000);
6488: l_maximum_size ego_value_sets_v.maximum_size%TYPE;
6489: l_format_code ego_value_sets_v.format_code%TYPE;
6490: l_minimum_value ego_value_sets_v.minimum_value%TYPE;
6491: l_maximum_value ego_value_sets_v.maximum_value%TYPE;
6492: l_long_list_flag ego_value_sets_v.longlist_flag%TYPE;
6493: l_owner NUMBER;
6494: l_return_status_inf VARCHAR2(1);
6495: l_inf_where_clause VARCHAR2(1000);
6496: l_id_column_name fnd_flex_validation_tables.id_column_name%TYPE;
6519: -- Get the Parent Value Set
6520: --
6521: SELECT *
6522: INTO l_parent_vs_row
6523: FROM ego_value_sets_v
6524: WHERE value_set_id = p_parent_vs_id;
6525:
6526: -- Inherit all necessary properties from the parent value set initially.
6527: -- Later we'll override them with what has been passed to this procedure, if
6819: l_format_code FND_FLEX_VALUE_SETS.FORMAT_TYPE%TYPE;
6820: l_maximum_value FND_FLEX_VALUE_SETS.MAXIMUM_VALUE%TYPE;
6821: l_minimum_value FND_FLEX_VALUE_SETS.MINIMUM_VALUE%TYPE;
6822:
6823: l_value_set_rec EGO_VALUE_SETS_V%ROWTYPE;
6824: BEGIN
6825:
6826: l_api_name := 'Update_Value_Set';
6827: l_api_version := 1.0;
6907: --
6908: -- REASON FOR SUB-OPTIMAL SYNTAX
6909: --
6910: -- Unfortunately, we cannot use a single update statement on all rows
6911: -- where the ego_value_sets_v.value_set_id is in the list of child value
6912: -- ids. While we can obtain a collection of child value IDs:
6913: --
6914: -- EXECUTE IMMEDIATE
6915: -- 'SELECT value_set_id FROM ego_value_sets_v ' ||
6911: -- where the ego_value_sets_v.value_set_id is in the list of child value
6912: -- ids. While we can obtain a collection of child value IDs:
6913: --
6914: -- EXECUTE IMMEDIATE
6915: -- 'SELECT value_set_id FROM ego_value_sets_v ' ||
6916: -- 'WHERE parent_value_set_id = p_value_set_id'
6917: -- BULK COLLECT INTO child_value_set_ids;
6918: --
6919: -- we cannot use it in a SQL Update statement like this:
6931:
6932: <
6933: FOR l_value_set_rec IN
6934: (SELECT *
6935: FROM ego_value_sets_v
6936: WHERE parent_value_set_id = p_value_set_id)
6937: LOOP
6938:
6939: -- Update the long list display type
7011: ,x_msg_data OUT NOCOPY VARCHAR2
7012: ) IS
7013: l_vs_value_count NUMBER;
7014: l_api_name VARCHAR2(30);
7015: l_parent_vs_row ego_value_sets_v%ROWTYPE;
7016: l_validation_code FND_LOOKUP_VALUES.LOOKUP_CODE%TYPE;
7017: l_vs_value_disp_orders EGO_VS_VALUES_DISP_ORDER_TBL
7018: := ego_vs_values_disp_order_tbl();
7019: BEGIN
7036: ----------------------------------------------------------------------------
7037:
7038: SELECT pvs.*
7039: INTO l_parent_vs_row
7040: FROM ego_value_sets_v vs, ego_value_sets_v pvs
7041: WHERE vs.parent_value_set_id = pvs.value_set_id
7042: AND vs.value_set_id = p_value_set_id;
7043:
7044: l_validation_code := l_parent_vs_row.validation_code_admin;