Initial commit

This commit is contained in:
2021-04-20 07:59:36 +02:00
commit fb0247c874
21969 changed files with 11640044 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "EDKB04", "EDKB04\EDKB04.vbproj", "{9B20034E-010A-448B-9A63-0DC12F029179}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{9B20034E-010A-448B-9A63-0DC12F029179}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9B20034E-010A-448B-9A63-0DC12F029179}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9B20034E-010A-448B-9A63-0DC12F029179}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9B20034E-010A-448B-9A63-0DC12F029179}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,26 @@
Imports System.ServiceProcess
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class EDKB04
Inherits System.ServiceProcess.ServiceBase
'Wird vom Komponenten-Designer benötigt.
Private components As System.ComponentModel.IContainer
' Hinweis: Die folgende Prozedur ist für den Komponenten-Designer erforderlich.
' Das Bearbeiten ist mit dem Komponenten-Designer möglich.
' Das Bearbeiten mit dem Code-Editor ist nicht möglich.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
'
'EDKB04
'
Me.ServiceName = "EDKB04"
End Sub
End Class

View File

@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
</root>

View File

@@ -0,0 +1,313 @@
Imports System.Timers
Imports IBM.WMQ
Imports System.ServiceProcess
Imports System.Runtime.Remoting
Imports System.Runtime.Remoting.Channels
Imports System.Xml
Imports System.Data.SqlClient
Imports System.IO
Imports System.Reflection
Public Class EDKB04
Inherits System.ServiceProcess.ServiceBase
Dim WithEvents tmrQueuePolling As Timer = New Timer(2000)
Dim myStopper As ErrorStopper
#Region " Vom Component Designer generierter Code "
Public Sub New()
MyBase.New()
' Dieser Aufruf wird vom Komponenten-Designer benötigt.
InitializeComponent()
' Fügen Sie Initialisierungscode hinter dem InitializeComponent()-Aufruf ein
End Sub
'UserService überschreibt den Löschvorgang zum Bereinigen der Komponentenliste.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
' Der Haupteinstiegspunkt für den Vorgang
<MTAThread()> _
Shared Sub Main()
Dim ServicesToRun() As System.ServiceProcess.ServiceBase
ServicesToRun = New System.ServiceProcess.ServiceBase() {New EDKB04}
System.ServiceProcess.ServiceBase.Run(ServicesToRun)
End Sub
#End Region
Protected Overrides Sub OnStart(ByVal args() As String)
Try
Dim FileWatch As New FileSystemWatcher()
'init BMS
Dim m_log1 As New bms.Logging(6, Common.Common.JobType.WatchJob)
m_log = m_log1
m_log.Start()
m_log.Log("EDKB04: Start", Common.Common.JournalEntryType.Information)
'Init Params
Params.Loadparameters()
'Init File Watcher
FileWatch.Path = Params.Watchdir
FileWatch.IncludeSubdirectories = False
FileWatch.Filter = "*.xml"
AddHandler FileWatch.Created, New FileSystemEventHandler(AddressOf OnFileEvent)
FileWatch.EnableRaisingEvents = True
'init DB-Connection
Dim sconnection = New DB_Connection()
'init Timer
If CInt(Params.TimerInterval) > 0 Then
tmrQueuePolling.Start()
Else
tmrQueuePolling.Enabled = False
End If
'Init Error Stopper
Me.myStopper = New ErrorStopper
Me.myStopper.init(Params.nb_errors, Params.nb_seconds)
Catch ex As Exception
WriteLog("BMS-Connection / XML: " + ex.Message, appPath + "Error.txt")
m_log.Log(ex.Message, Common.Common.JournalEntryType.Error)
Exit Sub
End Try
End Sub
Protected Overrides Sub OnStop()
' Hier Code zum Ausführen erforderlicher Löschvorgänge zum Beenden des Dienstes einfügen.
m_log.Log("EDKB04 Stop", Common.Common.JournalEntryType.Information)
m_log.Ende()
End Sub
Private Sub WriteLog(ByVal stext As String, ByVal sPfad As String)
Try
Dim FiStr As FileStream = New FileStream(sPfad, FileMode.Append)
Dim StrWr As StreamWriter = New StreamWriter(FiStr)
StrWr.WriteLine("Fehler: " + Now() & " Text:" & stext)
StrWr.Close()
Catch ex As Exception
End Try
End Sub
#Region "Timer"
Public Sub OnTimedEvent(ByVal source As Object, ByVal e As ElapsedEventArgs) Handles tmrQueuePolling.Elapsed
ReadfromMQ()
End Sub
#End Region
#Region "File Watcher"
Private Sub OnFileEvent(ByVal source As Object, ByVal e As FileSystemEventArgs)
Try
Threading.Thread.Sleep(2000)
Dim di As New IO.DirectoryInfo(Params.Watchdir)
Dim diar1 As IO.FileInfo() = di.GetFiles("*.xml")
Dim dra As IO.FileInfo
Dim data As String
For Each dra In diar1
Dim fil As New StreamReader(dra.FullName)
data = fil.ReadToEnd()
fil.Close()
'm_log.Log("EDKB04: read File OK", Common.Common.JournalEntryType.Information)
Dim newending As String = ".err"
Dim filetimestamp As String = Format(Now, "yyyyMMddHHmmssffff")
If XMLtoObj(data) = True Then
If DBImport() = True Then
newending = ".xml"
Else
newending = ".err"
End If
End If
If Params.DebugMode Then
'moven
File.Move(dra.FullName, Params.DebugDir & filetimestamp & newending)
Else
'deleten
File.Delete(dra.FullName)
End If
Next
Catch ex As Exception
m_log.Log("EDKB04: FileWatcher Error: " & ex.Message, Common.Common.JournalEntryType.Error)
End Try
End Sub
#End Region
Private Function DBImport() As Boolean
'---------------Import in DB--------------
Dim result As Boolean
'm_log.Log("EDKB04: DB Abgleich START", Common.Common.JournalEntryType.Information)
result = DBHandling.Init(XMLHandling.Stamm1)
'Transformation starten
If result Then
result = Stamm1.Transform
End If
If result And XMLHandling.Stamm1.HasPartnerNat Then
result = DBHandling.partnerNat()
End If
If result And XMLHandling.Stamm1.HasPartnerJur Then
result = DBHandling.partnerJur()
End If
If result And XMLHandling.Stamm1.HasHauptadresse Then
result = DBHandling.partnerHauptadresse()
End If
If result And XMLHandling.Stamm1.HasVersandadresse Then
result = DBHandling.partnerVersandadresse()
End If
If result And XMLHandling.Stamm1.HasMitarbeiter Then
result = DBHandling.Mitarbeiter()
End If
If result And XMLHandling.Stamm1.HasVV Then
result = DBHandling.VV()
End If
If result Then
m_log.Log("EDKB04: DB Abgleich ENDE", Common.Common.JournalEntryType.Information)
Else
If Me.myStopper.insert Then m_log.Log("EDKB04: DB Abgleich ERROR", Common.Common.JournalEntryType.Error)
End If
Return result
End Function
Private Function XMLtoObj(ByVal strXMLContent As String) As Boolean
Dim result As Boolean
Try
'm_log.Log("EDKB04: Lese XML String in Objekt", Common.Common.JournalEntryType.Information)
result = XMLHandling.Load(strXMLContent)
'm_log.Log("EDKB04: Lese XML String in Objekt ENDE", Common.Common.JournalEntryType.Information)
Catch ex As Exception
m_log.Log("EDKB04: Error bei XML->Obj: " & ex.Message, Common.Common.JournalEntryType.Error)
result = False
End Try
Return result
End Function
Private Function ReadfromMQ() As Boolean
Dim mqQMgr As MQQueueManager '* MQQueueManager instance
Dim mqQueue As MQQueue = Nothing '* MQQueue instance
Dim queueName As String '* Name of queue to use
Dim strMsg As String
Dim result As Boolean
tmrQueuePolling.Stop()
'm_log.Log("EDKB04: Start MQ Verbindungsaufbau", Common.Common.JournalEntryType.Information)
queueName = Params.MQQueueName
Try
MQEnvironment.Hostname = Params.MQHostname 'Bsp: "vb0049d"
MQEnvironment.Port = Params.MQPort 'Bsp: 1416
MQEnvironment.Channel = Params.MQChannel 'Bsp: "TGKB.D16.EDOKA.CL"
Try
mqQMgr = New MQQueueManager()
mqQueue = mqQMgr.AccessQueue(queueName, MQC.MQOO_INPUT_AS_Q_DEF + MQC.MQOO_FAIL_IF_QUIESCING) '* open queue for input but not if MQM stopping
Catch ex As Exception
m_log.Log("EDKB04: MQ Error: " & ex.Message, Common.Common.JournalEntryType.Error)
End Try
Catch mqe As IBM.WMQ.MQException
m_log.Log("EDKB04: Error: " & mqe.Message, Common.Common.JournalEntryType.Error)
m_log.Log("EDKB04: Errorcode: " & mqe.CompletionCode, Common.Common.JournalEntryType.Error)
m_log.Log("EDKB04: Reasoncode: " & mqe.ReasonCode, Common.Common.JournalEntryType.Error)
End Try
Try
Dim isContinue As Boolean = True
Dim strXMLContent As String
Do While (isContinue = True)
Dim mqMsg As MQMessage '* MQMessage instance
Dim mqGetMsgOpts As MQGetMessageOptions '* MQGetMessageOptions instance
mqMsg = New MQMessage()
mqGetMsgOpts = New MQGetMessageOptions()
Try
If CInt(Params.TimerInterval) > 0 Then
mqGetMsgOpts.WaitInterval = CInt(Params.TimerInterval)
Else
mqGetMsgOpts.WaitInterval = 15000 '* 15 second limit for waiting
End If
Catch ex As Exception
mqGetMsgOpts.WaitInterval = 15000 '* 15 second limit for waiting
End Try
mqGetMsgOpts.Options = MQC.MQGMO_WAIT
Try
mqQueue.Get(mqMsg, mqGetMsgOpts)
'mqQueue.
If (mqMsg.Format.CompareTo(MQC.MQFMT_STRING) = 0) Then
strMsg = mqMsg.ReadString(mqMsg.MessageLength)
strXMLContent = strMsg
'Me.Log("Message Content:" & strMsg)
If Params.DebugMode Then
Me.writeDebug(strMsg)
End If
'm_log.Log("EDKB04: Message Length:" & Len(strMsg) & " Chars", Common.Common.JournalEntryType.Information)
If XMLtoObj(strXMLContent) = True Then
DBImport()
Else
result = False
End If
result = True
Else
If Me.myStopper.insert Then m_log.Log("EDKB04: Non-text message", Common.Common.JournalEntryType.Error)
result = False
End If
Catch mqe As IBM.WMQ.MQException
'* report reason, if any
If (mqe.Reason = MQC.MQRC_NO_MSG_AVAILABLE) Then
'* special report for normal end
m_log.Log("EDKB04: no more messages", Common.Common.JournalEntryType.Information)
isContinue = False
Else
'* general report for other reasons
If Me.myStopper.insert Then m_log.Log("EDKB04: MQQueue::Get ended with {0}: " & mqe.Message, Common.Common.JournalEntryType.Error)
'* treat truncated message as a failure for this sample
'If (mqe.Reason = MQC.MQRC_TRUNCATED_MSG_FAILED) Then
isContinue = False
'End If
End If
result = False
End Try
If LCase(Params.LoopQueue) = "false" Then
isContinue = False
End If
Loop
Catch ex As Exception
If Me.myStopper.insert Then m_log.Log("EDKB04: Error bei GET: " & ex.Message, Common.Common.JournalEntryType.Error)
result = False
Finally
If CInt(Params.TimerInterval) > 0 Then
tmrQueuePolling.Start()
End If
End Try
Return result
End Function
Private Function writeDebug(ByVal xmlstring As String) As Boolean
Dim result As Boolean = True
Try
Dim writer As System.IO.StreamWriter
Dim filetimestamp As String = Format(Now, "yyyyMMddHHmmssffff")
writer = IO.File.AppendText(Params.DebugDir & filetimestamp & ".xml")
writer.WriteLine(xmlstring)
writer.Close()
Catch ex As Exception
m_log.Log("EDKB04: Error beim Abspeichern der Debug .xml Daten")
result = False
End Try
Return result
End Function
End Class

