diff --git a/AyCode.Services/Nav/Ekaer/Models/TradeCardItemType.Partial.cs b/AyCode.Services/Nav/Ekaer/Models/TradeCardItemType.Partial.cs new file mode 100644 index 0000000..7f4d0e9 --- /dev/null +++ b/AyCode.Services/Nav/Ekaer/Models/TradeCardItemType.Partial.cs @@ -0,0 +1,21 @@ +using AyCode.Core.Interfaces; + +namespace AyCode.Services.Nav.Ekaer.Models; + +/// +/// KÉZZEL ÍRT partial-kiegészítés a generált -hoz — a generált fájlhoz NEM nyúlunk, +/// az xscgen-újrageneráláskor ez a fájl megmarad. +/// Az implementáció grid-megjelenítéshez kell (IId<int>-megkötésű grid-bázisok +/// readonly DataSource-aként). EXPLICIT implementáció, mert a NAV-séma saját Id-t definiál, ami +/// string ([XmlAttribute("id")], csak modify-kérésnél töltött) — a grid viszont int-et vár. +/// SZÁMÍTOTT érték: az ItemExternalId-ból jön (a mapper oda a ShippingItem.Id-t írja), +/// így betöltéskor nincs teendő. Az explicit tagot az XmlSerializer nem szerializálja — a NAV-wire érintetlen. +/// +public partial class TradeCardItemType : IId +{ + int IId.Id + { + get => int.TryParse(ItemExternalId, out var id) ? id : 0; + set => ItemExternalId = value.ToString(); + } +} diff --git a/AyCode.Services/SignalRs/AcSignalRDataSource.cs b/AyCode.Services/SignalRs/AcSignalRDataSource.cs index e497f0b..3f89c7a 100644 --- a/AyCode.Services/SignalRs/AcSignalRDataSource.cs +++ b/AyCode.Services/SignalRs/AcSignalRDataSource.cs @@ -477,7 +477,9 @@ namespace AyCode.Services.SignalRs if (clearChangeTracking) TrackingItems.Clear(); - if (refreshDataFromDbAsync) + // Tag nélküli (lokális/readonly) datasource: nincs honnan frissíteni — a szerver-refresh kimarad. + // (Az explicit LoadDataSourceAsync hívás tag nélkül továbbra is dob — az valódi konfigurációs hiba.) + if (refreshDataFromDbAsync && SignalRCrudTags.GetAllMessageTag != AcSignalRTags.None) { LoadDataSourceAsync(false).Forget(); return; @@ -512,7 +514,9 @@ namespace AyCode.Services.SignalRs } else if (clearChangeTracking) TrackingItems.Clear(); - if (refreshDataFromDbAsync) + // Tag nélküli (lokális/readonly) datasource: nincs honnan frissíteni — a szerver-refresh kimarad. + // (Az explicit LoadDataSourceAsync hívás tag nélkül továbbra is dob — az valódi konfigurációs hiba.) + if (refreshDataFromDbAsync && SignalRCrudTags.GetAllMessageTag != AcSignalRTags.None) { LoadDataSourceAsync(false).Forget(); return;