Salve a tutti.
Ho un database di produzione su Odoo 8 e ho necessità di duplicarlo per poi svuotare il database (però mantenendo tutte le configurazioni effettuate - gruppi di utenti, moduli installati, configurazioni contabili).
In pratica, per spiegarmi meglio, devo "pulire" i dati contabili (fatture acquisti/vendite), quelli dei partner (dipendenti/clienti/fornitori) e degli utenti.
Ho provato con una funzione su pgAdmin III
-- Function: truncate_tables(character varying)
-- DROP FUNCTION truncate_tables(character varying);
CREATE OR REPLACE FUNCTION truncate_tables(username character varying)
RETURNS void AS
$BODY$
DECLARE
statements CURSOR FOR
SELECT tablename FROM pg_tables
WHERE tableowner = username AND schemaname = 'public';
BEGIN
FOR stmt IN statements LOOP
EXECUTE 'TRUNCATE TABLE ' || quote_ident(stmt.tablename) || ' CASCADE;';
END LOOP;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ALTER FUNCTION truncate_tables(character varying)
OWNER TO postgres;
Ma mi segnala errore di "deadlock" (probabilmente c'è qualche problema nella funzione).
In ogni caso, facendo un semplice "TRUNCATE" su "res_partner" non riesco più ad accedere al database, quindi penso di dover operare in maniera diversa.
Consigli?