View File

@@ -0,0 +1,142 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{9B20034E-010A-448B-9A63-0DC12F029179}</ProjectGuid>
<OutputType>WinExe</OutputType>
<StartupObject>EDKB04.EDKB04</StartupObject>
<RootNamespace>EDKB04</RootNamespace>
<AssemblyName>EDKB04</AssemblyName>
<MyType>Console</MyType>
<SccProjectName>
</SccProjectName>
<SccLocalPath>
</SccLocalPath>
<SccAuxPath>
</SccAuxPath>
<SccProvider>
</SccProvider>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>EDKB04.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>bin\</OutputPath>
<DocumentationFile>EDKB04.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<ItemGroup>
<Reference Include="amqmdnet, Version=1.0.0.3, Culture=neutral, PublicKeyToken=dd3cb1c9aae9ec97">
<SpecificVersion>False</SpecificVersion>
<HintPath>bin\amqmdnet.dll</HintPath>
</Reference>
<Reference Include="BMS, Version=2.0.2972.16650, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>bin\BMS.dll</HintPath>
</Reference>
<Reference Include="Common, Version=2.0.2972.16650, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>bin\Common.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration.Install" />
<Reference Include="System.Data" />
<Reference Include="System.ServiceProcess" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Diagnostics" />
</ItemGroup>
<ItemGroup>
<Compile Include="clsconnectionprovider.vb" />
<Compile Include="clsParameter.vb" />
<Compile Include="DBHandling.vb" />
<Compile Include="db_connection.vb" />
<Compile Include="ErrorStopper.vb" />
<Compile Include="Globals.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
</Compile>
<Compile Include="EDKB04.vb">
<SubType>Component</SubType>
</Compile>
<Compile Include="EDKB04.Designer.vb">
<DependentUpon>EDKB04.vb</DependentUpon>
</Compile>
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<Compile Include="ProjectInstaller.vb">
<SubType>Component</SubType>
</Compile>
<Compile Include="Stammdaten.vb" />
<Compile Include="XMLHandling.vb" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="EDKB04.resx">
<SubType>Designer</SubType>
<DependentUpon>EDKB04.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="ProjectInstaller.resx">
<DependentUpon>ProjectInstaller.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None>
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
<None Include="parameter.cfg" />
</ItemGroup>
<ItemGroup>
<Content Include="TodoList.txt" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.VisualBasic.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@@ -0,0 +1,17 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectView>ShowAllFiles</ProjectView>
<PublishUrlHistory>publish\</PublishUrlHistory>
<InstallUrlHistory>
</InstallUrlHistory>
<SupportUrlHistory>
</SupportUrlHistory>
<UpdateUrlHistory>
</UpdateUrlHistory>
<BootstrapperUrlHistory>
</BootstrapperUrlHistory>
<ApplicationRevision>0</ApplicationRevision>
<FallbackCulture>de-DE</FallbackCulture>
<VerifyUploadedFiles>false</VerifyUploadedFiles>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,34 @@
Public Class ErrorStopper
Private nb_events As Integer = 0
Private nb_seconds As Integer = 0
Private myStack As ArrayList
Public Function insert() As Boolean
Dim result As Boolean = True
'Neues Element rein
Dim new_el As New DateTime
new_el = Now()
myStack.Add(new_el)
'Alte löschen
Dim check_el As DateTime
Dim i As Integer = myStack.Count
Do While i > 0
check_el = myStack.Item(0)
If DateAdd(DateInterval.Second, nb_seconds, check_el) < Now() Then
myStack.RemoveAt(0)
End If
i = i - 1
Loop
'Check ob Menge überschritten
If myStack.Count >= nb_events Then result = False
Return result
End Function
Public Sub init(ByVal numberOfEvents As Integer, ByVal periodInSeconds As Integer)
Me.nb_events = numberOfEvents
Me.nb_seconds = periodInSeconds
Me.myStack = New ArrayList
End Sub
End Class

