2012-04-11 162 views
-2

我安裝了openerp並用虛擬記錄對其進行了測試。現在,我需要刪除所有這些虛擬記錄,以便我可以用真實記錄重新開始。你們是否知道刪除這些記錄的方法?後面的數據庫是postgresqlOpenerp刪除記錄

+0

這應該是你的問題http://stackoverflow.com/questions/3327312/drop-all-tables-in-postgresql – 2012-04-11 10:24:12

+0

我不能刪除數據庫中的所有數據,因爲如果openerp正在將配置數據保存在數據庫中 – Noor 2012-04-11 10:26:36

+1

上面的評論還告訴你如何刪除一個表只有而不是全部在數據庫... – 2012-04-11 11:19:28

回答

1

我認爲開始一個新的數據庫並修復它的配置比嘗試清理所創建的虛擬記錄風險更低。

下面我將如何在您的情況進行:

  1. 沒有測試數據創建一個新的數據庫。
  2. 檢查基本配置嚮導。
  3. 保存一個沒有任何虛擬記錄的乾淨備份。
  4. 創建一些銷售訂單,採購訂單等,並查看您忘記更改的配置設置。
  5. 恢復最新的乾淨備份。
  6. 如果您需要更改某些設置,請執行此操作並返回步驟3.否則,您就完成了。

如果你想變得很花哨,你可以創建一個定製模塊,爲你做所有的配置變更。這樣,如果你真的搞砸了一個數據庫或失去備份,你可以再次從頭開始。

0

我也認爲創建一個新的數據庫是您刪除虛假記錄並安裝新記錄的最佳選擇。此外,您還可以在以下菜單中安裝uninstall模塊。

administration->modules->modules 

選擇你想要的模塊uninstall-> hit the uninstall button ->apply sheduled upgrades。 但不好的階段是大多數模塊相互依賴,所以他們顯示拒絕uninstall

+0

歡迎使用堆棧溢出。 – 2012-04-12 17:39:54

7

拋開危險的想法,您可以使用truncate命令並將其級聯到幾個核心表上,以避免丟失配置以及虛擬數據。

TRUNCATE sale_order CASCADE; 
TRUNCATE purchase_order CASCADE; 
TRUNCATE mrp_production CASCADE; 
TRUNCATE stock_picking CASCADE; 
TRUNCATE stock_tracking CASCADE; 
TRUNCATE account_invoice CASCADE; 
TRUNCATE account_move CASCADE; 
TRUNCATE account_voucher CASCADE; 
TRUNCATE wkf_instance CASCADE; 
TRUNCATE ir_attachment CASCADE; 

這應該保持完整的帳戶,用戶登錄,產品,聯繫人/合作伙伴等。截斷所有工作流實例也非常重要!

注意:這將刪除OpenERP 6.1上的最小庫存再訂貨點數。不確定其他意想不到的副作用可能在哪裏。

+0

非常有用,謝謝;
注意:在openerp5沒有表:account_voucher。我截斷其他表格。 – Mimouni 2014-03-05 16:54:11

+0

也包括account_bank_statement – 2015-03-02 10:50:54