Feat(SQL): Locations redesigned for parent location id stored on location table and links table removed.
This commit is contained in:
@@ -128,7 +128,7 @@ BEGIN
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp_Split_Name_Calc_Location;
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp_Split_Id_Calc_Location;
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp_Msg_Error_Calc_Location;
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp_Location_Link_Calc_Location;
|
||||
-- DROP TEMPORARY TABLE IF EXISTS tmp_Location_Link_Calc_Location;
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp_Location_Calc_Location;
|
||||
|
||||
CREATE TEMPORARY TABLE tmp_Location_Calc_Location (
|
||||
@@ -138,6 +138,7 @@ BEGIN
|
||||
, csv_id_locations_parent TEXT
|
||||
);
|
||||
|
||||
/*
|
||||
CREATE TEMPORARY TABLE tmp_Location_Link_Calc_Location (
|
||||
id_link INT NOT NULL
|
||||
, id_location_parent INT
|
||||
@@ -145,7 +146,8 @@ BEGIN
|
||||
, does_meet_id_filters BIT
|
||||
, does_meet_non_id_filters BIT
|
||||
);
|
||||
|
||||
*/
|
||||
|
||||
CREATE TEMPORARY TABLE IF NOT EXISTS tmp_Msg_Error_Calc_Location (
|
||||
id_error INT NOT NULL PRIMARY KEY AUTO_INCREMENT
|
||||
, id_type INT NULL
|
||||
@@ -428,6 +430,7 @@ BEGIN
|
||||
END IF;
|
||||
|
||||
-- Calculated fields
|
||||
/*
|
||||
-- Parent Location Ids
|
||||
WITH Location_Parent AS (
|
||||
SELECT
|
||||
@@ -450,33 +453,9 @@ BEGIN
|
||||
SELECT 'After generate calculated fields Locations';
|
||||
SELECT * FROM tmp_Location_Calc_Location;
|
||||
END IF;
|
||||
*/
|
||||
|
||||
|
||||
-- Location Links
|
||||
INSERT INTO tmp_Location_Link_Calc_Location (
|
||||
id_link
|
||||
, id_location_parent
|
||||
, id_location_child
|
||||
|
||||
, does_meet_id_filters
|
||||
, does_meet_non_id_filters
|
||||
)
|
||||
SELECT
|
||||
LOCATION_LINK.id_link
|
||||
, LOCATION_LINK.id_location_parent
|
||||
, LOCATION_LINK.id_location_child
|
||||
|
||||
, NULL AS does_meet_id_filters
|
||||
, NULL AS does_meet_non_id_filters
|
||||
FROM parts.DOG_Location_Link LOCATION_LINK
|
||||
INNER JOIN tmp_Location_Calc_Location t_LOCATIONS
|
||||
ON LOCATION_LINK.id_location_parent = t_LOCATIONS.id_location
|
||||
OR LOCATION_LINK.id_location_child = t_LOCATIONS.id_location
|
||||
WHERE
|
||||
a_get_inactive_location = 1
|
||||
OR LOCATION_LINK.active = 1
|
||||
;
|
||||
|
||||
-- Permissions
|
||||
IF a_debug = 1 THEN
|
||||
SELECT
|
||||
@@ -600,31 +579,6 @@ BEGIN
|
||||
INNER JOIN tmp_Location_Calc_Location t_LOCATIONS ON LOCATIONS.id_location = t_LOCATIONS.id_location
|
||||
ORDER BY LOCATIONS.name
|
||||
;
|
||||
|
||||
INSERT INTO parts.DOG_Location_Link_Temp (
|
||||
guid
|
||||
, id_link
|
||||
, id_location_parent
|
||||
, id_location_child
|
||||
, active
|
||||
|
||||
, does_meet_id_filters
|
||||
, does_meet_non_id_filters
|
||||
)
|
||||
SELECT
|
||||
a_guid
|
||||
, t_LOCATION_LINK.id_link
|
||||
, LOCATION_LINK.id_location_parent
|
||||
, LOCATION_LINK.id_location_child
|
||||
, LOCATION_LINK.active
|
||||
|
||||
, NULL AS does_meet_id_filters
|
||||
, NULL AS does_meet_non_id_filters
|
||||
FROM parts.DOG_Location_Link LOCATION_LINK
|
||||
INNER JOIN tmp_Location_Link_Calc_Location t_LOCATION_LINK ON LOCATION_LINK.id_link = t_LOCATION_LINK.id_link
|
||||
INNER JOIN parts.DOG_Location LOCATIONS ON LOCATION_LINK.id_location_child = LOCATIONS.id_location
|
||||
ORDER BY LOCATIONS.name
|
||||
;
|
||||
COMMIT;
|
||||
|
||||
-- Errors
|
||||
@@ -651,7 +605,7 @@ BEGIN
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp_Split_Name_Calc_Location;
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp_Split_Id_Calc_Location;
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp_Msg_Error_Calc_Location;
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp_Location_Link_Calc_Location;
|
||||
-- DROP TEMPORARY TABLE IF EXISTS tmp_Location_Link_Calc_Location;
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp_Location_Calc_Location;
|
||||
|
||||
IF a_debug = 1 THEN
|
||||
@@ -696,9 +650,6 @@ CALL parts.p_dog_calc_location (
|
||||
SELECT *
|
||||
FROM parts.DOG_Location_Temp
|
||||
;
|
||||
SELECT *
|
||||
FROM parts.DOG_Location_Link_Temp
|
||||
;
|
||||
/*
|
||||
SELECT *
|
||||
FROM parts.DOG_Location_Temp C
|
||||
@@ -716,8 +667,5 @@ CALL parts.p_dog_clear_calc_location (
|
||||
DELETE
|
||||
FROM parts.DOG_Location_Temp
|
||||
;
|
||||
DELETE
|
||||
FROM parts.DOG_Location_Link_Temp
|
||||
;
|
||||
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user