View File

@@ -0,0 +1,38 @@
Imports System.Reflection
Imports System.IO
Module Globals
Public Applikationsdaten As DataTable
Public AppldataRow As Integer
Public sConnectionString_edoka As String
Public sConnectionString_journale As String
Public sConnectionString_tgdata As String
Public args As String() = Environment.GetCommandLineArgs()
Public Params As New ClsParameter()
Public conn_edoka As New edokadb.clsConnectionProvider()
Public conn_journale As New edokadb.clsConnectionProvider()
Public conn_tgdata As New edokadb.clsConnectionProvider()
Public Fehler As Integer = 0
Public Warning As Integer = 0
Public DokumentID As String
Public ColdDokumentID As String
Public KeyNr As Long
Public ofile As System.IO.File
Public oread As System.IO.StreamReader
'NEU
Public appPath As String = Path.GetDirectoryName([Assembly].GetEntryAssembly().Location) + "\"
#Region "BMS"
Public m_log As bms.Logging
#End Region
End Module

View File

@@ -0,0 +1,13 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:2.0.50727.1433
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On

View File

@@ -0,0 +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>false</MySubMain>
<SingleInstance>false</SingleInstance>
<ShutdownMode>0</ShutdownMode>
<EnableVisualStyles>true</EnableVisualStyles>
<AuthenticationMode>0</AuthenticationMode>
<ApplicationType>3</ApplicationType>
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
</MyApplicationData>

View File

@@ -0,0 +1,35 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' Allgemeine Informationen über eine Assembly werden über die folgenden
' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
' die mit einer Assembly verknüpft sind.
' Die Werte der Assemblyattribute überprüfen
<Assembly: AssemblyTitle("EDKB04")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("DEVNET")>
<Assembly: AssemblyProduct("EDKB04")>
<Assembly: AssemblyCopyright("Copyright © DEVNET 2008")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
'Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
<Assembly: Guid("8a47384b-6519-4f1e-ae42-dae71b13a3b2")>
' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
'
' Hauptversion
' Nebenversion
' Buildnummer
' Revision
'
' Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

