Initial commit
This commit is contained in:
20
Archiv/edkb04/Backup/EDKB04.sln
Normal file
20
Archiv/edkb04/Backup/EDKB04.sln
Normal 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
|
||||
BIN
Archiv/edkb04/Backup/EDKB04.suo
Normal file
BIN
Archiv/edkb04/Backup/EDKB04.suo
Normal file
Binary file not shown.
2041
Archiv/edkb04/Backup/EDKB04/DBHandling.vb
Normal file
2041
Archiv/edkb04/Backup/EDKB04/DBHandling.vb
Normal file
File diff suppressed because it is too large
Load Diff
26
Archiv/edkb04/Backup/EDKB04/EDKB04.Designer.vb
generated
Normal file
26
Archiv/edkb04/Backup/EDKB04/EDKB04.Designer.vb
generated
Normal 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
|
||||
123
Archiv/edkb04/Backup/EDKB04/EDKB04.resx
Normal file
123
Archiv/edkb04/Backup/EDKB04/EDKB04.resx
Normal 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>
|
||||
313
Archiv/edkb04/Backup/EDKB04/EDKB04.vb
Normal file
313
Archiv/edkb04/Backup/EDKB04/EDKB04.vb
Normal 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
|
||||
142
Archiv/edkb04/Backup/EDKB04/EDKB04.vbproj
Normal file
142
Archiv/edkb04/Backup/EDKB04/EDKB04.vbproj
Normal 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>
|
||||
17
Archiv/edkb04/Backup/EDKB04/EDKB04.vbproj.user
Normal file
17
Archiv/edkb04/Backup/EDKB04/EDKB04.vbproj.user
Normal 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>
|
||||
34
Archiv/edkb04/Backup/EDKB04/ErrorStopper.vb
Normal file
34
Archiv/edkb04/Backup/EDKB04/ErrorStopper.vb
Normal 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
|
||||
38
Archiv/edkb04/Backup/EDKB04/Globals.vb
Normal file
38
Archiv/edkb04/Backup/EDKB04/Globals.vb
Normal 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
|
||||
13
Archiv/edkb04/Backup/EDKB04/My Project/Application.Designer.vb
generated
Normal file
13
Archiv/edkb04/Backup/EDKB04/My Project/Application.Designer.vb
generated
Normal 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
|
||||
|
||||
10
Archiv/edkb04/Backup/EDKB04/My Project/Application.myapp
Normal file
10
Archiv/edkb04/Backup/EDKB04/My Project/Application.myapp
Normal 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>
|
||||
35
Archiv/edkb04/Backup/EDKB04/My Project/AssemblyInfo.vb
Normal file
35
Archiv/edkb04/Backup/EDKB04/My Project/AssemblyInfo.vb
Normal 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")>
|
||||
62
Archiv/edkb04/Backup/EDKB04/My Project/Resources.Designer.vb
generated
Normal file
62
Archiv/edkb04/Backup/EDKB04/My Project/Resources.Designer.vb
generated
Normal 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
|
||||
117
Archiv/edkb04/Backup/EDKB04/My Project/Resources.resx
Normal file
117
Archiv/edkb04/Backup/EDKB04/My Project/Resources.resx
Normal 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>
|
||||
73
Archiv/edkb04/Backup/EDKB04/My Project/Settings.Designer.vb
generated
Normal file
73
Archiv/edkb04/Backup/EDKB04/My Project/Settings.Designer.vb
generated
Normal 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
|
||||
7
Archiv/edkb04/Backup/EDKB04/My Project/Settings.settings
Normal file
7
Archiv/edkb04/Backup/EDKB04/My Project/Settings.settings
Normal 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>
|
||||
127
Archiv/edkb04/Backup/EDKB04/ProjectInstaller.resx
Normal file
127
Archiv/edkb04/Backup/EDKB04/ProjectInstaller.resx
Normal 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>
|
||||
61
Archiv/edkb04/Backup/EDKB04/ProjectInstaller.vb
Normal file
61
Archiv/edkb04/Backup/EDKB04/ProjectInstaller.vb
Normal 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
|
||||
1008
Archiv/edkb04/Backup/EDKB04/Stammdaten.vb
Normal file
1008
Archiv/edkb04/Backup/EDKB04/Stammdaten.vb
Normal file
File diff suppressed because it is too large
Load Diff
115
Archiv/edkb04/Backup/EDKB04/TodoList.txt
Normal file
115
Archiv/edkb04/Backup/EDKB04/TodoList.txt
Normal 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)
|
||||
|
||||
177
Archiv/edkb04/Backup/EDKB04/XMLHandling.vb
Normal file
177
Archiv/edkb04/Backup/EDKB04/XMLHandling.vb
Normal 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
|
||||
215
Archiv/edkb04/Backup/EDKB04/clsParameter.vb
Normal file
215
Archiv/edkb04/Backup/EDKB04/clsParameter.vb
Normal 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
|
||||
289
Archiv/edkb04/Backup/EDKB04/clsconnectionprovider.vb
Normal file
289
Archiv/edkb04/Backup/EDKB04/clsconnectionprovider.vb
Normal 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
|
||||
36
Archiv/edkb04/Backup/EDKB04/db_connection.vb
Normal file
36
Archiv/edkb04/Backup/EDKB04/db_connection.vb
Normal 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
|
||||
|
||||
16
Archiv/edkb04/Backup/EDKB04/parameter.cfg
Normal file
16
Archiv/edkb04/Backup/EDKB04/parameter.cfg
Normal 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
|
||||
Reference in New Issue
Block a user