如何在 GnuCash 中一次刪除多個交易?
如何在 GnuCash 中批量刪除多個交易?
我的具體案例是我將每年視為一個獨立的 gnucash 文件。我從上一年的副本開始,然後將當年的交易導入其中,以便在導入期間受益於經過訓練的貝氏自動交易映射。導入當年數據後,我想刪除上一年的數據。
作為一種解決方法,我製作了一個用於刪除事務的快捷鍵。關閉 GnuCash 後,我修改了加速器映射文件。
在 GnuCash 2.6 及更早版本中:
C:\Users\username\.gnu-cash\accelerator-map
在 GnuCash 3.0 和更新版本中:
C:\Users\username\AppData\Roaming\GnuCash\accelerator-map
Ubuntu(如評論中所述):
/home/username/.local/share/gnucash/accelerator-map
我更改了以下行(您可能需要完全添加該行)
; (gtk_accel_path "<Actions>/GncPluginPageRegisterActions/DeleteTransactionAction" "")
到:
(gtk_accel_path "<Actions>/GncPluginPageRegisterActions/DeleteTransactionAction" "<Primary>Delete")
我刪除了行首的分號
;
(充當註釋字元)並添加了文本<Primary>Delete
第一次使用組合鍵時,GnuCash 將顯示一個彈出對話框,詢問您是否要保存交易,並具有復選框以在將來自動執行此操作。選擇其中一個複選框。您以後可以通過轉到菜單來撤消此選擇
Actions->Reset Warnings...
(出現一個對話框,詢問要重置哪些警告)現在我可以通過按
ctrl
+刪除事務delete
(注意:這是刪除鍵,而不是退格鍵。但您可以選擇您想要的任何組合鍵)。按住此組合鍵允許以可預測的速率連續刪除,因此很容易快速刪除數百筆交易。(編輯:注意在最近的版本中,GnuCash 4.9,雖然刪除率可能仍然是可預測的,但當您在按住組合鍵時刪除事務時,它似乎不再更新 UI,這使得刪除率更難觀察。我是現在更舒適地反复按下組合鍵而不是按住)
如果您有數千個要刪除的事務,但對於幾百個事務來說,這可能不是最好的解決方案。
作為此非常有用資訊的後續,在 Windows PC 上,該文件位於:
C:\Users\UserName\AppData\Roaming\GnuCash\accelerator-map
上述答案中顯示編輯行的方式是正確的,但對於每個人來說可能不是立即顯而易見,就像其他一些語言一樣,分號也需要刪除。分號是一個註釋標籤,它禁用它所在的行。
筆記:
<Primary>
與 Mac 上的“Command”和 Windows 上的“Ctrl”相同。其他修飾符是<Shift>
並且<Alt>
它們可以組合起來,以便更難意外地做到這一點,我的新行是:
(gtk_accel_path "<Actions>/GncPluginPageRegisterActions/DeleteTransactionAction" "<Primary><Shift>Delete")
又名:Control + Shift + Delete
我認為它在早期版本中是相同的,但我是 GNUcash 的新手,因此需要注意的是,至少從 GNUcash 3.5 開始,此鍵盤快捷鍵會觸發是/否對話框以確認應刪除交易。此外,您可以選擇在會話的其餘部分忽略對話框或從不顯示對話框。