@@ -0,0 +1,62 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:2.0.50727.1433
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My.Resources
'This class was auto-generated by the StronglyTypedResourceBuilder
'class via a tool like ResGen or Visual Studio.
'To add or remove a member, edit your .ResX file then rerun ResGen
'with the /str option, or rebuild your VS project.
'<summary>
' A strongly-typed resource class, for looking up localized strings, etc.
'</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
Friend Module Resources
Private resourceMan As Global.System.Resources.ResourceManager
Private resourceCulture As Global.System.Globalization.CultureInfo
'<summary>
' Returns the cached ResourceManager instance used by this class.
'</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("EDKB04.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
'<summary>
' Overrides the current thread's CurrentUICulture property for all
' resource lookups using this strongly typed resource class.
'</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
Set(ByVal value As Global.System.Globalization.CultureInfo)
resourceCulture = value
End Set
End Property
End Module
End Namespace

View File

@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,73 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:2.0.50727.1433
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
#Region "My.Settings Auto-Save Functionality"
#If _MyType = "WindowsForms" Then
Private Shared addedHandler As Boolean
Private Shared addedHandlerLockObject As New Object
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
If My.Application.SaveMySettingsOnExit Then
My.Settings.Save()
End If
End Sub
#End If
#End Region
Public Shared ReadOnly Property [Default]() As MySettings
Get
#If _MyType = "WindowsForms" Then
If Not addedHandler Then
SyncLock addedHandlerLockObject
If Not addedHandler Then
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
addedHandler = True
End If
End SyncLock
End If
#End If
Return defaultInstance
End Get
End Property
End Class
End Namespace
Namespace My
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Friend Module MySettingsProperty
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
Friend ReadOnly Property Settings() As Global.EDKB04.My.MySettings
Get
Return Global.EDKB04.My.MySettings.Default
End Get
End Property
End Module
End Namespace

View File

@@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" UseMySettingsClassName="true">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

View File

@@ -0,0 +1,127 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 1.3
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">1.3</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1">this is my long string</data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
[base64 mime encoded serialized .NET Framework object]
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
[base64 mime encoded string representing a byte array form of the .NET Framework object]
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used forserialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>1.3</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="ServiceProcessInstaller1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Assembly</value>
</data>
<data name="ServiceProcessInstaller1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Assembly</value>
</data>
<data name="ServiceProcessInstaller1.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</data>
<data name="EDKB04.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Assembly</value>
</data>
<data name="EDKB04.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Assembly</value>
</data>
<data name="EDKB04.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>188, 17</value>
</data>
<data name="$this.Name">
<value>ProjectInstaller</value>
</data>
<data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Assembly</value>
</data>
<data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
</root>

View File

