Write what N1MM needs before it will open a log

Checked by opening a log this program wrote in N1MM 1.0.11031. Three things it
rejected:

- a log naming a contest with no row in the Contest table throws "No current
  row" in Contest.FromRow, so the definition row is written whenever a contest
  is opened;
- an empty overlay category is answered with "Invalid Overlay Category:", so an
  entry with no overlay now says "N/A", and the dialog offers N1MM's list;
- the sent exchange omits the report, which is what N1MM's own contest dialog
  asks for.

With those three fixed N1MM opens the log and shows the contacts.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Erik
2026-08-27 11:15:48 +00:00
co-authored by Claude Opus 5
parent 2834f63c8e
commit d96cbe146b
17 changed files with 196 additions and 15 deletions
+1 -4
View File
@@ -35,9 +35,7 @@ public sealed class ArrlDx : Contest
public IReadOnlyList<ModeCategory> Modes => [mode];
public string SentExchangeFor(StationInfo me) =>
IsNorthAmericanHome(me)
? $"{DefaultReport()} {StateOrProvince(me)}"
: $"{DefaultReport()} {me.Power}";
IsNorthAmericanHome(me) ? StateOrProvince(me) : me.Power;
/// Only contacts across the W/VE line count, so a DX station working DX or
/// a W station working W scores nothing.
@@ -88,5 +86,4 @@ public sealed class ArrlDx : Contest
private string ModeLabel() => mode == ModeCategory.Cw ? "CW" : "SSB";
private string DefaultReport() => mode == ModeCategory.Cw ? "599" : "59";
}