From 248162732f16e4514bdd1be75d96e68286d2d02b Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Mon, 1 Feb 2021 14:28:12 +0100 Subject: [PATCH 1/4] clean up licenses --- WinLineArtikelnummerGenerator/My Project/licenses.licx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/WinLineArtikelnummerGenerator/My Project/licenses.licx b/WinLineArtikelnummerGenerator/My Project/licenses.licx index d39415a..8b13789 100644 --- a/WinLineArtikelnummerGenerator/My Project/licenses.licx +++ b/WinLineArtikelnummerGenerator/My Project/licenses.licx @@ -1,2 +1 @@ -DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v20.1, Version=20.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v20.1, Version=20.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + From def3cdac1e4949cf907fd0dbdc317baf59f30f5f Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Mon, 1 Feb 2021 14:30:38 +0100 Subject: [PATCH 2/4] Improve User Feedback for errors, fix TestArticleExists --- WinLineArtikelnummerGenerator/Winline.vb | 41 +++++++++++++------ .../frmCreateArticle.vb | 30 +++++++++----- 2 files changed, 48 insertions(+), 23 deletions(-) diff --git a/WinLineArtikelnummerGenerator/Winline.vb b/WinLineArtikelnummerGenerator/Winline.vb index 193e777..961ae63 100644 --- a/WinLineArtikelnummerGenerator/Winline.vb +++ b/WinLineArtikelnummerGenerator/Winline.vb @@ -179,18 +179,33 @@ Public Class Winline _Logger.Info("WebService Response: {0}", oXmlResponse) Dim oDocument As New XmlDocument - oDocument.LoadXml(oXmlResponse) - oDocument.Save(Console.Out) + + Try + oDocument.LoadXml(oXmlResponse) + oDocument.Save(Console.Out) + Catch ex As Exception + _Logger.Error(ex) + Return False + End Try Dim oSuccess As XmlNode = oDocument.DocumentElement.SelectSingleNode("OverallSuccess") + Dim oInnerSuccess = True If oSuccess.InnerText.ToUpper = "TRUE" Then - For Each oNode As XmlNode In oDocument.DocumentElement.SelectNodes("Success") + Dim oSuccessNodes = oDocument.DocumentElement.SelectNodes("//Success") + For Each oNode As XmlNode In oSuccessNodes + If oNode.InnerText.ToUpper <> "TRUE" Then + oInnerSuccess = False + End If Next _Logger.Info("Request was SUCCESSFUL!") - Return True + If oInnerSuccess = False Then + Return False + Else + Return True + End If Else _Logger.Info("Request FAILED!") Return False @@ -203,7 +218,7 @@ Public Class Winline Public Function TestArticleExists(ArticleNumber As String) As Boolean Try - Dim oResult = _Winline.GetScalarValue($"SELECT c000 FROM v021 WHERE c002 = '{ArticleNumber}'") + Dim oResult = _Winline.GetScalarValue($"SELECT c002 FROM v021 WHERE c002 = '{ArticleNumber}'") If IsNothing(oResult) Or IsDBNull(oResult) Then Return False @@ -275,8 +290,7 @@ Public Class Winline oXmlData &= $"" Try - My.Application.Winline.SendWebserviceRequest(oTemplateType, oTemplateName, oXmlData) - Return True + Return My.Application.Winline.SendWebserviceRequest(oTemplateType, oTemplateName, oXmlData) Catch ex As Exception _Logger.Error(ex) Return False @@ -301,25 +315,28 @@ Public Class Winline oXmlData &= $"" Try - My.Application.Winline.SendWebserviceRequest(oTemplateType, oTemplateName, oXmlData) - Return True + Return My.Application.Winline.SendWebserviceRequest(oTemplateType, oTemplateName, oXmlData) Catch ex As Exception _Logger.Error(ex) Return False End Try End Function - Public Sub RunWinlineMacro(MacroName As String, ParamArray Parameters As Object()) + Public Function RunWinlineMacro(MacroName As String, ParamArray Parameters As Object()) As Boolean Try Dim oCWLObject Dim oParamArray As Object = New Runtime.InteropServices.VariantWrapper(Parameters) oCWLObject = CreateObject("cwlstart.application") oCWLObject.MacroCommands.MRunMacro(MacroName, oParamArray) + + Return True Catch ex As Exception _Logger.Error(ex) - MsgBox($"Das WinLine-Makro [{MacroName}] konnte nicht gestartet werden. Mehr Informationen im Log.", MsgBoxStyle.Critical, "WinLine") + _Logger.Warn($"Das WinLine-Makro [{MacroName}] konnte nicht gestartet werden.") + + Return False End Try - End Sub + End Function End Class diff --git a/WinLineArtikelnummerGenerator/frmCreateArticle.vb b/WinLineArtikelnummerGenerator/frmCreateArticle.vb index 6d095c6..a61e761 100644 --- a/WinLineArtikelnummerGenerator/frmCreateArticle.vb +++ b/WinLineArtikelnummerGenerator/frmCreateArticle.vb @@ -33,8 +33,6 @@ Dim oPriceResult = My.Application.Winline.CreatePriceInfo(ArticleNumber, RunningNumber, Vendor.WinlineNumber) If oArticleResult And oPriceResult Then - MsgBox("Artikel erfolgreich angelegt!", MsgBoxStyle.Information, Text) - txtFinalArticleNumber.Text = $"{ArticleNumber}{RunningNumber}" Return $"{ArticleNumber}{RunningNumber}" @@ -54,19 +52,29 @@ MsgBoxStyle.Question Or vbYesNo, Text) If oResult = MsgBoxResult.Yes Then - Dim oArticle = StartArticleCreation(True) - If oArticle IsNot Nothing Then - My.Computer.Clipboard.SetText(oArticle) - My.Application.Winline.RunWinlineMacro(My.Application.ConfigManager.Config.CompletionMacro, oArticle) - End If + Dim oArticleNumber = StartArticleCreation(True) + HandleArticleCreation(oArticleNumber) End If End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click - Dim oArticle = StartArticleCreation(False) - If oArticle IsNot Nothing Then - My.Computer.Clipboard.SetText(oArticle) - My.Application.Winline.RunWinlineMacro(My.Application.ConfigManager.Config.CompletionMacro, oArticle) + Dim oArticleNumber = StartArticleCreation(False) + HandleArticleCreation(oArticleNumber) + End Sub + + Private Sub HandleArticleCreation(ArticleNumber As String) + If ArticleNumber IsNot Nothing Then + If My.Application.Winline.TestArticleExists(ArticleNumber) Then + My.Computer.Clipboard.SetText(ArticleNumber) + If My.Application.Winline.RunWinlineMacro(My.Application.ConfigManager.Config.CompletionMacro, ArticleNumber) = False Then + MsgBox($"Der Artikelstamm konnte nicht geöffnet werden. Die Artikelnummer {ArticleNumber} wurde in die Zwischenablage kopiert.", MsgBoxStyle.Information, Text) + End If + Application.Exit() + + Else + MsgBox($"Der Artikel '{ArticleNumber}' wurde nicht angelegt!", MsgBoxStyle.Critical, Text) + + End If End If End Sub End Class \ No newline at end of file From 9db382aead3a31dd04fde76e5a2c61f217fd9d7a Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Mon, 1 Feb 2021 14:30:42 +0100 Subject: [PATCH 3/4] clean up --- WinLineArtikelnummerGenerator/My Project/Application.myapp | 5 ++--- WinLineArtikelnummerGenerator/My Project/AssemblyInfo.vb | 2 +- .../My Project/Resources.Designer.vb | 2 +- .../My Project/Settings.Designer.vb | 2 +- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/WinLineArtikelnummerGenerator/My Project/Application.myapp b/WinLineArtikelnummerGenerator/My Project/Application.myapp index 1243847..739ea6f 100644 --- a/WinLineArtikelnummerGenerator/My Project/Application.myapp +++ b/WinLineArtikelnummerGenerator/My Project/Application.myapp @@ -1,11 +1,10 @@  true - Form1 + frmMain false 0 true 0 - 0 true - + \ No newline at end of file diff --git a/WinLineArtikelnummerGenerator/My Project/AssemblyInfo.vb b/WinLineArtikelnummerGenerator/My Project/AssemblyInfo.vb index 82e2e70..a548aca 100644 --- a/WinLineArtikelnummerGenerator/My Project/AssemblyInfo.vb +++ b/WinLineArtikelnummerGenerator/My Project/AssemblyInfo.vb @@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices ' indem Sie "*" wie unten gezeigt eingeben: ' - + diff --git a/WinLineArtikelnummerGenerator/My Project/Resources.Designer.vb b/WinLineArtikelnummerGenerator/My Project/Resources.Designer.vb index 40f473e..c3bbffc 100644 --- a/WinLineArtikelnummerGenerator/My Project/Resources.Designer.vb +++ b/WinLineArtikelnummerGenerator/My Project/Resources.Designer.vb @@ -22,7 +22,7 @@ Namespace My.Resources ''' ''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. ''' - _ diff --git a/WinLineArtikelnummerGenerator/My Project/Settings.Designer.vb b/WinLineArtikelnummerGenerator/My Project/Settings.Designer.vb index 06f00a9..5754384 100644 --- a/WinLineArtikelnummerGenerator/My Project/Settings.Designer.vb +++ b/WinLineArtikelnummerGenerator/My Project/Settings.Designer.vb @@ -15,7 +15,7 @@ Option Explicit On Namespace My _ Partial Friend NotInheritable Class MySettings Inherits Global.System.Configuration.ApplicationSettingsBase From 83ad9db4b2ee0983abcd74692c7215caf7666de0 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Mon, 1 Feb 2021 14:31:18 +0100 Subject: [PATCH 4/4] Version 1.2.0.0 --- WinLineArtikelnummerGenerator/My Project/AssemblyInfo.vb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WinLineArtikelnummerGenerator/My Project/AssemblyInfo.vb b/WinLineArtikelnummerGenerator/My Project/AssemblyInfo.vb index a548aca..ec4931f 100644 --- a/WinLineArtikelnummerGenerator/My Project/AssemblyInfo.vb +++ b/WinLineArtikelnummerGenerator/My Project/AssemblyInfo.vb @@ -12,7 +12,7 @@ Imports System.Runtime.InteropServices - +