@@ -0,0 +1,61 @@
Imports System.ComponentModel
Imports System.Configuration.Install
<RunInstaller(True)> Public Class ProjectInstaller
Inherits System.Configuration.Install.Installer
#Region " Vom Component Designer generierter Code "
Public Sub New()
MyBase.New()
' Dieser Aufruf ist für den Komponenten-Designer erforderlich.
InitializeComponent()
' Initialisierungen nach dem Aufruf InitializeComponent() hinzufügen
End Sub
'Installer überschreibt den Löschvorgang zum Bereinigen der Komponentenliste.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
' Für Komponenten-Designer erforderlich
Private components As System.ComponentModel.IContainer
'HINWEIS: Die folgende Prozedur ist für den Komponenten-Designer erforderlich
'Sie kann mit dem Komponenten-Designer modifiziert werden.
'Verwenden Sie nicht den Code-Editor zur Bearbeitung.
Friend WithEvents ServiceProcessInstaller1 As System.ServiceProcess.ServiceProcessInstaller
Friend WithEvents EDKB04 As System.ServiceProcess.ServiceInstaller
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Me.ServiceProcessInstaller1 = New System.ServiceProcess.ServiceProcessInstaller
Me.EDKB04 = New System.ServiceProcess.ServiceInstaller
'
'ServiceProcessInstaller1
'
Me.ServiceProcessInstaller1.Account = System.ServiceProcess.ServiceAccount.LocalSystem
Me.ServiceProcessInstaller1.Installers.AddRange(New System.Configuration.Install.Installer() {Me.EDKB04})
Me.ServiceProcessInstaller1.Password = Nothing
Me.ServiceProcessInstaller1.Username = Nothing
'
'EDKB01ZV
'
Me.EDKB04.DisplayName = "EDKB04"
Me.EDKB04.ServiceName = "EDKB04"
'
'ProjectInstaller
'
Me.Installers.AddRange(New System.Configuration.Install.Installer() {Me.ServiceProcessInstaller1})
End Sub
#End Region
End Class

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,115 @@
Umbau in Service:
OK Config Datei erstellen + einlesen (MQ Angaben)
OK Journalisierung umbauen form1.log -> bms.log
OK Check der Headerdaten? Mandant, UserID usw? Eher nicht
OK In Service umbauen
OK Handler (oder Timer) für MQ Listening einbauen
OK Scheduler für Update_for_PDA (SAREC nachführen) "Update_for_PDA"
OK Scheduler Spezialhandling partner_saldieren, versandadresse saldieren (NEU) validto2
OK validto2 auf Tabelle partner wieder ausbauen, wird nicht verwendet
OK Mail für Errors prüfen auf INT2
OK VV wenn kontoTyp leer wird produktBezeichnung verwendet
OK Anreden auf 150 Zeichen verlängert
OK Default BetreuerID wenn keine angeliefert + Msg senden + Default nehmen aus Paramter.cfg
OK Jetzt BL Kunde -> AVQ liefert BL NEIN -> In EDOKA bleibt er BL Kunde
OK DB Error ohne anderen Fehler simulieren -- War <Mitarbeiter> Tag
OK System Error suchen -- War nicht erfasster Partner + Lieferung HA
OK "Error Stopper" -- per Parameter.cfg (Lösung bei häufigen Fehlern (>50 MQ Error pro Sekunde oder so)
DB Speichern / Update
OK PartnerNat
OK PartnerJur
OK Hauptadresse
OK Versandadresse
OK Längenprüfung
OK Prüfen Tabelle ams_versandart ob in EDOKA DB verschieben oder 2. Connectionsstring? Wird für Partner.cdvsa00 gebraucht
OK Prüfen Tabelle ams_exemplare ob in EDOKA DB verschieben oder 2. Connectionsstring? NULL
OK Form1: Import bzw. Load nur eines von beiden verwenden in XMLHandling
OK Mutier und Erstelldatum auf allen Tabellen!!
SQL SCRIPT
- Alle Inhalte von av_Partner_Mapping übertragen in Script
OK "etx" Tabellen erweitern + abfragen (Script unter: L:\Sourcecode\EDOKA\_Migration\Release 4.0\Partnerdatenabgleich (BETA))
Transformationen
OK PartnerNat
OK PartnerJur
OK Hauptadresse
OK Versandadresse
OK VV
OK not null Spalten mit 0 oder "" abfüllen
OK TransformationsDB erstellen
OK TransformationsDB abfüllen + abfragen
OK TransformationsDB Abfrage erstellen (Stammdaten.Transform_generic)
OK Kurzname selber zusammenbauen
OK STATUSWERTE AVALOQ: 4 = aktiv, 7 = saldiert
OK In Prod schauen wie Anredenmapping klappt in Hauptadresse
Hilfsabfragen Transformationen
OK etsex
OK Land
OK Diverse Datum Transformationen
Legende:
- = Offen
X = in Bearbeitung
T = in Testphase
OK = Fertig + eingehend (!) getestet
L = Gelöscht bzw. wird nicht umgesetzt
------------------------------------------------------------------------------------
Spezifikationsfragen
Sind nur noch hier um zu "beweisen" was für ein Durcheinander geherrscht hat bei diesem Batch
------------------------------------------------------------------------------------
Abzuklären mit Comit
- Verschiedene Obejkttypen bei VV, welche gebraucht, ev. zusammen fassen? (VV, Produkte, Container, Dokumente)
Diese Obekte sind nicht in Spezifikation!
- Länge von Textfeldern, problematisch wenn hinten abgeschnitten? Wenn ja welche kritisch? Aktuell: Record wird komplett NICHT geschrieben wenn 1 Feld zu lang, Ausnahme VV, wurde funktion erstellt
- Es kommen ganz leere XML Dateien, nicht tragisch (20080424169.xml)
OK Keine Testdaten erhalten "Mitarbeiter" -> Diese wurden vorläufig aus der Spezifikation gestrichen und werden manuell eingepflegt.
Hauptadresse
OK PartnerNr = objektRefNr?
Versandadresse
OK Nur 2 Datensätze erhalten "Versandadresse"
OK PartnerNr = objektRefNr?
VV - VV
OK Mapping korrigieren
- formatierteNr wird falsch angeliefert, es kommt z.b. Fondskonto Swisscanto PF Yield (Maximallänge 16)
OK PartnerNr = objektRefNr?
VV - Container
- Umbau in VV - VV möglich?
- Es kommen komplett leere Datensätze (VVCONT2008042427.xml)
- Es kommen halbe Datensätze (externe Nr OK, formatierte Nr leer)
VV- Document
- Wozu diese Daten, gar nicht verwenden?
- PartnerNr nicht enthalten
VV - Produkte
- Umbau in VV - VV möglich?
- Mapping erstellen?
- PartnerNr nicht enthalten
- Es werden keine Nummern nur Texte angeliefert
- Datum oft '00000000' welches einfüllen? Je nach Feld unterschiedlich? Ignorieren?
Probleme deponiert bei Comit
Schon sehr lange! Angaben zu Stammdaten fehlen (Status = ?? usw. Liste in Excel Mapping)

View File

@@ -0,0 +1,177 @@
Imports System.IO
Imports System.Xml
Imports System.Xml.Schema
Module XMLHandling
#Region "Members"
Private _validationSuccess As Boolean
#End Region
Public Stamm1 As Stammdaten
#Region "Public Functions"
Public Function Load(ByVal strData As String) As Boolean
Dim result As Boolean = True
Try
'----Read Data----
If result Then
Dim doc As New XmlDocument()
doc.LoadXml(strData)
Stamm1 = New Stammdaten
If Not (Stamm1.fill(doc)) Then
m_log.Log("EDKB04: Fehler beim Einlesen des XML", Common.Common.JournalEntryType.Error)
result = False
End If
End If
'----VALIDIERUNG----
If result Then
'm_log.Log("EDKB04: Validierung START", Common.Common.JournalEntryType.Information)
'-----HEADER-----
If Not Stamm1.HasResultHeader Then
result = False
m_log.Log("EDKB04: Kein ResultHeader in XML vorhanden", Common.Common.JournalEntryType.Error)
End If
'-----PartnerNAT-----
If result And Stamm1.HasPartnerNat Then
If Stamm1._ResultContent._partnerNat._partnerNummer = "" Then
Stamm1.HasPartnerNat = False
result = False
m_log.Log("EDKB04: Fehler in PartnerNat, keine Partnernummer", Common.Common.JournalEntryType.Error)
End If
End If
'-----PartnerJUR-----
If result And Stamm1.HasPartnerJur Then
If Stamm1._ResultContent._partnerJur._partnerNummer = "" Then
Stamm1.HasPartnerJur = False
result = False
m_log.Log("EDKB04: Fehler in PartnerJur, keine Partnernummer", Common.Common.JournalEntryType.Error)
End If
End If
'-----PartnerHauptadresse-----
If result And Stamm1.HasHauptadresse Then
If Stamm1._ResultContent._hauptAdresse._objektRefNr = "" Then
Stamm1.HasHauptadresse = False
result = False
m_log.Log("EDKB04: Fehler in Hauptadresse, keine Partnernummer", Common.Common.JournalEntryType.Error)
End If
End If
'-----Versandadresse-----
If result And Stamm1.HasVersandadresse Then
If Stamm1._ResultContent._versandAdresse._objektRefNr = "" Then
Stamm1.HasVersandadresse = False
result = False
m_log.Log("EDKB04: Fehler in VersandAdresse, keine Partnernummer", Common.Common.JournalEntryType.Error)
End If
If result And Stamm1._ResultContent._versandAdresse._objektNr = "" Then
Stamm1.HasVersandadresse = False
result = False
m_log.Log("EDKB04: Fehler in VersandAdresse, keine objektNr (Bezug zu Partnernummer Versandadresse)", Common.Common.JournalEntryType.Error)
End If
End If
'-----Mitarbeiter-----
'-----VV-----
If result And Stamm1.HasVV Then
If Stamm1._ResultContent._vv._PartnerNummer = "" Then
Stamm1.HasVV = False
result = False
m_log.Log("EDKB04: Fehler in VV, keine Partnernummer", Common.Common.JournalEntryType.Error)
End If
End If
If result Then
'm_log.Log("EDKB04: Validierung ENDE OK", Common.Common.JournalEntryType.Information)
Else
m_log.Log("EDKB04: Validierung ENDE NOK", Common.Common.JournalEntryType.Error)
End If
End If
Catch ex As Exception
m_log.Log("EDKB04: Error Load: " & ex.Message, Common.Common.JournalEntryType.Error)
result = False
End Try
Return result
End Function
#End Region
#Region "Private Functions"
Private Function IsValid(ByVal xmlImportFile As FileInfo) As Boolean
Try
'First we create the xmltextreader
Dim reader As New XmlTextReader(xmlImportFile.FullName)
'We pass the xmltextreader into the xmlvalidatingreader
'This will validate the xml doc with the schema file
'NOTE the xml file it self points to the schema file
Dim validator As New XmlValidatingReader(reader)
' Set the validation event handler
AddHandler validator.ValidationEventHandler, _
AddressOf ValidationCallback
_validationSuccess = True 'make sure to reset the success var
' Read XML data
While (validator.Read)
End While
'Close the reader.
validator.Close()
reader.Close()
'The validationeventhandler is the only thing that would
'set m_Success to false
Return _validationSuccess
Catch ex As Exception
_validationSuccess = False
Return _validationSuccess
'Throw ex
End Try
End Function
Private Function IsValid(ByVal strData As String) As Boolean
Try
'First we create the xmltextreader
Dim reader As New XmlTextReader(strData)
'We pass the xmltextreader into the xmlvalidatingreader
'This will validate the xml doc with the schema file
'NOTE the xml file it self points to the schema file
Dim validator As New XmlValidatingReader(reader)
' Set the validation event handler
AddHandler validator.ValidationEventHandler, _
AddressOf ValidationCallback
_validationSuccess = True 'make sure to reset the success var
' Read XML data
While (validator.Read)
End While
'Close the reader.
validator.Close()
reader.Close()
'The validationeventhandler is the only thing that would
'set m_Success to false
Return _validationSuccess
Catch ex As Exception
_validationSuccess = False
Return _validationSuccess
'Throw ex
End Try
End Function
Private Sub ValidationCallback(ByVal sender As Object, ByVal args As ValidationEventArgs)
Try
'Display the validation error. This is only called on error
_validationSuccess = False 'Validation failed
m_log.Log("EDKB04: Validation error: " + args.Message + Environment.NewLine, Common.Common.JournalEntryType.Error)
Catch ex As Exception
Throw ex
End Try
End Sub
#End Region
End Module

View File

@@ -0,0 +1,215 @@
Public Class ClsParameter
#Region "Deklarationen"
Dim p_MQHostname As String
Public Property MQHostname() As String
Get
Return p_MQHostname
End Get
Set(ByVal value As String)
p_MQHostname = value
End Set
End Property
Dim p_MQPort As String
Public Property MQPort() As String
Get
Return p_MQPort
End Get
Set(ByVal value As String)
p_MQPort = value
End Set
End Property
Dim p_MQChannel As String
Public Property MQChannel() As String
Get
Return p_MQChannel
End Get
Set(ByVal value As String)
p_MQChannel = value
End Set
End Property
Dim p_MQQueueName As String
Public Property MQQueueName() As String
Get
Return p_MQQueueName
End Get
Set(ByVal value As String)
p_MQQueueName = value
End Set
End Property
Dim p_SqlTimeout As String
Public Property SqlTimeout() As String
Get
Return p_SqlTimeout
End Get
Set(ByVal value As String)
p_SqlTimeout = value
End Set
End Property
Dim p_CDMuter As String
Public Property CDMuter() As String
Get
Return p_CDMuter
End Get
Set(ByVal value As String)
p_CDMuter = value
End Set
End Property
Dim p_MuterNr As String
Public Property MuterNr() As String
Get
Return p_MuterNr
End Get
Set(ByVal value As String)
p_MuterNr = value
End Set
End Property
Dim p_Watchdir As String
Public Property Watchdir() As String
Get
Return p_Watchdir
End Get
Set(ByVal value As String)
p_Watchdir = value
End Set
End Property
Dim p_TimerInterval As String
Public Property TimerInterval() As String
Get
Return p_TimerInterval
End Get
Set(ByVal value As String)
p_TimerInterval = value
End Set
End Property
Dim p_LoopQueue As String
Public Property LoopQueue() As String
Get
Return p_LoopQueue
End Get
Set(ByVal value As String)
p_LoopQueue = value
End Set
End Property
Dim p_DebugMode As Boolean
Public Property DebugMode() As Boolean
Get
Return p_DebugMode
End Get
Set(ByVal value As Boolean)
p_DebugMode = value
End Set
End Property
Dim p_DebugDir As String
Public Property DebugDir() As String
Get
Return p_DebugDir
End Get
Set(ByVal value As String)
p_DebugDir = value
End Set
End Property
Dim p_DefaultBetreuerID As String
Public Property DefaultBetreuerID() As String
Get
Return p_DefaultBetreuerID
End Get
Set(ByVal value As String)
p_DefaultBetreuerID = value
End Set
End Property
Dim p_nb_errors As Integer
Public Property nb_errors() As Integer
Get
Return p_nb_errors
End Get
Set(ByVal value As Integer)
p_nb_errors = value
End Set
End Property
Dim p_nb_seconds As Integer
Public Property nb_seconds() As Integer
Get
Return p_nb_seconds
End Get
Set(ByVal value As Integer)
p_nb_seconds = value
End Set
End Property
Dim p_len_TXADZ As Integer
Public Property len_TXADZ() As Integer
Get
Return p_len_TXADZ
End Get
Set(ByVal value As Integer)
p_len_TXADZ = value
End Set
End Property
#End Region
Public Function Loadparameters() As String
Try
m_log.Log("EDKB04: Loading Parameters", Common.Common.JournalEntryType.Information)
oread = IO.File.OpenText(appPath & "parameter.cfg")
Me.p_MQHostname = ParamValue(oread.ReadLine)
Me.p_MQPort = ParamValue(oread.ReadLine)
Me.p_MQChannel = ParamValue(oread.ReadLine)
Me.p_MQQueueName = ParamValue(oread.ReadLine)
Me.p_SqlTimeout = ParamValue(oread.ReadLine)
Me.p_CDMuter = ParamValue(oread.ReadLine)
Me.p_MuterNr = ParamValue(oread.ReadLine)
Me.p_Watchdir = ParamValue(oread.ReadLine)
Me.p_TimerInterval = ParamValue(oread.ReadLine)
Me.p_LoopQueue = ParamValue(oread.ReadLine)
Me.p_DebugMode = CBool(ParamValue(oread.ReadLine))
Me.p_DebugDir = ParamValue(oread.ReadLine)
Me.p_DefaultBetreuerID = ParamValue(oread.ReadLine)
Try
Me.p_nb_errors = CInt(ParamValue(oread.ReadLine))
Catch ex As Exception
' Keine Zahl
Me.p_nb_errors = 999999
End Try
Try
Me.p_nb_seconds = CInt(ParamValue(oread.ReadLine))
Catch ex As Exception
'Keine Zahl
Me.p_nb_seconds = 1
End Try
Try
Me.p_len_TXADZ = CInt(ParamValue(oread.ReadLine))
Catch ex As Exception
'Keine Zahl
Me.p_len_TXADZ = 35
End Try
oread.Close()
m_log.Log("EDKB04: Loading Parameters Ended", Common.Common.JournalEntryType.Information)
Return ""
Catch ex As Exception
m_log.Log("EDKB04: Error Loading Params: " & ex.Message, Common.Common.JournalEntryType.Error)
Return ex.Message
End Try
End Function
Private Function ParamValue(ByVal sinput As String) As String
Dim splitter() As String
splitter = Split(sinput, "=")
ParamValue = splitter(1)
End Function
End Class

View File

@@ -0,0 +1,289 @@
' ///////////////////////////////////////////////////////////////////////////
' // Description: Connection Provider class for Database connection sharing
' // Generated by LLBLGen v1.2.1045.38210 Final on: Sonntag, 18. Mai 2003, 00:06:25
' // This class implements IDisposable.
' ///////////////////////////////////////////////////////////////////////////
Imports System
Imports System.Configuration
Imports System.Data
Imports System.Data.SqlClient
Imports System.Collections
Namespace edokadb
' /// <summary>
' /// Purpose: provides a SqlConnection object which can be shared among data-access tier objects
' /// to provide a way to do ADO.NET transaction coding without the hassling with SqlConnection objects
' /// on a high level.
' /// </summary>
Public Class clsConnectionProvider
Implements IDisposable
#Region " Class Member Declarations "
Private m_scoDBConnection As SqlConnection
Private m_bIsTransactionPending, m_bIsDisposed As Boolean
Private m_stCurrentTransaction As SqlTransaction
Private m_alSavePoints As ArrayList
#End Region
Public Sub New()
' // Init the class
InitClass()
End Sub
' /// <summary>
' /// Purpose: Implements the IDispose' method Dispose.
' /// </summary>
Public Overloads Sub Dispose() Implements IDisposable.Dispose
Dispose(True)
GC.SuppressFinalize(Me)
End Sub
' /// <summary>
' /// Purpose: Implements the Dispose functionality.
' /// </summary>
Protected Overridable Overloads Sub Dispose(ByVal bIsDisposing As Boolean)
' // Check to see if Dispose has already been called.
If Not m_bIsDisposed Then
If bIsDisposing Then
' // Dispose managed resources.
If Not (m_stCurrentTransaction Is Nothing) Then
m_stCurrentTransaction.Dispose()
m_stCurrentTransaction = Nothing
End If
If Not (m_scoDBConnection Is Nothing) Then
' // closing the connection will abort (rollback) any pending transactions
m_scoDBConnection.Close()
m_scoDBConnection.Dispose()
m_scoDBConnection = Nothing
End If
End If
End If
m_bIsDisposed = True
End Sub
' /// <summary>
' /// Purpose: Initializes class members.
' /// </summary>
Private Sub InitClass()
' // Create all the objects and initialize other members.
m_scoDBConnection = New SqlConnection()
m_bIsDisposed = False
m_stCurrentTransaction = Nothing
m_bIsTransactionPending = False
m_alSavePoints = New ArrayList()
End Sub
' /// <summary>
' /// Purpose: Opens the connection object.
' /// </summary>
' /// <returns>True, if succeeded, otherwise an Exception exception is thrown.</returns>
Public Function OpenConnection() As Boolean
Try
If (m_scoDBConnection.State And ConnectionState.Open) > 0 Then
' // It's already open.
Throw New Exception("OpenConnection::Connection is already open.")
End If
m_scoDBConnection.Open()
m_bIsTransactionPending = False
m_alSavePoints.Clear()
Return True
Catch ex As Exception
' // bubble exception
Throw ex
End Try
End Function
' /// <summary>
' /// Purpose: Starts a new ADO.NET transaction using the open connection object of this class.
' /// </summary>
' /// <param name="sTransactionName">Name of the transaction to start</param>
' /// <returns>True, if transaction is started correctly, otherwise an Exception exception is thrown</returns>
Public Function BeginTransaction(ByVal sTransactionName As String) As Boolean
Try
If m_bIsTransactionPending Then
' // no nested transactions allowed.
Throw New Exception("BeginTransaction::Already transaction pending. Nesting not allowed")
End If
If (m_scoDBConnection.State And ConnectionState.Open) = 0 Then
' // no open connection
Throw New Exception("BeginTransaction::Connection is not open.")
End If
' // begin the transaction and store the transaction object.
m_stCurrentTransaction = m_scoDBConnection.BeginTransaction(IsolationLevel.ReadCommitted, sTransactionName)
m_bIsTransactionPending = True
Return True
Catch ex As Exception
' // bubble exception
Throw ex
End Try
End Function
' /// <summary>
' /// Purpose: Commits a pending transaction on the open connection object of this class.
' /// </summary>
' /// <returns>True, if commit was succesful, or an Exception exception is thrown</returns>
Public Function CommitTransaction() As Boolean
Try
If Not m_bIsTransactionPending Then
' // no transaction pending
Throw New Exception("CommitTransaction::No transaction pending.")
End If
If (m_scoDBConnection.State And ConnectionState.Open) = 0 Then
' // no open connection
Throw New Exception("CommitTransaction::Connection is not open.")
End If
' // commit the transaction
m_stCurrentTransaction.Commit()
m_bIsTransactionPending = False
m_stCurrentTransaction.Dispose()
m_stCurrentTransaction = Nothing
m_alSavePoints.Clear()
Return True
Catch ex As Exception
' // bubble exception
Throw ex
End Try
End Function
' /// <summary>
' /// Purpose: Rolls back a pending transaction on the open connection object of this class,
' /// or rolls back to the savepoint with the given name. Savepoints are created with SaveTransaction().
' /// </summary>
' /// <param name="sTransactionToRollback">Name of transaction to roll back. Can be name of savepoint</param>
' /// <returns>True, if rollback was succesful, or an Exception exception is thrown</returns>
Public Function RollbackTransaction(ByVal sTransactionToRollback As String) As Boolean
Try
If Not m_bIsTransactionPending Then
' // no transaction pending
Throw New Exception("RollbackTransaction::No transaction pending.")
End If
If (m_scoDBConnection.State And ConnectionState.Open) = 0 Then
' // no open connection
Throw New Exception("RollbackTransaction::Connection is not open.")
End If
' // rollback the transaction
m_stCurrentTransaction.Rollback(sTransactionToRollback)
' // if this wasn't a savepoint, we've rolled back the complete transaction, so we
' // can clean it up.
If Not m_alSavePoints.Contains(sTransactionToRollback) Then
' // it's not a savepoint
m_bIsTransactionPending = False
m_stCurrentTransaction.Dispose()
m_stCurrentTransaction = Nothing
m_alSavePoints.Clear()
End If
Return True
Catch ex As Exception
' // bubble exception
Throw ex
End Try
End Function
' /// <summary>
' /// Purpose: Saves a pending transaction on the open connection object of this class to a 'savepoint'
' /// with the given name.
' /// When a rollback is issued, the caller can rollback to this savepoint or roll back the complete transaction.
' /// </summary>
' /// <param name="sSavePointName">Name of the savepoint to store the current transaction under.</param>
' /// <returns>True, if save was succesful, or an Exception exception is thrown</returns>
Public Function SaveTransaction(ByVal sSavePointName As String) As Boolean
Try
If Not m_bIsTransactionPending Then
' // no transaction pending
Throw New Exception("SaveTransaction::No transaction pending.")
End If
If (m_scoDBConnection.State And ConnectionState.Open) = 0 Then
' // no open connection
Throw New Exception("SaveTransaction::Connection is not open.")
End If
' // save the transaction
m_stCurrentTransaction.Save(sSavePointName)
' // Store the savepoint in the list.
m_alSavePoints.Add(sSavePointName)
Return True
Catch ex As Exception
' // bubble exception
Throw ex
End Try
End Function
' /// <summary>
' /// Purpose: Closes the open connection. Depending on bCommitPendingTransactions, a pending
' /// transaction is commited, or aborted.
' /// </summary>
' /// <param name="bCommitPendingTransaction">Flag for what to do when a transaction is still pending. True
' /// will commit the current transaction, False will abort (rollback) the complete current transaction.</param>
' /// <returns>True, if close was succesful, False if connection was already closed, or an Exception exception is thrown when
' /// an error occurs</returns>
Public Function CloseConnection(ByVal bCommitPendingTransaction As Boolean) As Boolean
Try
If (m_scoDBConnection.State And ConnectionState.Open) = 0 Then
' // No open connection
Return False
End If
If m_bIsTransactionPending Then
If bCommitPendingTransaction Then
' // Commit the pending transaction
m_stCurrentTransaction.Commit()
Else
' // Rollback the pending transaction
m_stCurrentTransaction.Rollback()
End If
m_bIsTransactionPending = False
m_stCurrentTransaction.Dispose()
m_stCurrentTransaction = Nothing
m_alSavePoints.Clear()
End If
' // close the connection
m_scoDBConnection.Close()
Return True
Catch ex As Exception
' // bubble exception
Throw ex
End Try
End Function
#Region " Class Property Declarations "
Public ReadOnly Property stCurrentTransaction() As SqlTransaction
Get
Return m_stCurrentTransaction
End Get
End Property
Public ReadOnly Property bIsTransactionPending() As Boolean
Get
Return m_bIsTransactionPending
End Get
End Property
Public ReadOnly Property scoDBConnection() As SqlConnection
Get
Return m_scoDBConnection
End Get
End Property
Public WriteOnly Property sConnectionString() As String
Set(ByVal Value As String)
m_scoDBConnection.ConnectionString = Value
End Set
End Property
#End Region
End Class
End Namespace

View File

@@ -0,0 +1,36 @@
Imports System.ComponentModel
Imports Microsoft.VisualBasic
Public Class DB_Connection
Shared Sub New()
Try
'Edoka
oread = IO.File.OpenText(appPath + "edokaconn.cfg")
sConnectionString_edoka = oread.ReadLine
Globals.sConnectionString_edoka = sConnectionString_edoka
oread.Close()
'Journale
oread = IO.File.OpenText(appPath + "journaleconn.cfg")
sConnectionString_journale = oread.ReadLine
Globals.sConnectionString_journale = sConnectionString_journale
oread.Close()
''tgdata
'oread = IO.File.OpenText(appPath + "tgdataconn.cfg")
'sConnectionString_tgdata = oread.ReadLine
'Globals.sConnectionString_tgdata = sConnectionString_tgdata
'oread.Close()
Globals.conn_edoka.sConnectionString = sConnectionString_edoka
Globals.conn_journale.sConnectionString = sConnectionString_journale
'Globals.conn_tgdata.sConnectionString = sConnectionString_tgdata
m_log.Log("EDKB04: DB-Connection OK", Common.Common.JournalEntryType.Information)
Catch ex As Exception
m_log.Log(ex.Message, Common.Common.JournalEntryType.Error)
End Try
End Sub
End Class

View File

@@ -0,0 +1,16 @@
MQHostname =vb0049d
MQPort =1416
MQChannel =TGKB.D16.EDOKA.CL
MQQueueName =test
SqlTimeOut =500000
CDMUTER =EDKB04
MuterNr =9996
WatchDir =C:\Data\EDKB04\
TimerIntervall =0
Loop =false
Debugmode =true
DebugDir =C:\Data\EDKB04\Archiv\
DefaultBetreuerID =1166755
nb_Errors =10
nb_seconds =10
len_TXADZ =35