fix: Ein Uebertrag im Eingang fragt nicht mehr nach der Kategorie

Die Zeile im Eingang zeigte die Kategorie-Auswahl bedingungslos – auch bei
einem Kontouebertrag, der gar keine bekommt. Die Oberflaeche konnte es auch
nicht wissen: InboxItemOut hatte kein Feld, an dem sich ein Uebertrag
erkennen laesst.

Jetzt liefert der Eintrag transfer_account_id mit – das jeweils ANDERE
Konto, aus seiner Sicht. Steht es, zeigt die Zeile '↔ Kontoname' statt der
Auswahl. Ermittelt wird es mit einer Sammelabfrage, nicht je Zeile: Die Liste
geht bis 200 Eintraege.

Dazu die Luecke dahinter: set_category schrieb die Kategorie auch auf die
Buchung und konnte sie so auf einem TxnType.transfer ablegen – genau das,
was das Buchungsformular beim Anlegen verhindert. Bei einem Uebertrag lehnt
der Endpunkt jetzt ab; bei allem anderen bleibt es, wie es war.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Guido
2026-08-27 10:08:09 +02:00
co-authored by Claude Opus 5
parent 8084ba511a
commit 90bda6b161
4 changed files with 123 additions and 14 deletions
+17 -5
View File
@@ -213,11 +213,23 @@ export default function Eingang() {
</div>
<Money cents={Math.abs(item.amount_cents)} currency={item.currency}
sign={ausgabe ? "neg" : "pos"} baseCurrency={baseCurrency} />
<CategorySelect
groups={ausgabe ? expenseGroups : incomeGroups}
value={item.category_id}
onChange={(id) => zuordnen(item, id)}
/>
{/* Ein Übertrag ist keine Ausgabe – er bekommt keine
Kategorie, also auch keine Auswahl dafür. */}
{item.transfer_account_id != null ? (
<div className="uebertrag-marke">
<Icon name="arrow-left-right" size={14} />
<span className="ellipsis">
{accountById[item.transfer_account_id]?.name
|| t("transfers.linked")}
</span>
</div>
) : (
<CategorySelect
groups={ausgabe ? expenseGroups : incomeGroups}
value={item.category_id}
onChange={(id) => zuordnen(item, id)}
/>
)}
{item.status !== "booked" && item.account_id && (
<>
<button className="btn sm primary" onClick={() => buchen(item)}>