Compare commits

...

4 Commits

Author SHA1 Message Date
Jonathan Jenne
83ad9db4b2 Version 1.2.0.0 2021-02-01 14:31:18 +01:00
Jonathan Jenne
9db382aead clean up 2021-02-01 14:30:42 +01:00
Jonathan Jenne
def3cdac1e Improve User Feedback for errors, fix TestArticleExists 2021-02-01 14:30:38 +01:00
Jonathan Jenne
248162732f clean up licenses 2021-02-01 14:28:12 +01:00
7 changed files with 55 additions and 32 deletions

View File

@ -1,11 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MySubMain>true</MySubMain>
<MainForm>Form1</MainForm>
<MainForm>frmMain</MainForm>
<SingleInstance>false</SingleInstance>
<ShutdownMode>0</ShutdownMode>
<EnableVisualStyles>true</EnableVisualStyles>
<AuthenticationMode>0</AuthenticationMode>
<ApplicationType>0</ApplicationType>
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
</MyApplicationData>
</MyApplicationData>

View File

@ -12,7 +12,7 @@ Imports System.Runtime.InteropServices
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("Digital Data")>
<Assembly: AssemblyProduct("WinLineProductNumberGenerator")>
<Assembly: AssemblyCopyright("Copyright © 2020")>
<Assembly: AssemblyCopyright("Copyright © 2021")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' indem Sie "*" wie unten gezeigt eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.1.0.7")>
<Assembly: AssemblyVersion("1.2.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@ -22,7 +22,7 @@ Namespace My.Resources
'''<summary>
''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0"), _
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _

View File

@ -15,7 +15,7 @@ Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.4.0.0"), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.7.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase

View File

@ -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

View File

@ -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 &= $"</MESOWebService>"
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 &= $"</MESOWebService>"
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

View File

@ -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