diff --git a/packages/loot-core/migrations/1691233396000_add_schedule_next_date_tombstone.sql b/packages/loot-core/migrations/1691233396000_add_schedule_next_date_tombstone.sql new file mode 100644 index 0000000000000000000000000000000000000000..7e2f253c7194c64a14cb66642ad4a82a0aab5925 --- /dev/null +++ b/packages/loot-core/migrations/1691233396000_add_schedule_next_date_tombstone.sql @@ -0,0 +1,5 @@ +BEGIN TRANSACTION; + +ALTER TABLE schedules_next_date ADD COLUMN tombstone INTEGER DEFAULT 0; + +COMMIT; diff --git a/packages/loot-core/src/server/schedules/app.ts b/packages/loot-core/src/server/schedules/app.ts index 16df0c1c66eb242b840604096db60755914d4769..7939123c11e0a1315d11ea291fd6e0a565015c8f 100644 --- a/packages/loot-core/src/server/schedules/app.ts +++ b/packages/loot-core/src/server/schedules/app.ts @@ -188,9 +188,10 @@ export async function setNextDate({ // Methods async function checkIfScheduleExists(name, scheduleId) { - let idForName = await db.first('SELECT id from schedules WHERE name = ?', [ - name, - ]); + let idForName = await db.first( + 'SELECT id from schedules WHERE tombstone = 0 AND name = ?', + [name], + ); if (idForName == null) { return false; diff --git a/upcoming-release-notes/1463.md b/upcoming-release-notes/1463.md new file mode 100644 index 0000000000000000000000000000000000000000..476b02a349d7b81cd5132c59ef68db1c4709eaf6 --- /dev/null +++ b/upcoming-release-notes/1463.md @@ -0,0 +1,6 @@ +--- +category: Bugfix +authors: [MatissJanis] +--- + +Fix creating a new schedule with the same name as a deleted schedule