Gnucash

如何在 GnuCash 中一次刪除多個交易?

  • January 20, 2022

如何在 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 開始,此鍵盤快捷鍵會觸發是/否對話框以確認應刪除交易。此外,您可以選擇在會話的其餘部分忽略對話框或從不顯示對話框。

引用自:https://money.stackexchange.com/questions/91861