@ -97,11 +97,18 @@ def create_contract_records(cr):
INSERT INTO contract_contract
INSERT INTO contract_contract
SELECT * FROM account_analytic_account
SELECT * FROM account_analytic_account
WHERE id IN ( SELECT DISTINCT { } FROM contract_line )
WHERE id IN ( SELECT DISTINCT { } FROM contract_line )
AND recurring_invoices
""" ).format(
""" ).format(
sql . Identifier ( contract_field_name ) ,
sql . Identifier ( contract_field_name ) ,
) ,
) ,
)
)
# Deactivate disabled contracts
openupgrade . logged_query (
cr , """ UPDATE contract_contract cc
SET active = False
FROM account_analytic_account aaa
WHERE aaa . id = cc . id
AND NOT aaa . recurring_invoices """ ,
)
# Handle id sequence
# Handle id sequence
cr . execute ( " CREATE SEQUENCE IF NOT EXISTS contract_contract_id_seq " )
cr . execute ( " CREATE SEQUENCE IF NOT EXISTS contract_contract_id_seq " )
cr . execute ( " SELECT setval( ' contract_contract_id_seq ' , "
cr . execute ( " SELECT setval( ' contract_contract_id_seq ' , "
@ -121,7 +128,6 @@ def create_contract_records(cr):
UPDATE { table } SET { model_column } = ' contract.contract '
UPDATE { table } SET { model_column } = ' contract.contract '
WHERE { model_column } = ' account.analytic.account '
WHERE { model_column } = ' account.analytic.account '
AND { id_column } IN ( SELECT DISTINCT { col } FROM contract_line )
AND { id_column } IN ( SELECT DISTINCT { col } FROM contract_line )
AND recurring_invoices
""" ).format(
""" ).format(
table = sql . Identifier ( table ) ,
table = sql . Identifier ( table ) ,
model_column = sql . Identifier ( model_column ) ,
model_column = sql . Identifier ( model_column ) ,