Webservice Fehlermeldung von Navision (BC14)

19. Oktober 2023 07:18

Hallo,

ich habe in mittels .NET MAUI eine Barcode Applikation, welche mittels SOAP Webservices auf verschiedene Pages und Codeunits von Navision zugreift.
Nun habe ich das Problem, das im Fehlerfall (z.B. Tabelle in Navision ist gesperrt) nicht die Fehlermeldung von Navision angezeigt wird. Sondern eine SOAP XML Meldung.

Anbei der der C# Code
Code:
 public static void leistenAbbuchen(oArtikel artikel, decimal qty)
 {
     UnitConverter.convertArtikel(ref artikel);

     SCHWSArtikelBuchblatt buchblatt = new SCHWSArtikelBuchblatt();

     buchblatt.Posting_Date = DateTime.Today;
     buchblatt.Item_No = artikel.ArtikelNr;
     buchblatt.Line_No = 10;
     buchblatt.Line_NoSpecified = true;
     buchblatt.Quantity = qty * artikel.Umrechnungsfaktor;
     buchblatt.QuantitySpecified = true;
     buchblatt.Location_Code = "ZELOGISTIK";
     buchblatt.Bin_Code = "SL01";

     try
     {
         Task t = Task.Run(() =>
         {
            MDEWebservice.ItemJnlLineDelete("ARTIKEL", UserData.BuchblattAB);
         });
         t.Wait();
         t.Dispose();

         t = Task.Run(() =>
         {
             BuchblattService.Create(UserData.BuchblattAB, ref buchblatt);
         });
         t.Wait();
         t.Dispose();

         t = Task.Run(() =>
         {
             WMS.SCHPostItemItemJnlLine("ARTIKEL", UserData.BuchblattAB, 10);
         });
         t.Wait();
         t.Dispose();
     }
     catch (Exception e)
     {
         string functionName = MethodBase.GetCurrentMethod().Name;
         DateTime time = DateTime.Now;
         string errorMsg = "Fehler bei Leisten abbuchen! User: " + UserData.Benutzername + " | Artikel: " + artikel.ArtikelNr;
         LoggerHelper.Log(functionName, time, e, errorMsg);
     }
 }


Wenn ich im Catch Block e.Message dazu gebe, dann bekomme ich diese SOAP XML Meldung.
Im Middletier Server sehe ich aber im Ereignissprotokoll die Fehlermeldung.
z.B. Message: Entschuldigung. Diese Seite wurde gerade aktualisiert. Öffnen Sie erneut und versuchen Sie es noch einmal.

Würde gerne diese Fehlermeldung am Scanner anzeigen.
Hat jemand da eine Idee, wie ich das lösen könnte.