This commit is contained in:
Jonathan Jenne 2017-05-31 12:17:35 +02:00
commit 688f53a74a
387 changed files with 609061 additions and 0 deletions

63
.gitattributes vendored Normal file
View File

@ -0,0 +1,63 @@
###############################################################################
# Set default behavior to automatically normalize line endings.
###############################################################################
* text=auto
###############################################################################
# Set default behavior for command prompt diff.
#
# This is need for earlier builds of msysgit that does not have it on by
# default for csharp files.
# Note: This is only used by command line
###############################################################################
#*.cs diff=csharp
###############################################################################
# Set the merge driver for project and solution files
#
# Merging from the command prompt will add diff markers to the files if there
# are conflicts (Merging from VS is not affected by the settings below, in VS
# the diff markers are never inserted). Diff markers may cause the following
# file extensions to fail to load in VS. An alternative would be to treat
# these files as binary and thus will always conflict and require user
# intervention with every merge. To do so, just uncomment the entries below
###############################################################################
#*.sln merge=binary
#*.csproj merge=binary
#*.vbproj merge=binary
#*.vcxproj merge=binary
#*.vcproj merge=binary
#*.dbproj merge=binary
#*.fsproj merge=binary
#*.lsproj merge=binary
#*.wixproj merge=binary
#*.modelproj merge=binary
#*.sqlproj merge=binary
#*.wwaproj merge=binary
###############################################################################
# behavior for image files
#
# image files are treated as binary by default.
###############################################################################
#*.jpg binary
#*.png binary
#*.gif binary
###############################################################################
# diff behavior for common document formats
#
# Convert binary document formats to text before diffing them. This feature
# is only available from the command line. Turn it on by uncommenting the
# entries below.
###############################################################################
#*.doc diff=astextplain
#*.DOC diff=astextplain
#*.docx diff=astextplain
#*.DOCX diff=astextplain
#*.dot diff=astextplain
#*.DOT diff=astextplain
#*.pdf diff=astextplain
#*.PDF diff=astextplain
#*.rtf diff=astextplain
#*.RTF diff=astextplain

156
.gitignore vendored Normal file
View File

@ -0,0 +1,156 @@
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
# User-specific files
*.suo
*.user
*.sln.docstates
# Build results
[Dd]ebug/
[Rr]elease/
x64/
build/
[Bb]in/
[Oo]bj/
# Enable "build/" folder in the NuGet Packages folder since NuGet packages use it for MSBuild targets
!packages/*/build/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
*_i.c
*_p.c
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.log
*.scc
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opensdf
*.sdf
*.cachefile
# Visual Studio profiler
*.psess
*.vsp
*.vspx
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# NCrunch
*.ncrunch*
.*crunch*.local.xml
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.Publish.xml
# NuGet Packages Directory
## TODO: If you have NuGet Package Restore enabled, uncomment the next line
#packages/
# Windows Azure Build Output
csx
*.build.csdef
# Windows Store app package directory
AppPackages/
# Others
sql/
*.Cache
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.[Pp]ublish.xml
*.pfx
*.publishsettings
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file to a newer
# Visual Studio version. Backup files are not needed, because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
# SQL Server files
App_Data/*.mdf
App_Data/*.ldf
#LightSwitch generated files
GeneratedArtifacts/
_Pvt_Extensions/
ModelManifest.xml
# =========================
# Windows detritus
# =========================
# Windows image file caches
Thumbs.db
ehthumbs.db
# Folder config file
Desktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Mac desktop service store files
.DS_Store

21
SetupWiX/Config.wxi Normal file
View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<Include>
<!-- Der Name der Haupt-EXE -->
<?define ProgramName="ToolCollection"?>
<!-- Der Volle Name des Programms -->
<?define ProductName="ToolCollection"?>
<!-- Der Hersteller des Programms -->
<?define Manufacturer="Digital Data"?>
<!-- Kurze Beschreibung des Programms (optional) -->
<?define Description="Beschreibung des Programms"?>
<!-- Kurzer Kommentar zum Programm (optional) -->
<?define Comments="Kommentar wie Copyright-Hinweis"?>
<!--
UPGRADE CODE
Sorgt dafür, dass Programm-Updates mit dem Installer
die alte Version ersetzen. Darf sich nicht mehr ändern,
wenn einmal festgelegt.
-->
<?define UpgradeCode="f4df58c1-a55f-436c-b963-015ddcc34970"?>
</Include>

141
SetupWiX/Product.wxs Normal file
View File

@ -0,0 +1,141 @@
<?include Config.wxi?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<Product Id="*" Name="$(var.ProductName)" Language="1031" Codepage="1252" Version="$(var.ProductVersion)" Manufacturer="$(var.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
<Package
Id="*"
Keywords="Installer"
Description="$(var.Description)"
Comments="$(var.Comments)"
Manufacturer="$(var.Manufacturer)"
InstallerVersion="100"
Languages="1031"
Compressed="yes"
SummaryCodepage="1252"
InstallScope="perMachine"
/>
<Media Id='1' Cabinet='$(var.ProgramName).cab' EmbedCab='yes' DiskPrompt='$(var.ProgramName)' />
<Property Id='DiskPrompt' Value="$(var.ProgramName) Install" />
<MajorUpgrade
AllowDowngrades="no"
AllowSameVersionUpgrades="no"
DowngradeErrorMessage="Eine neuere Version von [ProductName] ist bereits installiert. Das Setup wird beendet."
/>
<Property Id="PREVIOUSVERSIONSINSTALLED" Secure="yes" />
<Upgrade Id="$(var.UpgradeCode)">
<UpgradeVersion
Minimum="1.0.0.0" Maximum="99.0.0.0"
Property="PREVIOUSVERSIONSINSTALLED"
IncludeMinimum="yes" IncludeMaximum="no" />
</Upgrade>
<!-- Legt das Icon fest -->
<Icon Id="AppIcon.exe" SourceFile="$(var.ProgramName).exe" />
<!-- Zeige Icon in Systemsteuerung > Programme entfernen -->
<Property Id="ARPPRODUCTICON" Value="AppIcon" />
<Property Id="APPLICATIONFOLDER">
<RegistrySearch Key="Software\[Manufacturer]\[ProductName]" Root="HKCU" Type="raw" Id="APPLICATIONFOLDER_REGSEARCH" Name="Path" />
</Property>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="DD" Name="$(var.Manufacturer)">
<Directory Id="INSTALLDIR" Name="$(var.ProductName)"/>
</Directory>
</Directory>
</Directory>
<DirectoryRef Id="INSTALLDIR">
<Component Id="MainApplicationExe" Guid="7d3ebddc-a123-4ca7-b300-453584b67122">
<File Id="MainApplicationExe" Name="$(var.ProgramName).exe" KeyPath="yes" Checksum="yes">
<Shortcut Id="DesktopShortcut" Directory="DesktopFolder" Name="$(var.ProductName)" WorkingDirectory="INSTALLDIR" Icon="AppIcon.exe" IconIndex="0" Advertise="yes" />
<Shortcut Id="StartMenuShortcut" Directory="ProgramMenuDir" Name="$(var.ProductName)" WorkingDirectory="INSTALLDIR" Icon="AppIcon.exe" IconIndex="0" Advertise="yes" />
</File>
</Component>
<Component Id="WindreamLibs" Guid="3666d0d9-6406-4f95-8610-4ed36403378f">
<File Id="WINDREAMLib" Name="Interop.WINDREAMLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WINDREAMLib.dll" KeyPath="yes" />
<File Id="WMOBRWSLib" Name="Interop.WMOBRWSLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOBRWSLib.dll" KeyPath="no" />
<File Id="WMOSRCHLib" Name="Interop.WMOSRCHLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOSRCHLib.dll" KeyPath="no" />
<File Id="WMOTOOLLib" Name="Interop.WMOTOOLLib.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.WMOTOOLLib.dll" KeyPath="no" />
<File Id="Scripting" Name="Interop.Scripting.dll" Source="P:\Visual Studio Projekte\Bibliotheken\windream\Interop.Scripting.dll" KeyPath="no" />
</Component>
<Component Id="SQLiteLibs" Guid="bcd5db55-0e93-453a-9792-493a624a73b4">
<File Id="System.Data.SQLite" Name="System.Data.SQLite.dll" Source="System.Data.SQLite.dll" KeyPath="yes" />
<File Id="System.Data.SQLite.EF6" Name="System.Data.SQLite.EF6.dll" Source="System.Data.SQLite.EF6.dll" KeyPath="no" />
<File Id="System.Data.SQLite.Linq" Name="System.Data.SQLite.Linq.dll" Source="System.Data.SQLite.Linq.dll" KeyPath="no" />
<File Id="EntityFramework.SqlServer" Name="EntityFramework.SqlServer.dll" Source="EntityFramework.SqlServer.dll" KeyPath="no" />
<File Id="EntityFramework" Name="EntityFramework.dll" Source="EntityFramework.dll" KeyPath="no" />
</Component>
<Component Id="OracleLibs" Guid="e309863a-dfd0-48e1-b342-4d3e64b413ee">
<File Id="Oracle.ManagedDataAccess" Name="Oracle.ManagedDataAccess.dll" Source="P:\Visual Studio Projekte\Bibliotheken\Oracle.ManagedDataAccess.dll" KeyPath="yes" />
</Component>
<Component Id="RegistryKeys" Guid="98007b10-5ad4-4755-80fa-387920e7005a">
<RegistryKey Root="HKCU" Key="Software">
<RegistryKey Key="[Manufacturer]">
<RegistryKey Key="[ProductName]" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes" Id="REGKEYINSTALLDIR">
<RegistryValue Type="string" Value="[INSTALLDIR]" Name="Path" />
</RegistryKey>
</RegistryKey>
</RegistryKey>
<util:RemoveFolderEx Id="RemoveApplicationFolder" On="uninstall" Property="APPLICATIONFOLDER" />
</Component>
<!-- Für weitere Dateien hier Component Elemente anlegen!! -->
<!--
<Component Id="FirmaXYLib" Guid="PUT-GUID-HERE">
<File Id="FirmaXYLib" Name="FirmaXYLib.dll" KeyPath="yes" Checksum="yes"/>
</Component>
-->
<Directory Id="ProgramMenuFolder" Name="Programs">
<Directory Id="ProgramMenuDir" Name="$(var.ProductName)">
<Component Id="ProgramMenuDir" Guid="4ac7ef72-2b92-4249-bd86-1e793f72507c">
<RemoveFolder Id="ProgramMenuDir" On="uninstall" />
<RegistryValue Root="HKMU" Key="Software\[Manufacturer]\[ProductName]" Type="string" Value="" KeyPath="yes" />
</Component>
</Directory>
</Directory>
<Directory Id="DesktopFolder" Name="Desktop" />
</DirectoryRef>
<Feature Id="MainApplication" Title="Main Application" Level="1">
<ComponentRef Id="MainApplicationExe" />
<ComponentRef Id="WindreamLibs" />
<ComponentRef Id="SQLiteLibs" />
<ComponentRef Id="OracleLibs" />
<ComponentRef Id="ProgramMenuDir" />
<ComponentRef Id="RegistryKeys" />
</Feature>
<!-- Legt das Standard-Installationsverzeichnis fest-->
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
<UI>
<UIRef Id="WixUI_InstallDir" />
<UIRef Id="WixUI_ErrorProgressText" />
<Publish Dialog="WelcomeDlg"
Control="Next"
Event="NewDialog"
Value="InstallDirDlg"
Order="2">1</Publish>
<Publish Dialog="InstallDirDlg"
Control="Back"
Event="NewDialog"
Value="WelcomeDlg"
Order="2">1</Publish>
</UI>
</Product>
</Wix>

72
SetupWiX/SetupWiX.wixproj Normal file
View File

@ -0,0 +1,72 @@
<Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>3.10</ProductVersion>
<ProjectGuid>0b0441d8-0f3c-4771-81a6-3dfa3f3beeec</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
<OutputName>SetupWiX</OutputName>
<OutputType>Package</OutputType>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<OutputPath>bin\$(Configuration)\</OutputPath>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
<DefineConstants>Debug</DefineConstants>
<Cultures>de-DE</Cultures>
<LinkerAdditionalOptions>
-b "$(SolutionDir)ToolCollection\bin\x64\$(Configuration)"
</LinkerAdditionalOptions>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<OutputPath>bin\$(Configuration)\</OutputPath>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
</PropertyGroup>
<ItemGroup>
<Compile Include="Product.wxs" />
</ItemGroup>
<ItemGroup>
<WixExtension Include="WixUtilExtension">
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
<Name>WixUtilExtension</Name>
</WixExtension>
<WixExtension Include="WixUIExtension">
<HintPath>$(WixExtDir)\WixUIExtension.dll</HintPath>
<Name>WixUIExtension</Name>
</WixExtension>
</ItemGroup>
<ItemGroup>
<Content Include="Config.wxi" />
</ItemGroup>
<Import Project="$(WixTargetsPath)" Condition=" Exists('$(WixTargetsPath)') " />
<Target Name="EnsureWixToolsetInstalled" Condition=" !Exists('$(WixTargetsPath)') ">
<Error Text="The WiX Toolset v3 build tools must be installed to build this project. To download the WiX Toolset, see http://wixtoolset.org/releases/" />
</Target>
<Target Name="BeforeBuild">
<!-- Get the programs assembly version from the .exe file -->
<GetAssemblyIdentity AssemblyFiles="..\ToolCollection\bin\x64\$(Configuration)\ToolCollection.exe">
<Output TaskParameter="Assemblies" ItemName="AsmInfo" />
</GetAssemblyIdentity>
<!-- Store the assembly version number in ProductVersion preprocessor variable -->
<CreateProperty Value="$(DefineConstants);ProductVersion=%(AsmInfo.Version)">
<Output TaskParameter="Value" PropertyName="DefineConstants" />
</CreateProperty>
<!-- Name the .msi file after the solution platform and assembly version e.g TestService-x86-1.4.0.0.msi -->
<CreateProperty Value="$(SolutionName)-$(Platform)-%(AsmInfo.Version)">
<Output TaskParameter="Value" PropertyName="TargetName" />
</CreateProperty>
<!-- Name the .wixpdb file after the solution platform and assembly version e.g TestService-x86-1.4.0.0.msi -->
<CreateProperty Value="$(TargetName)$(TargetPdbExt)">
<Output TaskParameter="Value" PropertyName="TargetPdbName" />
</CreateProperty>
</Target>
<!--
To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Wix.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

36
ToolCollection.sln Normal file
View File

@ -0,0 +1,36 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26228.9
MinimumVisualStudioVersion = 10.0.40219.1
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ToolCollection", "ToolCollection\ToolCollection.vbproj", "{AC6B3398-DE0E-4580-9422-6E4D97FA4494}"
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "SetupWiX", "SetupWiX\SetupWiX.wixproj", "{0B0441D8-0F3C-4771-81A6-3DFA3F3BEEEC}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{AC6B3398-DE0E-4580-9422-6E4D97FA4494}.Debug|x64.ActiveCfg = Debug|x64
{AC6B3398-DE0E-4580-9422-6E4D97FA4494}.Debug|x64.Build.0 = Debug|x64
{AC6B3398-DE0E-4580-9422-6E4D97FA4494}.Debug|x86.ActiveCfg = Debug|x86
{AC6B3398-DE0E-4580-9422-6E4D97FA4494}.Debug|x86.Build.0 = Debug|x86
{AC6B3398-DE0E-4580-9422-6E4D97FA4494}.Release|x64.ActiveCfg = Release|x64
{AC6B3398-DE0E-4580-9422-6E4D97FA4494}.Release|x64.Build.0 = Release|x64
{AC6B3398-DE0E-4580-9422-6E4D97FA4494}.Release|x86.ActiveCfg = Release|x86
{AC6B3398-DE0E-4580-9422-6E4D97FA4494}.Release|x86.Build.0 = Release|x86
{0B0441D8-0F3C-4771-81A6-3DFA3F3BEEEC}.Debug|x64.ActiveCfg = Debug|x86
{0B0441D8-0F3C-4771-81A6-3DFA3F3BEEEC}.Debug|x86.ActiveCfg = Debug|x86
{0B0441D8-0F3C-4771-81A6-3DFA3F3BEEEC}.Debug|x86.Build.0 = Debug|x86
{0B0441D8-0F3C-4771-81A6-3DFA3F3BEEEC}.Release|x64.ActiveCfg = Release|x86
{0B0441D8-0F3C-4771-81A6-3DFA3F3BEEEC}.Release|x86.ActiveCfg = Release|x86
{0B0441D8-0F3C-4771-81A6-3DFA3F3BEEEC}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -0,0 +1,3 @@
{
"CurrentProjectSetting": null
}

View File

@ -0,0 +1,6 @@
{
"ExpandedNodes": [
""
],
"PreviewInSolutionExplorer": false
}

Binary file not shown.

View File

@ -0,0 +1,152 @@
accountExpires
adminDescription
adminDisplayName
ADsPath
altRecipient
altRecipientBL
authOrig
authOrigBL
autoReplyMessage
badPasswordTime
badPwdCount
c (Country)
canonicalName
Class
co (Country)
comment
company
countryCode
createTimeStamp
deletedItemFlags
delivContLength
deliverAndRedirect
department
departmentNumber
description
directReports
displayName
displayNamePrintable
distinguishedName
division
dLMemRejectPerms
dLMemRejectPermsBL
dLMemSubmitPerms
dLMemSubmitPermsBL
employeeID
employeeNumber
employeeType
extensionData
extensionAttribute1 - 15
facsimileTelephoneNumber
garbageCollPeriod
givenName
homeDirectory
homeDrive
homeMDB
homeMTA
homePhone
info
initials
ipPhone
isDeleted
isRecycled
l (Location)
lastKnownParent
lastLogoff
lastLogon
lastLogonTimestamp
legacyExchangeDN
lockoutTime
logonCount
logonHours
mail
mailNickname
manager
mDBOverHardQuotaLimit
mDBOverQuotaLimit
mDBStorageQuota
mDBUseDefaults
memberOf
mobile
modifyTimeStamp
msCOM-UserPartitionSetLink
msDS-User-Account-
Control-Computed
msDS-UserPassword
ExpiryTimeComputed
msExchHideFromAddressLists
msExchHomeServerName
msExchMailboxSecurityDescriptor
msExchMasterAccountSID
msExchOmaAdminWirelessEnable
msExchPoliciesExcluded
msExchRecipLimit
msExchRequireAuthToSendTo
msExchUserAccountControl
msNPAllowDialin
msNPCallingStationID
msNPSavedCallingStationID
msRADIUSCallbackNumber
msRADIUSFramedIPAddress
msRADIUSFramedRoute
msRADIUSServiceType
msRASSavedCallbackNumber
msRASSavedFramedIPAddress
msRASSavedFramedRoute
msSFU30GidNumber
msSFU30HomeDirectory
msSFU30LoginShell
msSFU30Name
msSFU30NisDomain
msSFU30Password
msSFU30UidNumber
name
Name (ADSI Property)
nTSecurityDescriptor
objectCategory
objectClass
objectGUID
objectSid
otherFacsimileTelephoneNumber
otherHomePhone
otherIpPhone
otherMobile
otherPager
otherTelephone
pager
Parent
physicalDeliveryOfficeName
postalCode
postOfficeBox
primaryGroupID
profilePath
protocolSettings
proxyAddresses
publicDelegates
publicDelegatesBL
pwdLastSet
sAMAccountName
scriptPath
seeAlso
securityProtocol
sIDHistory
sn (Surname)
st (State)
streetAddress
submissionContLength
telephoneNumber
textEncodedORAddress
title
unauthOrig
unauthOrigBL
url
userAccountControl
userCertificate
userParameters
userPrincipalName
userWorkstations
uSNChanged
uSNCreated
whenChanged
whenCreated
wWWHomePage

View File

@ -0,0 +1 @@


View File

@ -0,0 +1,176 @@
Imports System.DirectoryServices
Public Class ClassActiveDirectory
Public Shared licenseManager As ClassLicenseManager = Nothing
Public Shared ErgebnisAD As String()
Public Shared Function Test_Connect(SEARCH_Filter As String, Property2Load As String, Domain As String, User As String, PW As String)
Try
Dim objDirectoryEntry As DirectoryEntry = New DirectoryEntry(Domain)
If PW <> String.Empty And User <> String.Empty Then
objDirectoryEntry.Username = User
objDirectoryEntry.Password = PW
End If
'Always use a secure connection
objDirectoryEntry.AuthenticationType = AuthenticationTypes.Secure
Dim searcher As New DirectorySearcher() 'rootEntry
searcher.SearchRoot = objDirectoryEntry 'New DirectoryEntry(Domain)
' get the LDAP filter string based on selections on the form
searcher.PropertyNamesOnly = True
searcher.PropertiesToLoad.Add(Property2Load)
'would also work and saves you some code
searcher.Filter = SEARCH_Filter
Dim results As SearchResultCollection
results = searcher.FindAll()
Dim result As SearchResult
Dim i As Integer = 0
Dim AttributValues As New ArrayList
For Each result In results
If result.GetDirectoryEntry.Properties.Item(Property2Load).Value Is Nothing = False Then
AttributValues.Add(result.GetDirectoryEntry.Properties.Item(Property2Load).Value)
i += 1
'Einfahc nur um nicht alles zu durchlaufen
If i = 50 Then
Exit For
End If
'Else
' MsgBox("nothing")
End If
Next
Return AttributValues
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler in Test_Connect LDAP:")
End Try
End Function
Public Shared Function GetAD_Attribut(SEARCH_Filter As String, Property2Load As String, Domain As String, User As String, PW As String, Optional test As Boolean = False)
Try
If SEARCH_Filter.Contains("SUBSTR[") Then
Dim temp_Filter As String
Dim temp_area As String
' Regulären Ausdruck zum Auslesen der windream-Indexe definieren
Dim preg As String = "(?:SUBSTR\[)([\s\S]*),(\d{1,2},\d{1,2})(?:\])"
' einen Regulären Ausdruck laden
Dim regulärerAusdruck As System.Text.RegularExpressions.Regex = New System.Text.RegularExpressions.Regex(preg)
' die Vorkommen im SQL-String auslesen
Dim elemente As System.Text.RegularExpressions.MatchCollection = regulärerAusdruck.Matches(SEARCH_Filter)
' alle Vorkommen der windream-Indexe im SQL-String durchlaufen
For Each element As System.Text.RegularExpressions.Match In elemente
For g As Integer = 1 To element.Groups.Count - 1
If g = 1 Then
temp_Filter = element.Groups(g).Value
If temp_Filter.Contains("*") Then
temp_Filter = temp_Filter.Replace("*", "")
End If
If temp_Filter.Contains("%") Then
temp_Filter = temp_Filter.Replace("%", "")
End If
ElseIf g = 2 Then
temp_area = element.Groups(g).Value
'Begin/End herausfinden
Dim split() = temp_area.Split(",")
If split.Length = 2 Then
Dim newsubstr As String = temp_Filter.Substring(split(0), split(1))
Dim origfilter = SEARCH_Filter.Replace(temp_Filter, newsubstr)
origfilter = origfilter.Replace("SUBSTR[", "")
origfilter = origfilter.Replace("," & temp_area & "]", "")
SEARCH_Filter = origfilter
Else
If test = True Then
MsgBox("Die Length-Variablen für den Substring konnten nicht definiert werden", MsgBoxStyle.Exclamation)
Else
ClassLoggerNI.Add("AD GetAD_Attribut: Die Length-Variablen für den Substring konnten nicht definiert werden", True)
Exit Function
End If
End If
End If
Next
Next
End If
licenseManager = New ClassLicenseManager("#DigitalData9731258!#")
Dim PWDecode As String = licenseManager.DecodeLicenseKey(PW)
Dim objDirectoryEntry As DirectoryEntry = New DirectoryEntry(Domain)
If PW <> String.Empty And User <> String.Empty Then
objDirectoryEntry.Username = User
objDirectoryEntry.Password = PWDecode
End If
'Always use a secure connection
objDirectoryEntry.AuthenticationType = AuthenticationTypes.Secure
Dim searcher As New DirectorySearcher() 'rootEntry
searcher.SearchRoot = objDirectoryEntry 'New DirectoryEntry(Domain)
' get the LDAP filter string based on selections on the form
searcher.PropertyNamesOnly = True
searcher.PropertiesToLoad.Add(Property2Load)
'would also work and saves you some code
searcher.Filter = SEARCH_Filter
Dim results As SearchResultCollection
results = searcher.FindAll()
Dim result As SearchResult
Dim i As Integer = 0
Dim AttributValue As String
For Each result In results
ReDim Preserve ErgebnisAD(i)
AttributValue = result.GetDirectoryEntry.Properties.Item(Property2Load).Value
ErgebnisAD(i) = AttributValue
i += 1
Next
If i = 1 And AttributValue <> Nothing Then
Return AttributValue
Else
If i > 1 And AttributValue <> Nothing Then
Return ">1"
Else
If i = 1 And AttributValue = Nothing Then
Return ""
Else
Return "99"
End If
End If
End If
Catch ex As Exception
Return ex.Message
End Try
End Function
Public Shared Function LDAP_Return_Regex(stringWert As String)
' Regulären Ausdruck zum Auslesen der windream-Indexe definieren
Dim preg As String = "\[%{1}[a-zA-Z0-9\!\$\&\/\(\)\=\?\,\.\-\;\:_öÖüÜäÄ\#\'\+\*\~\{\}\@\€\<\>\ ]+]{1}"
' SQL-String für aktuelle Verknüpfung laden
Dim Zeichenfolge As String = stringWert
'Erstzen des Dateinamens - für CURSOR NachindexierungPr
' einen Regulären Ausdruck laden
Dim regulärerAusdruck As System.Text.RegularExpressions.Regex = New System.Text.RegularExpressions.Regex(preg)
' die Vorkommen im SQL-String auslesen
Dim elemente As System.Text.RegularExpressions.MatchCollection = regulärerAusdruck.Matches(Zeichenfolge)
' alle Vorkommen der windream-Indexe im SQL-String durchlaufen
Dim i As Integer = 0
Dim result As String
For Each element As System.Text.RegularExpressions.Match In elemente
result = element.ToString
i += 1
Next
If i = 1 Then
Return result
Else
Return ">1"
End If
End Function
' form a filter string for the search in LDAP format
Public Shared Function FormFilter(objectClass As String, filter As String)
Dim result As String
result = String.Format("(&(objectClass={0})(sAMAccountName={1}))", objectClass, filter)
Return result
End Function
End Class

25
ToolCollection/ClassDI.vb Normal file
View File

@ -0,0 +1,25 @@
Imports System.Windows.Forms
Imports System.Runtime.CompilerServices
Public Class ClassDI
Protected _windream As ClassWindream_allgemein
' ++++++++++++++++++++++++++++++++++++++++++++++ Methoden ++++++++++++++++++++++++++++++++++++++++++++++
Sub New()
Try
' 3a. Windream instanziieren
Me._windream = New ClassWindream_allgemein()
' 3b. Windream initialisieren (Connection, Session, ... aufbauen)
Me._windream.Init()
Catch ex As Exception
MsgBox("Unbekannter Fehler im Konstuktor des Moduls 'XYZ'." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Unbekannter Fehler")
End Try
End Sub
End Class

View File

@ -0,0 +1,75 @@
Public Class ClassDIHelpers
''' <summary>
''' Wandelt eine Datumsmaske im Benutzerformat in eine gültige Datumsmaske um.
''' </summary>
''' <param name="formatUrsprung">Datumsmaske im Benutzerformat</param>
''' <returns>Liefert Datumsmaske im gültigen DateTime-Format</returns>
''' <remarks></remarks>
Public Shared Function GetDatumFormat(ByVal formatUrsprung As String) As String
Try
' wenn es sich bei dem Zielindex um einen Datumsindex handelt
If Not formatUrsprung = "" Then
Dim datumFormat As String = formatUrsprung
If datumFormat IsNot Nothing Then
Dim temp As String = ""
For Each zeichen As Char In datumFormat
If zeichen = "J" Or zeichen = "M" Or zeichen = "T" Or zeichen = "s" Or zeichen = "m" Or zeichen = "S" Then
temp &= zeichen
Else
temp &= "'" & zeichen & "'"
End If
Next
datumFormat = temp
End If
datumFormat = datumFormat.Replace("J", "y") ' Jahr
datumFormat = datumFormat.Replace("M", "M") ' Monat
datumFormat = datumFormat.Replace("T", "d") ' Tag
datumFormat = datumFormat.Replace("s", "H") ' Stunde
datumFormat = datumFormat.Replace("m", "m") ' Minute
datumFormat = datumFormat.Replace("S", "s") ' Sekunde
Return datumFormat
Else
Return Nothing
End If
Catch ex As Exception
Return Nothing
End Try
End Function
''' <summary>
''' Liefert an Hand einer Datumsmaske (also z.B. yyyy_MM_dd) ein Datum aus einem String.
''' </summary>
''' <param name="datumText">der zu konvertierende Text</param>
''' <param name="maske">eine Maske an Hand der datumText ausgewertet werden soll</param>
''' <returns>liefert ein DateTime bei Erfolg und Nothing, wenn ein Fehler auftrat</returns>
''' <remarks></remarks>
Public Shared Function GetDatumAusString(ByVal datumText As String, ByVal maske As String) As DateTime
Try
Dim datum = Nothing
DateTime.TryParseExact(datumText, maske, Nothing, Globalization.DateTimeStyles.None, datum)
Return datum
Catch ex As Exception
Return Nothing
End Try
End Function
Public Shared Function Return_Oracle_CS(host As String, port As String, servicename As String, user As String, pw As String)
Return String.Format("Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST={0})" & _
"(PORT={1}))(CONNECT_DATA=(SERVICE_NAME={2})));User Id={3};Password={4};", _
host,
port,
servicename,
user,
pw)
End Function
End Class

View File

@ -0,0 +1,23 @@
Public Class ClassdiKonfiguration
Private _profiles As ClassDIProfile
Sub New()
End Sub
' ================================================================
' Liest alle Profile aus der XML-Datei aus
Private Sub LoadProfiles()
ClassDIProfile.LoadFromXmlFile()
End Sub
Public Property Profiles() As ClassDIProfile
Get
Return Me._profiles
End Get
Set(ByVal value As ClassDIProfile)
Me._profiles = value
End Set
End Property
End Class

View File

@ -0,0 +1,850 @@
Public Class ClassDIProfil
Public Shared _windream As New ClassWindream_allgemein
#Region "***** Variablen *****"
Private _originalProfilname As String
Private _originalaktiv As Boolean
Private _originalVerzoegerung As Integer
Private _originalQuellordner As String
Private _originalsubdirectories As Boolean
Private _originalZielordner As String
Private _originalBackup As Boolean
Private _originalBackupordner As String
Private _originalOverwrite As Boolean
Private _originalDatei_loeschen As Boolean
Private _originalDate_UV As String
Private _originalVerzeichnis_loeschen As Boolean
Private _originalUVloeschen As Boolean
Private _originalIntervall As Integer
Private _originallastRun As String
Private _originallink2Navision As Boolean
Private _originallink2Navision_Dokart As String
Private _originallink2Navision_Index As String
Private _profilname As String
Private _aktiv As Boolean
Private _Verzoegerung As Integer
Private _dokumenttyp As WINDREAMLib.WMObject
Private _dokumenttypString As String
Private _quellordner As String
Private _subdirectories As Boolean
Private _zielordner As String
Private _backup As Boolean
Private _backupordner As String
Private _overwrite As Boolean
Private _datei_loeschen As Boolean
Private _verzeichnis_loeschen As Boolean
Private _UVloeschen As Boolean
Private _Intervall As Integer
Private _lastRun As String
Private _link2Navision As Boolean
Private _link2Navision_Dokart As String
Private _link2Navision_Index As String
Private _Date_UV As String
Private _regeln As ClassDIRegeln
Private _saved As Boolean = True
#End Region
#Region "***** Methoden *****"
''' <summary>
''' Konstruktor zum Anlegen oder Laden eines Profils
''' </summary>
''' <param name="profilname">Profilname</param>
''' <param name="dokumenttyp"></param>
''' <param name="quellordner"></param>
''' <param name="zielordner"></param>
''' <param name="backup"></param>
''' <param name="backupordner"></param>
''' <param name="overwrite"></param>
''' <param name="datei_loeschen"></param>
''' <param name="verzeichnis_loeschen"></param>
''' <param name="dokumenttyp_string"></param>
''' <remarks></remarks>
Sub New(ByVal profilname As String, ByVal aktiv As Boolean, ByVal verzoegerung As Integer, ByVal dokumenttyp As WINDREAMLib.WMObject, ByVal quellordner As String, ByVal subdirectories As Boolean, ByVal zielordner As String, _
ByVal backup As Boolean, ByVal backupordner As String, ByVal overwrite As Boolean, ByVal datei_loeschen As Boolean, ByVal Date_UV As String, _
ByVal verzeichnis_loeschen As Boolean, ByVal intervall As Integer, ByVal lastRun As String, ByVal link2Navision As Boolean, ByVal link2Navision_Dokart As String, ByVal link2Navision_Index As String, ByVal UVloeschen As Boolean, Optional ByVal dokumenttyp_string As String = "")
Me._dokumenttypString = dokumenttyp_string
Me.Dokumenttyp = dokumenttyp
Me._dokumenttyp = dokumenttyp
Me._originalProfilname = profilname
Me._originalaktiv = aktiv
Me._originalVerzoegerung = verzoegerung
Me._originalQuellordner = quellordner
Me._originalsubdirectories = subdirectories
Me._originalZielordner = zielordner
Me._originalBackup = backup
Me._originalBackupordner = backupordner
Me._originalOverwrite = overwrite
Me._originalDatei_loeschen = datei_loeschen
Me._originalDate_UV = Date_UV
Me._originalVerzeichnis_loeschen = verzeichnis_loeschen
Me._originalUVloeschen = UVloeschen
Me._originalIntervall = intervall
Me._originallastRun = lastRun
Me._originallink2Navision = link2Navision
Me._originallink2Navision_Dokart = link2Navision_Dokart
Me._originallink2Navision_Index = link2Navision_Index
Me._profilname = profilname
Me._aktiv = aktiv
Me._Verzoegerung = verzoegerung
Me._dokumenttyp = dokumenttyp
Me._quellordner = quellordner
Me._subdirectories = subdirectories
Me._zielordner = zielordner
Me._backup = backup
Me._backupordner = backupordner
Me._overwrite = overwrite
Me._datei_loeschen = datei_loeschen
Me._Date_UV = Date_UV
Me._verzeichnis_loeschen = verzeichnis_loeschen
Me._UVloeschen = UVloeschen
Me._Intervall = intervall
Me._lastRun = lastRun
Me._link2Navision = link2Navision
Me._link2Navision_Dokart = link2Navision_Dokart
Me._link2Navision_Index = link2Navision_Index
Me._saved = True
Me._regeln = New ClassDIRegeln(profilname)
End Sub
''' <summary>
''' Konstruktor ohne Tätigkeit
''' </summary>
''' <remarks>wenn im Konstruktor kein Parameter übergeben wurde soll auch nichts gemacht werden</remarks>
Sub New()
End Sub
Public Sub getQuellordner()
End Sub
''' <summary>
''' Setzt das Profil auf geändert.
''' </summary>
''' <remarks></remarks>
Public Sub setChanged()
' Profil auf geändert setzen
Me._saved = False
End Sub
''' <summary>
''' Setzt das Profil auf gespeichert.
''' </summary>
''' <remarks></remarks>
Public Sub setSaved()
' Profil auf gespeichert setzen
Me._saved = True
End Sub
''' <summary>
''' Setzt im aktuellen Profil alle Einstellungen auf die Originalwerte zurück.
''' </summary>
''' <remarks></remarks>
Public Sub SetBackToOriginal()
Me._profilname = Me._originalProfilname
Me._aktiv = _originalaktiv
Me._Verzoegerung = _originalVerzoegerung
Me._quellordner = Me._originalQuellordner
Me._subdirectories = Me._originalsubdirectories
Me._zielordner = Me._originalZielordner
Me._backup = Me._originalBackup
Me._backupordner = Me._originalBackupordner
Me._overwrite = Me._originalOverwrite
Me._datei_loeschen = Me._originalDatei_loeschen
Me._Date_UV = Me._originalDate_UV
Me._verzeichnis_loeschen = Me._originalVerzeichnis_loeschen
Me._Intervall = Me._originalIntervall
Me._link2Navision_Dokart = _originallink2Navision_Dokart
Me._link2Navision_Index = _originallink2Navision_Index
Me._UVloeschen = _originalUVloeschen
End Sub
''' <summary>
''' Speichert das Profil
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
Public Function Save(ByVal msg As Boolean)
Try
' wenn das Profil nicht gespeichert ist
If Not Me.IsSaved Then
' wenn ein Profilname für dieses Profil gesetzt ist
If Me._profilname IsNot Nothing And Me._originalProfilname IsNot Nothing Then
' XML-Datei initialisieren
Dim xml As New Xml.XmlDocument()
' Profil initialisieren
Dim xmlProfil As Xml.XmlElement
' XML-Datei öffnen und laden
xml.Load(My.Settings.vDIConfigDatei)
' den XML-Knoten des Profils laden
xmlProfil = xml.SelectSingleNode("//Settings/Profile/Profil[@profilname='" & Me._originalProfilname & "']")
' wenn der Knoten NICHT gefunden wurde -> Vorgang abbrechen
If xmlProfil Is Nothing Then Return False
'' alle ProfilLinks durchlaufen und ggf. den Profilnamen an den neuen Namen anpassen
'Dim xmlProfile As Xml.XmlNodeList = xml.SelectSingleNode("//Settings/Profile").ChildNodes
'For Each profil As Xml.XmlNode In xmlProfile
' Dim xmlProfilLinks As Xml.XmlNodeList = profil.ChildNodes
' For Each link As Xml.XmlNode In xmlProfilLinks
' If link.Attributes("profilname").Value = Me._originalProfilname Then
' link.Attributes("profilname").Value = Me._profilname
' End If
' Next
'Next
' die neuen Werte den Originalwerten zuweisen
Me._originalProfilname = Me._profilname
Me._originalaktiv = Me._aktiv
Me._originalVerzoegerung = Me._Verzoegerung
Me._originalQuellordner = Me._quellordner
Me._originalZielordner = Me._zielordner
Me._originalsubdirectories = Me._subdirectories
Me._originalBackup = Me._backup
Me._originalBackupordner = Me._backupordner
Me._originalOverwrite = Me._overwrite
Me._originalDatei_loeschen = Me._datei_loeschen
Me._originalDate_UV = Me._Date_UV
Me._originalVerzeichnis_loeschen = Me._verzeichnis_loeschen
Me._originalIntervall = Me._Intervall
Me._originallastRun = Me._lastRun
Me._originallink2Navision = Me._link2Navision
Me._originallink2Navision_Dokart = _link2Navision_Dokart
Me._originallink2Navision_Index = _link2Navision_Index
_originalUVloeschen = Me._UVloeschen
' die neuen Werte in die XML-Datei schreiben
xmlProfil.Attributes("profilname").Value = Me._profilname
xmlProfil.Attributes("aktiv").Value = Me._aktiv
xmlProfil.Attributes("verzoegerung").Value = Me._Verzoegerung
xmlProfil.Attributes("dokumenttyp").Value = Me._dokumenttypString
xmlProfil.Attributes("quellordner").Value = Me._quellordner
xmlProfil.Attributes("subdirectories").Value = Me._subdirectories
xmlProfil.Attributes("zielordner").Value = Me._zielordner
xmlProfil.Attributes("backup").Value = Me._backup
xmlProfil.Attributes("backupordner").Value = Me._backupordner
xmlProfil.Attributes("overwrite").Value = Me._overwrite
xmlProfil.Attributes("datei_loeschen").Value = Me._datei_loeschen
xmlProfil.Attributes("Date_UV").Value = Me._Date_UV
xmlProfil.Attributes("verzeichnis_loeschen").Value = Me._verzeichnis_loeschen
xmlProfil.Attributes("intervall").Value = Me._Intervall
xmlProfil.Attributes("lastrun").Value = Me._lastRun
xmlProfil.Attributes("link2navision").Value = Me._link2Navision
xmlProfil.Attributes("link2navision_dokart").Value = Me._link2Navision_Dokart
xmlProfil.Attributes("link2navision_index").Value = Me._link2Navision_Index
xmlProfil.Attributes("subdirectoriesloeschen").Value = _UVloeschen
' XML-Datei speichern
xml.Save(My.Settings.vDIConfigDatei)
' Profil auf gespeichert setzen
Me._saved = True
If msg = True Then MsgBox("Das Profil '" & Me._originalProfilname & "' wurde erfolgreich gespeichert.", MsgBoxStyle.Information, "Profil gespeichert")
Return True
Else
If msg = True Then MsgBox("Es wurde kein Profilname für das Profil definiert.", MsgBoxStyle.Information, "Profil konnte nicht gespeichert werden")
Return False
End If
End If
Return False
Catch ex As Exception
If msg = True Then MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Speichern eines Profils")
Return False
End Try
End Function
Public Function GetFolderName(ByVal filename As String, ByVal ebene As Integer)
Dim ordnerString As String = filename.Substring(0, filename.Length - (filename.Length - filename.LastIndexOf("\")))
Dim ordnerArray As String() = ordnerString.Split("\")
If ebene = -1 Then ' Parent-Ordner (Ordner in dem die Datei liegt)
Return ordnerArray(ordnerArray.Length - 1)
ElseIf ebene = 0 Then ' Root-Ordner
' muss nicht eingebunden werden, da es in GetIndexArray() gelöst wird
' wenn das Programm doch hierher kommt -- dann stimmt was nicht!
Return ""
ElseIf ebene > 0 Then ' feste Ebene
For i As Integer = 1 To ordnerArray.Length - 1
'MsgBox(ordnerArray(i))
If i = ebene Then
Return ordnerArray(i)
End If
Next
Return ""
Else
' ungültige Ordnerebene ( ebene < -1 )
Return ""
End If
End Function
''' <summary>
''' LIEST INDEXWERTE AUS und erstellt für die angegebene Datei ein Array mit Dateiname, Zielindexen und Werten in dem alle
''' Informationen festgehalten sind die zur Indexierung der Datei benötigt werden.
''' </summary>
''' <param name="filename">Name (Datei- und Ordnername) der Datei für die das Array angelegt werden soll</param>
''' <returns>Liefert eine ArrayList mit allen, für die Indexierung notwendigen, Informationen</returns>
''' <remarks></remarks>
Public Function GetIndexArray(ByVal filename As String, ByVal quellverzeichnis As String, ByVal End_Verzeichnis As String) As ArrayList
Dim arr As ArrayList = New ArrayList
Try
' alle Regeln dieses Profils auslesen
Dim regeln As ClassDIRegel() = Me.Regeln
' wenn keine Regeln vorhanden sind -> Abbrechen
If regeln Is Nothing Then Return Nothing
' zuerst den Dateinamen ins Array schreiben
arr.Add(filename)
Dim originalFilename = filename
' dann alle Regeln durchlauf
For Each regel As ClassDIRegel In regeln
filename = originalFilename
' Console.WriteLine(filename & " - " & regel._indexieren_aus & " - " & regel._art & " - " & regel._dateiendung)
' wenn die aktuelle Regel aktiv ist
If regel._aktiv Then
Dim gefunden As Boolean = False
Dim arr_pos As Integer = 0
' alle Einträge im Array durchlaufen und prüfen ob für den Zielindex der aktuellen
' Regel bereits ein Eintrag existiert
For i As Integer = 0 To arr.Count - 1
If arr(i)(0) = regel._zielindex Then
gefunden = True
Exit For
End If
arr_pos += 1
Next
Dim importString As String = ""
Dim backslashes As Integer = 0
Dim new_filename As String = ""
If regel._indexieren_aus.ToUpper = "ORDNER" Then
If regel._ordner_ebene = -1 Then
filename = Me.GetFolderName(filename, -1)
ElseIf regel._ordner_ebene = 0 Then
If Not quellverzeichnis.Chars(quellverzeichnis.Length - 1) = "\" Then quellverzeichnis &= "\"
filename = Me.GetFolderName(quellverzeichnis, -1)
ElseIf regel._ordner_ebene > 0 Then
If End_Verzeichnis <> "" Then
filename = Me.GetFolderName(End_Verzeichnis, regel._ordner_ebene)
Else
filename = Me.GetFolderName(filename, regel._ordner_ebene)
End If
Else
filename = ""
End If
End If
'MsgBox(filename)
Dim wert As Object
If regel._indexieren_aus.ToUpper = "FEST" Then
Dim manWert As String
Select Case regel._art
Case "akt. Datum()"
manWert = Now.ToShortDateString
Case "Date.Now()"
manWert = Now.ToShortDateString
Case "Now()"
manWert = Now.ToString
Case Else
manWert = regel._art
End Select
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add(" - " & filename & " - FESTEN WERT an Datei übergeben! - Wert " & manWert, False)
wert = manWert
Else
' jetzt an Hand der Regel den entsprechenden Teilstring aus dem Dateinamen auslesen
wert = regel.GetTeilstring(filename)
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add(" - " & filename & " - Auszuwertenden Wert an " & regel._indexieren_aus.ToUpper & " übergeben! - Wert " & wert.ToString, False)
End If
'If wert <> "" Then
' wenn der Wert in ein Datumsindex geschrieben werden soll
If _windream.GetTypeOfIndexAsIntByName(regel._zielindex) = WINDREAMLib.WMObjectVariableValueType.WMObjectVariableValueTypeDate Then
'Dim datumFormat As String = ClassDateiimportHelpers.GetDatumFormat(regel._datum_format)
Dim datumFormat As String = regel._datum_format
If datumFormat IsNot Nothing And datumFormat <> "False" Then
Dim datum As Date = Nothing
'' Datum an Hand des Datumformats der Regel ermitteln und dem Wert zuweisen
DateTime.TryParseExact(wert, datumFormat, Nothing, Globalization.DateTimeStyles.None, datum)
wert = datum
If IsDate(wert) Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add(" - Alles OK - Wert als Datum erkannt!", False)
Else
ClassLoggerDI.Add(">> ACHTUNG: Der Wert '" & wert & "' konnte nicht als Datum erkannt werden! Der Wert wird nicht übertragen!", False)
wert = ""
End If
Else
ClassLoggerDI.Add(">> ACHTUNG: datumFormat is Nothing! Der Wert wird nicht übertragen!", False)
wert = ""
End If
'' wenn etwas schief gegangen ist und das Datum nicht ermittelt werden konnte
'If wert = DateTime.MinValue Then
' MsgBox("Etws ist schiefgeegangen")
' wert = ""
'End If
End If
' wenn dies zu einem Ergebnis geführt hat
If Not wert.ToString = "" Then
' und bereits ein Eintrag im Array zu diesem Zielindex existiert
If gefunden Then
If regel._removeZeros = True And wert.ToString.StartsWith("0") Then
If IsNumeric(wert) Then
wert = CStr(CInt(wert.ToString))
End If
End If
'Dim x As ArrayList = arr(arr_pos)(1)
' den neuen Teilstring einfach an das Array (beim Zielindex) anhängen
arr.Item(arr_pos).Item(1).Add(wert)
Else '
Dim arr_regelgruppe As ArrayList = New ArrayList
Dim arr_ergebnis As ArrayList = New ArrayList
If regel._removeZeros = True And wert.ToString.StartsWith("0") Then
If IsNumeric(wert) Then
wert = CStr(CInt(wert.ToString))
End If
End If
' einen neuen Eintrag mit dem ausgelesenen Teilstring in einer neuen ArrayList machen
arr_ergebnis.Add(wert)
' als nächstes den Zielindex ins Array schreiben
arr_regelgruppe.Add(regel._zielindex)
' und die ArrayList mit dem ausgelesenen Teilstring anhängen
arr_regelgruppe.Add(arr_ergebnis)
' zuletzt noch die komplette Gruppe (Zielindex und Teilstring) an das Array
' für die Datei anhängen
arr.Add(arr_regelgruppe)
End If
End If
End If
'End If
Next
Catch ex As Exception
ClassLoggerDI.Add("GetIndexArray", ex)
'Console.WriteLine("!!!! FEHLER in GetIndexArray() :: " & ex.Message & " in Methode " & ex.TargetSite.Name & vbNewLine & vbNewLine & ex.StackTrace)
'MsgBox(ex.Message)
End Try
' das Array für die aktuelle Datei zurückgeben
Return arr
End Function
#End Region
#Region "***** Properties *****"
Public Property OriginalProfilname() As String
Get
Return Me._originalProfilname
End Get
Set(ByVal value As String)
Me._originalProfilname = value
End Set
End Property
Public Property Profilname() As String
Get
Return Me._profilname
End Get
Set(ByVal value As String)
Me._profilname = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property Dokumenttyp() As WINDREAMLib.WMObject
Get
Return Me._dokumenttyp
End Get
Set(ByVal value As WINDREAMLib.WMObject)
Me._dokumenttyp = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property DokumenttypString() As String
Get
If Me.Dokumenttyp IsNot Nothing Then
Me._dokumenttypString = Me.Dokumenttyp.aName
Return Me._dokumenttypString
Else
Return Me._dokumenttypString
End If
End Get
End Property
Public ReadOnly Property OriginalQuellordner() As String
Get
Return Me._originalQuellordner
End Get
End Property
Public Property Quellordner() As String
Get
Return Me._quellordner
End Get
Set(ByVal value As String)
Me._quellordner = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalSubdirectories() As Boolean
Get
Return Me._originalsubdirectories
End Get
End Property
Public Property Subdirectories() As Boolean
Get
Return Me._subdirectories
End Get
Set(ByVal value As Boolean)
Me._subdirectories = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalZielordner() As String
Get
Return Me._originalZielordner
End Get
End Property
Public Property Zielordner() As String
Get
Return Me._zielordner
End Get
Set(ByVal value As String)
Me._zielordner = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalBackup() As String
Get
Return Me._originalBackup
End Get
End Property
Public Property Backup() As Boolean
Get
Return Me._backup
End Get
Set(ByVal value As Boolean)
Me._backup = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalBackupordner() As String
Get
Return Me._originalBackupordner
End Get
End Property
Public Property Backupordner() As String
Get
Return Me._backupordner
End Get
Set(ByVal value As String)
Me._backupordner = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalOverwrite() As Boolean
Get
Return Me._originalOverwrite
End Get
End Property
Public Property Overwrite() As Boolean
Get
Return Me._overwrite
End Get
Set(ByVal value As Boolean)
Me._overwrite = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalDateiLöschen() As Boolean
Get
Return Me._originalDatei_loeschen
End Get
End Property
Public Property DateiLöschen() As Boolean
Get
Return Me._datei_loeschen
End Get
Set(ByVal value As Boolean)
Me._datei_loeschen = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalDate_UV() As String
Get
Return Me._originalDate_UV
End Get
End Property
Public Property Date_UV() As String
Get
Return Me._Date_UV
End Get
Set(ByVal value As String)
Me._Date_UV = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalVerzeichnisLöschen() As Boolean
Get
Return Me._originalVerzeichnis_loeschen
End Get
End Property
Public Property VerzeichnisLöschen() As Boolean
Get
Return Me._verzeichnis_loeschen
End Get
Set(ByVal value As Boolean)
Me._verzeichnis_loeschen = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property Original_UVVerzeichnisLoeschen() As Boolean
Get
Return Me._originalUVloeschen
End Get
End Property
Public Property UVVerzeichnisLoeschen() As Boolean
Get
Return Me._UVloeschen
End Get
Set(ByVal value As Boolean)
Me._UVloeschen = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalAktiv() As Boolean
Get
Return Me._originalaktiv
End Get
End Property
Public Property Aktiv() As Boolean
Get
Return Me._aktiv
End Get
Set(ByVal value As Boolean)
Me._aktiv = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalVerzoegerung() As Integer
Get
Return Me._originalVerzoegerung
End Get
End Property
Public Property Verzoegerung() As Integer
Get
Return Me._Verzoegerung
End Get
Set(ByVal value As Integer)
Me._Verzoegerung = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalIntervall() As Integer
Get
Return Me._originalIntervall
End Get
End Property
Public Property Intervall() As Integer
Get
Return Me._Intervall
End Get
Set(ByVal value As Integer)
Me._Intervall = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginallastRun() As String
Get
Return Me._originallastRun
End Get
End Property
Public Property LastRun() As String
Get
Return Me._lastRun
End Get
Set(ByVal value As String)
Me._lastRun = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property Regeln() As ClassDIRegel()
Get
Me._regeln = New ClassDIRegeln(Me.OriginalProfilname)
Return Me._regeln._regeln
End Get
End Property
Public Property Link2Navision() As Boolean
Get
Return Me._link2Navision
End Get
Set(ByVal value As Boolean)
Me._link2Navision = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalLink2Navision() As Boolean
Get
Return Me._originallink2Navision
End Get
End Property
Public Property Link2Navision_dokart() As String
Get
Return Me._link2Navision_Dokart
End Get
Set(ByVal value As String)
Me._link2Navision_Dokart = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalLink2Navision_dokart() As String
Get
Return Me._originallink2Navision_Dokart
End Get
End Property
Public Property Link2Navision_Index() As String
Get
Return Me._link2Navision_Index
End Get
Set(ByVal value As String)
Me._link2Navision_Index = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalLink2Navision_Index() As String
Get
Return Me._originallink2Navision_Index
End Get
End Property
Public ReadOnly Property HasChanges() As Boolean
Get
If Me.Profilname = Me.OriginalProfilname And _
Me.Aktiv = Me.OriginalAktiv And _
Me.Verzoegerung = Me.OriginalVerzoegerung And _
Me.Quellordner = Me.OriginalQuellordner And _
Me.Zielordner = Me.OriginalZielordner And _
Me.Subdirectories = Me.OriginalSubdirectories And _
Me.Backup = Me.OriginalBackup And _
Me.Backupordner = Me.OriginalBackupordner And _
Me.Overwrite = Me.OriginalOverwrite And _
Me.VerzeichnisLöschen = Me.OriginalVerzeichnisLöschen And _
Me.DateiLöschen = Me.OriginalDateiLöschen And _
Me.Date_UV = Me.OriginalDate_UV And _
Me.Intervall = Me.OriginalIntervall And _
Me.LastRun = Me.OriginallastRun And _
Me.Link2Navision = Me.OriginalLink2Navision And _
Me.Link2Navision_dokart = Me.OriginalLink2Navision_dokart And _
Me.Link2Navision_Index = Me.OriginalLink2Navision_Index And _
Me.UVVerzeichnisLoeschen = Me.Original_UVVerzeichnisLoeschen Then
Return False
Else
Return True
End If
' Return Not Me._saved
End Get
End Property
Public ReadOnly Property IsSaved() As Boolean
Get
Return Me._saved
End Get
End Property
#End Region
End Class

View File

@ -0,0 +1,335 @@
Public Class ClassDIProfile
Private Shared _profiles() As ClassDIProfil
'Private Shared _parentClass As ClassDateiimport = ClassDateiimport.GetInstance
Public Shared xmlConfigFile As String
Public Shared aktivesProfil As ClassDIProfil
Public Shared aktivesProfilAusProfileigenschaften As Boolean = False
Public Shared _windream As New ClassWindream_allgemein
Public Shared Sub Init()
xmlConfigFile = My.Application.Info.DirectoryPath & "\" & My.Settings.vDIConfigDatei
ClassDIProfile.LoadFromXmlFile()
' 3b. Windream initialisieren (Connection, Session, ... aufbauen)
_windream.Init()
End Sub
Public Shared Sub LoadFromXmlFile()
Dim i As Integer = 0
Dim xml As Xml.XmlDocument
ClassDIProfile._profiles = Nothing
If xmlConfigFile Is Nothing Then Exit Sub
If Not xmlConfigFile = "" Then
If ClassDIProfile.IsXmlAccessable() Then
xml = New Xml.XmlDocument()
xml.Load(xmlConfigFile)
' Anzahl der Profilelemente in der XML-Datei zählen
Dim anzProfile = xml.SelectNodes("Settings/Profile/Profil").Count
' wenn mindestens ein Profilelement eingetragen ist
If anzProfile > 0 Then
' alle Profile laden
Dim xmlNodes As Xml.XmlNodeList = xml.SelectNodes("Settings/Profile/Profil")
' alle Profile der XML-Datei durchlaufen
For Each xmlProfil As Xml.XmlNode In xmlNodes
' prüfen ob ein Profilname angegeben wurde
If xmlProfil.Attributes("profilname") IsNot Nothing And xmlProfil.Attributes("dokumenttyp") IsNot Nothing Then
' ein Element an Items anhängen
ReDim Preserve ClassDIProfile._profiles(i)
' das Profilobjekt erzeugen
ClassDIProfile._profiles(i) = New ClassDIProfil(xmlProfil.Attributes("profilname").Value, _
xmlProfil.Attributes("aktiv").Value, _
xmlProfil.Attributes("verzoegerung").Value, _
_windream.GetObjecttypeByName(xmlProfil.Attributes("dokumenttyp").Value), _
xmlProfil.Attributes("quellordner").Value, _
xmlProfil.Attributes("subdirectories").Value, _
xmlProfil.Attributes("zielordner").Value, _
xmlProfil.Attributes("backup").Value, _
xmlProfil.Attributes("backupordner").Value, _
xmlProfil.Attributes("overwrite").Value, _
xmlProfil.Attributes("datei_loeschen").Value, _
xmlProfil.Attributes("Date_UV").Value, _
xmlProfil.Attributes("verzeichnis_loeschen").Value, _
xmlProfil.Attributes("intervall").Value, _
xmlProfil.Attributes("lastrun").Value, _
xmlProfil.Attributes("link2navision").Value, _
xmlProfil.Attributes("link2navision_dokart").Value, _
xmlProfil.Attributes("link2navision_index").Value, _
xmlProfil.Attributes("subdirectoriesloeschen").Value, _
xmlProfil.Attributes("dokumenttyp").Value)
' Zähler für Profile erhöhen
i += 1
End If
Next
End If
End If
End If
End Sub
' gibt ein einzelnes Profil-Objekt zurück
Public Shared Function getProfilByName(ByVal profilname As String) As ClassDIProfil
' alle Profile durchlaufen
For Each profil As ClassDIProfil In _profiles
' wenn der aktuelle Profilname mit dem gesuchten Profilnamen übereinstimmt
If profil.Profilname = profilname Then
' das Profil zurückgeben
Return profil
End If
Next
' sonst nichts zurückgeben
Return Nothing
End Function
Public Shared Function IsXmlAccessable()
Dim xml As New Xml.XmlDocument
Try
' XML-Datei laden und speichern um Zugriff zu testen
xml.Load(xmlConfigFile)
xml.Save(xmlConfigFile)
Return True
Catch ex As Exception
Try
If My.Settings.vLogErrorsonly = False Then MsgBox("System kann nicht auf Konfig-Datei " & vbNewLine & xmlConfigFile & vbNewLine & " zugreifen! (Nicht vorhanden bzw Syntaxfehler)" & vbNewLine & "Datei wird neu erstellt!", MsgBoxStyle.Exclamation, "Achtung:")
Dim fw As System.IO.StreamWriter = New System.IO.StreamWriter(xmlConfigFile)
fw.WriteLine("<?xml version=""1.0"" encoding=""ISO-8859-1"" standalone=""yes""?>")
fw.WriteLine("<Settings>")
fw.WriteLine("<Profile>")
fw.WriteLine("</Profile>")
fw.WriteLine("</Settings>")
fw.Close()
Return True
Catch e2 As Exception
Return False
End Try
End Try
End Function
Public Shared Function Profilname_Exists(ByVal profilname As String)
If ClassDIProfile.Count > 0 Then
For Each profil As ClassDIProfil In ClassDIProfile._profiles
If profil.OriginalProfilname = profilname Then
Return True
End If
Next
End If
Return False
End Function
' erstellt ein neues Profil
Public Shared Sub Add(ByVal profilname As String, ByVal dokumenttyp As String, ByVal quellordner As String, ByVal subdirectories As Boolean, _
ByVal zielordner As String, ByVal backup As Boolean, ByVal backupordner As String, _
ByVal overwrite As Boolean, ByVal datei_loeschen As Boolean, ByVal Date_UV As Boolean, ByVal verzeichnis_loeschen As Boolean, ByVal intervall As Integer, ByVal link2Navision As Boolean, ByVal link2Navision_dokart As String, ByVal link2Navision_Index As String, ByVal UVloeschen As Boolean)
Try
If Not ClassDIProfile.Profilname_Exists(profilname) Then
Dim xml As New Xml.XmlDocument
Dim xmlProfil As Xml.XmlElement
If ClassDIProfile.IsXmlAccessable() Then
' XML-Datei laden
xml.Load(xmlConfigFile)
Try
' versuchen die XML-Beschreibung zu schreiben
xml.InsertBefore(xml.CreateXmlDeclaration("1.0", "ISO-8859-1", "yes"), xml.ChildNodes(0))
Catch ex As Exception
' wenn dies nicht funktioniert, ist die Beschreibung schon vorhanden
End Try
' wenn die Hauptknoten noch nicht eingetragen wurden, sollen diese angelegt werden
If xml.DocumentElement Is Nothing Then xml.AppendChild(xml.CreateElement("Settings"))
If xml.SelectNodes("Settings/Profile") Is Nothing Then xml.AppendChild(xml.CreateElement("Profile"))
' dann ein neues Profil anlegen
xmlProfil = xml.CreateElement("Profil")
' dem Profil die Attribute zuweisen
xmlProfil.SetAttribute("profilname", profilname)
xmlProfil.SetAttribute("aktiv", "True")
xmlProfil.SetAttribute("verzoegerung", 0)
xmlProfil.SetAttribute("dokumenttyp", dokumenttyp)
xmlProfil.SetAttribute("quellordner", quellordner)
xmlProfil.SetAttribute("zielordner", zielordner)
xmlProfil.SetAttribute("subdirectories", subdirectories)
xmlProfil.SetAttribute("subdirectoriesloeschen", UVloeschen)
xmlProfil.SetAttribute("backup", backup)
xmlProfil.SetAttribute("backupordner", backupordner)
xmlProfil.SetAttribute("overwrite", overwrite)
xmlProfil.SetAttribute("datei_loeschen", datei_loeschen)
xmlProfil.SetAttribute("Date_UV", Date_UV)
xmlProfil.SetAttribute("verzeichnis_loeschen", verzeichnis_loeschen)
xmlProfil.SetAttribute("intervall", intervall)
xmlProfil.SetAttribute("lastrun", "01.01.1900")
xmlProfil.SetAttribute("link2navision", link2Navision)
xmlProfil.SetAttribute("link2navision_dokart", link2Navision_dokart)
xmlProfil.SetAttribute("link2navision_index", link2Navision_Index)
' und in den Hauptknoten 'Profile' einhängen
xml.SelectSingleNode("Settings/Profile").AppendChild(xmlProfil)
' XML-Datei speichern
xml.Save(xmlConfigFile)
' die Liste der Profile im Objekt vergrößern
ReDim Preserve ClassDIProfile._profiles(ClassDIProfile.Count)
' und das neue Profil dem Profilarray anhängen und die Eigenschaften zuweisen
ClassDIProfile._profiles(ClassDIProfile.Count - 1) = New ClassDIProfil(profilname, _
True, _
0, _
_windream.GetObjecttypeByName(dokumenttyp), _
quellordner, _
subdirectories, _
zielordner, _
backup, _
backupordner, _
overwrite, _
datei_loeschen, _
Date_UV, _
verzeichnis_loeschen, _
intervall, _
"01.01.1900", link2Navision, link2Navision_dokart, link2Navision_Index, UVloeschen)
End If
MsgBox("Das Profil: '" & profilname & "' wurde erfolgreich gespeichert!", MsgBoxStyle.Information, "Erfolgsmeldung:")
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Anlegen eines Profils:")
End Try
End Sub
Public Shared Function DeleteProfil(ByVal profilname As String) As Boolean
Try
If ClassDIProfile.Profilname_Exists(profilname) Then
' XML-Objekt initialisieren
Dim xml As New Xml.XmlDocument
' XML-Datei laden
xml.Load(xmlConfigFile)
' ***** Zuerst einmal das Profil heraus löschen ***** '
' XML-Element auswählen
Dim node As Xml.XmlElement = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & profilname & "']")
If node IsNot Nothing Then
' Element löschen
node.ParentNode.RemoveChild(node)
' XML-Datei speichern
xml.Save(xmlConfigFile)
End If
' ***** Und im Anschluss das Profil aus allen Benutzern löschen ***** '
'' alle ProfilLinks durchlaufen und Profileintrag entfernen
Dim xmlProfile As Xml.XmlNodeList = xml.SelectSingleNode("//Settings/Profile").ChildNodes
For Each profil As Xml.XmlNode In xmlProfile
Dim xmlProfilLinks As Xml.XmlNodeList = profil.ChildNodes
For Each link As Xml.XmlNode In xmlProfilLinks
If link.Attributes("profilname").Value = profilname Then
link.RemoveChild(link)
xml.Save(xmlConfigFile)
End If
Next
Next
' *** Array umschreiben (Element aus Array entfernen) ***
If ClassDIProfile.Profilname_Exists(profilname) Then
' temporäres Array erzeugen
Dim tempItems() As ClassDIProfil = ClassDIProfile._profiles
ClassDIProfile._profiles = Nothing
Dim i As Integer = 0
' alle Verknüpfungen durchlaufen
For Each item As ClassDIProfil In tempItems
' wenn es sich nicht um das gelöschte handelt
If Not item.OriginalProfilname = profilname Then
' Größe anpassen
ReDim Preserve ClassDIProfile._profiles(i)
' die Verknüpfung in das Items-Array übertragen
ClassDIProfile._profiles(i) = item
' Counter hochzählen
i += 1
End If
Next
Return True
Else
Return False
End If
Else
Return False
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Löschen eines Profils")
Return False
End Try
End Function
Public Shared ReadOnly Property Profile() As ClassDIProfil()
Get
Return ClassDIProfile._profiles
End Get
End Property
Public Shared ReadOnly Property Count() As Integer
Get
' Anzahl der Profile zurückgeben
If ClassDIProfile._profiles IsNot Nothing Then
Return ClassDIProfile._profiles.Length
Else
Return 0
End If
End Get
End Property
End Class

View File

@ -0,0 +1,309 @@
Public Class ClassDIRegel
#Region "***** Variablen *****"
'Public xmlConfigFile As String = My.Settings.vConfigDatei
Public _profilname As String = ""
Public _zielindex As String = ""
Public _indexieren_aus As String = ""
Public _art As String = ""
Public _aktiv As Boolean = True
Public _id As Integer = 0
Public _trennzeichen As String = ""
Public _dateiendung As String = ""
Public _text As String = ""
Public _anzahl As Integer = 0
Public _position As Integer = 0
Public _position_von As Integer = 0
Public _position_bis As Integer = 0
Public _mit_endung As Boolean = False
Public _datum_format As String = ""
Public _ordner_ebene As Object = Nothing
Public _removeZeros As Boolean = False
Public _beschreibung As String = ""
' Private _parentClass As ClassDateiimport = ClassDateiimport.GetInstance
#End Region
#Region "***** Konstruktoren *****"
''' <summary>
''' Konstruktor für KOMPLETT
''' </summary>
''' <remarks></remarks>
Sub New(ByVal id As Integer, ByVal zielindex As String, ByVal aktiv As Boolean, ByVal indexieren_aus As String, ByVal datum_format As String, ByVal mit_endung As Boolean, Optional ByVal ordner_ebene As Object = Nothing)
Me._id = id
Me._zielindex = zielindex
Me._aktiv = aktiv
Me._mit_endung = mit_endung
Me._indexieren_aus = indexieren_aus
Me._art = "KOMPLETT"
If ordner_ebene IsNot Nothing Then Me._ordner_ebene = ordner_ebene
If datum_format IsNot Nothing Then Me._datum_format = datum_format
End Sub
''' <summary>
''' Konstruktor für TRENNZEICHEN
''' </summary>
''' <param name="indexieren_aus"></param>
''' <param name="trennzeichen"></param>
''' <param name="position"></param>
''' <remarks></remarks>
Sub New(ByVal id As Integer, ByVal zielindex As String, ByVal aktiv As Boolean, ByVal indexieren_aus As String, ByVal datum_format As String, ByVal trennzeichen As String, ByVal position As Integer, ByVal mit_endung As Boolean, Optional ByVal ordner_ebene As Object = Nothing, Optional remove0 As Boolean = True)
Me._id = id
Me._zielindex = zielindex
Me._aktiv = aktiv
Me._indexieren_aus = indexieren_aus
Me._art = "TRENNZEICHEN"
Me._trennzeichen = trennzeichen
Me._position = position
Me._removeZeros = remove0
If ordner_ebene IsNot Nothing Then Me._ordner_ebene = ordner_ebene
If datum_format IsNot Nothing Then Me._datum_format = datum_format
End Sub
''' <summary>
''' Konstruktor für BEREICH
''' </summary>
''' <param name="indexieren_aus"></param>
''' <param name="position_von"></param>
''' <param name="anzahl"></param>
''' <remarks></remarks>
Sub New(ByVal id As Integer, ByVal zielindex As String, ByVal aktiv As Boolean, ByVal indexieren_aus As String, ByVal datum_format As String, ByVal position_von As Integer, ByVal anzahl As Integer, Optional ByVal ordner_ebene As Object = Nothing, Optional remove0 As Boolean = True)
Me._id = id
Me._zielindex = zielindex
Me._aktiv = aktiv
Me._indexieren_aus = indexieren_aus
Me._art = "BEREICH"
Me._position_von = position_von
Me._anzahl = anzahl
Me._removeZeros = remove0
If ordner_ebene IsNot Nothing Then Me._ordner_ebene = ordner_ebene
If datum_format IsNot Nothing Then Me._datum_format = datum_format
End Sub
''' <summary>
''' Konstruktor für REST
''' </summary>
''' <param name="indexieren_aus"></param>
''' <param name="position_von"></param>
''' <remarks></remarks>
Sub New(ByVal id As Integer, ByVal zielindex As String, ByVal aktiv As Boolean, ByVal indexieren_aus As String, ByVal datum_format As String, ByVal position_von As Integer, ByVal mit_endung As Boolean, Optional ByVal ordner_ebene As Object = Nothing, Optional remove0 As Boolean = True)
Me._id = id
Me._zielindex = zielindex
Me._aktiv = aktiv
Me._indexieren_aus = indexieren_aus
Me._art = "REST"
Me._position_von = position_von
If ordner_ebene IsNot Nothing Then Me._ordner_ebene = ordner_ebene
If datum_format IsNot Nothing Then Me._datum_format = datum_format
Me._removeZeros = remove0
End Sub
''' <summary>
''' Konstruktor für DATEIENDUNG
''' </summary>
''' <param name="indexieren_aus"></param>
''' <param name="dateiendung"></param>
''' <remarks></remarks>
Sub New(ByVal id As Integer, ByVal zielindex As String, ByVal aktiv As Boolean, ByVal indexieren_aus As String, ByVal datum_format As String, ByVal dateiendung As String, ByVal text As String)
Me._id = id
Me._zielindex = zielindex
Me._aktiv = aktiv
Me._indexieren_aus = indexieren_aus
Me._art = "DATEIENDUNG"
Me._dateiendung = dateiendung
Me._text = text
If datum_format IsNot Nothing Then Me._datum_format = datum_format
End Sub
''' <summary>
''' Konstruktor für FEST
''' </summary>
''' <remarks></remarks>
Sub New(ByVal id As Integer, ByVal zielindex As String, ByVal aktiv As Boolean, ByVal indexieren_aus As String, ByVal _value As String, ByVal datum_format As String, Optional ByVal ordner_ebene As Object = Nothing)
Me._id = id
Me._zielindex = zielindex
Me._aktiv = aktiv
Me._mit_endung = False
Me._indexieren_aus = indexieren_aus
Me._art = _value
If ordner_ebene IsNot Nothing Then Me._ordner_ebene = ordner_ebene
If datum_format IsNot Nothing Then Me._datum_format = datum_format
End Sub
#End Region
Private Sub beschreibungAuslesen()
End Sub
''' <summary>
''' Liefert an Hand einer übergebenen Zeichenkette, abhängig der Regelart, einen Teilstring zurück
''' </summary>
''' <param name="zuZerlegenderString">die zu zerlegende Zeichenkette</param>
''' <returns></returns>
''' <remarks></remarks>
Public Function GetTeilstring(ByVal zuZerlegenderString As String) As String
Dim ergebnis As String = ""
If Me._indexieren_aus = "ORDNER" Then
Select Case Me._art.ToUpper
Case "KOMPLETT"
ergebnis = zuZerlegenderString
Case "BEREICH"
'MsgBox(dateinameOhneEndung & vbNewLine & "Bereich: " & Me._position_von - 1 & "-" & Me._anzahl + 1 & vbNewLine & vbNewLine & dateinameOhneEndung.Length & " >= " & Me._position_von + Me._anzahl)
If Me._position_von > 0 Then
If zuZerlegenderString.Length >= Me._position_von - 1 + Me._anzahl Then
ergebnis = zuZerlegenderString.Substring(Me._position_von - 1, Me._anzahl)
Else
If zuZerlegenderString.Length >= Me._position_von - 1 Then
ergebnis = zuZerlegenderString.Substring(Me._position_von - 1)
Else
ergebnis = ""
End If
End If
End If
Case "REST"
If Me._position_von > 0 And Me._position_von < zuZerlegenderString.Length Then
ergebnis = zuZerlegenderString.Substring(Me._position_von - 1)
End If
Case "TRENNZEICHEN"
Dim temp As String = zuZerlegenderString
Dim nichtVorhanden As Boolean = False
For i As Integer = 1 To Me._position - 1
If temp.Contains(Me._trennzeichen) Then
temp = temp.Substring(temp.IndexOf(Me._trennzeichen) + 1)
Else
nichtVorhanden = True
ergebnis = ""
Exit For
End If
Next
If Not nichtVorhanden Then
If temp.Contains(Me._trennzeichen) Then
temp = temp.Substring(0, temp.IndexOf(Me._trennzeichen))
End If
ergebnis = temp
End If
End Select
ElseIf Me._indexieren_aus = "DATEI" Then
Dim dateinameMitEndung As String = zuZerlegenderString.Substring(zuZerlegenderString.LastIndexOf("\") + 1)
Dim dateinameOhneEndung As String = ""
If dateinameMitEndung.Contains(".") Then dateinameOhneEndung = dateinameMitEndung.Substring(0, dateinameMitEndung.LastIndexOf("."))
Select Case Me._art.ToUpper
Case "KOMPLETT"
If Me._mit_endung Then
ergebnis = dateinameMitEndung
Else
ergebnis = dateinameOhneEndung
End If
Case "BEREICH"
'MsgBox(dateinameOhneEndung & vbNewLine & "Bereich: " & Me._position_von - 1 & "-" & Me._anzahl + 1 & vbNewLine & vbNewLine & dateinameOhneEndung.Length & " >= " & Me._position_von + Me._anzahl)
If Me._position_von > 0 Then
If dateinameOhneEndung.Length >= Me._position_von - 1 + Me._anzahl Then
ergebnis = dateinameOhneEndung.Substring(Me._position_von - 1, Me._anzahl)
Else
If dateinameOhneEndung.Length >= Me._position_von - 1 Then
ergebnis = dateinameOhneEndung.Substring(Me._position_von - 1)
Else
ergebnis = ""
End If
End If
End If
Case "REST"
If Me._position_von > 0 And Me._position_von < zuZerlegenderString.Length Then
ergebnis = dateinameOhneEndung.Substring(Me._position_von - 1)
End If
Case "TRENNZEICHEN"
Dim temp As String = dateinameOhneEndung
Dim nichtVorhanden As Boolean = False
For i As Integer = 1 To Me._position - 1
If temp.Contains(Me._trennzeichen) Then
temp = temp.Substring(temp.IndexOf(Me._trennzeichen) + 1)
Else
nichtVorhanden = True
ergebnis = ""
Exit For
End If
Next
If Not nichtVorhanden Then
If temp.Contains(Me._trennzeichen) Then
temp = temp.Substring(0, temp.IndexOf(Me._trennzeichen))
End If
ergebnis = temp
End If
Case "DATEIENDUNG"
If dateinameMitEndung.Contains(".") Then
'Console.WriteLine(dateinameMitEndung & " enthält einen Punkt an Position (letzte) " & dateinameMitEndung.LastIndexOf("."))
Dim dateiEndung As String = dateinameMitEndung.Substring(dateinameMitEndung.LastIndexOf(".") + 1)
'Console.WriteLine("Die ausgelesene Dateiendung ist " & dateiEndung)
If dateiEndung.ToUpper = Me._dateiendung.ToUpper Then
ergebnis = Me._text
End If
Else
'Console.WriteLine(dateinameMitEndung & " enthält keinen Punkt.")
ergebnis = ""
End If
End Select
End If
Return ergebnis
End Function
''' <summary>
''' Setzt eine Regel sowohl im Objekt, als auch in der XML-Datei auf (de-)aktiviert
''' </summary>
''' <param name="aktivieren">True für aktiv, False für inaktiv</param>
''' <remarks></remarks>
Public Sub SetRegelAktiv(ByVal aktivieren As Boolean)
Dim xml As New Xml.XmlDocument()
' XML-Datei öffnen und laden
xml.Load(My.Settings.vDIConfigDatei)
' Anzahl der Regelelemente in der XML-Datei zählen
Dim xmlRegel As Xml.XmlElement = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me._profilname & "']/Regel[@id='" & Me._id & "']")
If xmlRegel IsNot Nothing Then
xmlRegel.SetAttribute("aktiv", aktivieren)
xml.Save(My.Settings.vDIConfigDatei)
End If
End Sub
End Class

View File

@ -0,0 +1,469 @@
Public Class ClassDIRegeln
#Region "+++++ Variablen +++++"
'Public xmlConfigFile As String = My.Settings.vConfigDatei
Public _regeln() As ClassDIRegel
'Private _parentClass As ClassDateiimport = ClassDateiimport.GetInstance
Private _profilname As String
#End Region
#Region "+++++ Allgemeine Methoden und Funktionen +++++"
''' <summary>
''' Konstruktor der Klasse. Lädt direkt alle Regeln aus der XML-Datei.
''' </summary>
''' <param name="profilname">Profilname des zu ladenden Profils</param>
''' <remarks></remarks>
Sub New(ByVal profilname As String)
Me._profilname = profilname
Me.LoadRegelnAusXml()
End Sub
''' <summary>
''' Erweitert das Array der Regeln um einen Eintrag und liefert den Index des neuen Elements zurück.
''' </summary>
''' <returns>Index des neu angelegten Elements</returns>
''' <remarks></remarks>
Private Function ErweitereRegeln()
If Me._regeln IsNot Nothing Then
ReDim Preserve Me._regeln(Me._regeln.Length)
Else
ReDim Me._regeln(0)
End If
Return Me._regeln.Length - 1
End Function
#End Region
#Region "+++++ Methoden und Funktionen zum Verwalten der Regeln +++++"
''' <summary>
''' Legt eine neue Regel an
''' </summary>
''' <param name="zielindex">der Index in dem die Regel zugewiesen wird</param>
''' <param name="typ">die Art der Indexierung (KOMPLETT, BEREICH, REST, TRENNZEICHEN oder DATEIENDUNG)</param>
''' <param name="indexieren_aus">der Ort aus dem der Index ausgelesen werden soll (DATEI, ORDNER oder FEST)</param>
''' <param name="param1">regelspezifischer Parameter</param>
''' <param name="param2">regelspezifischer Parameter</param>
''' <param name="param3">regelspezifischer Parameter</param>
''' <param name="param4">regelspezifischer Parameter</param>
''' <param name="param5">regelspezifischer Parameter</param>
''' <param name="param6">regelspezifischer Parameter</param>
''' <remarks></remarks>
Public Sub Add(ByVal zielindex As String, ByVal typ As String, ByVal indexieren_aus As String, ByVal datumFormat As String, ByVal ordnerEbene As Integer, Optional ByVal param1 As Object = Nothing, Optional ByVal param2 As Object = Nothing, Optional ByVal param3 As Object = Nothing, Optional ByVal param4 As Object = Nothing, Optional ByVal param5 As Object = Nothing, Optional ByVal param6 As Object = Nothing, Optional ByVal Removezeros As Boolean = False)
Try
Dim index As Integer = 0
Dim xml As New Xml.XmlDocument()
' XML-Datei öffnen und laden
xml.Load(My.Settings.vDIConfigDatei)
' Anzahl der Regelelemente in der XML-Datei zählen
Dim xmlRegeln As Xml.XmlElement = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me._profilname & "']")
If xmlRegeln IsNot Nothing Then
Dim neueRegel As Xml.XmlElement = xml.CreateElement("Regel")
neueRegel.SetAttribute("id", Me.HighestId + 1)
neueRegel.SetAttribute("zielindex", zielindex)
neueRegel.SetAttribute("aktiv", True)
neueRegel.SetAttribute("indexieren_aus", indexieren_aus)
neueRegel.SetAttribute("art", typ)
neueRegel.SetAttribute("removeZeros", Removezeros.ToString)
Select Case indexieren_aus.ToUpper
Case "ORDNER"
Select Case typ.ToUpper
Case "KOMPLETT"
index = Me.ErweitereRegeln
Me._regeln(index) = New ClassDIRegel(Me._regeln.Length + 1, zielindex, True, indexieren_aus, datumFormat, False, ordnerEbene)
neueRegel.SetAttribute("mit_endung", Convert.ToBoolean(param1.ToString))
neueRegel.SetAttribute("ordner_ebene", Convert.ToInt16(ordnerEbene))
If datumFormat IsNot Nothing Then neueRegel.SetAttribute("datum_format", datumFormat)
Case "TRENNZEICHEN"
index = Me.ErweitereRegeln
Me._regeln(index) = New ClassDIRegel(Me._regeln.Length + 1, zielindex, True, indexieren_aus, datumFormat, Convert.ToString(param1), Convert.ToInt32(param2), False, ordnerEbene)
neueRegel.SetAttribute("trennzeichen", param1.ToString)
neueRegel.SetAttribute("position", param2.ToString)
neueRegel.SetAttribute("mit_endung", param3.ToString)
neueRegel.SetAttribute("ordner_ebene", Convert.ToInt16(ordnerEbene))
If datumFormat IsNot Nothing Then neueRegel.SetAttribute("datum_format", datumFormat)
Case "BEREICH"
index = Me.ErweitereRegeln
Me._regeln(index) = New ClassDIRegel(Me._regeln.Length + 1, zielindex, True, indexieren_aus, datumFormat, Convert.ToInt32(param1), Convert.ToInt32(param2), ordnerEbene)
neueRegel.SetAttribute("position_von", param1.ToString)
neueRegel.SetAttribute("anzahl", param2.ToString)
neueRegel.SetAttribute("ordner_ebene", Convert.ToInt16(ordnerEbene))
If datumFormat IsNot Nothing Then neueRegel.SetAttribute("datum_format", datumFormat)
Case "REST"
index = Me.ErweitereRegeln
Me._regeln(index) = New ClassDIRegel(Me._regeln.Length + 1, zielindex, True, indexieren_aus, datumFormat, Convert.ToInt32(param1), False, ordnerEbene)
neueRegel.SetAttribute("position_von", param1.ToString)
neueRegel.SetAttribute("mit_endung", param2.ToString)
neueRegel.SetAttribute("ordner_ebene", Convert.ToInt16(ordnerEbene))
If datumFormat IsNot Nothing Then neueRegel.SetAttribute("datum_format", datumFormat)
End Select
Case "DATEI"
Select Case typ.ToUpper
Case "KOMPLETT"
index = Me.ErweitereRegeln
Me._regeln(index) = New ClassDIRegel(Me._regeln.Length + 1, zielindex, True, indexieren_aus, datumFormat, Convert.ToBoolean(param1.ToString))
neueRegel.SetAttribute("mit_endung", param1.ToString)
If datumFormat IsNot Nothing Then neueRegel.SetAttribute("datum_format", datumFormat)
Case "TRENNZEICHEN"
index = Me.ErweitereRegeln
Me._regeln(index) = New ClassDIRegel(Me._regeln.Length + 1, zielindex, True, indexieren_aus, datumFormat, Convert.ToString(param1), Convert.ToInt32(param2), Convert.ToBoolean(param3.ToString))
neueRegel.SetAttribute("trennzeichen", param1.ToString)
neueRegel.SetAttribute("position", param2.ToString)
neueRegel.SetAttribute("mit_endung", param3.ToString)
If datumFormat IsNot Nothing Then neueRegel.SetAttribute("datum_format", datumFormat)
Case "BEREICH"
index = Me.ErweitereRegeln
Me._regeln(index) = New ClassDIRegel(Me._regeln.Length + 1, zielindex, True, indexieren_aus, datumFormat, Convert.ToInt32(param1), Convert.ToInt32(param2))
neueRegel.SetAttribute("position_von", param1.ToString)
neueRegel.SetAttribute("anzahl", param2.ToString)
If datumFormat IsNot Nothing Then neueRegel.SetAttribute("datum_format", datumFormat)
Case "REST"
index = Me.ErweitereRegeln
Me._regeln(index) = New ClassDIRegel(Me._regeln.Length + 1, zielindex, True, indexieren_aus, datumFormat, datumFormat, Convert.ToInt32(param1), Convert.ToBoolean(param2.ToString))
neueRegel.SetAttribute("position_von", param1.ToString)
neueRegel.SetAttribute("mit_endung", param2.ToString)
If datumFormat IsNot Nothing Then neueRegel.SetAttribute("datum_format", datumFormat)
Case "DATEIENDUNG"
index = Me.ErweitereRegeln
Me._regeln(index) = New ClassDIRegel(Me._regeln.Length + 1, zielindex, True, indexieren_aus, datumFormat, Convert.ToString(param1), Convert.ToString(param2))
neueRegel.SetAttribute("dateiendung", param1.ToString)
neueRegel.SetAttribute("text", param2.ToString)
If datumFormat IsNot Nothing Then neueRegel.SetAttribute("datum_format", datumFormat)
End Select
Case "FEST"
'ByVal zielindex As String, ByVal typ As String, ByVal indexieren_aus As String, ByVal datumFormat As String, ByVal ordnerEbene
' === NOCH ZU IMPLEMENTIEREN ===
index = Me.ErweitereRegeln
Me._regeln(index) = New ClassDIRegel(Me._regeln.Length + 1, zielindex, True, indexieren_aus, datumFormat, False)
If datumFormat IsNot Nothing Then neueRegel.SetAttribute("datum_format", datumFormat)
End Select
Me._regeln(index)._profilname = Me._profilname
xmlRegeln.AppendChild(neueRegel)
xml.Save(My.Settings.vDIConfigDatei)
End If
Catch ex As Exception
MsgBox("Eine Regel konnte nicht erfolgreich in die XML-Konfiguration gespeichert werden." & vbNewLine & vbNewLine & "Fehlernachricht: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Zugriff auf XML-Konfiguration")
End Try
End Sub
''' <summary>
''' Prüft ob eine Regel mit der entsprechenden ID existiert
''' </summary>
''' <param name="index">Index der einer Regel in der XML-Datei zugewiesen ist</param>
''' <returns>Liefert True wenn die Regel existiert, sonst False</returns>
''' <remarks></remarks>
Public Function ExistRegel(ByVal index As Integer) As Boolean
Try
' XML-Datei öffnen und laden
Dim xml As New Xml.XmlDocument()
xml.Load(My.Settings.vDIConfigDatei)
' Anzahl der Regelelemente in der XML-Datei zählen
Dim xmlRegel As Xml.XmlElement = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me._profilname & "']/Regel[@id='" & index & "']")
If xmlRegel IsNot Nothing Then
Return True
Else
Return False
End If
Catch ex As Exception
MsgBox("Die XML-Konfiguration konnte nicht erfolgreich ausgelesen werden." & vbNewLine & vbNewLine & "Fehlernachricht: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Zugriff auf XML-Konfiguration")
End Try
End Function
''' <summary>
''' Löscht eine Regel
''' </summary>
''' <param name="index">Index der einer Regel in der XML-Datei zugewiesen ist</param>
''' <remarks></remarks>
Public Sub DeleteRegel(ByVal index As Integer)
Try
If Me.ExistRegel(index) Then
' XML-Datei öffnen und laden
Dim xml As New Xml.XmlDocument()
xml.Load(My.Settings.vDIConfigDatei)
' Anzahl der Regelelemente in der XML-Datei zählen
Dim xmlRegel As Xml.XmlElement = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me._profilname & "']/Regel[@id='" & index & "']")
' den Eintrag der Regel löschen
xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me._profilname & "']").RemoveChild(xmlRegel)
' die Datei speichern
xml.Save(My.Settings.vDIConfigDatei)
End If
Catch ex As Exception
MsgBox("Die XML-Konfiguration konnte nicht erfolgreich ausgelesen werden und eine Regel konnte nicht gelöscht werden." & vbNewLine & vbNewLine & "Fehlernachricht: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Zugriff auf XML-Konfiguration")
End Try
End Sub
''' <summary>
''' Liest alle Regeln aus der XML-Datei aus und speichert sie in der entsprechenden Klassenvariablen
''' </summary>
''' <remarks></remarks>
Private Sub LoadRegelnAusXml()
Try
If Me._profilname IsNot Nothing Then
If Not Me._profilname = "" Then
Dim i As Integer = 0
Dim xml As New Xml.XmlDocument()
' XML-Datei öffnen und laden
xml.Load(My.Settings.vDIConfigDatei)
' Anzahl der Regelelemente in der XML-Datei zählen
Dim anzRegeln = xml.SelectNodes("Settings/Profile/Profil[@profilname='" & Me._profilname & "']/Regel").Count
' wenn mindestens ein Regelelement eingetragen ist
If anzRegeln > 0 Then
' alle Regeln laden
Dim xmlNodes As Xml.XmlNodeList = xml.SelectNodes("Settings/Profile/Profil[@profilname='" & Me._profilname & "']/Regel")
If xmlNodes IsNot Nothing Then
' alle Regeln der XML-Datei durchlaufen
For Each xmlRegel As Xml.XmlNode In xmlNodes
' prüfen ob die Pflichtfelder belegt sind
If xmlRegel.Attributes("indexieren_aus") IsNot Nothing And xmlRegel.Attributes("art") IsNot Nothing Then
'For Each att As Xml.XmlAttribute In xmlRegel.Attributes
' Dim ii = att.InnerText
' Dim j = att.Name
' MsgBox(ii.ToString & vbNewLine & j.ToString)
'Next
' ein Element an Items anhängen
ReDim Preserve Me._regeln(i)
Dim id As Integer
If xmlRegel.Attributes.GetNamedItem("id") IsNot Nothing Then
id = Convert.ToInt32(xmlRegel.Attributes("id").Value)
Else
id = 0
End If
Dim aktiv As Boolean
If xmlRegel.Attributes.GetNamedItem("aktiv") IsNot Nothing Then
aktiv = Convert.ToBoolean(xmlRegel.Attributes("aktiv").Value)
Else
aktiv = False
End If
Dim mit_endung As Boolean
If xmlRegel.Attributes.GetNamedItem("mit_endung") IsNot Nothing Then
mit_endung = Convert.ToBoolean(xmlRegel.Attributes("mit_endung").Value)
Else
mit_endung = False
End If
Dim datum_format As String
If xmlRegel.Attributes.GetNamedItem("datum_format") IsNot Nothing Then
datum_format = Convert.ToString(xmlRegel.Attributes("datum_format").Value)
Else
datum_format = False
End If
Dim ordner_ebene As String
If xmlRegel.Attributes.GetNamedItem("ordner_ebene") IsNot Nothing Then
ordner_ebene = Convert.ToString(xmlRegel.Attributes("ordner_ebene").Value)
Else
ordner_ebene = False
End If
Dim removeZeros As Boolean
Dim xx = xmlRegel.Attributes.GetNamedItem("removeZeros")
If xx IsNot Nothing Then
removeZeros = Convert.ToString(xmlRegel.Attributes("removeZeros").Value)
Else
removeZeros = False
End If
Select Case xmlRegel.Attributes("indexieren_aus").Value.ToString.ToUpper
Case "DATEI"
Select Case xmlRegel.Attributes("art").Value.ToString.ToUpper
Case "KOMPLETT"
Me._regeln(i) = New ClassDIRegel(id, xmlRegel.Attributes("zielindex").Value, aktiv, xmlRegel.Attributes("indexieren_aus").Value, datum_format, mit_endung)
Case "TRENNZEICHEN"
Me._regeln(i) = New ClassDIRegel(id, xmlRegel.Attributes("zielindex").Value, aktiv, xmlRegel.Attributes("indexieren_aus").Value, datum_format, xmlRegel.Attributes("trennzeichen").Value, _
Convert.ToInt32(xmlRegel.Attributes("position").Value), mit_endung, Nothing, removeZeros)
Case "BEREICH"
Me._regeln(i) = New ClassDIRegel(id, xmlRegel.Attributes("zielindex").Value, aktiv, xmlRegel.Attributes("indexieren_aus").Value, datum_format, _
Convert.ToInt32(xmlRegel.Attributes("position_von").Value), Convert.ToInt32(xmlRegel.Attributes("anzahl").Value), Nothing, removeZeros)
Case "REST"
Me._regeln(i) = New ClassDIRegel(id, xmlRegel.Attributes("zielindex").Value, aktiv, xmlRegel.Attributes("indexieren_aus").Value, datum_format, _
Convert.ToInt32(xmlRegel.Attributes("position_von").Value), mit_endung)
Case "DATEIENDUNG"
Me._regeln(i) = New ClassDIRegel(id, xmlRegel.Attributes("zielindex").Value, aktiv, xmlRegel.Attributes("indexieren_aus").Value, datum_format, xmlRegel.Attributes("dateiendung").Value, xmlRegel.Attributes("text").Value)
End Select
Case "ORDNER"
Select Case xmlRegel.Attributes("art").Value.ToString.ToUpper
Case "KOMPLETT"
Me._regeln(i) = New ClassDIRegel(id, xmlRegel.Attributes("zielindex").Value, aktiv, xmlRegel.Attributes("indexieren_aus").Value, datum_format, False, ordner_ebene)
Case "TRENNZEICHEN"
Me._regeln(i) = New ClassDIRegel(id, xmlRegel.Attributes("zielindex").Value, aktiv, xmlRegel.Attributes("indexieren_aus").Value, datum_format, xmlRegel.Attributes("trennzeichen").Value, Convert.ToInt32(xmlRegel.Attributes("position").Value), False, ordner_ebene)
Case "BEREICH"
Me._regeln(i) = New ClassDIRegel(id, xmlRegel.Attributes("zielindex").Value, aktiv, xmlRegel.Attributes("indexieren_aus").Value, datum_format, Convert.ToInt32(xmlRegel.Attributes("position_von").Value), Convert.ToInt32(xmlRegel.Attributes("anzahl").Value), ordner_ebene)
Case "REST"
Me._regeln(i) = New ClassDIRegel(id, xmlRegel.Attributes("zielindex").Value, aktiv, xmlRegel.Attributes("indexieren_aus").Value, datum_format, Convert.ToInt32(xmlRegel.Attributes("position_von").Value), False, ordner_ebene)
End Select
Case "FEST"
' === NOCH ZU IMPLEMENTIEREN ===
Me._regeln(i) = New ClassDIRegel(id, xmlRegel.Attributes("zielindex").Value, aktiv, xmlRegel.Attributes("indexieren_aus").Value, xmlRegel.Attributes("art").Value, datum_format)
End Select
Me._regeln(i)._profilname = Me._profilname
' Zähler für Profile erhöhen
i += 1
End If
Next
End If
End If
End If
End If
Catch ex As Exception
MsgBox("Die Regeln konnten nicht erfolgreich aus der XML-Konfiguration ausgelesen werden." & vbNewLine & vbNewLine & "Fehlernachricht: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Laden der Regeln aus der Konfiguration")
End Try
End Sub
#End Region
#Region "+++++ Properties +++++"
''' <summary>
''' Liefert die höchste ID der Regeln (aus XML-Datei) innerhalb eines Profils
''' </summary>
''' <returns>Liefert eine ID als Integer</returns>
''' <remarks></remarks>
Public ReadOnly Property HighestId() As Integer
Get
Try
If Me._profilname IsNot Nothing Then
If Not Me._profilname = "" Then
Dim xml As New Xml.XmlDocument()
' XML-Datei öffnen und laden
xml.Load(My.Settings.vDIConfigDatei)
' alle Regeln laden
Dim xmlNodes As Xml.XmlNodeList = xml.SelectNodes("Settings/Profile/Profil[@profilname='" & Me._profilname & "']/Regel")
If xmlNodes(xmlNodes.Count - 1) IsNot Nothing Then
If xmlNodes(xmlNodes.Count - 1).Attributes("id") IsNot Nothing Then
Return Convert.ToInt32(xmlNodes(xmlNodes.Count - 1).Attributes("id").Value)
End If
Else
Return 0
End If
End If
End If
Catch ex As Exception
MsgBox("Es konnte nicht die höchste ID der Regeln zu dem Profil '" & Me._profilname & "' ausgelesen werden." & vbNewLine & vbNewLine & "Fehlernachricht: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Zugriff auf XML-Konfiguration")
Return 0
End Try
End Get
End Property
''' <summary>
''' Liefert ein bestimmte Regel aus der Liste der Regeln
''' </summary>
''' <param name="index">Nullbasierter Index der Regel</param>
''' <returns>Liefert eine Regel vom Typ ClassDateiimportRegel</returns>
''' <remarks></remarks>
Public ReadOnly Property Regel(ByVal index As Integer) As ClassDIRegel
Get
If index >= 0 Then
If Me._regeln IsNot Nothing Then
Return Me._regeln(index)
Else
Return Nothing
End If
End If
Return Nothing
End Get
End Property
''' <summary>
''' Liefert die Anzahl der zugeordneten Regeln
''' </summary>
''' <returns>Liefert Anzahl der Regeln als Integer</returns>
''' <remarks></remarks>
Public ReadOnly Property Count() As Integer
Get
' Anzahl der Verknüpfungen zurückgeben
If Me._regeln IsNot Nothing Then
Return Me._regeln.Length
Else
Return 0
End If
End Get
End Property
#End Region
End Class

View File

@ -0,0 +1,68 @@
Imports System.Net.Mail
Public Class ClassDI_Email
Public Sub Send_EMail(ByVal vBody As String, Optional ByVal Test As Boolean = False)
'#### E-MAIL NACHRICHT VERSENDEN
Try
'######
Dim empfaenger As String()
If My.Settings.vDIMailEmpf <> "" Then
If My.Settings.vDIMailEmpf.Contains(";") Then
empfaenger = My.Settings.vDIMailEmpf.Split(";")
Else
ReDim Preserve empfaenger(0)
empfaenger(0) = My.Settings.vDIMailEmpf
End If
'Für jeden Empfänger eine Neue Mail erzeugen
For Each _mailempfaenger As String In empfaenger
' Neue Nachricht erzeugen:
Dim message As New MailMessage(My.Settings.vDIMailFrom, _mailempfaenger, My.Settings.vDIMailBetreff & " Domain: " & Environment.UserDomainName, _
"<font face=""Arial"">" & My.Settings.vDIMailBody & vBody & "<br>>> Maschine: " & Environment.MachineName & "<br>" & "<br>>> Domain-Name: " & Environment.UserDomainName & "<br>" & _
"<br>>> Gesendet am: " & My.Computer.Clock.LocalTime.ToShortDateString & "-" & _
My.Computer.Clock.LocalTime.ToLongTimeString & "</font>")
' create and add the attachment(s) */
'Dim logfile As String = ClassLogger.DateiSpeicherort & "\" & ClassLogger.DateiPrefix & System.DateTime.Now.ToString("yyyy_MM_dd") & ".txt"
'If logfile.Contains("\\") Then
' logfile = logfile.Replace("\\", "\")
'End If
'Dim Attachment As Attachment = New Attachment(logfile)
'message.Attachments.Add(Attachment)
With message
.IsBodyHtml = True
End With
'Einen SMTP Client erzeugen und Anmeldungsinformationen hinterlegen
Dim emailClient As New SmtpClient(My.Settings.vSMTP)
'Email mit Authentifizierung
Dim SMTPUserInfo As New System.Net.NetworkCredential(My.Settings.vMailUser.Trim, My.Settings.vMailPW.Trim) ', My.Settings.vDomain)
emailClient.UseDefaultCredentials = False
emailClient.Credentials = SMTPUserInfo
emailClient.Port = My.Settings.vemailPort
emailClient.DeliveryMethod = SmtpDeliveryMethod.Network
'*Send the message */
emailClient.Send(message)
ClassLoggerDI.Add("==> Fehler Email erfolgreich an " & _mailempfaenger & " versendet!", False)
ClassLoggerDI.Add("==> Text: " & vBody, False)
If Test = True Then
MsgBox("Email an " & _mailempfaenger & "erfolgreich versendet!", MsgBoxStyle.Information, "Erfolgsmeldung:")
End If
Next
End If
'######
Catch ex As Exception
If Test = True Then
MsgBox("Fehler im Mailversand:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler im Mailversand DI:")
Else
ClassLoggerNI.Add(">> Achtung: Fehler in Mailversand: " & ex.Message, False)
End If
End Try
End Sub
End Class

View File

@ -0,0 +1,3 @@
Public Class ClassLDAP
End Class

View File

@ -0,0 +1,104 @@
Public Class ClassLicense
Private _modulename As String
Private _expires As Date
Private _Typ As String
Private _anzProf As String
' ++++++++++++++++++++++++++++++++++++++++++++++ Methoden ++++++++++++++++++++++++++++++++++++++++++++++
''' <summary>
''' Konstruktor der Lizenz
''' </summary>
''' <param name="modulename">Name des Moduls</param>
''' <param name="expires">Gültigkeitsdatum der Lizenz</param>
''' <remarks></remarks>
Sub New(ByVal modulename As String, ByVal expires As Date, ByVal _type As String, ByVal _anzprofile As String)
Me._modulename = modulename
Me._expires = expires
Me._Typ = _type
Me._anzProf = _anzprofile
End Sub
' ++++++++++++++++++++++++++++++++++++++++++++++ Properties ++++++++++++++++++++++++++++++++++++++++++++++
''' <summary>
''' Liefert oder setzt den Namen des Moduls für diese Lizenz
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public Property Modulename() As String
Get
Return Me._modulename
End Get
Set(ByVal value As String)
Me._modulename = value
End Set
End Property
''' <summary>
''' Liefert oder setzt das Gültigkeitsdatum der Lizenz für das Modul
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public Property Expires() As Date
Get
Return Me._expires
End Get
Set(ByVal value As Date)
Me._expires = value
End Set
End Property
''' <summary>
''' Liefert ob die Lizenz schon abgelaufen ist
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property IsExpired()
Get
If Date.Today > Me._expires Then
Return True
Else
Return False
End If
End Get
End Property
''' <summary>
''' Liefert den Typend er Lizenz
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public Property Type() As String
Get
Return Me._Typ
End Get
Set(ByVal value As String)
Me._Typ = value
End Set
End Property
''' <summary>
''' Liefert die Anzahl der Profile
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public Property Anz_Profile() As String
Get
Return Me._anzProf
End Get
Set(ByVal value As String)
Me._anzProf = value
End Set
End Property
End Class

View File

@ -0,0 +1,237 @@
Imports System.Text
Imports System.Security.Cryptography
Imports System.Collections.ObjectModel
Public Class ClassLicenseManager
Private _password As String
Private _key As String
Public Shared _licenses As ClassLicenses
Public licenseString As String
Public licenseStringArray(,) As String
' ++++++++++++++++++++++++++++++++++++++++++++++ Methoden ++++++++++++++++++++++++++++++++++++++++++++++
''' <summary>
''' Konstruktor für den Lizenz-Manager
''' </summary>
''' <param name="password">Passwort zum Entschlüsseln des Lizenzkeys</param>
''' <param name="key">verschlüsselter Lizenzkey</param>
''' <remarks></remarks>
Sub New(ByVal password As String, ByVal key As String)
Me._password = password
Me._key = key
Me.licenseString = Me.DecodeLicenseKey(Me._key)
Me.licenseStringArray = Me.SplitLicenseString(Me.licenseString)
Me.LoadLicenses()
End Sub
''' <summary>
''' Konstruktor für den Lizenz-Manager ohne License load
''' </summary>
''' <param name="password">Passwort zum Entschlüsseln des Lizenzkeys</param>
''' <remarks></remarks>
Sub New(ByVal password As String)
Me._password = password
End Sub
''' <summary>
''' Lädt alle Lizenzen aus dem Lizenz-Array
''' </summary>
''' <remarks></remarks>
Public Sub LoadLicenses()
ClassLicenseManager._licenses = New ClassLicenses(Me.licenseStringArray)
End Sub
''' <summary>
''' Codiert eine Zeichenkette
''' </summary>
''' <param name="str">zu verschlüsselnde Zeichenkette</param>
''' <param name="password">das zur Verschlüsselung verwendete Passwort</param>
''' <returns>liefert eine verschlüsselte Zeichenkette</returns>
''' <remarks></remarks>
Public Function EncodeLicenseKey(ByVal str As String, ByVal password As String)
Dim rd As New RijndaelManaged
Dim md5 As New MD5CryptoServiceProvider
Dim key() As Byte = md5.ComputeHash(Encoding.UTF8.GetBytes(password))
md5.Clear()
rd.Key = key
rd.GenerateIV()
Dim iv() As Byte = rd.IV
Dim ms As New IO.MemoryStream
ms.Write(iv, 0, iv.Length)
Dim cs As New CryptoStream(ms, rd.CreateEncryptor, CryptoStreamMode.Write)
Dim data() As Byte = System.Text.Encoding.UTF8.GetBytes(Str)
cs.Write(data, 0, data.Length)
cs.FlushFinalBlock()
Dim encdata() As Byte = ms.ToArray()
Dim result As String = Convert.ToBase64String(encdata)
cs.Close()
rd.Clear()
Return result
End Function
''' <summary>
''' Decodiert den verschlüsselten Lizenzkey
''' </summary>
''' <param name="licenseCodeStr">verschlüsselter Lizenzkey</param>
''' <returns></returns>
''' <remarks></remarks>
Public Function DecodeLicenseKey(ByVal licenseCodeStr As String)
Try
Dim rd As New RijndaelManaged
Dim rijndaelIvLength As Integer = 16
Dim md5 As New MD5CryptoServiceProvider
Dim key() As Byte = md5.ComputeHash(Encoding.UTF8.GetBytes(Me._password))
md5.Clear()
Dim encdata() As Byte
Dim ms
Dim iv(15) As Byte
Dim cs As CryptoStream
Dim data() As Byte
Try
encdata = Convert.FromBase64String(licenseCodeStr)
ms = New IO.MemoryStream(encdata)
ms.Read(iv, 0, rijndaelIvLength)
rd.IV = iv
rd.Key = key
cs = New CryptoStream(ms, rd.CreateDecryptor, CryptoStreamMode.Read)
ReDim data(ms.Length - rijndaelIvLength)
Catch ex As Exception
Return Nothing
End Try
Dim i As Integer = 0
Try
i = cs.Read(data, 0, data.Length)
Dim result As String = System.Text.Encoding.UTF8.GetString(data, 0, i)
cs.Close()
rd.Clear()
Return result
Catch ex As Exception
'MsgBox("Falsches Passwort")
Return Nothing
End Try
Catch ex As Exception
End Try
'MsgBox("Falsches Passwort")
Return Nothing
End Function
''' <summary>
''' Zerlegt den entschlüsselten Lizenzkey
''' </summary>
''' <param name="licenseStr">entschlüsselter Lizenzkey</param>
''' <returns></returns>
''' <remarks></remarks>
Public Function SplitLicenseString(ByVal licenseStr As String) As String(,)
Try
If licenseStr IsNot Nothing Then
Dim licenseTemp() As String = licenseStr.Split(";")
Dim licenses(licenseTemp.Length, 3) As String
Dim i As Integer = 0
If licenseTemp IsNot Nothing Then
For Each lizenz As String In licenseTemp
Dim temp() = lizenz.Split(":")
licenses(i, 0) = temp(0)
licenses(i, 1) = temp(1)
If temp.Length > 2 Then
licenses(i, 2) = temp(2)
licenses(i, 3) = temp(3)
Dim expires As Date
Date.TryParse(licenses(i, 1), expires)
End If
i += 1
Next
Return licenses
End If
End If
Catch ex As Exception
MsgBox("Fehler in SplitLicenseString: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
Return Nothing
End Function
' ++++++++++++++++++++++++++++++++++++++++++++++ Properties ++++++++++++++++++++++++++++++++++++++++++++++
''' <summary>
''' Liefert das Passwort zum Entschlüsseln des Lizenzschlüssels
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property Password() As String
Get
Return Me._password
End Get
End Property
''' <summary>
''' Liefert eine Sammlung von Lizenzobjekten
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property Licenses() As ClassLicenses
Get
Return ClassLicenseManager._licenses
End Get
End Property
''' <summary>
''' Liefert oder setzt den Lizenzschlüssel
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public Property Key() As String
Get
Return Me._key
End Get
Set(ByVal value As String)
Me._key = value
End Set
End Property
End Class

View File

@ -0,0 +1,136 @@
Public Class ClassLicenses
Private _licenses() As ClassLicense
Private _machine As String
Private _company As String
Private _WDLizenz As String
' ++++++++++++++++++++++++++++++++++++++++++++++ Methoden ++++++++++++++++++++++++++++++++++++++++++++++
''' <summary>
''' Konstruktor für die Lizenzen-Sammlung
''' </summary>
''' <param name="licenseStringArray">In Array übertragene Lizenzinformationen</param>
''' <remarks></remarks>
Sub New(ByVal licenseStringArray(,) As String)
Try
If licenseStringArray IsNot Nothing Then
Dim license1() As String = licenseStringArray(0, 1).Split("#")
If license1.Length > 1 Then
Me._machine = license1(1)
Else
Me._machine = "all"
End If
Me._company = license1(0) 'licenseStringArray(0, 1)
frmStart._company = Me._company
Dim i As Integer
For i = 1 To licenseStringArray.GetLength(0) - 2 ' minus 2, weil GetLength nicht null-basiert ist und das erste Element Firma ist
Dim anzprof As String = licenseStringArray(i, 3)
If anzprof.ToLower = "unlimited" Then
anzprof = 99
End If
Me.Add(licenseStringArray(i, 0), licenseStringArray(i, 1), licenseStringArray(i, 2), anzprof)
Next
End If
Catch ex As Exception
MsgBox("Fehler bei Auslesen der Licenses: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
''' <summary>
''' Fügt der Lizenz-Sammlung eine Lizenz hinzu
''' </summary>
''' <param name="modulename">Name des Moduls, für das eine Lizenz angelegt werden soll</param>
''' <param name="expires">Datum der Gültigkeit der Lizenz</param>
''' <remarks></remarks>
Public Sub Add(ByVal modulename As String, ByVal expires As Date, ByVal type As String, ByVal anzprof As String)
If Me._licenses IsNot Nothing Then
ReDim Preserve Me._licenses(Me._licenses.Length)
Else
ReDim Preserve Me._licenses(0)
End If
Me._licenses(Me._licenses.Length - 1) = New ClassLicense(modulename, expires, type, anzprof)
End Sub
''' <summary>
''' Liefert eine Lizenz an Hand des Modulnamens
''' </summary>
''' <param name="modulename">Name des zu suchenden Moduls</param>
''' <returns>liefert ein Lizenzobjekt</returns>
''' <remarks></remarks>
Public Function GetLicense(ByVal modulename As String) As ClassLicense
If Me._licenses IsNot Nothing Then
For Each license As ClassLicense In Me._licenses
If license.Modulename = modulename Then
Return license
End If
Next
End If
Return Nothing
End Function
' ++++++++++++++++++++++++++++++++++++++++++++++ Properties ++++++++++++++++++++++++++++++++++++++++++++++
''' <summary>
''' liefert eine Sammlung von Lizenzobjekten
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property Licenses() As ClassLicense()
Get
Return Me._licenses
End Get
End Property
''' <summary>
''' liefert eine Lizenz an Hand des Modulnamens
''' </summary>
''' <param name="modulename">Name des zu suchenden Moduls</param>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public ReadOnly Property License(ByVal modulename As String) As ClassLicense
Get
Return Me.GetLicense(modulename)
End Get
End Property
''' <summary>
''' Liefert oder setzt den Firmennamen des Lizenzeigentümers
''' </summary>
''' <value></value>
''' <returns></returns>
''' <remarks></remarks>
Public Property Company() As String
Get
Return Me._company
End Get
Set(ByVal value As String)
Me._company = value
End Set
End Property
Public Property machine() As String
Get
Return Me._machine
End Get
Set(ByVal value As String)
Me._machine = value
End Set
End Property
End Class

View File

@ -0,0 +1,281 @@
Imports System.IO
Public Class ClassLoggerDI
Private Shared DateiSpeicherort As String = Nothing
Private Shared DateiPrefix As String = ""
Private Shared Datei As IO.File = Nothing
Private Shared Dateiname As String = ""
Private Shared StreamWriter As IO.StreamWriter = Nothing
Private Shared HasInformedAboutError As Boolean = False
' eine Art Konstruktor
Public Shared Sub Init(ByVal speicherort As String, Optional ByVal prefix As String = "", Optional ByVal appendFile As Boolean = True)
' initialisiert den Speicherort
ClassLoggerDI.SetSpeicherort(speicherort)
' wenn ein Präfix gesetzt wurde
If Not prefix = "" Then
' initialisiert das Prefix
ClassLoggerDI.SetPrefix(prefix)
End If
Dim str As String = ClassLoggerDI.DateiSpeicherort & "\" & ClassLoggerDI.DateiPrefix & System.DateTime.Now.ToString("yyyy_MM_dd") & ".txt"
Dim anz As Integer = 1
Do While File.Exists(str)
Dim info As New FileInfo(str)
Dim length As Long = info.Length
If length > 5000000 Then
str = IO.Path.GetDirectoryName(str)
str = str & "\" & ClassLoggerDI.DateiPrefix & System.DateTime.Now.ToString("yyyy_MM_dd") & "(" & anz.ToString & ").txt"
anz = anz + 1
Else
Exit Do
End If
Loop
ClassLoggerDI.Dateiname = str
If Not appendFile Then
' der Versuch die Datei zu löschen
'Try
' My.Computer.FileSystem.DeleteFile(ClassNILogger.Dateiname, FileIO.UIOption.OnlyErrorDialogs, FileIO.RecycleOption.DeletePermanently)
'Catch ex As Exception
' ' bei Fehler besteht kein Schreibrecht auf die Datei oder Datei existiert nicht
' ' ALSO: alles Okay soweit
'End Try
My.Computer.FileSystem.WriteAllText(ClassLoggerDI.Dateiname, String.Empty, False)
End If
' testen ob sich die Datei öffnen und beschreiben lässt
'ClassNILogger.CheckIsLogWritable()
End Sub
' legt den Speicherort fest
Public Shared Sub SetSpeicherort(ByVal speicherort As String)
Dim f As New IO.DirectoryInfo(My.Application.Info.DirectoryPath & "\Log")
If speicherort = "" Then
If f.Exists = False Then
IO.Directory.CreateDirectory(My.Application.Info.DirectoryPath & "\Log")
End If
ClassLoggerDI.DateiSpeicherort = My.Application.Info.DirectoryPath & "\Log\"
Else
ClassLoggerDI.DateiSpeicherort = speicherort
End If
End Sub
' legt das Prefix für den Dateinamen fest
Public Shared Sub SetPrefix(ByVal prefix As String)
ClassLoggerDI.DateiPrefix = prefix
End Sub
Public Shared Sub Add(ByVal information As String, Optional ByVal mit_prefix As Boolean = True)
If ClassLoggerDI.OpenFile Then
Try
If mit_prefix Then
ClassLoggerDI.StreamWriter.WriteLine(" # Nachricht (" & System.DateTime.Now & "): " & information)
Else
ClassLoggerDI.StreamWriter.WriteLine(information)
End If
ClassLoggerDI.CloseFile()
Catch e As Exception
ClassLoggerDI.ShowErrorMessage()
End Try
Else
ClassLoggerDI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal information As String)
If ClassLoggerDI.OpenFile Then
Try
ClassLoggerDI.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ClassFunction & " => " & information)
ClassLoggerDI.CloseFile()
Catch e As Exception
ClassLoggerDI.ShowErrorMessage()
End Try
Else
ClassLoggerDI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ex As Exception)
If ClassLoggerDI.OpenFile Then
Try
ClassLoggerDI.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "]")
ClassLoggerDI.CloseFile()
Catch e As Exception
ClassLoggerDI.ShowErrorMessage()
End Try
Else
ClassLoggerDI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ex As System.Data.OleDb.OleDbException) 'Oracle.DataAccess.Client.OracleException)
If ClassLoggerDI.OpenFile Then
Try
ClassLoggerDI.StreamWriter.WriteLine("OracleException (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "][" & ex.ErrorCode & "]")
ClassLoggerDI.CloseFile()
Catch e As Exception
ClassLoggerDI.ShowErrorMessage()
End Try
Else
ClassLoggerDI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal ex As Exception)
If ClassLoggerDI.OpenFile Then
Try
ClassLoggerDI.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "] => " & ClassFunction)
ClassLoggerDI.CloseFile()
Catch e As Exception
ClassLoggerDI.ShowErrorMessage()
End Try
Else
ClassLoggerDI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal ex As System.Data.OleDb.OleDbException) 'Oracle.DataAccess.Client.OracleException)
If ClassLoggerDI.OpenFile Then
Try
ClassLoggerDI.StreamWriter.WriteLine("OracleException (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "][" & ex.ErrorCode & "] => " & ClassFunction)
ClassLoggerDI.CloseFile()
Catch e As Exception
ClassLoggerDI.ShowErrorMessage()
End Try
Else
ClassLoggerDI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal information As String, ByVal ex As Exception)
If ClassLoggerDI.OpenFile Then
Try
ClassLoggerDI.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "] => " & ClassFunction & " => " & information)
ClassLoggerDI.CloseFile()
Catch e As Exception
ClassLoggerDI.ShowErrorMessage()
ClassLoggerDI.ShowErrorMessage()
End Try
Else
ClassLoggerDI.ShowErrorMessage()
End If
End Sub
' öffnet eine Datei zum Schreiben
Private Shared Function OpenFile()
Try
' wenn ein Speicherort festgelegt wurde
If Not ClassLoggerDI.DateiSpeicherort = Nothing Then
' den Dateienamen definieren
Dim dateiname As String = ClassLoggerDI.Dateiname
' Datei anlegen wenn noch nicht vorhanden
My.Computer.FileSystem.WriteAllText(dateiname, String.Empty, True)
' die Datei zum Schreiben öffnen
ClassLoggerDI.StreamWriter = New IO.StreamWriter(dateiname, True, System.Text.Encoding.UTF8)
End If
' wenn die Datei erfolgreich geöffnet wurde
If ClassLoggerDI.StreamWriter IsNot Nothing Then
Return True
Else
Return False
End If
Catch ex As Exception
Return False
End Try
End Function
' öffnet eine Datei zum Schreiben
Private Shared Function OpenFile(ByVal DateiSpeicherort As String, ByVal DateiPrefix As String)
Try
' wenn ein Speicherort festgelegt wurde
If Not DateiSpeicherort = Nothing And ClassLoggerDI.CheckIsLogWritable() Then
' den Dateienamen definieren
Dim dateiname As String = ClassLoggerDI.Dateiname
' Datei anlegen wenn noch nicht vorhanden
My.Computer.FileSystem.WriteAllText(dateiname, String.Empty, True)
' die Datei zum Schreiben öffnen
ClassLoggerDI.StreamWriter = New IO.StreamWriter(dateiname, True, System.Text.Encoding.UTF8)
End If
' wenn die Datei erfolgreich geöffnet wurde
If ClassLoggerDI.StreamWriter IsNot Nothing Then
Return True
Else
Return False
End If
Catch ex As Exception
Return False
End Try
End Function
' schliesst die geöffnete Datei
Private Shared Sub CloseFile()
' wenn eine Datei geöffnet ist
If ClassLoggerDI.StreamWriter IsNot Nothing Then
' die Datei schliessen
ClassLoggerDI.StreamWriter.Close()
ClassLoggerDI.StreamWriter = Nothing
End If
End Sub
Public Shared Function CheckIsLogWritable()
If ClassLoggerDI.OpenFile Then
Try
ClassLoggerDI.CloseFile()
Catch e As Exception
ClassLoggerDI.ShowErrorMessage()
Return False
End Try
Else
ClassLoggerDI.ShowErrorMessage()
Return False
End If
Return True
End Function
Public Shared Function CheckIsLogWritable(ByVal vDateiSpeicherort As String, ByVal vDateiPrefix As String)
If ClassLoggerDI.OpenFile(vDateiSpeicherort, vDateiPrefix) Then
Try
ClassLoggerDI.CloseFile()
Catch e As Exception
ClassLoggerDI.ShowErrorMessage()
Return False
End Try
Else
ClassLoggerDI.ShowErrorMessage()
Return False
End If
Return True
End Function
Private Shared Sub ShowErrorMessage()
If Not ClassLoggerDI.HasInformedAboutError Then
My.Settings.errortext = "Beim Öffnen der Logdatei ist ein Fehler aufgetreten. Bitte stellen Sie sicher das Sie sowohl über entsprechende Schreibrechte im Verzeichnis, als auch über ausreichend Speicherplatz zum Speichern der Logdatei verfügen." & vbNewLine & vbNewLine & _
"Es wird keine Logdatei angelegt oder beschrieben." & vbNewLine & "Im Folgenden werden Sie über Fehler, den Log betreffend nicht weiter informiert, um den Ablauf der Nachindexierung nicht zu stören."
My.Settings.Save()
frmError.Show()
'MsgBox("Beim Öffnen der Logdatei ist ein Fehler aufgetreten. Bitte stellen Sie sicher das Sie sowohl über entsprechende Schreibrechte im Verzeichnis, als auch über ausreichend Speicherplatz zum Speichern der Logdatei verfügen." & _
' vbNewLine & vbNewLine & "Es wird keine Logdatei angelegt oder beschrieben." & vbNewLine & vbNewLine & "Im folgenden werden Sie über Fehler, den Log betreffend nicht weiter informiert, um den Ablauf des Dateiimporters nicht zu stören.", _
' MsgBoxStyle.Information, "DI: Fehler beim Öffnen der Logdatei")
ClassLoggerDI.HasInformedAboutError = True
End If
End Sub
End Class

View File

@ -0,0 +1,300 @@
Imports System.IO
Public Class ClassLoggerNI
Public Shared DateiSpeicherort As String = Nothing
Private Shared DateiPrefix As String = ""
Private Shared Datei As IO.File = Nothing
Public Shared LogDateiname As String = ""
Private Shared StreamWriter As IO.StreamWriter = Nothing
Private Shared HasInformedAboutError As Boolean = False
' eine Art Konstruktor
Public Shared Sub Init(ByVal speicherort As String, Optional ByVal prefix As String = "", Optional ByVal appendFile As Boolean = True)
' initialisiert den Speicherort
ClassLoggerNI.SetSpeicherort(speicherort)
' wenn ein Prfix gesetzt wurde
If Not prefix = "" Then
' initialisiert das Prefix
ClassLoggerNI.SetPrefix(prefix)
End If
Dim str As String = ClassLoggerNI.DateiSpeicherort & "\" & ClassLoggerNI.DateiPrefix & System.DateTime.Now.ToString("yyyy_MM_dd") & ".txt"
Dim anz As Integer = 1
Do While File.Exists(str)
Dim info As New FileInfo(str)
Dim length As Long = info.Length
If length > 5000000 Then
str = IO.Path.GetDirectoryName(str)
str = str & "\" & ClassLoggerNI.DateiPrefix & System.DateTime.Now.ToString("yyyy_MM_dd") & "(" & anz.ToString & ").txt"
anz = anz + 1
Else
Exit Do
End If
Loop
'ClassLoggerNI.Dateiname = ClassLoggerNI.DateiSpeicherort & "\" & ClassLoggerNI.DateiPrefix & System.DateTime.Now.ToString("yyyy_MM_dd") & ".txt"
ClassLoggerNI.LogDateiname = str
If Not appendFile Then
' der Versuch die Datei zu löschen
'Try
' My.Computer.FileSystem.DeleteFile(ClassNILogger.Dateiname, FileIO.UIOption.OnlyErrorDialogs, FileIO.RecycleOption.DeletePermanently)
'Catch ex As Exception
' ' bei Fehler besteht kein Schreibrecht auf die Datei oder Datei existiert nicht
' ' ALSO: alles Okay soweit
'End Try
My.Computer.FileSystem.WriteAllText(ClassLoggerNI.LogDateiname, String.Empty, False)
End If
' testen ob sich die Datei öffnen und beschreiben lässt
'ClassNILogger.CheckIsLogWritable()
End Sub
Public Shared Sub LogEntry(ByVal _error As String, Optional _mitPraefix As Boolean = False, Optional _inJedemFallLoggen As Boolean = False)
If My.Settings.vLogErrorsonly = False Or _inJedemFallLoggen = True Then
Select Case _mitPraefix
Case False
ClassLoggerNI.Add(Now.ToString & " " & _error, False)
Case True
ClassLoggerNI.Add(Now.ToString & " " & _error, True)
End Select
End If
End Sub
' legt den Speicherort fest
Public Shared Sub SetSpeicherort(ByVal speicherort As String)
Dim log_folder As String = My.Application.Info.DirectoryPath & "\Log"
Dim folder As New IO.DirectoryInfo(log_folder)
If speicherort = "" Then
If folder.Exists = False Then
IO.Directory.CreateDirectory(log_folder)
End If
ClassLoggerNI.DateiSpeicherort = log_folder
Else
ClassLoggerNI.DateiSpeicherort = speicherort
End If
End Sub
' legt das Prefix für den Dateinamen fest
Public Shared Sub SetPrefix(ByVal prefix As String)
ClassLoggerNI.DateiPrefix = prefix
End Sub
Public Shared Sub Add(ByVal information As String, Optional ByVal mit_prefix As Boolean = True)
If ClassLoggerNI.OpenFile Then
Try
If mit_prefix Then
ClassLoggerNI.StreamWriter.WriteLine("Nachricht (" & System.DateTime.Now & "): " & information)
Else
ClassLoggerNI.StreamWriter.WriteLine(Now.ToString & " " & information)
End If
ClassLoggerNI.CloseFile()
Catch e As Exception
ClassLoggerNI.ShowErrorMessage()
End Try
Else
ClassLoggerNI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal information As String)
If ClassLoggerNI.OpenFile Then
Try
ClassLoggerNI.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ClassFunction & " => " & information)
ClassLoggerNI.CloseFile()
Catch e As Exception
ClassLoggerNI.ShowErrorMessage()
End Try
Else
ClassLoggerNI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ex As Exception)
If ClassLoggerNI.OpenFile Then
Try
ClassLoggerNI.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "]")
ClassLoggerNI.CloseFile()
Catch e As Exception
ClassLoggerNI.ShowErrorMessage()
End Try
Else
ClassLoggerNI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ex As System.Data.OleDb.OleDbException) 'Oracle.DataAccess.Client.OracleException)
If ClassLoggerNI.OpenFile Then
Try
ClassLoggerNI.StreamWriter.WriteLine("OracleException (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "][" & ex.ErrorCode & "]")
ClassLoggerNI.CloseFile()
Catch e As Exception
ClassLoggerNI.ShowErrorMessage()
End Try
Else
ClassLoggerNI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal ex As Exception)
If ClassLoggerNI.OpenFile Then
Try
ClassLoggerNI.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "] => " & ClassFunction)
ClassLoggerNI.CloseFile()
Catch e As Exception
ClassLoggerNI.ShowErrorMessage()
End Try
Else
ClassLoggerNI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal ex As System.Data.OleDb.OleDbException) 'Oracle.DataAccess.Client.OracleException)
If ClassLoggerNI.OpenFile Then
Try
ClassLoggerNI.StreamWriter.WriteLine("OracleException (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "][" & ex.ErrorCode & "] => " & ClassFunction)
ClassLoggerNI.CloseFile()
Catch e As Exception
ClassLoggerNI.ShowErrorMessage()
End Try
Else
ClassLoggerNI.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal information As String, ByVal ex As Exception)
If ClassLoggerNI.OpenFile Then
Try
ClassLoggerNI.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "] => " & ClassFunction & " => " & information)
ClassLoggerNI.CloseFile()
Catch e As Exception
ClassLoggerNI.ShowErrorMessage()
End Try
Else
ClassLoggerNI.ShowErrorMessage()
End If
End Sub
' öffnet eine Datei zum Schreiben
Private Shared Function OpenFile()
Try
' wenn ein Speicherort festgelegt wurde
If Not ClassLoggerNI.DateiSpeicherort = Nothing Then
' den Dateienamen definieren
Dim dateiname As String = ClassLoggerNI.LogDateiname
' Datei anlegen wenn noch nicht vorhanden
My.Computer.FileSystem.WriteAllText(dateiname, String.Empty, True)
' die Datei zum Schreiben öffnen
ClassLoggerNI.StreamWriter = New IO.StreamWriter(dateiname, True, System.Text.Encoding.UTF8)
End If
' wenn die Datei erfolgreich geöffnet wurde
If ClassLoggerNI.StreamWriter IsNot Nothing Then
Return True
Else
Return False
End If
Catch ex As Exception
Return False
End Try
End Function
' öffnet eine Datei zum Schreiben
Private Shared Function OpenFile(ByVal DateiSpeicherort As String, ByVal DateiPrefix As String)
Try
' wenn ein Speicherort festgelegt wurde
If Not DateiSpeicherort = Nothing And ClassLoggerNI.CheckIsLogWritable() Then
' den Dateienamen definieren
Dim dateiname As String = ClassLoggerNI.LogDateiname
' Datei anlegen wenn noch nicht vorhanden
My.Computer.FileSystem.WriteAllText(dateiname, String.Empty, True)
' die Datei zum Schreiben öffnen
ClassLoggerNI.StreamWriter = New IO.StreamWriter(dateiname, True, System.Text.Encoding.UTF8)
End If
' wenn die Datei erfolgreich geöffnet wurde
If ClassLoggerNI.StreamWriter IsNot Nothing Then
Return True
Else
Return False
End If
Catch ex As Exception
Return False
End Try
End Function
' schliesst die geöffnete Datei
Private Shared Sub CloseFile()
' wenn eine Datei geöffnet ist
If ClassLoggerNI.StreamWriter IsNot Nothing Then
' die Datei schliessen
ClassLoggerNI.StreamWriter.Close()
ClassLoggerNI.StreamWriter = Nothing
End If
End Sub
Public Shared Function CheckIsLogWritable()
If ClassLoggerNI.OpenFile Then
Try
ClassLoggerNI.CloseFile()
Catch e As Exception
ClassLoggerNI.ShowErrorMessage()
Return False
End Try
Else
ClassLoggerNI.ShowErrorMessage()
Return False
End If
Return True
End Function
Public Shared Function CheckIsLogWritable(ByVal vDateiSpeicherort As String, ByVal vDateiPrefix As String)
If ClassLoggerNI.OpenFile(vDateiSpeicherort, vDateiPrefix) Then
Try
ClassLoggerNI.CloseFile()
Catch e As Exception
ClassLoggerNI.ShowErrorMessage()
Return False
End Try
Else
ClassLoggerNI.ShowErrorMessage()
Return False
End If
Return True
End Function
Private Shared Sub ShowErrorMessage()
If Not ClassLoggerNI.HasInformedAboutError Then
My.Settings.errortext = "Beim Öffnen der Logdatei ist ein Fehler aufgetreten. Bitte stellen Sie sicher das Sie sowohl über entsprechende Schreibrechte im Verzeichnis, als auch über ausreichend Speicherplatz zum Speichern der Logdatei verfügen." & vbNewLine & vbNewLine & _
"Es wird keine Logdatei angelegt oder beschrieben." & vbNewLine & "Im Folgenden werden Sie über Fehler, den Log betreffend nicht weiter informiert, um den Ablauf der Nachindexierung nicht zu stören."
My.Settings.Save()
frmError.Show()
'MsgBox("Beim Öffnen der Logdatei ist ein Fehler aufgetreten. Bitte stellen Sie sicher das Sie sowohl über entsprechende Schreibrechte im Verzeichnis, als auch über ausreichend Speicherplatz zum Speichern der Logdatei verfügen." & vbNewLine & vbNewLine & _
' "Es wird keine Logdatei angelegt oder beschrieben." & vbNewLine & vbNewLine & "Im folgenden werden Sie über Fehler, den Log betreffend nicht weiter informiert, um den Ablauf der Nachindexierung nicht zu stören.", _
' MsgBoxStyle.Information, "NI: Fehler beim Öffnen der Logdatei")
ClassLoggerNI.HasInformedAboutError = True
End If
End Sub
End Class

View File

@ -0,0 +1,265 @@
Public Class ClassLoggerService
Private Shared DateiSpeicherort As String = Nothing
Private Shared DateiPrefix As String = ""
Private Shared Datei As IO.File = Nothing
Private Shared Dateiname As String = ""
Private Shared StreamWriter As IO.StreamWriter = Nothing
Private Shared HasInformedAboutError As Boolean = False
' eine Art Konstruktor
Public Shared Sub Init(ByVal speicherort As String, Optional ByVal prefix As String = "", Optional ByVal appendFile As Boolean = True)
' initialisiert den Speicherort
ClassLoggerService.SetSpeicherort(speicherort)
' wenn ein Prfix gesetzt wurde
If Not prefix = "" Then
' initialisiert das Prefix
ClassLoggerService.SetPrefix(prefix)
End If
ClassLoggerService.Dateiname = ClassLoggerService.DateiSpeicherort & "\" & ClassLoggerService.DateiPrefix & System.DateTime.Now.ToString("yyyy_MM_dd") & ".txt"
If Not appendFile Then
' der Versuch die Datei zu löschen
'Try
' My.Computer.FileSystem.DeleteFile(ClassNILogger.Dateiname, FileIO.UIOption.OnlyErrorDialogs, FileIO.RecycleOption.DeletePermanently)
'Catch ex As Exception
' ' bei Fehler besteht kein Schreibrecht auf die Datei oder Datei existiert nicht
' ' ALSO: alles Okay soweit
'End Try
My.Computer.FileSystem.WriteAllText(ClassLoggerService.Dateiname, String.Empty, False)
End If
' testen ob sich die Datei öffnen und beschreiben lässt
'ClassNILogger.CheckIsLogWritable()
End Sub
' legt den Speicherort fest
Public Shared Sub SetSpeicherort(ByVal speicherort As String)
Dim f As New IO.DirectoryInfo(My.Application.Info.DirectoryPath & "\Log")
If speicherort = "" Then
If f.Exists = False Then
IO.Directory.CreateDirectory(My.Application.Info.DirectoryPath & "\Log")
End If
ClassLoggerService.DateiSpeicherort = My.Application.Info.DirectoryPath & "\Log\"
Else
ClassLoggerService.DateiSpeicherort = speicherort
End If
End Sub
' legt das Prefix für den Dateinamen fest
Public Shared Sub SetPrefix(ByVal prefix As String)
ClassLoggerService.DateiPrefix = prefix
End Sub
Public Shared Sub Add(ByVal information As String, Optional ByVal mit_prefix As Boolean = True)
If ClassLoggerService.OpenFile Then
Try
If mit_prefix Then
ClassLoggerService.StreamWriter.WriteLine("Nachricht (" & System.DateTime.Now & "): " & information)
Else
ClassLoggerService.StreamWriter.WriteLine(information)
End If
ClassLoggerService.CloseFile()
Catch e As Exception
ClassLoggerService.ShowErrorMessage()
End Try
Else
ClassLoggerService.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal information As String)
If ClassLoggerService.OpenFile Then
Try
ClassLoggerService.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ClassFunction & " => " & information)
ClassLoggerService.CloseFile()
Catch e As Exception
ClassLoggerService.ShowErrorMessage()
End Try
Else
ClassLoggerService.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ex As Exception)
If ClassLoggerService.OpenFile Then
Try
ClassLoggerService.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "]")
ClassLoggerService.CloseFile()
Catch e As Exception
ClassLoggerService.ShowErrorMessage()
End Try
Else
ClassLoggerService.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ex As System.Data.OleDb.OleDbException) 'Oracle.DataAccess.Client.OracleException)
If ClassLoggerService.OpenFile Then
Try
ClassLoggerService.StreamWriter.WriteLine("OracleException (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "][" & ex.ErrorCode & "]")
ClassLoggerService.CloseFile()
Catch e As Exception
ClassLoggerService.ShowErrorMessage()
End Try
Else
ClassLoggerService.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal ex As Exception)
If ClassLoggerService.OpenFile Then
Try
ClassLoggerService.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "] => " & ClassFunction)
ClassLoggerService.CloseFile()
Catch e As Exception
ClassLoggerService.ShowErrorMessage()
End Try
Else
ClassLoggerService.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal ex As System.Data.OleDb.OleDbException) 'Oracle.DataAccess.Client.OracleException)
If ClassLoggerService.OpenFile Then
Try
ClassLoggerService.StreamWriter.WriteLine("OracleException (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "][" & ex.ErrorCode & "] => " & ClassFunction)
ClassLoggerService.CloseFile()
Catch e As Exception
ClassLoggerService.ShowErrorMessage()
End Try
Else
ClassLoggerService.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal information As String, ByVal ex As Exception)
If ClassLoggerService.OpenFile Then
Try
ClassLoggerService.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "] => " & ClassFunction & " => " & information)
ClassLoggerService.CloseFile()
Catch e As Exception
ClassLoggerService.ShowErrorMessage()
End Try
Else
ClassLoggerService.ShowErrorMessage()
End If
End Sub
' öffnet eine Datei zum Schreiben
Private Shared Function OpenFile()
Try
' wenn ein Speicherort festgelegt wurde
If Not ClassLoggerService.DateiSpeicherort = Nothing Then
' den Dateienamen definieren
Dim dateiname As String = ClassLoggerService.Dateiname
' Datei anlegen wenn noch nicht vorhanden
My.Computer.FileSystem.WriteAllText(dateiname, String.Empty, True)
' die Datei zum Schreiben öffnen
ClassLoggerService.StreamWriter = New IO.StreamWriter(dateiname, True, System.Text.Encoding.UTF8)
End If
' wenn die Datei erfolgreich geöffnet wurde
If ClassLoggerService.StreamWriter IsNot Nothing Then
Return True
Else
Return False
End If
Catch ex As Exception
Return False
End Try
End Function
' öffnet eine Datei zum Schreiben
Private Shared Function OpenFile(ByVal DateiSpeicherort As String, ByVal DateiPrefix As String)
Try
' wenn ein Speicherort festgelegt wurde
If Not DateiSpeicherort = Nothing And ClassLoggerService.CheckIsLogWritable() Then
' den Dateienamen definieren
Dim dateiname As String = ClassLoggerService.Dateiname
' Datei anlegen wenn noch nicht vorhanden
My.Computer.FileSystem.WriteAllText(dateiname, String.Empty, True)
' die Datei zum Schreiben öffnen
ClassLoggerService.StreamWriter = New IO.StreamWriter(dateiname, True, System.Text.Encoding.UTF8)
End If
' wenn die Datei erfolgreich geöffnet wurde
If ClassLoggerService.StreamWriter IsNot Nothing Then
Return True
Else
Return False
End If
Catch ex As Exception
Return False
End Try
End Function
' schliesst die geöffnete Datei
Private Shared Sub CloseFile()
' wenn eine Datei geöffnet ist
If ClassLoggerService.StreamWriter IsNot Nothing Then
' die Datei schliessen
ClassLoggerService.StreamWriter.Close()
ClassLoggerService.StreamWriter = Nothing
End If
End Sub
Public Shared Function CheckIsLogWritable()
If ClassLoggerService.OpenFile Then
Try
ClassLoggerService.CloseFile()
Catch e As Exception
ClassLoggerService.ShowErrorMessage()
Return False
End Try
Else
ClassLoggerService.ShowErrorMessage()
Return False
End If
Return True
End Function
Public Shared Function CheckIsLogWritable(ByVal vDateiSpeicherort As String, ByVal vDateiPrefix As String)
If ClassLoggerService.OpenFile(vDateiSpeicherort, vDateiPrefix) Then
Try
ClassLoggerService.CloseFile()
Catch e As Exception
ClassLoggerService.ShowErrorMessage()
Return False
End Try
Else
ClassLoggerService.ShowErrorMessage()
Return False
End If
Return True
End Function
Private Shared Sub ShowErrorMessage()
If Not ClassLoggerService.HasInformedAboutError Then
MsgBox("Beim Öffnen der Logdatei ist ein Fehler aufgetreten. Bitte stellen Sie sicher das Sie sowohl über entsprechende Schreibrechte im Verzeichnis, als auch über ausreichend Speicherplatz zum Speichern der Logdatei verfügen." & vbNewLine & vbNewLine & "Es wird keine Logdatei angelegt oder beschrieben." & vbNewLine & vbNewLine & "Im folgenden werden Sie über Fehler, den Log betreffend nicht weiter informiert, um den Ablauf der Nachindexierung nicht zu stören.", MsgBoxStyle.Information, "Fehler beim Öffnen der Logdatei")
ClassLoggerService.HasInformedAboutError = True
End If
End Sub
End Class

View File

@ -0,0 +1,356 @@
Public Class ClassMI_Profile
Private Shared _profiles() As ClassMI_Profil
Public Shared xmlConfigFile As String
Public Shared aktivesProfil As ClassMI_Profil
Public Shared aktivesProfilAusProfileigenschaften As Boolean = False
Public Shared _windream As New ClassWindream_allgemein
'Public Shared xmlConfigFile As String = My.Settings.vConfigDatei
'Private Shared config As ClassMerkatorIntegrationKonfiguration = New ClassMerkatorIntegrationKonfiguration()
Public Shared Sub Init()
xmlConfigFile = My.Application.Info.DirectoryPath & "\" & My.Settings.vMIConfigDatei
ClassMI_Profile.LoadFromXmlFile()
' 3b. Windream initialisieren (Connection, Session, ... aufbauen)
_windream.Init()
'If ClassMI_Profile._parentClass.Config IsNot Nothing Then
' If ClassMI_Profile._parentClass.Config.isInitialized Then
' ClassMI_Profile.LoadFromXmlFile()
' Else
' ClassMI_Profile._parentClass.Config.Init()
' ClassMI_Profile.LoadFromXmlFile()
' End If
'End If
End Sub
Public Shared Function IsXmlAccessable()
Dim xml As New Xml.XmlDocument
Try
' XML-Datei laden und speichern um Zugriff zu testen
xml.Load(xmlConfigFile)
xml.Save(xmlConfigFile)
Return True
Catch ex As Exception
Try
If My.Settings.vLogErrorsonly = False Then MsgBox("System kann nicht auf Konfig-Datei " & vbNewLine & xmlConfigFile & vbNewLine & " zugreifen! (Nicht vorhanden bzw Syntaxfehler)" & vbNewLine & "Datei wird neu erstellt!", MsgBoxStyle.Exclamation, "Achtung:")
Dim fw As System.IO.StreamWriter = New System.IO.StreamWriter(xmlConfigFile)
fw.WriteLine("<?xml version=""1.0"" encoding=""ISO-8859-1"" standalone=""yes""?>")
fw.WriteLine("<Settings>")
fw.WriteLine("<Profile>")
fw.WriteLine("</Profile>")
fw.WriteLine("</Settings>")
fw.Close()
Return True
Catch e2 As Exception
Return False
End Try
End Try
End Function
Public Shared Sub LoadFromXmlFile()
Dim i As Integer = 0
Dim xml As Xml.XmlDocument
ClassMI_Profile._profiles = Nothing
If xmlConfigFile Is Nothing Then Exit Sub
If Not xmlConfigFile = "" Then
If ClassMI_Profile.IsXmlAccessable() Then
xml = New Xml.XmlDocument()
xml.Load(xmlConfigFile)
' Anzahl der Profilelemente in der XML-Datei zählen
Dim anzProfile = xml.SelectNodes("Settings/Profile/Profil").Count
' wenn mindestens ein Profilelement eingetragen ist
If anzProfile > 0 Then
' alle Profile laden
Dim xmlNodes As Xml.XmlNodeList = xml.SelectNodes("Settings/Profile/Profil")
' alle Profile der XML-Datei durchlaufen
'For i As Integer = 0 To anzProfile - 1
For Each xmlProfil As Xml.XmlNode In xmlNodes
' prüfen ob ein Profilname angegeben wurde
If xmlProfil.Attributes("profilname") IsNot Nothing And xmlProfil.Attributes("dokumenttyp") IsNot Nothing Then
' ein Element an Items anhängen
ReDim Preserve ClassMI_Profile._profiles(i)
' das Profilobjekt erzeugen
ClassMI_Profile._profiles(i) = New ClassMI_Profil( _
xmlProfil.Attributes("profilname").Value, _
_windream.GetObjecttypeByName(xmlProfil.Attributes("dokumenttyp").Value), _
xmlProfil.Attributes("servername").Value, _
xmlProfil.Attributes("zeige_suchmaske").Value, _
xmlProfil.Attributes("wdf_suche").Value, _
xmlProfil.Attributes("dokumenttyp").Value _
)
Dim profil As ClassMI_Profil = ClassMI_Profile._profiles(i)
Dim xmlProfilParam As Xml.XmlNode = xml.SelectSingleNode("//Settings/Profile/Profil[@profilname='" & profil.OriginalProfilname & "']")
' wenn der Knoten NICHT gefunden wurde -> Vorgang abbrechen
If xmlProfilParam IsNot Nothing Then
For Each param As Xml.XmlElement In xmlProfilParam.ChildNodes
profil.AddParameter(param.Attributes("index").Value)
Next
' die neuen Werte in die XML-Datei schreiben
End If
' wenn ein Dokumenttyp in der XML-Datei angegeben wurde, diesen dem Objekt zuweisen
'If xmlProfil.Attributes("dokumenttyp") IsNot Nothing Then Me.Items(i).DokumentTyp = ClassMerkatorIntegrationWindream.ErzeugeObjekttypNachName(xmlProfil.Attributes("dokumenttyp").Value)
' wenn eine windream-Suche (Speicherort) in der XML-Datei angegeben wurde, diesen dem Objekt zuweisen
'If xmlProfil.Attributes("windreamsuche") IsNot Nothing Then Me.Items(i).WindreamSuche = xmlProfil.Attributes("windreamsuche").Value
' Zähler für Profile erhöhen
i += 1
End If
Next
End If
End If
End If
End Sub
' gibt ein einzelnes Profil-Objekt zurück
Public Shared Function getProfilByName(ByVal profilname As String) As ClassMI_Profil
' alle Profile durchlaufen
For Each profil As ClassMI_Profil In _profiles
' wenn der aktuelle Profilname mit dem gesuchten Profilnamen übereinstimmt
If profil.Profilname = profilname Then
' das Profil zurückgeben
Return profil
End If
Next
' sonst nichts zurückgeben
Return Nothing
End Function
Public Shared Function Exists(ByVal profilname As String)
If ClassMI_Profile.Count > 0 Then
For Each profil As ClassMI_Profil In ClassMI_Profile._profiles
If profil.OriginalProfilname = profilname Then
Return True
End If
Next
End If
Return False
End Function
'Private Shared Function IsXmlIsAccessable()
' Dim xml As New Xml.XmlDocument
' Try
' ' XML-Datei laden und speichern um Zugriff zu testen
' xml.Load(ClassMI_Profile._parentClass.Config.XmlConfigFile)
' xml.Save(ClassMI_Profile._parentClass.Config.XmlConfigFile)
' Return True
' Catch ex As Exception
' Try
' Dim fw As System.IO.StreamWriter = New System.IO.StreamWriter(ClassMI_Profile._parentClass.Config.XmlConfigFile)
' fw.WriteLine("<?xml version=""1.0"" encoding=""ISO-8859-1"" standalone=""yes""?>")
' fw.WriteLine("<Settings>")
' fw.WriteLine(" <Profile />")
' fw.WriteLine("</Settings>")
' fw.Close()
' Return True
' Catch e2 As Exception
' Return False
' End Try
' End Try
'End Function
' erstellt ein neues Profil
'Public Sub Add(ByVal profilname As String, ByVal dokumenttyp As WINDREAMLib.WMObject, Optional ByVal windreamsuche As String = "")
Public Shared Function Add(ByVal profilname As String, ByVal dokumenttyp As String, ByVal servername As String, _
ByVal zeige_suchmaske As Boolean, ByVal wdf_suche As String)
Try
If Not ClassMI_Profile.Exists(profilname) Then
Dim xml As New Xml.XmlDocument
Dim xmlProfil As Xml.XmlElement
If ClassMI_Profile.IsXmlAccessable() Then
'XML-Datei laden
xml.Load(xmlConfigFile)
Try
'versuchen die XML-Beschreibung zu schreiben
xml.InsertBefore(xml.CreateXmlDeclaration("1.0", "ISO-8859-1", "yes"), xml.ChildNodes(0))
Catch ex As Exception
' wenn dies nicht funktioniert, ist die Beschreibung schon vorhanden
End Try
' wenn die Hauptknoten noch nicht eingetragen wurden, sollen diese angelegt werden
If xml.DocumentElement Is Nothing Then xml.AppendChild(xml.CreateElement("Settings"))
If xml.SelectNodes("Settings/Profile") Is Nothing Then xml.AppendChild(xml.CreateElement("Profile"))
' dann ein neues Profil anlegen
xmlProfil = xml.CreateElement("Profil")
' dem Profil die Attribute zuweisen
xmlProfil.SetAttribute("profilname", profilname)
xmlProfil.SetAttribute("dokumenttyp", dokumenttyp)
xmlProfil.SetAttribute("servername", servername)
xmlProfil.SetAttribute("zeige_suchmaske", zeige_suchmaske)
xmlProfil.SetAttribute("wdf_suche", wdf_suche)
' und in den Hauptknoten 'Profile' einhängen
xml.SelectSingleNode("Settings/Profile").AppendChild(xmlProfil)
' XML-Datei speichern
xml.Save(xmlConfigFile)
' die Liste der Profile im Objekt vergrößern
ReDim Preserve ClassMI_Profile._profiles(ClassMI_Profile.Count)
' und das neue Profil dem Profilarray anhängen und die Eigenschaften zuweisen
ClassMI_Profile._profiles(ClassMI_Profile.Count - 1) = New ClassMI_Profil( _
profilname, _
_windream.GetObjecttypeByName(dokumenttyp), _
servername, _
zeige_suchmaske, _
wdf_suche, _
dokumenttyp)
'Me.Items(Me.Count - 1).DokumentTyp = dokumenttyp
'Me.Items(Me.Count - 1).WindreamSuche = windreamsuche
Return True
Else
Return False
End If
Else
Return False
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Anlegen eines Profils")
Return False
End Try
End Function
Public Shared Function Delete(ByVal profilname As String) As Boolean
Try
If ClassMI_Profile.Exists(profilname) Then
' XML-Objekt initialisieren
Dim xml As New Xml.XmlDocument
If ClassMI_Profile.IsXmlAccessable() Then
' XML-Datei laden
xml.Load(xmlConfigFile)
' XML-Element auswählen
Dim node As Xml.XmlElement = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & profilname & "']")
If node IsNot Nothing Then
' Element löschen
node.ParentNode.RemoveChild(node)
' XML-Datei speichern
xml.Save(xmlConfigFile)
End If
' *** Array umschreiben (Element aus Array entfernen) ***
If ClassMI_Profile.Exists(profilname) Then
' temporäres Array erzeugen
Dim tempItems() As ClassMI_Profil = ClassMI_Profile._profiles
ClassMI_Profile._profiles = Nothing
Dim i As Integer = 0
' alle Verknüpfungen durchlaufen
For Each item As ClassMI_Profil In tempItems
' wenn es sich nicht um das gelöschte handelt
If Not item.OriginalProfilname = profilname Then
' Größe anpassen
ReDim Preserve ClassMI_Profile._profiles(i)
' die Verknüpfung in das Items-Array übertragen
ClassMI_Profile._profiles(i) = item
' Counter hochzählen
i += 1
End If
Next
Return True
Else
Return False
End If
Else
Return False
End If
Else
Return False
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Löschen eines Profils")
Return False
End Try
End Function
Public Shared ReadOnly Property Profile() As ClassMI_Profil()
Get
Return ClassMI_Profile._profiles
End Get
End Property
Public Shared ReadOnly Property Count() As Integer
Get
' Anzahl der Profile zurückgeben
If ClassMI_Profile._profiles IsNot Nothing Then
Return ClassMI_Profile._profiles.Length
Else
Return 0
End If
End Get
End Property
End Class

View File

View File

@ -0,0 +1,181 @@
Imports System.Data.SqlClient
Imports System.IO
Imports WINDREAMLib
Public Class ClassMO_RE
Private Shared _windreamNI As ClassNIWindream
Public Shared Function Return_Datatable(Select_anweisung As String)
Try
Dim SQLconnection As New SqlClient.SqlConnection(My.Settings.DD_DMSConnectionString)
Dim SQLcommand As New SqlCommand(Select_anweisung, SQLconnection)
SQLconnection.Open()
Dim adapter1 As SqlDataAdapter = New SqlDataAdapter(SQLcommand)
Dim dt As DataTable = New DataTable()
adapter1.Fill(dt)
SQLconnection.Close()
Return dt
Catch ex As Exception
ClassLoggerNI.Add("FEHLER IN MO_RE Return_Datatable: " & ex.Message & " SQL: " & Select_anweisung)
Return Nothing
End Try
End Function
Public Shared Function Execute_Command(ExecuteCMD As String)
Try
Dim SQLconnection As New SqlClient.SqlConnection(My.Settings.DD_DMSConnectionString)
Dim SQLcommand As New SqlCommand(ExecuteCMD, SQLconnection)
SQLconnection.Open()
SQLcommand.ExecuteNonQuery()
SQLcommand.Dispose()
SQLconnection.Close()
Return True
Catch ex As Exception
ClassLoggerNI.Add("###FEHLER IN MO_RE Execute_Command: " & ex.Message & " SQL: " & ExecuteCMD)
Return False
End Try
End Function
Public Shared Function RUN_MO_RE(ByVal dokument As WMObject, ByVal vDatei As String, ByVal _MRDOKART As Object, ByVal _MRKUNDE As Object) As String
Try
Dim DT As New DataTable
Dim _MRDeskrIndex
Dim _path, _praefix, _kunde, _ziel As String
If My.Settings.vLogErrorsonly = False Then
ClassLoggerNI.Add(" - Ausgelesener Kundenidentifikator: " & _MRKUNDE, False)
ClassLoggerNI.Add(" - Ausgelesene Dokumentart: " & _MRDOKART, False)
End If
If _MRKUNDE Is Nothing Or _MRKUNDE = "" Then
'Auslesen der MORE-Konfiguration für Kunde und Standard
DT = Return_Datatable("SELECT * FROM VWMO_RE_DOKUMENTARTZUORDNUNG WHERE (DOKUMENTART = '" & _MRDOKART.ToString & "') AND (UPPER(KUNDEN_NAME) = 'STANDARD')")
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Select: " & "SELECT * FROM VWMO_RE_DOKUMENTARTZUORDNUNG WHERE (DOKUMENTART = '" & _MRDOKART.ToString & "') AND (UPPER(KUNDEN_NAME) = 'STANDARD')", False)
Else
If _MRKUNDE = "Standard-VZ" Then _MRKUNDE = "Standard"
'Auslesen der MORE-Konfiguration für Kunde und Dokart
DT = Return_Datatable("SELECT * FROM VWMO_RE_DOKUMENTARTZUORDNUNG WHERE (DOKUMENTART = '" & _MRDOKART.ToString & "') AND (UPPER(KUNDEN_NAME) = UPPER('" & _MRKUNDE.ToString & "'))")
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Select2: " & "SELECT * FROM VWMO_RE_DOKUMENTARTZUORDNUNG WHERE (DOKUMENTART = '" & _MRDOKART.ToString & "') AND (UPPER(KUNDEN_NAME) = UPPER('" & _MRKUNDE.ToString & "'))", False)
End If
If DT.Rows.Count = 0 Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Für Kunden keine Daten - also Standard lesen", False)
'Für diesen Kunden wurde keine Konfiguration gefunden also den Standard laden
DT = Return_Datatable("SELECT * FROM VWMO_RE_DOKUMENTARTZUORDNUNG WHERE (DOKUMENTART = '" & _MRDOKART.ToString & "') AND (UPPER(KUNDEN_NAME) = 'STANDARD')")
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Select3: " & "SELECT * FROM VWMO_RE_DOKUMENTARTZUORDNUNG WHERE (DOKUMENTART = '" & _MRDOKART.ToString & "') AND (UPPER(KUNDEN_NAME) = 'STANDARD')", False)
End If
If DT.Rows.Count = 1 Then
'Es liegt sowohl Kunde als auch Dokumentart vor
Try
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Versuch für den Index " & DT.Rows(0).Item("INDEXNAME").ToString & " den Indexwert auszulesen", False)
_MRDeskrIndex = dokument.GetVariableValue(DT.Rows(0).Item("INDEXNAME").ToString)
Catch ex As Exception
ClassLoggerNI.Add(" Achtung: ein eindeutiger/deskriptiver Indexwert existiert noch nicht! Dokument kann nicht verschoben und umbenannt werden!", False)
Return False
End Try
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Ausgelesener Deskriptiver Index: " & _MRDeskrIndex, False)
'Datei-Paramter auslesen
Dim extension As String = Path.GetExtension(vDatei)
Dim myFolderPath As String
myFolderPath = Path.GetDirectoryName(vDatei)
Dim _WDLaufwerk, _newfilename As String
_WDLaufwerk = My.Settings.MRWD_Laufwerk
_path = DT.Rows(0).Item("DOKUMENTARTORDNER")
'####### _path anpassen evtl Unterordner
'Unterordner Index 1
Dim _UOindex As String = DT.Rows(0).Item("UO_IDX1")
Dim _UOindex_Value As String = ""
If _UOindex <> "" Then
_UOindex_Value = dokument.GetVariableValue(_UOindex)
If Not _UOindex_Value Is Nothing Then
_path &= "\" & _UOindex_Value
If _path.Contains(" 00:00:00") Then _path = _path.Replace(" 00:00:00", "")
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Unterordner 1 soll erzeugt werden - Path '" & _path & "'", False)
End If
End If
'Unterordner Index 2
_UOindex = DT.Rows(0).Item("UO_IDX2")
If _UOindex <> "" Then
_UOindex_Value = dokument.GetVariableValue(_UOindex)
If Not _UOindex_Value Is Nothing Then
_path &= "\" & _UOindex_Value
If _path.Contains(" 00:00:00") Then _path = _path.Replace(" 00:00:00", "")
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Unterordner 2 soll erzeugt werden - Path '" & _path & "'", False)
End If
End If
_UOindex = DT.Rows(0).Item("UO_IDX3")
If _UOindex <> "" Then
_UOindex_Value = dokument.GetVariableValue(_UOindex)
If Not _UOindex_Value Is Nothing Then
_path &= "\" & _UOindex_Value
If _path.Contains(" 00:00:00") Then _path = _path.Replace(" 00:00:00", "")
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Unterordner 3 soll erzeugt werden - Path '" & _path & "'", False)
End If
End If
'#####
_kunde = DT.Rows(0).Item("KUNDEN_NAME")
_praefix = DT.Rows(0).Item("PRAEFIX")
'Dem Neuen Dateinamen schon mal das Präfix mitgeben
_newfilename = _praefix
_newfilename = _newfilename & _MRDeskrIndex & extension
If My.Settings.vLogErrorsonly = False Then
ClassLoggerNI.Add(" - Ausgelesener Pfad: " & _path, False)
ClassLoggerNI.Add(" - Neuer Dateiname: " & _newfilename, False)
End If
'### VERSIONIERUNG ###
Dim version As Integer = 2
Dim Stammname As String = _newfilename.Substring(0, _newfilename.LastIndexOf("."))
Dim neuername As String = _newfilename.Substring(0, _newfilename.LastIndexOf("."))
'Überprüfen ob File existiert
Do While file_exists(_path & "\" & neuername & extension, False) = True
neuername = Stammname & "~" & version
_newfilename = neuername & extension
version = version + 1
Loop
_ziel = _path & "\" & _newfilename
If My.Settings.vLogErrorsonly = False Then
If neuername.Contains("~") Then ClassLoggerNI.Add(" - Neuer Dateiname: " & _newfilename, False)
ClassLoggerNI.Add(" - Neuer Dateiname: " & _newfilename, False)
ClassLoggerNI.Add(" - Quelle: " & vDatei, False)
ClassLoggerNI.Add(" - Ziel: " & _ziel, False)
End If
If myFolderPath <> _path Then
My.Computer.FileSystem.MoveFile(vDatei, _ziel)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Erfolgsmeldung - Datei wurde erfolgreich verschoben", False)
'ClassLoggerNI.Add(" ######### Erfolgsmeldung - Datei wurde erfolgreich umbenannt und verschoben ###########", False)
Else
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Verschieben nicht notwendig: Ordnerpfad identisch!", False)
My.Computer.FileSystem.RenameFile(vDatei, _newfilename)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Erfolgsmeldung - Datei wurde erfolgreich umbenannt", False)
End If
Execute_Command("INSERT INTO TBMO_RE_HISTORY (FILE_ORIGINAL, FILE_NEW, KUNDE, INDEX1, INDEX2, ERSTELLTWER) VALUES " & _
"('" & vDatei & "','" & _ziel & "','" & _kunde & "','" & _MRDeskrIndex & "','" & _MRDOKART & "','ToolCollection MORE')")
Return _ziel
End If
Catch ex As Exception
ClassLoggerNI.Add(" Fehler in ClassMO_RE - RUN_MO_RE", False)
ClassLoggerNI.Add(" ## Fehlermeldung ##", False)
ClassLoggerNI.Add(" " & ex.Message, False)
Return False
End Try
End Function
Private Shared Function file_exists(ByVal _file As String, ByVal suche As Boolean)
Try
If System.IO.File.Exists(_file) Then
Return True
Else
Return False
End If
Catch ex As Exception
ClassLoggerNI.Add("Fehler in Funktion bei: file_exists - _file: " & _file & " - Fehler: ", ex)
Return False
End Try
End Function
End Class

View File

@ -0,0 +1,335 @@
Public Class ClassMoReDokumentart
Private _originalProfilname As String
Private _originaldokumentartindex As String
Private _originaldokumentart As String
Private _originalidxadressnrString As String
Private _originalWindreamSuche As String
Private _originalnamenskonvention As String
Private _originalzielort As String
Private _profilname As String
Private _dokumentartindex As String
Private _dokumentart As String
Private _idxadressnrString As String
Private _idxadressnr As WINDREAMLib.WMObject
Private _windreamSuche As String
Private _namenskonvention As String
Private _zielort As String
Public Shared _windream As New ClassWindream_allgemein
Private _saved As Boolean
'Private _config As ClassNachindexierungKonfiguration = New ClassNachindexierungKonfiguration
'Private _xmlConfigFile As String = My.Settings.vConfigDatei
''' <summary>
''' Konstruktor zum Anlegen oder Laden eines Profils
''' </summary>
''' <param name="profilname">Profilname</param>
''' <param name="dokumenttyp_string"></param>
''' <param name="windreamSuche"></param>
''' <remarks></remarks>
Sub New(ByVal vprofilname As String, ByVal vdokumentartindex As String, ByVal vdokumentart As String, ByVal vidxadressnrString As String, ByVal vwindreamSuche As String, _
ByVal vnamenskonvention As String, ByVal vZielort As String)
Me._dokumentart = vdokumentart
Me._dokumentartindex = vdokumentartindex
Me._idxadressnrString = vidxadressnrString
Me._idxadressnr = _windream.GetObjecttypeByName(vidxadressnrString)
Me._namenskonvention = vnamenskonvention
Me._zielort = vZielort
Me._profilname = vprofilname
Me._windreamSuche = vwindreamSuche
Me._originalProfilname = vprofilname
Me._originaldokumentartindex = vdokumentartindex
Me._originaldokumentart = vdokumentart
Me._originalidxadressnrString = vidxadressnrString
Me._originalnamenskonvention = vnamenskonvention
Me._originalWindreamSuche = vwindreamSuche
Me._originalzielort = vZielort
Me._saved = True
End Sub
''' <summary>
''' Konstruktor ohne Tätigkeit
''' </summary>
''' <remarks>wenn im Konstruktor kein Parameter übergeben wurde soll auch nichts gemacht werden</remarks>
Sub New()
End Sub
''' <summary>
''' Speichert das Profil
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
Public Function Save()
'Try
' wenn das Profil nicht gespeichert ist
If Not Me.IsSaved Then
' wenn ein Profilname für dieses Profil gesetzt ist
If Me._profilname IsNot Nothing And Me._originalProfilname IsNot Nothing Then
' XML-Datei initialisieren
Dim xml As New Xml.XmlDocument()
' Profil initialisieren
Dim xmlProfil As Xml.XmlElement
' XML-Datei öffnen und laden
xml.Load(My.Settings.vMoReConfigDatei)
' den XML-Knoten des Profils laden
xmlProfil = xml.SelectSingleNode("//Settings/Profile/Profil[@profilname='" & Me._originalProfilname & "']")
' wenn der Knoten NICHT gefunden wurde -> Vorgang abbrechen
If xmlProfil Is Nothing Then Return False
' die neuen Werte den Originalwerten zuweisen
Me._originalProfilname = Me._profilname
Me._originaldokumentartindex = Me._dokumentartindex
Me._originaldokumentart = Me._dokumentart
Me._originalidxadressnrString = Me._idxadressnrString
Me._originalWindreamSuche = Me._windreamSuche
Me._originalnamenskonvention = Me._namenskonvention
Me._originalzielort = Me._zielort
' die neuen Werte in die XML-Datei schreiben
xmlProfil.Attributes("profilname").Value = Me._profilname
xmlProfil.Attributes("dokumentartindex").Value = Me._dokumentartindex
xmlProfil.Attributes("dokumentart").Value = Me._dokumentart
xmlProfil.Attributes("adressnrString").Value = Me._idxadressnrString
xmlProfil.Attributes("windreamsuche").Value = Me._windreamSuche
xmlProfil.Attributes("namenskonvention").Value = Me._namenskonvention
xmlProfil.Attributes("zielort").Value = Me._zielort
' XML-Datei speichern
xml.Save(My.Settings.vMoReConfigDatei)
' Profil auf gespeichert setzen
Me._saved = True
MsgBox("Das Profil '" & Me._originalProfilname & "' wurde erfolgreich gespeichert.", MsgBoxStyle.Information, "Profil gespeichert")
Return True
Else
MsgBox("Es wurde kein Profilname für das Profil definiert.", MsgBoxStyle.Information, "Profil konnte nicht gespeichert werden")
Return False
End If
End If
Return False
'Catch ex As Exception
' MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Speichern eines Profils")
' Return False
'End Try
End Function
''' <summary>
''' Setzt im aktuellen Profil alle Einstellungen auf die Originalwerte zurück.
''' </summary>
''' <remarks></remarks>
Public Sub SetBackToOriginal()
Me._profilname = Me._originalProfilname
Me._dokumentartindex = Me._originaldokumentartindex
Me._dokumentart = Me._originaldokumentart
Me._idxadressnrString = Me._originalidxadressnrString
Me._namenskonvention = Me._originalnamenskonvention
Me._zielort = Me._originalzielort
Me._windreamSuche = Me._originalWindreamSuche
Me._originalProfilname = Me._profilname
Me._originalWindreamSuche = Me._windreamSuche
End Sub
''' <summary>
''' Setzt das Profil auf geändert.
''' </summary>
''' <remarks></remarks>
Public Sub setChanged()
' Profil auf geändert setzen
Me._saved = False
End Sub
''' <summary>
''' Setzt das Profil auf gespeichert.
''' </summary>
''' <remarks></remarks>
Public Sub setSaved()
' Profil auf gespeichert setzen
Me._saved = True
End Sub
Public ReadOnly Property HasChanges() As Boolean
Get
If Me._profilname = Me._originalProfilname And _
Me._dokumentart = Me._originaldokumentart And _
Me._dokumentartindex = Me._originaldokumentartindex And _
Me._idxadressnrString = Me._originalidxadressnrString And _
Me._namenskonvention = Me._originalnamenskonvention And _
Me._zielort = Me._originalzielort And _
Me._windreamSuche = Me._originalWindreamSuche Then
Return False
Else
Return True
End If
End Get
End Property
Public ReadOnly Property IsSaved() As Boolean
Get
Return Me._saved
End Get
End Property
Public Property OriginalProfilname() As String
Get
Return Me._originalProfilname
End Get
Set(ByVal value As String)
Me._originalProfilname = value
End Set
End Property
Public Property Profilname() As String
Get
Return Me._profilname
End Get
Set(ByVal value As String)
Me._profilname = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property OriginaldokumentartIndex() As String
Get
Return Me._originaldokumentartindex
End Get
Set(ByVal value As String)
Me._originaldokumentartindex = value
End Set
End Property
Public Property dokumentartIndex() As String
Get
Return Me._dokumentartindex
End Get
Set(ByVal value As String)
Me._dokumentartindex = value
Me.setChanged()
End Set
End Property
Public Property Originaldokumentart() As String
Get
Return Me._originaldokumentart
End Get
Set(ByVal value As String)
Me._originaldokumentart = value
End Set
End Property
Public Property Dokumentart() As String
Get
Return Me._dokumentart
End Get
Set(ByVal value As String)
Me._dokumentart = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property idxAdressNr() As String
Get
Return Me._idxadressnr
End Get
Set(ByVal value As String)
Me._idxadressnr = value
Me.setChanged()
End Set
End Property
Public Property OriginalidxAdressNr() As String
Get
Return Me._originalidxadressnrString
End Get
Set(ByVal value As String)
Me._originalidxadressnrString = value
End Set
End Property
Public Property OriginalNamenskonvention() As String
Get
Return Me._originalnamenskonvention
End Get
Set(ByVal value As String)
Me._originalnamenskonvention = value
End Set
End Property
Public Property Namenskonvention() As String
Get
Return Me._namenskonvention
End Get
Set(ByVal value As String)
Me._namenskonvention = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property OriginalZielort() As String
Get
Return Me._originalzielort
End Get
Set(ByVal value As String)
Me._originalzielort = value
End Set
End Property
Public Property Zielort() As String
Get
Return Me._zielort
End Get
Set(ByVal value As String)
Me._zielort = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property OriginalWindreamSuche() As String
Get
Return Me._originalWindreamSuche
End Get
Set(ByVal value As String)
Me._originalWindreamSuche = value
End Set
End Property
Public Property WindreamSuche() As String
Get
Return Me._windreamSuche
End Get
Set(ByVal value As String)
Me._windreamSuche = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
End Class

View File

@ -0,0 +1,282 @@
Public Class ClassMoReDokumentarten
Private Shared _profiles() As ClassMoReDokumentart
Public Shared _windream As New ClassWindream_allgemein
Public Shared xmlConfigFile As String
Public Shared Sub Init()
xmlConfigFile = My.Application.Info.DirectoryPath & "\" & My.Settings.vMoReConfigDatei
ClassMoReDokumentarten.LoadFromXmlFile()
' 3b. Windream initialisieren (Connection, Session, ... aufbauen)
_windream.Init()
End Sub
Public Shared Function IsXmlAccessable()
Dim xml As New Xml.XmlDocument
Try
' XML-Datei laden und speichern um Zugriff zu testen
xml.Load(xmlConfigFile)
xml.Save(xmlConfigFile)
Return True
Catch ex As Exception
Try
Dim fw As System.IO.StreamWriter = New System.IO.StreamWriter(xmlConfigFile)
fw.WriteLine("<?xml version=""1.0"" encoding=""ISO-8859-1"" standalone=""yes""?>")
fw.WriteLine("<Settings>")
fw.WriteLine("<Profile>")
fw.WriteLine("</Profile>")
fw.WriteLine("</Settings>")
fw.Close()
Return True
Catch e2 As Exception
Return False
End Try
End Try
End Function
Public Shared Sub LoadFromXmlFile()
Dim i As Integer = 0
Dim xml As Xml.XmlDocument
ClassMoReDokumentarten._profiles = Nothing
If xmlConfigFile Is Nothing Then Exit Sub
If Not xmlConfigFile = "" Then
If IsXmlAccessable() Then
xml = New Xml.XmlDocument()
xml.Load(xmlConfigFile)
' Anzahl der Profilelemente in der XML-Datei zählen
Dim anzProfile = xml.SelectNodes("Settings/Profile/Profil").Count
' wenn mindestens ein Profilelement eingetragen ist
If anzProfile > 0 Then
' alle Profile laden
Dim xmlNodes As Xml.XmlNodeList = xml.SelectNodes("Settings/Profile/Profil")
' alle Profile der XML-Datei durchlaufen
For Each xmlProfil As Xml.XmlNode In xmlNodes
' prüfen ob ein Profilname angegeben wurde
If xmlProfil.Attributes("profilname") IsNot Nothing And xmlProfil.Attributes("dokumentart") IsNot Nothing And _
xmlProfil.Attributes("windreamsuche") IsNot Nothing Then
' ein Element an Items anhängen
ReDim Preserve ClassMoReDokumentarten._profiles(i)
ClassMoReDokumentarten._profiles(i) = New ClassMoReDokumentart()
' das Profilobjekt erstellen
ClassMoReDokumentarten._profiles(i) = New ClassMoReDokumentart( _
xmlProfil.Attributes("profilname").Value, _
xmlProfil.Attributes("dokumentartindex").Value, _
xmlProfil.Attributes("dokumentart").Value, _
xmlProfil.Attributes("adressnrString").Value, _
xmlProfil.Attributes("windreamsuche").Value, _
xmlProfil.Attributes("namenskonvention").Value, _
xmlProfil.Attributes("zielort").Value)
' Zähler für Profile erhöhen
i += 1
End If
Next
End If
End If
End If
End Sub
' erstellt ein neues Profil
Public Shared Sub Add(ByVal vprofilname As String, ByVal vdokumentartindex As String, ByVal vdokumentartString As String, ByVal vidxadressnrString As String, ByVal vwindreamSuche As String, _
ByVal vnamenskonvention As String, ByVal vZielort As String)
Try
If Not ClassMoReDokumentarten.Exists(vprofilname) Then
Dim xml As New Xml.XmlDocument
Dim xmlProfil As Xml.XmlElement
If ClassMoReDokumentarten.IsXmlAccessable() Then
' XML-Datei laden
xml.Load(xmlConfigFile)
Try
' versuchen die XML-Beschreibung zu schreiben
xml.InsertBefore(xml.CreateXmlDeclaration("1.0", "ISO-8859-1", "yes"), xml.ChildNodes(0))
Catch ex As Exception
' wenn dies nicht funktioniert, ist die Beschreibung schon vorhanden
End Try
' wenn die Hauptknoten noch nicht eingetragen wurden, sollen diese angelegt werden
If xml.DocumentElement Is Nothing Then xml.AppendChild(xml.CreateElement("Settings"))
If xml.SelectSingleNode("Settings/Profile") Is Nothing Then xml.SelectSingleNode("Settings").AppendChild(xml.CreateElement("Profile"))
' dann ein neues Profil anlegen
xmlProfil = xml.CreateElement("Profil")
' dem Profil die Attribute zuweisen
xmlProfil.SetAttribute("profilname", vprofilname)
xmlProfil.SetAttribute("dokumentartindex", vdokumentartindex)
xmlProfil.SetAttribute("dokumentart", vdokumentartString)
xmlProfil.SetAttribute("adressnrString", vidxadressnrString)
xmlProfil.SetAttribute("windreamsuche", vwindreamSuche)
xmlProfil.SetAttribute("namenskonvention", vnamenskonvention)
xmlProfil.SetAttribute("zielort", vZielort)
' und in den Hauptknoten 'Profile' einhängen
xml.SelectSingleNode("Settings/Profile").AppendChild(xmlProfil)
' XML-Datei speichern
xml.Save(xmlConfigFile)
' die Liste der Profile im Objekt vergrößern
ReDim Preserve ClassMoReDokumentarten._profiles(ClassMoReDokumentarten.Count)
' das Profilobjekt erstellen
ClassMoReDokumentarten._profiles(ClassMoReDokumentarten.Count - 1) = New ClassMoReDokumentart( _
vprofilname, _
vdokumentartindex, _
vdokumentartString, _
vidxadressnrString, _
vwindreamSuche, _
vnamenskonvention, _
vZielort)
MsgBox("Das Profil '" & vprofilname & "' wurde erfolgreich angelegt!", MsgBoxStyle.Information, "Erfolgsmeldung:")
End If
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Anlegen eines Profils")
End Try
End Sub
Public Shared Function DeleteProfil(ByVal profilname As String) As Boolean
Try
If ClassMoReDokumentarten.Exists(profilname) Then
' XML-Objekt initialisieren
Dim xml As New Xml.XmlDocument
If ClassMoReDokumentarten.IsXmlAccessable() Then
' XML-Datei laden
xml.Load(xmlConfigFile)
' ***** Zuerst einmal das Profil heraus löschen ***** '
' XML-Element auswählen
Dim node As Xml.XmlElement = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & profilname & "']")
If node IsNot Nothing Then
' Element löschen
node.ParentNode.RemoveChild(node)
' XML-Datei speichern
xml.Save(xmlConfigFile)
End If
If ClassMoReDokumentarten.Exists(profilname) Then
' temporäres Array erzeugen
Dim tempItems() As ClassMoReDokumentart = ClassMoReDokumentarten._profiles
ClassMoReDokumentarten._profiles = Nothing
Dim i As Integer = 0
' alle Verknüpfungen durchlaufen
For Each item As ClassMoReDokumentart In tempItems
' wenn es sich nicht um das gelöschte handelt
If Not item.OriginalProfilname = profilname Then
' Größe anpassen
ReDim Preserve ClassMoReDokumentarten._profiles(i)
' die Verknüpfung in das Items-Array übertragen
ClassMoReDokumentarten._profiles(i) = item
' Counter hochzählen
i += 1
End If
Next
Return True
Else
Return False
End If
Else
Return False
End If
Else
Return False
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Löschen eines Profils")
Return False
End Try
End Function
Public Shared Function Exists(ByVal profilname As String)
If ClassMoReDokumentarten.Count > 0 Then
For Each profil As ClassMoReDokumentart In ClassMoReDokumentarten._profiles
If profil.OriginalProfilname = profilname Then
Return True
End If
Next
End If
Return False
End Function
' gibt ein einzelnes Profil-Objekt zurück
Public Shared Function getProfilByName(ByVal profilname As String) As ClassMoReDokumentart
' alle Profile durchlaufen
For Each profil As ClassMoReDokumentart In _profiles
' wenn der aktuelle Profilname mit dem gesuchten Profilnamen übereinstimmt
If profil.Profilname = profilname Then
' das Profil zurückgeben
Return profil
End If
Next
' sonst nichts zurückgeben
Return Nothing
End Function
Public Shared ReadOnly Property Profile() As ClassMoReDokumentart()
Get
Return ClassMoReDokumentarten._profiles
End Get
End Property
Public Shared ReadOnly Property Count() As Integer
Get
' Anzahl der Profile zurückgeben
If ClassMoReDokumentarten._profiles IsNot Nothing Then
Return ClassMoReDokumentarten._profiles.Length
Else
Return 0
End If
End Get
End Property
End Class

View File

@ -0,0 +1,517 @@
Public Class ClassMoReKonfiguration
Private _originalprofil As String
Private _originalDbArt As String
Private _originalDataSource As String
Private _originalUserId As String
Private _originalPassword As String
Private _originalInitialCatalog As String
Private _profil As String
Private _dbArt As String
Private _dataSource As String
Private _userId As String
Private _password As String
Private _initialCatalog As String
Public Shared xmlConfigFile As String
Private Shared _profile() As ClassMoReKonfiguration
Private _saved As Boolean
''' <remarks></remarks>
Sub New(ByVal vprofil As String, ByVal vdbArt As String, ByVal vdataSource As String, ByVal vuserId As String, _
ByVal vpassword As String, ByVal vinitialCatalog As String)
_profil = vprofil
Me._dbArt = vdbArt
Me._dataSource = vdataSource
Me._userId = vuserId
Me._password = vpassword
Me._initialCatalog = vinitialCatalog
_originalprofil = vprofil
Me._originalDbArt = vdbArt
Me._originalDataSource = vdataSource
Me._originalUserId = vuserId
Me._originalPassword = vpassword
Me._originalInitialCatalog = vinitialCatalog
Me._saved = True
End Sub
Public Shared Sub Init()
xmlConfigFile = My.Application.Info.DirectoryPath & "\" & My.Settings.vMoReBasConfigDatei
LoadFromXmlFile()
End Sub
Public Shared Sub LoadFromXmlFile()
Dim i As Integer = 0
Dim xml As Xml.XmlDocument
_profile = Nothing
If xmlConfigFile Is Nothing Then Exit Sub
If Not xmlConfigFile = "" Then
If IsXmlAccessable() Then
xml = New Xml.XmlDocument()
xml.Load(xmlConfigFile)
' Anzahl der Profilelemente in der XML-Datei zählen
Dim anzProfile = xml.SelectNodes("Settings/Profile/Profil").Count
' wenn mindestens ein Profilelement eingetragen ist
If anzProfile > 0 Then
' alle Profile laden
Dim xmlNodes As Xml.XmlNodeList = xml.SelectNodes("Settings/Profile/Profil")
' alle Profile der XML-Datei durchlaufen
For Each xmlProfil As Xml.XmlNode In xmlNodes
' prüfen ob ein Profilname angegeben wurde
If xmlProfil.Attributes("profil") IsNot Nothing And xmlProfil.Attributes("dbArt") IsNot Nothing And _
xmlProfil.Attributes("dataSource") IsNot Nothing Then
' ein Element an Items anhängen
ReDim Preserve _profile(i)
_profile(i) = New ClassMoReKonfiguration()
Dim initialCatalog As String = Nothing
Dim userId As String = Nothing
Dim password As String = Nothing
If xmlProfil.Attributes("userId") IsNot Nothing Then
userId = xmlProfil.Attributes("userId").Value
End If
If xmlProfil.Attributes("password") IsNot Nothing Then
password = xmlProfil.Attributes("password").Value
End If
If xmlProfil.Attributes("initialCatalog") IsNot Nothing Then
initialCatalog = xmlProfil.Attributes("initialCatalog").Value
End If
' das Profilobjekt erstellen
_profile(i) = New ClassMoReKonfiguration( _
xmlProfil.Attributes("profil").Value, _
xmlProfil.Attributes("dbArt").Value, _
xmlProfil.Attributes("dataSource").Value, _
userId, _
password, _
initialCatalog)
' Zähler für Profile erhöhen
i += 1
End If
Next
End If
End If
End If
End Sub
Public Shared Function IsXmlAccessable()
Dim xml As New Xml.XmlDocument
Try
' XML-Datei laden und speichern um Zugriff zu testen
xml.Load(xmlConfigFile)
xml.Save(xmlConfigFile)
Return True
Catch ex As Exception
Try
Dim fw As System.IO.StreamWriter = New System.IO.StreamWriter(xmlConfigFile)
fw.WriteLine("<?xml version=""1.0"" encoding=""ISO-8859-1"" standalone=""yes""?>")
fw.WriteLine("<Settings>")
fw.WriteLine("<Profile>")
fw.WriteLine("</Profile>")
fw.WriteLine("</Settings>")
fw.Close()
Return True
Catch e2 As Exception
Return False
End Try
End Try
End Function
' erstellt ein neues Profil
Public Shared Sub Add(ByVal vprofil As String, ByVal vdbArt As String, ByVal vdataSource As String, ByVal vuserId As String, _
ByVal vpassword As String, ByVal vinitialCatalog As String)
'Try
If Not ClassMoReKonfiguration.Exists(vprofil) Then
MsgBox("Gibts noch nicht!")
Dim xml As New Xml.XmlDocument
Dim xmlProfil As Xml.XmlElement
If ClassMoReKonfiguration.IsXmlAccessable() Then
' XML-Datei laden
xml.Load(xmlConfigFile)
Try
' versuchen die XML-Beschreibung zu schreiben
xml.InsertBefore(xml.CreateXmlDeclaration("1.0", "ISO-8859-1", "yes"), xml.ChildNodes(0))
Catch ex As Exception
' wenn dies nicht funktioniert, ist die Beschreibung schon vorhanden
End Try
' wenn die Hauptknoten noch nicht eingetragen wurden, sollen diese angelegt werden
If xml.DocumentElement Is Nothing Then xml.AppendChild(xml.CreateElement("Settings"))
If xml.SelectSingleNode("Settings/Profile") Is Nothing Then xml.SelectSingleNode("Settings").AppendChild(xml.CreateElement("Profile"))
' dann ein neues Profil anlegen
xmlProfil = xml.CreateElement("Profil")
' dem Profil die Attribute zuweisen
xmlProfil.SetAttribute("profil", vprofil)
xmlProfil.SetAttribute("dbArt", vdbArt)
xmlProfil.SetAttribute("dataSource", vdataSource)
'xmlProfil.SetAttribute("userID", userId)
'xmlProfil.SetAttribute("password", password)
'xmlProfil.SetAttribute("initialCatalog", initialCatalog)
If vuserId IsNot Nothing Then
xmlProfil.SetAttribute("userId", vuserId)
End If
If vpassword IsNot Nothing Then
xmlProfil.SetAttribute("password", vpassword)
End If
If vinitialCatalog IsNot Nothing Then
xmlProfil.SetAttribute("initialCatalog", vinitialCatalog)
End If
' und in den Hauptknoten 'Profile' einhängen
xml.SelectSingleNode("Settings/Profile").AppendChild(xmlProfil)
' XML-Datei speichern
xml.Save(xmlConfigFile)
' die Liste der Profile im Objekt vergrößern
ReDim Preserve ClassMoReKonfiguration._profile(ClassMoReKonfiguration.Count)
' das Profilobjekt erstellen
ClassMoReKonfiguration._profile(ClassMoReKonfiguration.Count - 1) = New ClassMoReKonfiguration( _
vprofil, _
vdbArt, _
vdataSource, _
vuserId, _
vpassword, _
vinitialCatalog)
MsgBox("Das Profil '" & vprofil & "' wurde erfolgreich angelegt!", MsgBoxStyle.Information, "Erfolgsmeldung:")
End If
End If
'Catch ex As Exception
' MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Anlegen eines Profils")
'End Try
End Sub
Public Shared ReadOnly Property Count() As Integer
Get
' Anzahl der Profile zurückgeben
If _profile IsNot Nothing Then
Return _profile.Length
Else
Return 0
End If
End Get
End Property
Public Shared Function Exists(ByVal profilname As String)
If ClassMoReKonfiguration.Count > 0 Then
For Each profil As ClassMoReKonfiguration In _profile
If profil.OriginalProfil = profilname Then
Return True
End If
Next
End If
Return False
End Function
'' gibt ein einzelnes Profil-Objekt zurück
Public Shared Function getProfilByName(ByVal profilname As String) As ClassMoReKonfiguration
If _profile Is Nothing Then
Return Nothing
Else
'alle Profile durchlaufen
For Each profil As ClassMoReKonfiguration In _profile
' wenn der aktuelle Profilname mit dem gesuchten Profilnamen übereinstimmt
If profil.Profil = profilname Then
' das Profil zurückgeben
Return profil
End If
Next
End If
End Function
''' <summary>
''' Konstruktor ohne Tätigkeit
''' </summary>
''' <remarks>wenn im Konstruktor kein Parameter übergeben wurde soll auch nichts gemacht werden</remarks>
Sub New()
End Sub
''' <summary>
''' Speichert das Profil
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
Public Function Save()
'Try
' wenn das Profil nicht gespeichert ist
If Not Me.IsSaved Then
' wenn ein Profilname für dieses Profil gesetzt ist
If Me._profil IsNot Nothing And Me._originalprofil IsNot Nothing Then
' XML-Datei initialisieren
Dim xml As New Xml.XmlDocument()
' Profil initialisieren
Dim xmlProfil As Xml.XmlElement
' XML-Datei öffnen und laden
xml.Load(My.Settings.vMoReBasConfigDatei)
' den XML-Knoten des Profils laden
xmlProfil = xml.SelectSingleNode("//Settings/Profile/Profil[@profil='" & Me._originalprofil & "']")
' wenn der Knoten NICHT gefunden wurde -> Vorgang abbrechen
If xmlProfil Is Nothing Then Return False
' die neuen Werte den Originalwerten zuweisen
Me._originalprofil = Me._profil
Me._originalDbArt = Me._dbArt
Me._originalDataSource = Me._dataSource
Me._originalUserId = Me._userId
Me._originalPassword = Me._password
' die neuen Werte in die XML-Datei schreiben
xmlProfil.Attributes("profil").Value = Me._profil
xmlProfil.Attributes("dbArt").Value = Me._dbArt
xmlProfil.Attributes("dataSource").Value = Me._dataSource
xmlProfil.Attributes("initialCatalog").Value = Me._initialCatalog
If Me._userId IsNot Nothing Then
xmlProfil.Attributes("userId").Value = Me._userId
If Me._password IsNot Nothing Then
xmlProfil.Attributes("password").Value = Me._password
End If
End If
If Me._userId IsNot Nothing Then
End If
' XML-Datei speichern
xml.Save(My.Settings.vMoReBasConfigDatei)
' Profil auf gespeichert setzen
Me._saved = True
MsgBox("Das Profil '" & Me._originalprofil & "' wurde erfolgreich gespeichert.", MsgBoxStyle.Information, "Profil gespeichert")
Return True
Else
MsgBox("Es wurde kein Profilname für das Profil definiert.", MsgBoxStyle.Information, "Profil konnte nicht gespeichert werden")
Return False
End If
End If
Return False
'Catch ex As Exception
' MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Speichern eines Profils")
' Return False
'End Try
End Function
''' <summary>
''' Setzt im aktuellen Profil alle Einstellungen auf die Originalwerte zurück.
''' </summary>
''' <remarks></remarks>
Public Sub SetBackToOriginal()
Me._profil = Me._originalprofil
Me._dbArt = Me._originalDbArt
Me._dataSource = Me._originalDataSource
Me._initialCatalog = Me._originalInitialCatalog
Me._userId = Me._originalUserId
Me._password = Me._originalPassword
Me._originalprofil = Me._profil
End Sub
''' <summary>
''' Setzt das Profil auf geändert.
''' </summary>
''' <remarks></remarks>
Public Sub setChanged()
' Profil auf geändert setzen
Me._saved = False
End Sub
''' <summary>
''' Setzt das Profil auf gespeichert.
''' </summary>
''' <remarks></remarks>
Public Sub setSaved()
' Profil auf gespeichert setzen
Me._saved = True
End Sub
Public ReadOnly Property HasChanges() As Boolean
Get
If Me._profil = Me._originalprofil And _
Me._dbArt = Me._originalDbArt And _
Me._dataSource = Me._originalDataSource And _
Me._userId = Me._originalUserId And _
Me._password = Me._originalPassword Then
Return False
Else
Return True
End If
End Get
End Property
Public ReadOnly Property IsSaved() As Boolean
Get
Return Me._saved
End Get
End Property
Public Property OriginalProfil() As String
Get
Return Me._originalprofil
End Get
Set(ByVal value As String)
Me._originalprofil = value
End Set
End Property
Public Property Profil() As String
Get
Return Me._profil
End Get
Set(ByVal value As String)
Me._profil = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property OriginalDbArt() As String
Get
Return Me._originalDbArt
End Get
Set(ByVal value As String)
Me._originalDbArt = value
End Set
End Property
Public Property DbArt() As String
Get
Return Me._dbArt
End Get
Set(ByVal value As String)
Me._dbArt = value
Me.setChanged()
End Set
End Property
Public Property OriginalDataSource() As String
Get
Return Me._originalDataSource
End Get
Set(ByVal value As String)
Me._originalDataSource = value
End Set
End Property
Public Property DataSource() As String
Get
Return Me._dataSource
End Get
Set(ByVal value As String)
Me._dataSource = value
Me.setChanged()
End Set
End Property
Public Property OriginalUserId() As String
Get
Return Me._originalUserId
End Get
Set(ByVal value As String)
Me._originalUserId = value
End Set
End Property
Public Property UserId() As String
Get
Return Me._userId
End Get
Set(ByVal value As String)
Me._userId = value
Me.setChanged()
End Set
End Property
Public Property OriginalPassword() As String
Get
Return Me._originalPassword
End Get
Set(ByVal value As String)
Me._originalPassword = value
End Set
End Property
Public Property Password() As String
Get
Return Me._password
End Get
Set(ByVal value As String)
Me._password = value
Me.setChanged()
End Set
End Property
Public Property OriginalInitalCatalog() As String
Get
Return Me._originalInitialCatalog
End Get
Set(ByVal value As String)
Me._originalInitialCatalog = value
End Set
End Property
Public Property InitialCatalog() As String
Get
Return Me._initialCatalog
End Get
Set(ByVal value As String)
Me._initialCatalog = value
Me.setChanged()
End Set
End Property
End Class

View File

@ -0,0 +1,16 @@
Public Class ClassMoveRename
Private _windreamNI As ClassNIWindream
Public Sub Init()
End Sub
Public _Dokumentart, _KundenKennzeichen, _DeskrIndex As String
Sub write_log(ByVal _log As Boolean, ByVal _meldung As String, Optional ByVal _prefix As Boolean = False)
If _log = True Then
MsgBox(_meldung, MsgBoxStyle.Information, "Log ist aktiv:")
Else
ClassMoveRenameLogger.Add(_meldung, _prefix)
End If
End Sub
End Class

View File

@ -0,0 +1,236 @@
Public Class ClassMoveRenameLogger
Private Shared DateiSpeicherort As String = Nothing
Private Shared DateiPrefix As String = ""
Private Shared Datei As IO.File = Nothing
Private Shared Dateiname As String = ""
Private Shared StreamWriter As IO.StreamWriter = Nothing
Private Shared HasInformedAboutError As Boolean = False
' eine Art Konstruktor
Public Shared Sub Init(ByVal speicherort As String, Optional ByVal prefix As String = "", Optional ByVal appendFile As Boolean = True)
' initialisiert den Speicherort
ClassMoveRenameLogger.SetSpeicherort(speicherort)
' wenn ein Prfix gesetzt wurde
If Not prefix = "" Then
' initialisiert das Prefix
ClassMoveRenameLogger.SetPrefix(prefix)
End If
ClassMoveRenameLogger.Dateiname = ClassMoveRenameLogger.DateiSpeicherort & "\" & ClassMoveRenameLogger.DateiPrefix & System.DateTime.Now.ToString("yyyy_MM_dd") & ".txt"
If Not appendFile Then
' der Versuch die Datei zu löschen
'Try
' My.Computer.FileSystem.DeleteFile(ClassNILogger.Dateiname, FileIO.UIOption.OnlyErrorDialogs, FileIO.RecycleOption.DeletePermanently)
'Catch ex As Exception
' ' bei Fehler besteht kein Schreibrecht auf die Datei oder Datei existiert nicht
' ' ALSO: alles Okay soweit
'End Try
My.Computer.FileSystem.WriteAllText(ClassMoveRenameLogger.Dateiname, String.Empty, False)
End If
' testen ob sich die Datei öffnen und beschreiben lässt
'ClassNILogger.CheckIsLogWritable()
End Sub
' legt den Speicherort fest
Public Shared Sub SetSpeicherort(ByVal speicherort As String)
Dim f As New IO.DirectoryInfo(My.Application.Info.DirectoryPath & "\Log")
If speicherort = "" Then
If f.Exists = False Then
IO.Directory.CreateDirectory(My.Application.Info.DirectoryPath & "\Log")
End If
ClassMoveRenameLogger.DateiSpeicherort = My.Application.Info.DirectoryPath & "\Log\"
Else
ClassMoveRenameLogger.DateiSpeicherort = speicherort
End If
End Sub
' legt das Prefix für den Dateinamen fest
Public Shared Sub SetPrefix(ByVal prefix As String)
ClassMoveRenameLogger.DateiPrefix = prefix
End Sub
Public Shared Sub Add(ByVal information As String, Optional ByVal mit_prefix As Boolean = True)
If ClassMoveRenameLogger.OpenFile Then
Try
If mit_prefix Then
ClassMoveRenameLogger.StreamWriter.WriteLine("Nachricht (" & System.DateTime.Now & "): " & information)
Else
ClassMoveRenameLogger.StreamWriter.WriteLine(information)
End If
ClassMoveRenameLogger.CloseFile()
Catch e As Exception
ClassMoveRenameLogger.ShowErrorMessage()
End Try
Else
ClassMoveRenameLogger.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal information As String)
If ClassMoveRenameLogger.OpenFile Then
Try
ClassMoveRenameLogger.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ClassFunction & " => " & information)
ClassMoveRenameLogger.CloseFile()
Catch e As Exception
ClassMoveRenameLogger.ShowErrorMessage()
End Try
Else
ClassMoveRenameLogger.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ex As Exception)
If ClassMoveRenameLogger.OpenFile Then
Try
ClassMoveRenameLogger.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "]")
ClassMoveRenameLogger.CloseFile()
Catch e As Exception
ClassMoveRenameLogger.ShowErrorMessage()
End Try
Else
ClassMoveRenameLogger.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal ex As Exception)
If ClassMoveRenameLogger.OpenFile Then
Try
ClassMoveRenameLogger.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "] => " & ClassFunction)
ClassMoveRenameLogger.CloseFile()
Catch e As Exception
ClassMoveRenameLogger.ShowErrorMessage()
End Try
Else
ClassMoveRenameLogger.ShowErrorMessage()
End If
End Sub
Public Shared Sub Add(ByVal ClassFunction As String, ByVal information As String, ByVal ex As Exception)
If ClassMoveRenameLogger.OpenFile Then
Try
ClassMoveRenameLogger.StreamWriter.WriteLine("Exception (" & System.DateTime.Now & "): " & ex.Message & " [" & ex.Source & "] => " & ClassFunction & " => " & information)
ClassMoveRenameLogger.CloseFile()
Catch e As Exception
ClassMoveRenameLogger.ShowErrorMessage()
End Try
Else
ClassMoveRenameLogger.ShowErrorMessage()
End If
End Sub
' öffnet eine Datei zum Schreiben
Private Shared Function OpenFile()
Try
' wenn ein Speicherort festgelegt wurde
If Not ClassMoveRenameLogger.DateiSpeicherort = Nothing Then
' den Dateienamen definieren
Dim dateiname As String = ClassMoveRenameLogger.Dateiname
' Datei anlegen wenn noch nicht vorhanden
My.Computer.FileSystem.WriteAllText(dateiname, String.Empty, True)
' die Datei zum Schreiben öffnen
ClassMoveRenameLogger.StreamWriter = New IO.StreamWriter(dateiname, True, System.Text.Encoding.UTF8)
End If
' wenn die Datei erfolgreich geöffnet wurde
If ClassMoveRenameLogger.StreamWriter IsNot Nothing Then
Return True
Else
Return False
End If
Catch ex As Exception
Return False
End Try
End Function
' öffnet eine Datei zum Schreiben
Private Shared Function OpenFile(ByVal DateiSpeicherort As String, ByVal DateiPrefix As String)
Try
' wenn ein Speicherort festgelegt wurde
If Not DateiSpeicherort = Nothing And ClassMoveRenameLogger.CheckIsLogWritable() Then
' den Dateienamen definieren
Dim dateiname As String = ClassMoveRenameLogger.Dateiname
' Datei anlegen wenn noch nicht vorhanden
My.Computer.FileSystem.WriteAllText(dateiname, String.Empty, True)
' die Datei zum Schreiben öffnen
ClassMoveRenameLogger.StreamWriter = New IO.StreamWriter(dateiname, True, System.Text.Encoding.UTF8)
End If
' wenn die Datei erfolgreich geöffnet wurde
If ClassMoveRenameLogger.StreamWriter IsNot Nothing Then
Return True
Else
Return False
End If
Catch ex As Exception
Return False
End Try
End Function
' schliesst die geöffnete Datei
Private Shared Sub CloseFile()
' wenn eine Datei geöffnet ist
If ClassMoveRenameLogger.StreamWriter IsNot Nothing Then
' die Datei schliessen
ClassMoveRenameLogger.StreamWriter.Close()
ClassMoveRenameLogger.StreamWriter = Nothing
End If
End Sub
Public Shared Function CheckIsLogWritable()
If ClassMoveRenameLogger.OpenFile Then
Try
ClassMoveRenameLogger.CloseFile()
Catch e As Exception
ClassMoveRenameLogger.ShowErrorMessage()
Return False
End Try
Else
ClassMoveRenameLogger.ShowErrorMessage()
Return False
End If
Return True
End Function
Public Shared Function CheckIsLogWritable(ByVal vDateiSpeicherort As String, ByVal vDateiPrefix As String)
If ClassMoveRenameLogger.OpenFile(vDateiSpeicherort, vDateiPrefix) Then
Try
ClassMoveRenameLogger.CloseFile()
Catch e As Exception
ClassMoveRenameLogger.ShowErrorMessage()
Return False
End Try
Else
ClassMoveRenameLogger.ShowErrorMessage()
Return False
End If
Return True
End Function
Private Shared Sub ShowErrorMessage()
If Not ClassMoveRenameLogger.HasInformedAboutError Then
MsgBox("Beim Öffnen der Logdatei ist ein Fehler aufgetreten. Bitte stellen Sie sicher das Sie sowohl über entsprechende Schreibrechte im Verzeichnis, als auch über ausreichend Speicherplatz zum Speichern der Logdatei verfügen." & vbNewLine & vbNewLine & "Es wird keine Logdatei angelegt oder beschrieben." & vbNewLine & vbNewLine & "Im folgenden werden Sie über Fehler, den Log betreffend nicht weiter informiert, um den Ablauf der Nachindexierung nicht zu stören.", MsgBoxStyle.Information, "Fehler beim Öffnen der Logdatei")
ClassMoveRenameLogger.HasInformedAboutError = True
End If
End Sub
End Class

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,153 @@
Imports System.Net.Mail
Imports System.IO
Public Class ClassNIEmail
Public Shared err_message As String
Public Shared Sub Add(ByVal errmsg As String)
err_message &= vbNewLine & errmsg
End Sub
Public Shared Sub Send_EMail(ByVal vBody As String, Optional ByVal Test As Boolean = False)
'#### E-MAIL NACHRICHT VERSENDEN
Try
'#########
Dim empfaenger As String()
If My.Settings.vNIEmailEmpf <> "" Then
If My.Settings.vNIEmailEmpf.Contains(";") Then
empfaenger = My.Settings.vNIEmailEmpf.Split(";")
Else
ReDim Preserve empfaenger(0)
empfaenger(0) = My.Settings.vNIEmailEmpf
End If
'Für jeden Empfänger eine Neue Mail erzeugen
For Each _mailempfaenger As String In empfaenger
' Neue Nachricht erzeugen:
Dim message As New MailMessage(My.Settings.vNIMailfrom, _mailempfaenger, My.Settings.vNIMailBetreff & " Domain: " & Environment.UserDomainName, _
"<font face=""Arial"">" & My.Settings.vNIMailBody & vBody & "<br>>> Maschine: " & Environment.MachineName & _
"<br>Kunde: " & frmStart._company & "<br>" & _
"<br>Domain-Name: " & Environment.UserDomainName & "<br>" & _
"<br>Gesendet am: " & My.Computer.Clock.LocalTime.ToShortDateString & "-" & _
My.Computer.Clock.LocalTime.ToLongTimeString & "</font>")
' create and add the attachment(s) */
'Dim logfile As String = ClassLogger.DateiSpeicherort & "\" & ClassLogger.DateiPrefix & System.DateTime.Now.ToString("yyyy_MM_dd") & ".txt"
'If logfile.Contains("\\") Then
' logfile = logfile.Replace("\\", "\")
'End If
'Dim Attachment As Attachment = New Attachment(logfile)
'message.Attachments.Add(Attachment)
With message
.IsBodyHtml = True
End With
'Einen SMTP Client erzeugen und Anmeldungsinformationen hinterlegen
Dim emailClient As New SmtpClient(My.Settings.vSMTP)
'Email mit Authentifizierung
Dim SMTPUserInfo As New System.Net.NetworkCredential(My.Settings.vMailUser.Trim, My.Settings.vMailPW.Trim) ', My.Settings.vDomain)
emailClient.UseDefaultCredentials = False
emailClient.Credentials = SMTPUserInfo
emailClient.Port = My.Settings.vemailPort
emailClient.DeliveryMethod = SmtpDeliveryMethod.Network
'*Send the message */
emailClient.Send(message)
ClassLoggerNI.Add("==> Fehler Email erfolgreich an " & _mailempfaenger & " versendet!", False)
ClassLoggerNI.Add("==> Text: " & vBody, False)
If Test = True Then
MsgBox("Email an " & _mailempfaenger & " erfolgreich versendet!", MsgBoxStyle.Information, "Erfolgsmeldung:")
End If
Next
End If
'########
Catch ex As Exception
If Test = True Then
MsgBox("Fehler im Mailversand:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler im Mailversand NI:")
Else
ClassLoggerNI.Add(">> Achtung: Fehler in Mailversand: " & ex.Message, False)
End If
End Try
End Sub
Public Shared Sub Send_Urgent(ByVal vBody As String, Optional ByVal Test As Boolean = False)
'#### E-MAIL NACHRICHT VERSENDEN
Try
Dim tempFilename = My.Computer.FileSystem.GetTempFileName()
Try
'Eine tempfile generieren
Dim name = Path.GetFileNameWithoutExtension(tempFilename)
tempFilename = Path.Combine(Path.GetDirectoryName(tempFilename), name & ".log")
File.Copy(ClassLoggerNI.LogDateiname, tempFilename)
' create and add the attachment(s) */
'If logfile.Contains("\\") Then
' logfile = logfile.Replace("\\", "\")
'End If
Catch ex As Exception
MsgBox("Fehler im Mailversand Urgent - Add LogFile: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
ClassLoggerNI.Add(">> Achtung: Fehler in Mailversand Urgent - Add LogFile: " & ex.Message, False)
End Try
'#########
Dim empfaenger As String()
Dim EMAIL_EMP As String = "support@didalog.de"
'If EMAIL_EMP.Contains(";") Then
empfaenger = EMAIL_EMP.Split(";")
'Else
'ReDim Preserve empfaenger(0)
'empfaenger(0) = EMAIL_EMP
' End If
'Für jeden Empfänger eine Neue Mail erzeugen
For Each _mailempfaenger As String In empfaenger
' Neue Nachricht erzeugen:
Dim message As New MailMessage("alarm@didalog.de", _mailempfaenger, "Tool Collection - Critical Error - Domain: " & Environment.UserDomainName, _
"<font face=""Arial"">" & vBody & "<br>>> Maschine: " & Environment.MachineName & _
"<br>Kunde: " & frmStart._company & "<br>" & _
"<br>Domain-Name: " & Environment.UserDomainName & "<br>" & _
"<br>Gesendet am: " & My.Computer.Clock.LocalTime.ToShortDateString & "-" & _
My.Computer.Clock.LocalTime.ToLongTimeString & "</font>")
With message
.IsBodyHtml = True
End With
Dim Attachment As Attachment = New Attachment(tempFilename)
message.Attachments.Add(Attachment)
'Einen SMTP Client erzeugen und Anmeldungsinformationen hinterlegen
Dim emailClient As New SmtpClient("mail.triplew.de")
'Email mit Authentifizierung
Dim SMTPUserInfo As New System.Net.NetworkCredential("alarm@didalog.de", "ddemail72")
emailClient.UseDefaultCredentials = False
emailClient.Credentials = SMTPUserInfo
emailClient.Port = My.Settings.vemailPort
emailClient.DeliveryMethod = SmtpDeliveryMethod.Network
'*Send the message */
emailClient.Send(message)
'tempfile löschen
If My.Computer.FileSystem.FileExists(tempFilename) Then
'My.Computer.FileSystem.DeleteFile(tempFilename)
End If
ClassLoggerNI.Add(">> Urgent Email erfolgreich an " & _mailempfaenger & " versendet!", False)
If Test = True Then
MsgBox("Email an " & _mailempfaenger & " erfolgreich versendet!", MsgBoxStyle.Information, "Erfolgsmeldung:")
End If
Next
'########
Catch ex As Exception
If Test = True Then
MsgBox("Fehler im Mailversand Urgent:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(">> Achtung: Fehler in Mailversand Urgent: " & ex.Message, False)
End If
End Try
End Sub
End Class

View File

@ -0,0 +1,980 @@
Public Class ClassNIProfil
Private _originalProfilname As String
Private _originalWindreamSuche As String
Private _originalDbArt As String
Private _originalDataSource As String
Private _originalUserId As String
Private _originalPassword As String
Private _originalInitialCatalog As String
Private _originalSQLAnweisung As String
Private _originalwindreamIndex As String
Private _originalcheckIndexSQL As String
Private _originalfinalerIndex As String
Private _originalaktiv As String
Private _originalMR_IndexKunde As String
Private _originalMR_IndexDokart As String
Private _originalindexValidation As String
Private _originalindexFehler As String
Private _originalNI_ART As String
Private _originalxmlEnd As String
Private _originalxmlFolder As String
Private _originaldelete As String
Private _originalmove2Folder As String
Private _originalIntervall As Integer
Private _originallastRun As String
Private _originalNB_AD As Boolean
Private _originalGetOrdnerRechte As Boolean
Private _originalordnerType As String
Private _originalordnerType_Eb As String
Private _originalCrFolderIndex As String
Private _originalCrFolder_Folder As String
Private _originalCrFolder_move As Boolean
Private _profilname As String
Private _dokumenttyp As WINDREAMLib.WMObject
Public Shared _dokumenttypString As String
Private _windreamSuche As String
Private _dbArt As String
Private _dataSource As String
Private _userId As String
Private _password As String
Private _initialCatalog As String
Private _SQLAnweisung As String
Private _windreamIndex As String
Private _checkIndexSQL As String
Private _finalerIndex As String
Private _aktiv As String
Private _MR_IndexKunde As String
Private _MR_IndexDokart As String
Private _indexValidation As String
Private _indexFehler As String
Private _NI_ART As String
Private _xmlEnd As String
Private _xmlFolder As String
Private _delete As String
Private _move2Folder As String
Private _Intervall As Integer
Private _lastRun As String
Private _NB_AD As Boolean
Private _GetOrdnerRechte As Boolean
Private _ordnerType As String
Private _ordnerType_Eb As String
Private _CrFolderIndex As String
Private _CrFolder_Folder As String
Private _CrFolder_Created_Folder As String
Private _CrFolder_move As Boolean
Public Shared _windream As New ClassWindream_allgemein
Private _saved As Boolean
'Private _config As ClassNachindexierungKonfiguration = New ClassNachindexierungKonfiguration
'Private _xmlConfigFile As String = My.Settings.vConfigDatei
Public _links As ClassNIVerknüpfungen 'ClassNachindexierungVerknüpfungen
''' <summary>
''' Konstruktor zum Anlegen oder Laden eines Profils
''' </summary>
''' <param name="profilname">Profilname</param>
''' <param name="dokumenttyp_string"></param>
''' <param name="windreamSuche"></param>
''' <remarks></remarks>
Sub New(ByVal profilname As String, ByVal dokumenttyp_string As String, ByVal windreamSuche As String, _
ByVal NI_Art As String, ByVal xmlEnd As String, ByVal folderxml As String, ByVal delfiles As String, ByVal dbArt As String, ByVal dataSource As String, ByVal userId As String, _
ByVal password As String, ByVal initialCatalog As String, ByVal SQLAnweisung As String, ByVal windreamIndex As String, ByVal checkIndexSQL As String, ByVal indexVali As String, ByVal indexFehler As String, _
ByVal finalerIndex As String, ByVal aktiv As String, ByVal mrDAIndex As String, ByVal mrKDIndex As String, ByVal move2Folder As String, ByVal intervall As Integer, ByVal lastRun As String, ByVal NB_AD As Boolean, _
ByVal getOrdRechte As Boolean, ByVal ordnerType As String, ByVal ordnerType_Eb As String, _
ByVal CreaFolderIndex As String, ByVal CreaFolder_Folder As String, ByVal CreaFolder_move As Boolean)
Me._dokumenttypString = dokumenttyp_string
Me._dokumenttyp = _windream.GetObjecttypeByName(dokumenttyp_string)
Me._originalProfilname = profilname
Me._originalWindreamSuche = windreamSuche
Me._originalwindreamIndex = windreamIndex
Me._originalcheckIndexSQL = checkIndexSQL
Me._originalNI_ART = NI_Art
Me._originalxmlEnd = xmlEnd
Me._originalDbArt = dbArt
Me._originalDataSource = dataSource
Me._originalUserId = userId
Me._originalPassword = password
Me._originalInitialCatalog = initialCatalog
Me._originalSQLAnweisung = SQLAnweisung
Me._originalfinalerIndex = finalerIndex
Me._originalMR_IndexDokart = mrDAIndex
Me._originalMR_IndexKunde = mrKDIndex
Me._originalaktiv = aktiv
Me._originalindexValidation = indexVali
Me._originalindexFehler = indexFehler
Me._originalxmlFolder = folderxml
Me._originaldelete = delfiles
Me._originalmove2Folder = move2Folder
Me._originalIntervall = intervall
Me._originallastRun = lastRun
Me._originalNB_AD = NB_AD
Me._originalGetOrdnerRechte = getOrdRechte
Me._originalordnerType = ordnerType
Me._originalordnerType_Eb = ordnerType_Eb
Me._originalCrFolderIndex = CreaFolderIndex
Me._originalCrFolder_Folder = CreaFolder_Folder
Me._originalCrFolder_move = CreaFolder_move
Me._profilname = profilname
Me._dokumenttyp = Dokumenttyp
Me._windreamSuche = windreamSuche
Me._NI_ART = NI_Art
Me._xmlEnd = xmlEnd
Me._dbArt = dbArt
Me._dataSource = dataSource
Me._userId = userId
Me._password = password
Me._initialCatalog = initialCatalog
Me._SQLAnweisung = SQLAnweisung
Me._windreamIndex = windreamIndex
Me._checkIndexSQL = checkIndexSQL
Me._finalerIndex = finalerIndex
Me._MR_IndexDokart = mrDAIndex
Me._MR_IndexKunde = mrKDIndex
Me._aktiv = aktiv
Me._indexValidation = indexVali
Me._indexFehler = indexFehler
Me._xmlFolder = folderxml
Me._delete = delfiles
Me._move2Folder = move2Folder
Me._Intervall = intervall
Me._lastRun = lastRun
Me._NB_AD = NB_AD
_GetOrdnerRechte = getOrdRechte
_ordnerType = ordnerType
Me._ordnerType_Eb = ordnerType_Eb
Me._CrFolderIndex = CreaFolderIndex
Me._CrFolder_Folder = CreaFolder_Folder
_CrFolder_move = CreaFolder_move
Me._saved = True
'Me._regeln = New ClassDateiimportRegeln(profilname)
Me._links = New ClassNIVerknüpfungen(Me)
End Sub
''' <summary>
''' Konstruktor ohne Tätigkeit
''' </summary>
''' <remarks>wenn im Konstruktor kein Parameter übergeben wurde soll auch nichts gemacht werden</remarks>
Sub New()
End Sub
''' <summary>
''' Speichert das Profil
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
Public Function Save(ByVal msg As Boolean)
Try
' wenn das Profil nicht gespeichert ist
If Not Me.IsSaved Then
' wenn ein Profilname für dieses Profil gesetzt ist
If Me._profilname IsNot Nothing And Me._originalProfilname IsNot Nothing Then
' XML-Datei initialisieren
Dim xml As New Xml.XmlDocument()
' Profil initialisieren
Dim xmlProfil As Xml.XmlElement
' XML-Datei öffnen und laden
xml.Load(My.Settings.vNIConfigDatei)
' den XML-Knoten des Profils laden
xmlProfil = xml.SelectSingleNode("//Settings/Profile/Profil[@profilname='" & Me._originalProfilname & "']")
' wenn der Knoten NICHT gefunden wurde -> Vorgang abbrechen
If xmlProfil Is Nothing Then Return False
' die neuen Werte den Originalwerten zuweisen
Me._originalProfilname = Me._profilname
Me._originalWindreamSuche = Me._windreamSuche
Me._originalNI_ART = Me._NI_ART
Me._originalxmlEnd = _xmlEnd
Me._originalDbArt = DbArt
Me._originalDbArt = Me._dbArt
Me._originalDataSource = Me._dataSource
Me._originalUserId = Me._userId
Me._originalPassword = Me._password
Me._originalSQLAnweisung = Me._SQLAnweisung
Me._originalwindreamIndex = Me._windreamIndex
Me._originalcheckIndexSQL = Me._checkIndexSQL
Me._originalfinalerIndex = Me._finalerIndex
Me._originalaktiv = Me._aktiv
Me._originalMR_IndexDokart = Me._MR_IndexDokart
Me._originalMR_IndexKunde = Me._MR_IndexKunde
Me._originalindexValidation = Me._indexValidation
Me._originalindexFehler = _indexFehler
Me._originalxmlFolder = _xmlFolder
Me._originaldelete = _delete
Me._originalmove2Folder = _move2Folder
Me._originalNB_AD = Me._NB_AD
Me._originalInitialCatalog = Me._initialCatalog
Me._originalGetOrdnerRechte = _GetOrdnerRechte
Me._originalordnerType = _ordnerType
Me._originalordnerType_Eb = _ordnerType_Eb
Me._originalCrFolderIndex = _CrFolderIndex
Me._originalCrFolder_Folder = _CrFolder_Folder
Me._originalCrFolder_move = _CrFolder_move
'MsgBox(Me._MR_IndexDokart & vbNewLine & Me._MR_IndexKunde)
' die neuen Werte in die XML-Datei schreiben
xmlProfil.Attributes("profilname").Value = Me._profilname
'Niemals den Objekttyp speichern kann zu Fehlern führen
' xmlProfil.Attributes("dokumenttyp").Value = Me._dokumenttypString
xmlProfil.Attributes("windreamsuche").Value = Me._windreamSuche
xmlProfil.Attributes("ni_art").Value = Me._NI_ART
xmlProfil.Attributes("xml_end").Value = Me._xmlEnd
xmlProfil.Attributes("folder").Value = Me._xmlFolder
xmlProfil.Attributes("delete").Value = Me._delete
Me._originalIntervall = Me._Intervall
Me._lastRun = Me._lastRun
xmlProfil.Attributes("dbArt").Value = Me._dbArt
xmlProfil.Attributes("dataSource").Value = Me._dataSource
xmlProfil.Attributes("initialCatalog").Value = Me._initialCatalog
xmlProfil.Attributes("sqlanweisung").Value = Me._SQLAnweisung
xmlProfil.Attributes("windreamIndex").Value = Me._windreamIndex
xmlProfil.Attributes("checkIndexSQL").Value = Me._checkIndexSQL
xmlProfil.Attributes("indexValidation").Value = Me._indexValidation
xmlProfil.Attributes("indexFehler").Value = Me._indexFehler
xmlProfil.Attributes("finalerIndex").Value = Me._finalerIndex
xmlProfil.Attributes("mr_DAIndex").Value = Me._MR_IndexDokart
xmlProfil.Attributes("mr_KDIndex").Value = Me._MR_IndexKunde
xmlProfil.Attributes("aktiv").Value = Me._aktiv
xmlProfil.Attributes("move2Folder").Value = Me._move2Folder
xmlProfil.Attributes("intervall").Value = Me._Intervall
xmlProfil.Attributes("lastrun").Value = Me._lastRun
xmlProfil.Attributes("NB_AD").Value = Me._NB_AD
xmlProfil.Attributes("getordneridx").Value = Me._GetOrdnerRechte
xmlProfil.Attributes("ordnerType").Value = Me._ordnerType
xmlProfil.Attributes("ordnerType_eb").Value = Me._ordnerType_Eb
xmlProfil.Attributes("userId").Value = Me._userId
xmlProfil.Attributes("password").Value = Me._password
xmlProfil.Attributes("crfolderindex").Value = _CrFolderIndex
xmlProfil.Attributes("crfolder_folder").Value = _CrFolder_Folder
xmlProfil.Attributes("crfolder_move").Value = _CrFolder_move
'MsgBox(xmlProfil.Attributes("mr_DAIndex").Value & vbNewLine & xmlProfil.Attributes("mr_KDIndex").Value)
'If Me._userId IsNot Nothing Then
' xmlProfil.Attributes("userId").Value = Me._userId
' If Me._password IsNot Nothing Then
' xmlProfil.Attributes("password").Value = Me._password
' End If
'End If
' XML-Datei speichern
xml.Save(My.Settings.vNIConfigDatei)
' Profil auf gespeichert setzen
Me._saved = True
If msg = True Then MsgBox("Das Profil '" & Me._originalProfilname & "' wurde erfolgreich gespeichert.", MsgBoxStyle.Information, "Profil gespeichert")
Return True
Else
If msg = True Then MsgBox("Es wurde kein Profilname für das Profil definiert.", MsgBoxStyle.Information, "Profil konnte nicht gespeichert werden")
Return False
End If
End If
Return False
Catch ex As Exception
If msg = True Then MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Speichern eines Profils")
Return False
End Try
End Function
''' <summary>
''' Setzt im aktuellen Profil alle Einstellungen auf die Originalwerte zurück.
''' </summary>
''' <remarks></remarks>
Public Sub SetBackToOriginal()
Me._profilname = Me._originalProfilname
Me._windreamSuche = Me._originalWindreamSuche
Me._NI_ART = Me._originalNI_ART
Me._xmlEnd = Me._originalxmlEnd
Me._dbArt = Me._originalDbArt
Me._dataSource = Me._originalDataSource
Me._userId = Me._originalUserId
Me._password = Me._originalPassword
Me._SQLAnweisung = Me._originalSQLAnweisung
Me._windreamIndex = Me._originalwindreamIndex
Me._checkIndexSQL = Me._originalcheckIndexSQL
Me._indexValidation = Me._originalindexValidation
Me._indexFehler = Me._originalindexFehler
Me._finalerIndex = Me._originalfinalerIndex
Me._aktiv = Me._originalaktiv
Me._MR_IndexDokart = Me._originalMR_IndexDokart
Me._xmlFolder = Me._originalxmlFolder
Me._delete = Me._originaldelete
Me._move2Folder = Me._originalmove2Folder
Me._Intervall = Me._originalIntervall
Me._NB_AD = Me._originalNB_AD
Me._GetOrdnerRechte = Me._originalGetOrdnerRechte
Me._ordnerType = Me._originalordnerType
Me._ordnerType_Eb = Me._originalordnerType_Eb
Me._CrFolderIndex = _originalCrFolderIndex
Me._CrFolder_Folder = _originalCrFolder_Folder
Me._CrFolder_move = _originalCrFolder_move
End Sub
''' <summary>
''' Setzt das Profil auf geändert.
''' </summary>
''' <remarks></remarks>
Public Sub setChanged()
' Profil auf geändert setzen
Me._saved = False
End Sub
''' <summary>
''' Setzt das Profil auf gespeichert.
''' </summary>
''' <remarks></remarks>
Public Sub setSaved()
' Profil auf gespeichert setzen
Me._saved = True
End Sub
Public ReadOnly Property HasChanges() As Boolean
Get
If Me._profilname = Me._originalProfilname And _
Me._windreamSuche = Me._originalWindreamSuche And _
Me._NI_ART = Me._originalNI_ART And _
Me._xmlEnd = Me._originalxmlEnd And _
Me._dbArt = Me._originalDbArt And _
Me._initialCatalog = Me._originalInitialCatalog And _
Me._dataSource = Me._originalDataSource And _
Me._userId = Me._originalUserId And _
Me._password = Me._originalPassword And _
Me._windreamIndex = Me._originalwindreamIndex And _
Me._checkIndexSQL = Me._originalcheckIndexSQL And _
Me._indexValidation = Me._originalindexValidation And _
Me._indexFehler = Me._originalindexFehler And _
Me._finalerIndex = Me._originalfinalerIndex And
Me._aktiv = Me._originalaktiv And _
Me._MR_IndexDokart = Me._originalMR_IndexDokart And _
Me._MR_IndexKunde = Me._originalMR_IndexKunde And _
Me._xmlFolder = Me._originalxmlFolder And _
Me._delete = Me._originaldelete And _
Me._move2Folder = Me._originalmove2Folder And _
Me.Intervall = Me.OriginalIntervall And _
Me.LastRun = Me.OriginallastRun And
Me.NachbearbeitungAD = Me.OriginalNachbearbeitungAD And _
Me._GetOrdnerRechte = Me._originalGetOrdnerRechte And _
Me._ordnerType = Me._originalordnerType And _
Me._ordnerType_Eb = Me._originalordnerType_Eb And _
Me._CrFolderIndex = _originalCrFolderIndex And _
Me._CrFolder_Folder = _originalCrFolder_Folder And _
Me._CrFolder_move = Me._originalCrFolder_move Then
Return False
Else
Return True
End If
End Get
End Property
Public ReadOnly Property IsSaved() As Boolean
Get
Return Me._saved
End Get
End Property
Public Property OriginalProfilname() As String
Get
Return Me._originalProfilname
End Get
Set(ByVal value As String)
Me._originalProfilname = value
End Set
End Property
Public Property Profilname() As String
Get
Return Me._profilname
End Get
Set(ByVal value As String)
Me._profilname = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property OriginalWindreamSuche() As String
Get
Return Me._originalWindreamSuche
End Get
Set(ByVal value As String)
Me._originalWindreamSuche = value
End Set
End Property
Public Property WindreamSuche() As String
Get
Return Me._windreamSuche
End Get
Set(ByVal value As String)
Me._windreamSuche = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property Original_NiArt() As String
Get
Return Me._originalNI_ART
End Get
Set(ByVal value As String)
Me._originalNI_ART = value
End Set
End Property
Public Property Ni_Art() As String
Get
Return Me._NI_ART
End Get
Set(ByVal value As String)
Me._NI_ART = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property Original_xmlEnd() As String
Get
Return Me._originalxmlEnd
End Get
Set(ByVal value As String)
Me._originalxmlEnd = value
End Set
End Property
Public Property xmlEnd() As String
Get
Return Me._xmlEnd
End Get
Set(ByVal value As String)
Me._xmlEnd = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property Dokumenttyp() As WINDREAMLib.WMObject
Get
Return Me._dokumenttyp
End Get
Set(ByVal value As WINDREAMLib.WMObject)
Me._dokumenttyp = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property DokumenttypString() As String
Get
If Me.Dokumenttyp IsNot Nothing Then
Me._dokumenttypString = Me.Dokumenttyp.aName
Return Me._dokumenttypString
Else
Return Me._dokumenttypString
End If
End Get
End Property
Public Property OriginalDbArt() As String
Get
Return Me._originalDbArt
End Get
Set(ByVal value As String)
Me._originalDbArt = value
End Set
End Property
Public Property DbArt() As String
Get
Return Me._dbArt
End Get
Set(ByVal value As String)
Me._dbArt = value
Me.setChanged()
End Set
End Property
Public Property OriginalDataSource() As String
Get
Return Me._originalDataSource
End Get
Set(ByVal value As String)
Me._originalDataSource = value
End Set
End Property
Public Property DataSource() As String
Get
Return Me._dataSource
End Get
Set(ByVal value As String)
Me._dataSource = value
Me.setChanged()
End Set
End Property
Public Property OriginalUserId() As String
Get
Return Me._originalUserId
End Get
Set(ByVal value As String)
Me._originalUserId = value
End Set
End Property
Public Property UserId() As String
Get
Return Me._userId
End Get
Set(ByVal value As String)
Me._userId = value
Me.setChanged()
End Set
End Property
Public Property OriginalPassword() As String
Get
Return Me._originalPassword
End Get
Set(ByVal value As String)
Me._originalPassword = value
End Set
End Property
Public Property Password() As String
Get
Return Me._password
End Get
Set(ByVal value As String)
Me._password = value
Me.setChanged()
End Set
End Property
Public Property OriginalInitalCatalog() As String
Get
Return Me._originalInitialCatalog
End Get
Set(ByVal value As String)
Me._originalInitialCatalog = value
End Set
End Property
Public Property InitialCatalog() As String
Get
Return Me._initialCatalog
End Get
Set(ByVal value As String)
Me._initialCatalog = value
Me.setChanged()
End Set
End Property
Public Property OriginalSQL_Anweisung() As String
Get
Return Me._originalSQLAnweisung
End Get
Set(ByVal value As String)
Me._originalSQLAnweisung = value
End Set
End Property
Public Property SQL_Anweisung() As String
Get
Return Me._SQLAnweisung
End Get
Set(ByVal value As String)
Me._SQLAnweisung = value
Me.setChanged()
End Set
End Property
Public Property OriginalwindreamIndex() As String
Get
Return Me._originalwindreamIndex
End Get
Set(ByVal value As String)
Me._originalwindreamIndex = value
End Set
End Property
Public Property Desk_windreamIndex() As String
Get
Return Me._windreamIndex
End Get
Set(ByVal value As String)
Me._windreamIndex = value
Me.setChanged()
End Set
End Property
Public Property OriginalcheckIndexsql() As String
Get
Return Me._originalcheckIndexSQL
End Get
Set(ByVal value As String)
Me._originalcheckIndexSQL = value
End Set
End Property
Public Property checkIndexsql() As String
Get
Return Me._checkIndexSQL
End Get
Set(ByVal value As String)
Me._checkIndexSQL = value
Me.setChanged()
End Set
End Property
Public Property OriginalIndexValidation() As String
Get
Return Me._originalindexValidation
End Get
Set(ByVal value As String)
Me._originalindexValidation = value
End Set
End Property
Public Property IndexValidation() As String
Get
Return Me._indexValidation
End Get
Set(ByVal value As String)
Me._indexValidation = value
Me.setChanged()
End Set
End Property
Public Property OriginalIndexFehler() As String
Get
Return Me._originalindexFehler
End Get
Set(ByVal value As String)
Me._originalindexFehler = value
End Set
End Property
Public Property IndexFehler() As String
Get
Return Me._indexFehler
End Get
Set(ByVal value As String)
Me._indexFehler = value
Me.setChanged()
End Set
End Property
Public Property OriginalfinalerIndex() As String
Get
Return Me._originalfinalerIndex
End Get
Set(ByVal value As String)
Me._originalfinalerIndex = value
End Set
End Property
Public Property finalerIndex() As String
Get
Return Me._finalerIndex
End Get
Set(ByVal value As String)
Me._finalerIndex = value
Me.setChanged()
End Set
End Property
Public Property OriginalAktiv() As String
Get
Return Me._originalaktiv
End Get
Set(ByVal value As String)
Me._originalaktiv = value
End Set
End Property
Public Property Aktiv() As String
Get
Return Me._aktiv
End Get
Set(ByVal value As String)
Me._aktiv = value
Me.setChanged()
End Set
End Property
Public Property OriginalMR_KDIndex() As String
Get
Return Me._originalMR_IndexKunde
End Get
Set(ByVal value As String)
Me._originalMR_IndexKunde = value
End Set
End Property
Public Property MR_KDIndex() As String
Get
Return Me._MR_IndexKunde
End Get
Set(ByVal value As String)
Me._MR_IndexKunde = value
Me.setChanged()
End Set
End Property
Public Property OriginalMR_DAIndex() As String
Get
Return Me._originalMR_IndexDokart
End Get
Set(ByVal value As String)
Me._originalMR_IndexDokart = value
End Set
End Property
Public Property MR_DAIndex() As String
Get
Return Me._MR_IndexDokart
End Get
Set(ByVal value As String)
Me._MR_IndexDokart = value
Me.setChanged()
End Set
End Property
Public Property OriginalxmlFolder As String
Get
Return Me._originalxmlFolder
End Get
Set(ByVal value As String)
Me._originalxmlFolder = value
End Set
End Property
Public Property xmlFolder() As String
Get
Return Me._xmlFolder
End Get
Set(ByVal value As String)
Me._xmlFolder = value
Me.setChanged()
End Set
End Property
Public Property Originaldelete As String
Get
Return Me._originaldelete
End Get
Set(ByVal value As String)
Me._originaldelete = value
End Set
End Property
Public Property delete As String
Get
Return Me._delete
End Get
Set(ByVal value As String)
Me._delete = value
Me.setChanged()
End Set
End Property
Public Property Originalmove2Folder As String
Get
Return Me._originalmove2Folder
End Get
Set(ByVal value As String)
Me._originalmove2Folder = value
End Set
End Property
Public Property move2Folder As String
Get
Return Me._move2Folder
End Get
Set(ByVal value As String)
Me._move2Folder = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalIntervall() As Integer
Get
Return Me._originalIntervall
End Get
End Property
Public Property Intervall() As Integer
Get
Return Me._Intervall
End Get
Set(ByVal value As Integer)
Me._Intervall = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginallastRun() As String
Get
Return Me._originallastRun
End Get
End Property
Public Property LastRun() As String
Get
Return Me._lastRun
End Get
Set(ByVal value As String)
Me._lastRun = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalNachbearbeitungAD() As Boolean
Get
Return Me._originalNB_AD
End Get
End Property
Public Property NachbearbeitungAD() As Boolean
Get
Return Me._NB_AD
End Get
Set(ByVal value As Boolean)
Me._NB_AD = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalGetOrdnerTypes() As Boolean
Get
Return Me._originalGetOrdnerRechte
End Get
End Property
Public Property GetOrdnerTypes() As Boolean
Get
Return Me._GetOrdnerRechte
End Get
Set(ByVal value As Boolean)
Me._GetOrdnerRechte = value
Me.setChanged()
End Set
End Property
Public Property OriginalOrdnerType As String
Get
Return Me._originalordnerType
End Get
Set(ByVal value As String)
Me._originalordnerType = value
End Set
End Property
Public Property OrdnerType As String
Get
Return Me._ordnerType
End Get
Set(ByVal value As String)
Me._ordnerType = value
Me.setChanged()
End Set
End Property
Public Property OriginalOrdnerType_Ebene As String
Get
Return Me._originalordnerType_Eb
End Get
Set(ByVal value As String)
Me._originalordnerType_Eb = value
End Set
End Property
Public Property OrdnerType_Ebene As String
Get
Return Me._ordnerType_Eb
End Get
Set(ByVal value As String)
Me._ordnerType_Eb = value
Me.setChanged()
End Set
End Property
Public Property OriginalCrFolderIndex As String
Get
Return Me._originalCrFolderIndex
End Get
Set(ByVal value As String)
Me._originalCrFolderIndex = value
End Set
End Property
Public Property CrFolderIndex As String
Get
Return Me._CrFolderIndex
End Get
Set(ByVal value As String)
Me._CrFolderIndex = value
Me.setChanged()
End Set
End Property
Public Property OriginalCrFolder_Folder As String
Get
Return Me._originalCrFolder_Folder
End Get
Set(ByVal value As String)
Me._originalCrFolder_Folder = value
End Set
End Property
Public Property CrFolder_Folder As String
Get
Return Me._CrFolder_Folder
End Get
Set(ByVal value As String)
Me._CrFolder_Folder = value
Me.setChanged()
End Set
End Property
Public Property CrFolder_Created_Folder As String
Get
Return Me._CrFolder_Created_Folder
End Get
Set(ByVal value As String)
Me._CrFolder_Created_Folder = value
End Set
End Property
Public ReadOnly Property OriginalCrFolder_Move() As Boolean
Get
Return Me._originalCrFolder_move
End Get
End Property
Public Property CrFolder_Move() As Boolean
Get
Return Me._CrFolder_move
End Get
Set(ByVal value As Boolean)
Me._CrFolder_move = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property Verknüpfungen() As ClassNIVerknüpfungen
Get
Return Me._links
End Get
End Property
End Class

View File

@ -0,0 +1,369 @@
Public Class ClassNIProfile
Private Shared _profiles() As ClassNIProfil
Public Shared _windream As New ClassWindream_allgemein
Public Shared xmlConfigFile As String
Public Shared Sub Init()
xmlConfigFile = My.Application.Info.DirectoryPath & "\" & My.Settings.vNIConfigDatei
ClassNIProfile.LoadFromXmlFile()
' 3b. Windream initialisieren (Connection, Session, ... aufbauen)
_windream.Init()
End Sub
Public Shared Function IsXmlAccessable()
Dim xml As New Xml.XmlDocument
Try
' XML-Datei laden und speichern um Zugriff zu testen
xml.Load(xmlConfigFile)
xml.Save(xmlConfigFile)
Return True
Catch ex As Exception
Try
ClassLoggerNI.Add("System kann nicht auf Konfig-Datei zugreifen: " & ex.Message, True)
Dim fw As System.IO.StreamWriter = New System.IO.StreamWriter(xmlConfigFile)
fw.WriteLine("<?xml version=""1.0"" encoding=""ISO-8859-1"" standalone=""yes""?>")
fw.WriteLine("<Settings>")
fw.WriteLine("<Profile>")
fw.WriteLine("</Profile>")
fw.WriteLine("</Settings>")
fw.Close()
Return True
Catch e2 As Exception
Return False
End Try
End Try
End Function
Public Shared Sub LoadFromXmlFile()
Dim i As Integer = 0
Dim xml As Xml.XmlDocument
ClassNIProfile._profiles = Nothing
If xmlConfigFile Is Nothing Then Exit Sub
If Not xmlConfigFile = "" Then
xml = New Xml.XmlDocument()
xml.Load(xmlConfigFile)
'MsgBox(xmlConfigFile)
' Anzahl der Profilelemente in der XML-Datei zählen
Dim anzProfile = xml.SelectNodes("Settings/Profile/Profil").Count
' wenn mindestens ein Profilelement eingetragen ist
If anzProfile > 0 Then
' alle Profile laden
Dim xmlNodes As Xml.XmlNodeList = xml.SelectNodes("Settings/Profile/Profil")
' alle Profile der XML-Datei durchlaufen
For Each xmlProfil As Xml.XmlNode In xmlNodes
' prüfen ob ein Profilname angegeben wurde
If xmlProfil.Attributes("profilname") IsNot Nothing And xmlProfil.Attributes("dokumenttyp") IsNot Nothing And _
xmlProfil.Attributes("windreamsuche") IsNot Nothing And xmlProfil.Attributes("dbArt") IsNot Nothing And _
xmlProfil.Attributes("dataSource") IsNot Nothing Then
' ein Element an Items anhängen
ReDim Preserve ClassNIProfile._profiles(i)
ClassNIProfile._profiles(i) = New ClassNIProfil()
Dim initialCatalog As String = Nothing
Dim userId As String = Nothing
Dim password As String = Nothing
If xmlProfil.Attributes("userId") IsNot Nothing Then
userId = xmlProfil.Attributes("userId").Value
End If
If xmlProfil.Attributes("password") IsNot Nothing Then
password = xmlProfil.Attributes("password").Value
End If
If xmlProfil.Attributes("initialCatalog") IsNot Nothing Then
initialCatalog = xmlProfil.Attributes("initialCatalog").Value
End If
' das Profilobjekt erstellen
'profilname, dokumenttyp_string , windreamSuche, _
'NI_Art , xmlEnd , xmlfolder ,
'delete , dbArt , dataSource , userId , _
'password , initialCatalog , SQLAnweisung , windreamIndex , checkIndexSQL , indexValidation , _
'finalerIndex , aktiv , mrDAIndex , mrKDIndex
ClassNIProfile._profiles(i) = New ClassNIProfil(xmlProfil.Attributes("profilname").Value, xmlProfil.Attributes("dokumenttyp").Value, xmlProfil.Attributes("windreamsuche").Value, _
xmlProfil.Attributes("ni_art").Value, xmlProfil.Attributes("xml_end").Value, xmlProfil.Attributes("folder").Value, _
xmlProfil.Attributes("delete").Value, xmlProfil.Attributes("dbArt").Value, xmlProfil.Attributes("dataSource").Value, _
userId, _
password, _
initialCatalog, _
xmlProfil.Attributes("sqlanweisung").Value, _
xmlProfil.Attributes("windreamIndex").Value, _
xmlProfil.Attributes("checkIndexSQL").Value, _
xmlProfil.Attributes("indexValidation").Value, _
xmlProfil.Attributes("indexFehler").Value, _
xmlProfil.Attributes("finalerIndex").Value, _
xmlProfil.Attributes("aktiv").Value, _
xmlProfil.Attributes("mr_DAIndex").Value, _
xmlProfil.Attributes("mr_KDIndex").Value, _
xmlProfil.Attributes("move2Folder").Value, _
xmlProfil.Attributes("intervall").Value, _
xmlProfil.Attributes("lastrun").Value, _
xmlProfil.Attributes("NB_AD").Value, _
xmlProfil.Attributes("getordneridx").Value, _
xmlProfil.Attributes("ordnerType").Value, _
xmlProfil.Attributes("ordnerType_eb").Value, _
xmlProfil.Attributes("crfolderindex").Value, _
xmlProfil.Attributes("crfolder_folder").Value, _
xmlProfil.Attributes("crfolder_move").Value)
' Zähler für Profile erhöhen
i += 1
End If
Next
End If
End If
End Sub
' erstellt ein neues Profil
Public Shared Sub Add(ByVal profilname As String, ByVal dokumenttyp As String, ByVal windreamSuche As String, _
ByVal NiArt As String, ByVal xmlEnd As String, ByVal dbArt As String, ByVal dataSource As String, ByVal userId As String, _
ByVal password As String, ByVal initialCatalog As String, ByVal indexValidation As String, ByVal delete As String, ByVal intervall As Integer, ByVal GetFolderIdx As Boolean, ByVal Ordnertyp As String, Optional DESKIndex As String = "")
Try
If Not ClassNIProfile.Exists(profilname) Then
Dim xml As New Xml.XmlDocument
Dim xmlProfil As Xml.XmlElement
If ClassNIProfile.IsXmlAccessable() Then
' XML-Datei laden
xml.Load(xmlConfigFile)
Try
' versuchen die XML-Beschreibung zu schreiben
xml.InsertBefore(xml.CreateXmlDeclaration("1.0", "ISO-8859-1", "yes"), xml.ChildNodes(0))
Catch ex As Exception
' wenn dies nicht funktioniert, ist die Beschreibung schon vorhanden
End Try
' wenn die Hauptknoten noch nicht eingetragen wurden, sollen diese angelegt werden
If xml.DocumentElement Is Nothing Then xml.AppendChild(xml.CreateElement("Settings"))
If xml.SelectSingleNode("Settings/Profile") Is Nothing Then xml.SelectSingleNode("Settings").AppendChild(xml.CreateElement("Profile"))
' dann ein neues Profil anlegen
xmlProfil = xml.CreateElement("Profil")
' dem Profil die Attribute zuweisen
xmlProfil.SetAttribute("profilname", profilname)
xmlProfil.SetAttribute("dokumenttyp", dokumenttyp)
xmlProfil.SetAttribute("windreamsuche", windreamSuche)
xmlProfil.SetAttribute("dbArt", dbArt)
xmlProfil.SetAttribute("dataSource", dataSource)
'xmlProfil.SetAttribute("userID", userId)
'xmlProfil.SetAttribute("password", password)
'xmlProfil.SetAttribute("initialCatalog", initialCatalog)
If userId IsNot Nothing Then
xmlProfil.SetAttribute("userId", userId)
End If
If password IsNot Nothing Then
xmlProfil.SetAttribute("password", password)
End If
If initialCatalog IsNot Nothing Then
xmlProfil.SetAttribute("initialCatalog", initialCatalog)
End If
xmlProfil.SetAttribute("sqlanweisung", "")
xmlProfil.SetAttribute("windreamIndex", DESKIndex)
xmlProfil.SetAttribute("ni_art", NiArt)
xmlProfil.SetAttribute("xml_end", xmlEnd)
xmlProfil.SetAttribute("delete", delete)
xmlProfil.SetAttribute("folder", "")
xmlProfil.SetAttribute("checkIndexSQL", "")
xmlProfil.SetAttribute("indexValidation", indexValidation)
xmlProfil.SetAttribute("indexFehler", "")
'finaler Index
xmlProfil.SetAttribute("finalerIndex", "")
xmlProfil.SetAttribute("aktiv", True)
xmlProfil.SetAttribute("mr_DAIndex", "")
xmlProfil.SetAttribute("mr_KDIndex", "")
xmlProfil.SetAttribute("move2Folder", "")
xmlProfil.SetAttribute("intervall", intervall)
xmlProfil.SetAttribute("lastrun", "01.01.1900")
xmlProfil.SetAttribute("NB_AD", "False")
xmlProfil.SetAttribute("getordneridx", GetFolderIdx)
xmlProfil.SetAttribute("ordnerType", Ordnertyp)
xmlProfil.SetAttribute("ordnerType_eb", "Parent")
xmlProfil.SetAttribute("crfolderindex", "")
xmlProfil.SetAttribute("crfolder_folder", "")
xmlProfil.SetAttribute("crfolder_move", False)
' und in den Hauptknoten 'Profile' einhängen
xml.SelectSingleNode("Settings/Profile").AppendChild(xmlProfil)
' XML-Datei speichern
xml.Save(xmlConfigFile)
' die Liste der Profile im Objekt vergrößern
ReDim Preserve ClassNIProfile._profiles(ClassNIProfile.Count)
' das Profilobjekt erstellen
ClassNIProfile._profiles(ClassNIProfile.Count - 1) = New ClassNIProfil( _
profilname, _
dokumenttyp, _
windreamSuche, _
NiArt, _
xmlEnd, _
delete, _
"", _
dbArt, _
dataSource, _
userId, _
password, _
initialCatalog, _
"", "", "", indexValidation, "", "", "True", "", "", "", _
intervall, _
"01.01.1900", False, GetFolderIdx, Ordnertyp, "Parent", "", "", False)
MsgBox("Das Profil '" & profilname & "' wurde erfolgreich angelegt!", MsgBoxStyle.Information, "Erfolgsmeldung:")
End If
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Anlegen eines Profils")
End Try
End Sub
Public Shared Function DeleteProfil(ByVal profilname As String) As Boolean
Try
If ClassNIProfile.Exists(profilname) Then
' XML-Objekt initialisieren
Dim xml As New Xml.XmlDocument
If ClassNIProfile.IsXmlAccessable() Then
' XML-Datei laden
xml.Load(xmlConfigFile)
' ***** Zuerst einmal das Profil heraus löschen ***** '
' XML-Element auswählen
Dim node As Xml.XmlElement = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & profilname & "']")
If node IsNot Nothing Then
' Element löschen
node.ParentNode.RemoveChild(node)
' XML-Datei speichern
xml.Save(xmlConfigFile)
End If
If ClassNIProfile.Exists(profilname) Then
' temporäres Array erzeugen
Dim tempItems() As ClassNIProfil = ClassNIProfile._profiles
ClassNIProfile._profiles = Nothing
Dim i As Integer = 0
' alle Verknüpfungen durchlaufen
For Each item As ClassNIProfil In tempItems
' wenn es sich nicht um das gelöschte handelt
If Not item.OriginalProfilname = profilname Then
' Größe anpassen
ReDim Preserve ClassNIProfile._profiles(i)
' die Verknüpfung in das Items-Array übertragen
ClassNIProfile._profiles(i) = item
' Counter hochzählen
i += 1
End If
Next
Return True
Else
Return False
End If
Else
Return False
End If
Else
Return False
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Löschen eines Profils")
Return False
End Try
End Function
Public Shared Function Exists(ByVal profilname As String)
If ClassNIProfile.Count > 0 Then
For Each profil As ClassNIProfil In ClassNIProfile._profiles
If profil.OriginalProfilname = profilname Then
Return True
End If
Next
End If
Return False
End Function
' gibt ein einzelnes Profil-Objekt zurück
Public Shared Function getProfilByName(ByVal profilname As String) As ClassNIProfil
' alle Profile durchlaufen
For Each profil As ClassNIProfil In _profiles
' wenn der aktuelle Profilname mit dem gesuchten Profilnamen übereinstimmt
If profil.Profilname = profilname Then
' das Profil zurückgeben
Return profil
End If
Next
' sonst nichts zurückgeben
Return Nothing
End Function
Public Shared ReadOnly Property Profile() As ClassNIProfil()
Get
Return ClassNIProfile._profiles
End Get
End Property
Public Shared ReadOnly Property Count() As Integer
Get
' Anzahl der Profile zurückgeben
If ClassNIProfile._profiles IsNot Nothing Then
Return ClassNIProfile._profiles.Length
Else
Return 0
End If
End Get
End Property
End Class

View File

@ -0,0 +1,119 @@
Public Class ClassNIVerknüpfung
Public Shared xmlNIConfigFile As String
Public Index As String
Public Spalte As String
Public From As String
Public SelectAnweisung As String
Public vktins_state As Integer
Public ExSQL As String
Public Desk_index As String
Private _OriginalSelectAnweisung As String
Sub New(ByVal vindex As String, ByVal vspalte As String, ByVal vfrom As String, ByVal vselectanweisung As String, ByVal vktstate As Integer)
xmlNIConfigFile = My.Application.Info.DirectoryPath & "\" & My.Settings.vNIConfigDatei
Me.Index = vindex
Me.Spalte = vspalte
Me.From = vfrom
Me.SelectAnweisung = vselectanweisung
Me.vktins_state = vktstate
Me._OriginalSelectAnweisung = vselectanweisung
End Sub
Public Function SaveLink(ByVal profilname As String, NI_Typ As String)
Select Case NI_Typ
Case "db"
Return Save_DB_Link(profilname)
Case "activedirectory"
Return Save_DB_Link(profilname)
Case "xml"
Return Save_DB_Link(profilname)
Case "fulltext"
Dim xml As New Xml.XmlDocument()
Dim xmlProfil As Xml.XmlElement
xml.Load(xmlNIConfigFile)
xmlProfil = xml.SelectSingleNode("//Settings/Profile/Profil[@profilname='" & profilname & "']/Link[@index='" & Me.Index & "'][@spalte='" & Me.Spalte & "'][@from='" & Me.From & "']")
xmlProfil.Attributes("select").Value = Me.SelectAnweisung
xmlProfil.Attributes("vktstate").Value = Me.vktins_state
xml.Save(xmlNIConfigFile)
Me._OriginalSelectAnweisung = Me.SelectAnweisung
Return True
End Select
End Function
Public Function Save_DB_Link(ByVal profilname As String)
' wenn ein Profilname für dieses Profil gesetzt ist
If Me.SelectAnweisung.ToLower.Contains("where") Or (Me.SelectAnweisung.StartsWith("(") And Me.SelectAnweisung.EndsWith("])")) Or Me.Spalte.StartsWith("%") And Me.Spalte.EndsWith("%") Then
'If Me.SelectAnweisung IsNot Nothing And Me.SelectAnweisung.StartsWith("SELECT [%spalte] FROM [%view] WHERE ") And Me.SelectAnweisung.Length > "SELECT [%spalte] FROM [%view] WHERE ".Length Then
Dim xml As New Xml.XmlDocument()
Dim xmlProfil As Xml.XmlElement
xml.Load(xmlNIConfigFile)
xmlProfil = xml.SelectSingleNode("//Settings/Profile/Profil[@profilname='" & profilname & "']/Link[@index='" & Me.Index & "'][@spalte='" & Me.Spalte & "'][@from='" & Me.From & "']")
xmlProfil.Attributes("select").Value = Me.SelectAnweisung
xmlProfil.Attributes("vktstate").Value = Me.vktins_state
xml.Save(xmlNIConfigFile)
Me._OriginalSelectAnweisung = Me.SelectAnweisung
' MsgBox("1: Die Verknüpfung wurde erfolgreich gespeichert!", MsgBoxStyle.Information, "Erfolgsmeldung:")
Return True
ElseIf Me.SelectAnweisung = "" And Me.SelectAnweisung <> Me._OriginalSelectAnweisung Then
Dim result As MsgBoxResult = MsgBox("Die Select-Anweisung wurde zurückgesetzt! Möchten Sie diesen Zustand jetzt speichern?", MsgBoxStyle.YesNoCancel, "Änderungen übernehmen?")
If result = MsgBoxResult.Yes Then
Dim xml As New Xml.XmlDocument()
Dim xmlProfil As Xml.XmlElement
xml.Load(xmlNIConfigFile)
xmlProfil = xml.SelectSingleNode("//Settings/Profile/Profil[@profilname='" & profilname & "']/Link[@index='" & Me.Index & "'][@spalte='" & Me.Spalte & "'][@from='" & Me.From & "']")
xmlProfil.Attributes("select").Value = Me.SelectAnweisung
xml.Save(xmlNIConfigFile)
Me._OriginalSelectAnweisung = Me.SelectAnweisung
'MsgBox("2: Die Verknüpfung wurde erfolgreich gespeichert!", MsgBoxStyle.Information, "Erfolgsmeldung:")
Return True
End If
Else
If Me.SelectAnweisung.Contains("=") = False Or Me.SelectAnweisung.Contains("where") = False Then
MsgBox("Die Verknüpfung konnte nicht gespeichert werden weil weder ein '=' oder 'where' vorhanden sind. Bitte überprüfen Sie die Verknüpfung " & Me.Index & " <-> " & Me.Spalte & " (in " & Me.From & ").", MsgBoxStyle.Information, "Verknüpfung konnte nicht gespeichert werden")
Else
MsgBox("Eine Verknüpfung konnte nicht gespeichert werden. " & vbNewLine & "Es sind evtl. ungültige Zeichen enthalten!" & vbNewLine & _
"Bitte überprüfen Sie die Verknüpfung " & Me.Index & " <-> " & Me.Spalte & " (in " & Me.From & ").", MsgBoxStyle.Information, "Verknüpfung konnte nicht gespeichert werden")
Return False
End If
End If
End Function
Public Sub setSelectAnweisung(ByVal selectAnweisung As String)
' Select-Anweisung setzen
Me.SelectAnweisung = selectAnweisung
End Sub
Public Sub setSpalte(ByVal Spalte As String)
' Spalte setzen
Me.Spalte = Spalte
End Sub
Public Sub setvktIns(ByVal vktinsvalue As Integer)
' Spalte setzen
Me.vktins_state = vktinsvalue
End Sub
Public Function getSelectAnweisung()
' Select-Anweisung zurückgeben
If Me.SelectAnweisung Is Nothing Then
Return ""
Else
Return Me.SelectAnweisung
End If
End Function
Public Function getvktInsState()
' Art des Vektorverhaltens
Return Me.vktins_state
End Function
Public Function getOriginalSelectAnweisung()
' originale Select-Anweisung zurückgeben
Return Me._OriginalSelectAnweisung
End Function
Public Sub SetBackToOriginal()
Me.SelectAnweisung = Me._OriginalSelectAnweisung
End Sub
End Class

View File

@ -0,0 +1,289 @@
'Imports System.Windows.Forms
Public Class ClassNIVerknüpfungen
Private _links() As ClassNIVerknüpfung
Private _parentProfile As ClassNIProfil
Public Shared xmlNIConfigFile As String
Public selectedLink As ClassNIVerknüpfung
Public Sub New(ByVal profil As ClassNIProfil)
Me._parentProfile = profil
xmlNIConfigFile = My.Application.Info.DirectoryPath & "\" & My.Settings.vNIConfigDatei
Me.LoadFromXmlFile()
End Sub
Public Sub LoadFromXmlFile()
Try
If Me._parentProfile.Profilname IsNot Nothing Then
Dim i As Integer = 0
Dim xml As New Xml.XmlDocument()
' XML-Datei mit Profilen öffnen und laden
xml.Load(xmlNIConfigFile)
' Anzahl der Profilelemente in der XML-Datei zählen
Dim anzProfile = xml.SelectNodes("Settings/Profile/Profil[@profilname='" & Me._parentProfile.OriginalProfilname & "']/Link").Count
' wenn mindestens ein Profilelement eingetragen ist
If anzProfile > 0 Then
' alle Profile laden
Dim xmlNodes As Xml.XmlNodeList = xml.SelectNodes("Settings/Profile/Profil[@profilname='" & Me._parentProfile.OriginalProfilname & "']/Link")
' alle Profile der XML-Datei durchlaufen
For Each xmlLink As Xml.XmlNode In xmlNodes
' prüfen ob ein Profilname angegeben wurde
If xmlLink.Attributes("index") IsNot Nothing And xmlLink.Attributes("spalte") IsNot Nothing And xmlLink.Attributes("from") IsNot Nothing And _
xmlLink.Attributes("select") IsNot Nothing Then
' ein Element an Items anhängen
ReDim Preserve Me._links(i)
' das Profilobjekt erzeugen
'MsgBox(xmlLink.Attributes("index").Value)
'MsgBox(xmlLink.Attributes("spalte").Value)
'MsgBox(xmlLink.Attributes("from").Value)
'MsgBox(xmlLink.Attributes("select").Value)
'MsgBox(xmlLink.Attributes("vktstate").Value)
Me._links(i) = New ClassNIVerknüpfung(xmlLink.Attributes("index").Value, xmlLink.Attributes("spalte").Value, xmlLink.Attributes("from").Value, _
xmlLink.Attributes("select").Value, xmlLink.Attributes("vktstate").Value)
' Zähler für Profile erhöhen
i += 1
End If
Next
End If
End If
Catch ex As Exception
MsgBox("Fehler beim Laden der XML-Datei!" & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Public Sub AddLink(ByVal index As String, ByVal spalte As String, ByVal from As String, ByVal selectanweisung As String, Optional vektorinsertState As Integer = 1)
Try
Dim xml As New Xml.XmlDocument
Dim xmlProfil As Xml.XmlElement
' XML-Datei laden
xml.Load(xmlNIConfigFile)
Try
' versuchen die XML-Beschreibung zu schreiben
xml.InsertBefore(xml.CreateXmlDeclaration("1.0", "UTF-8", "yes"), xml.ChildNodes(0))
Catch ex As Exception
' wenn dies nicht funktioniert, ist die Beschreibung schon vorhanden
End Try
' wenn die Hauptknoten noch nicht eingetragen wurden, sollen diese angelegt werden
If xml.SelectNodes("Settings") Is Nothing Or _
xml.SelectNodes("Settings/Profile") Is Nothing Or _
xml.SelectNodes("Settings/Profile/Profil[@profilname='" & Me._parentProfile.OriginalProfilname & "']") Is Nothing Then
MsgBox("Profil ist nicht vorhanden. Möglicherweise ist die Konfigurationsdatei ungültig.", MsgBoxStyle.Exclamation, "Fehler beim Anlegen einer Verknüpfung")
Exit Sub
End If
' dann ein neues Profil anlegen
xmlProfil = xml.CreateElement("Link")
' dem Profil die Attribute zuweisen
xmlProfil.SetAttribute("index", index)
xmlProfil.SetAttribute("spalte", spalte)
xmlProfil.SetAttribute("from", from)
xmlProfil.SetAttribute("select", selectanweisung)
xmlProfil.SetAttribute("vktstate", vektorinsertState)
' und in den Hauptknoten 'Profile' einhängen
xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me._parentProfile.OriginalProfilname & "']").AppendChild(xmlProfil)
' XML-Datei speichern
xml.Save(xmlNIConfigFile)
' die Liste der Profile im Objekt vergrößern
ReDim Preserve Me._links(Me.CountLinks)
' und das neue Profil dem Profilarray anhängen und die Eigenschaften zuweisen
Me._links(Me.CountLinks - 1) = New ClassNIVerknüpfung(index, spalte, from, selectanweisung, vektorinsertState)
Catch ex As Exception
MsgBox("Die Verknüpfung konnte nicht gespeichert werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Anlegen einer Verknüpfung")
End Try
End Sub
Public Sub RemoveLink(ByVal index As String, ByVal spalte As String, ByVal from As String)
Try
' *** Element aus Konfigurationsdatei löschen ***
' XML-Objekt initialisieren
Dim xml As New Xml.XmlDocument
' XML-Datei laden
xml.Load(xmlNIConfigFile)
' XML-Element auswählen
Dim node As Xml.XmlElement = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me._parentProfile.OriginalProfilname & "']/Link[@index='" & index & "'][@spalte='" & spalte & "'][@from='" & from & "']")
If node IsNot Nothing Then
' Element löschen
node.ParentNode.RemoveChild(node)
' XML-Datei speichern
xml.Save(xmlNIConfigFile)
End If
' *** Array umschreiben (Element aus Array entfernen) ***
' temporäres Array erzeugen
Dim tempItems() As ClassNIVerknüpfung = Me._links
Dim i As Integer = 0
' Größe anpassen
ReDim Preserve Me._links(tempItems.Length - 2)
' alle Verknüpfungen durchlaufen
For Each item As ClassNIVerknüpfung In tempItems
' wenn es sich nicht um das gelöschte handelt
If Not (item.Index = index And item.Spalte = spalte And item.From = from) Then
' die Verknüpfung in das Items-Array übertragen
Me._links(i) = item
' Counter hochzählen
i += 1
End If
Next
Catch ex As Exception
MsgBox("Die Verknüpfung konnte nicht gelöscht werden (RemoveLink):" & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Public Sub RenewLinks(ByVal _listview As ListView, vktinsstate As Integer)
Try
' XML-Objekt initialisieren
Dim xml As New Xml.XmlDocument
' XML-Datei laden
xml.Load(xmlNIConfigFile)
Dim xmlnode As Xml.XmlElement
Dim strSelect(_listview.Items.Count) As String
For Each _item As ListViewItem In _listview.Items
' *** Element aus Konfigurationsdatei löschen ***
' XML-Element auswählen
xmlnode = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me._parentProfile.OriginalProfilname & "']/Link[@index='" & _listview.Items(_item.Index).SubItems(0).Text & "'][@spalte='" & _listview.Items(_item.Index).SubItems(1).Text & "'][@from='" & _listview.Items(_item.Index).SubItems(2).Text & "']")
strSelect(_item.Index) = xmlnode.Attributes("select").Value
'MsgBox(strSelect(_item.Index).ToString)
If xmlnode IsNot Nothing Then
' Element löschen
xmlnode.ParentNode.RemoveChild(xmlnode)
End If
Next
For Each _item As ListViewItem In _listview.Items
' dann ein neues Profil anlegen
xmlnode = xml.CreateElement("Link")
' dem Profil die Attribute zuweisen
xmlnode.SetAttribute("index", _listview.Items(_item.Index).SubItems(0).Text)
xmlnode.SetAttribute("spalte", _listview.Items(_item.Index).SubItems(1).Text)
xmlnode.SetAttribute("from", _listview.Items(_item.Index).SubItems(2).Text)
xmlnode.SetAttribute("select", strSelect(_item.Index).ToString)
xmlnode.SetAttribute("vktstate", vktinsstate.ToString)
' und in den Hauptknoten 'Profile' einhängen
xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me._parentProfile.OriginalProfilname & "']").AppendChild(xmlnode)
Next
' XML-Datei speichern
xml.Save(xmlNIConfigFile)
Catch ex As Exception
MsgBox("Fehler in RenewLinks:" & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Private _linksSaved As Boolean = True
Public Function CountLinks()
' Anzahl der Verknüpfungen zurückgeben
If Me._links IsNot Nothing Then
Return Me._links.Length
Else
Return 0
End If
End Function
Public Function getLinkById(ByVal id As Integer)
If Not id < 0 And Not id > Me.CountLinks - 1 Then
Return Me._links(id)
Else
Return Nothing
End If
End Function
Public Function getLinkByValues(ByVal index As String, ByVal spalte As String, ByVal from As String) As ClassNIVerknüpfung
For Each link As ClassNIVerknüpfung In Me._links
If link.Index = index And link.Spalte = spalte And link.From = from Then
Return link
End If
Next
Return Nothing
End Function
Public Function getLinkByIndex(ByVal indexname As String) As ClassNIVerknüpfung
For Each link As ClassNIVerknüpfung In Me._links
If link.Index = indexname Then
Return link
End If
Next
Return Nothing
End Function
''' <summary>
''' Gibt zurück, ob die Verknüpfungen gespeichert wurden oder nicht.
''' </summary>
''' <returns>Liefert True wenn die Verknüpfungen gespeichert wurden und false wenn nicht</returns>
''' <remarks></remarks>
Public Function IsLinksSaved()
Return Me._linksSaved
End Function
''' <summary>
''' setzt das Profil auf geändert
''' </summary>
''' <remarks></remarks>
Public Sub setLinksChanged()
' Profil auf geändert setzen
Me._linksSaved = False
End Sub
''' <summary>
''' setzt das Profil auf gespeichert
''' </summary>
''' <remarks></remarks>
Public Sub setLinksSaved()
' Profil auf gespeichert setzen
Me._linksSaved = True
End Sub
Public ReadOnly Property Links() As ClassNIVerknüpfung()
Get
If Me._links IsNot Nothing Then
Return Me._links
Else
Return Nothing
End If
End Get
End Property
End Class

View File

@ -0,0 +1,993 @@
Imports WINDREAMLib
Imports WMOSRCHLib
Public Class ClassNIWindream
Inherits ClassWindream_allgemein
Private email As New ClassNIEmail
Private _selectedProfil As ClassNIProfil
#Region "+++++ Konstanten +++++"
'Protected Const WMObjectEditModeObject = &H1F
Protected Const WMObjectStreamOpenModeReadWrite = 2
Protected Const WMEntityObjectType = 10
Protected Const WMEntityDocument = 1
Const WMObjectVariableValueTypeUndefined = 0
Const WMObjectVariableValueTypeString = 1
Const WMObjectVariableValueTypeInteger = 2
Const WMObjectVariableValueTypeFloat = 3
Const WMObjectVariableValueTypeBoolean = 4
Const WMObjectVariableValueTypeDate = 5
Const WMObjectVariableValueTypeFixedPoint = 6
Const WMObjectVariableValueTypeTimeStamp = 7
Const WMObjectVariableValueTypeCurrency = 8
Const WMObjectVariableValueTypeTime = 9
Const WMObjectVariableValueTypeVariant = 10
Const WMObjectVariableValueTypeMask = &HFFF
Const WMObjectVariableValueFlagMask = &HFFFFF000
Const WMObjectVariableValueTypeVector = &H1000
Const WMObjectVariableValueTypeFulltext = &H2000
Const WMObjectVariableValueTypeDefaultValue = &H4000
Protected Const WMObjectStatusArchived = "&h00002000"
Const WMObjectEditModeChangeArchivedIndex = "&h00004000" ' indices marked as "always editable" can be edited even if the object is already archived or an older version of a file
#End Region
#Region "+++++ Variablen +++++"
'Private oController = CreateObject("WMOSrch.WMQuickSearch") 'As New WMOSearchController
'Private oController As New WMOSearchController
Private oController As New WMOSearchController
'Dim srchQuick = CreateObject("WMOSrch.WMQuickSearch") 'As WMOSRCHLib.WMQuickSearch
#End Region
#Region "+++++ Allgemeine Methoden und Funktionen +++++"
Sub New()
MyBase.New()
End Sub
Private Function IsNotEmpty(ByVal aValue As Object)
If aValue IsNot Nothing Then
Dim itsType As Type = aValue.GetType
If itsType Is GetType(String) Then
If Not aValue = "" Then
Return True
End If
Return False
Else
Return True
End If
Else
Return False
End If
End Function
Private Function return_type(ByVal _wert As Object)
Return _wert.GetType
End Function
Public Shared Function GetIndex_Type(idxName) As String
Try
Dim oAttribute = ClassNIWindream.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, idxName)
'den Variablentyp (String, Integer, ...) auslesen
Dim vType = oAttribute.getVariableValue("dwAttrType")
Dim Type As String
Select Case (vType)
'Case WMObjectVariableValueTypeUndefined
Case WMObjectVariableValueTypeString
Type = "String"
Case WMObjectVariableValueTypeInteger
Type = "Integer"
Case WMObjectVariableValueTypeFloat
Type = "Float"
Case WMObjectVariableValueTypeFixedPoint
Type = "Point"
Case WMObjectVariableValueTypeBoolean
Type = "Boolean"
Case WMObjectVariableValueTypeDate
Type = "Date"
Case WMObjectVariableValueTypeTimeStamp
Type = "Timestamp"
Case WMObjectVariableValueTypeCurrency
Type = "Currency"
Case WMObjectVariableValueTypeTime
Type = "Time"
Case WMObjectVariableValueTypeFloat
Type = "Float"
Case WMObjectVariableValueTypeVariant
Type = "Variant"
Case WMObjectVariableValueTypeFulltext
Type = "Fulltext"
Case 4097
Type = "Vektor String"
Case 4098
Type = "Vektor Numerisch"
Case 4099
Type = "Vektor Float"
Case 4101
Type = "Vektor Date"
Case 4103
Type = "Vektor DateTime"
Case 4104
Type = "Vektor Währung"
Case 4107
Type = "Vektor Integer(64bit)"
Case 36865
Type = "Vektor Alpha"
Case Else
Type = "String Else"
End Select
Return Type
Catch ex As Exception
End Try
End Function
Public Function RunIndexing_Vektor(ByVal oDocument As WMObject, ByVal Indizes As String(), ByVal aValues As String())
Dim myArray
Try
If Indizes IsNot Nothing And aValues IsNot Nothing Then
If Not oDocument.aLocked Then
oDocument.lock()
If aValues.Length = 1 And aValues(0) = "" Then
ClassLoggerNI.Add(" >> RunIndexing_Vektor: Indexwert ist leer/Nothing - Keine Nachindexierung", False)
Else
'Jetzt jeden Indexwert durchlaufen
Dim indexname As String
indexname = Indizes(0)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> RunIndexing_Vektor: Indexname: " & indexname, False)
'VEKTORFELDER, ALSO ÜBERPRÜFEN OB ERGEBNIS-ARRAY GEFÜLLT IST
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> RunIndexing_Vektor: VEKTORFELD-Indexierung: Vorbereiten des Arrays", False)
' das entsprechende Attribut aus windream auslesen
Dim oAttribute = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, indexname)
' den Variablentyp (String, Integer, ...) auslesen
Dim vType = oAttribute.getVariableValue("dwAttrType")
Select Case (vType)
Case 4097
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4097 Vektor alphanumerisch", False)
Case 4098
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4098 Vektor Numerisch", False)
Case 4099
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4099 Vektor Kommazahl", False)
Case 4101
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4101 Vektor Date", False)
Case 4103
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4103 Vektor DateTime", False)
Case 4107
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4107 Vektor Integer(64bit)", False)
Case 36865
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 36865 Vektor alphanumerisch", False)
End Select
Dim Anzahl As Integer = aValues.Length - 1
'Vektorfeld wird mit EINEM Wert gefüllt
If Anzahl = 0 Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> RunIndexing_Vektor: Vektorfeld wird mit EINEM Wert gefüllt ", False)
ReDim myArray(0)
Select Case (vType)
Case 4097
myArray(0) = CStr(aValues(0))
Case 4098
myArray(0) = CInt(aValues(0).Replace(" ", ""))
Case 4099
Dim str As String = aValues(0)
str = str.ToString.Replace(" ", "")
myArray(0) = CDbl(str.Replace(".", ","))
Case 4101
myArray(0) = CDate(aValues(0))
Case 4103
myArray(0) = aValues(0)
Case 4107
myArray(0) = Convert.ToInt64(aValues(0))
Case 36865
myArray(0) = CStr(aValues(0))
End Select
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> RunIndexing_Vektor: Konvertierter Wert: " & myArray(0).ToString, False)
Else
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> RunIndexing_Vektor: Vektorfeld wird mit MEHREREN Werten gefüllt ", False)
Dim _value As String
Try
'Die Größe des Arrays festlegen
ReDim myArray(Anzahl)
Dim i1 As Integer = 0
For Each aValue As String In aValues
_value = aValue
Select Case (vType)
Case 4107
Dim wert = aValue.Replace(" ", "")
wert = Convert.ToInt64(wert) 'ToInt64
myArray(i1) = wert
Case 4097
myArray(i1) = CStr(aValue)
Case 4098
Dim wert = aValue.Replace(" ", "")
Dim convertValue
If IsNumeric(wert) Then
Try
convertValue = CInt(wert)
Catch ex As Exception
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Wert muss in Int64 konvertiert werden", False)
convertValue = Convert.ToInt64(wert) 'ToInt64
End Try
Else
' ClassLoggerNI.Add(" - Indexierungswert '" & wert.ToString & "' kann nicht in Integer konvertiert werden", False)
Return False
End If
myArray(i1) = convertValue
Case 4099
myArray(i1) = CDbl(aValue.Replace(".", ",").Replace(" ", ""))
Case 4101
myArray(i1) = CDate(aValue)
Case 4103
myArray(i1) = aValue
Case 36865
myArray(i1) = CStr(aValue)
Case Else
myArray(i1) = CStr(aValue)
End Select
i1 += 1
Next
Catch ex As Exception
ClassLoggerNI.Add("## Error in converting array with more values - error: " & ex.Message)
'ClassLoggerNI.Add(String.Format("## Error in converting array with more values: value ('{0}') - error: " & ex.Message, _value))
End Try
End If
'Jetzt die Nachindexierung für Vektor-Felder
oDocument.SetVariableValue(indexname, myArray)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> RunIndexing_Vektor: 'SetVariableValue' für VEKTOR erfolgreich", False)
oDocument.Save()
oDocument.unlock()
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> RunIndexing_Vektor: Indexierung erfolgreich beendet (Save und Unlock durchgeführt)", False)
Return True
End If
Else
ClassLoggerNI.Add(" >> RunIndexing_Vektor: Dokument ist gesperrt, Indexierung erst im nächsten Durchlauf!", False)
Return False
End If
End If
Catch ex As Exception
ClassLoggerNI.Add("## Unexpected Error in RunIndexing_Vektor - error: " & ex.Message)
If Not IsNothing(myArray) Then
Dim i1 As Integer = 0
For Each aValue As String In myArray
ClassLoggerNI.Add(String.Format(">> myArray Value({0}): " & aValue.ToString, i1), False)
i1 += 1
Next
End If
oDocument.Save()
oDocument.unlock()
Return False
End Try
End Function
Public Function RunIndexing(ByVal oDocument As WMObject, ByVal Indizes() As String, ByVal aValues() As Object, ByVal myDS As DataSet, Profil As String, Objekttyp As String)
Dim vektInsState As Integer = 1
Dim myArray
Try
If Indizes IsNot Nothing And aValues IsNot Nothing Then
If Not oDocument.aLocked Then
'Überprüfen ob Archiviert ja oder nein
Dim dwflag = oDocument.GetVariableValue("dwFlags")
If CStr(dwflag) = 4204032 Then
Try
oDocument.LockFor(CLng(WMObjectEditModeChangeArchivedIndex))
Catch ex1 As Exception
ClassLoggerNI.Add("ACHTUNG: Fehler bei Locken der Archivierten Datei (ClassNiWindream.RunIndexing): " & ex1.Message, True)
Return True
End Try
Else
Try
oDocument.lock()
Catch ex As Exception
If ex.Message.Contains("Object not editable in mode") Then
Try
'ClassLoggerNI.Add(" >> Ergebnis CStr(dwflag): " & CStr(dwflag) & " - Versuch die Datei mit erweitertem Modus zu locken!", False)
oDocument.LockFor(CLng(WMObjectEditModeChangeArchivedIndex))
Catch exlock2 As Exception
ClassLoggerNI.Add("ACHTUNG: Fehler bei Locken der Datei mit erweitertem Modus WMobjectEMCArchived: " & exlock2.Message, True)
ClassLoggerNI.Add(" >>Ergebnis CStr(dwflag): " & CStr(dwflag), False)
Return True
End Try
Else
ClassLoggerNI.Add("ACHTUNG: Fehler bei Locken der Datei (ClassNiWindream.RunIndexing): " & ex.Message, True)
ClassLoggerNI.Add("Ergebnis CStr(dwflag): " & CStr(dwflag), False)
Return True
End If
End Try
End If
Dim i As Integer = 0
Dim indexname As String
If aValues.Length = 1 And aValues(0) = "" Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Indexwert ist leer/Nothing - Keine Nachindexierung", False)
End If
' wenn der Datei noch kein Dokumenttyp zugewiesen wurde
If oDocument.aObjectType.aName <> Objekttyp Then
' ihr den entsprechenden Dokumenttyp zuweisen
oDocument.aObjectType = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityObjectType, Objekttyp)
' WMObject.aObjectType = Me.selectedProfile.Dokumenttyp
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Objekttyp '" & oDocument.aObjectType.aName & "' wurde in '" & Objekttyp & "' geändert.", False)
Else
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Objekttyp war bereits gesetzt", False)
End If
Try
oDocument.Save()
Catch ex As Exception
' wenn es einen Fehler beim speichern gab, dann konnte auch kein Dokumenttyp gesetzt werden -> es kann also auch keine
' Indexierung stattfinden und die Indexierung muss nicht fortgesetzt werden
Return False
End Try
'Jetzt jeden Indexwert durchlaufen
For Each aName As String In Indizes
indexname = aName
If My.Settings.vLogErrorsonly = False Then
ClassLoggerNI.Add(" ", False)
ClassLoggerNI.Add(" >> Indexierung von Index '" & indexname & "'", False)
End If
' das entsprechende Attribut aus windream auslesen
Dim oAttribute = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, Indizes(i))
' den Variablentyp (String, Integer, ...) auslesen
Dim vType = oAttribute.getVariableValue("dwAttrType")
' wenn in aValues an Position i ein Wert steht
If Me.IsNotEmpty(aValues(i)) Then
Dim _int As Boolean = False
Dim _date As Boolean = False
Dim _dbl As Boolean = False
Dim _bool As Boolean = False
'If indexname = "Tournr" Then
' MsgBox("Index: " & indexname & vbNewLine & "wert: " & aValues(i), MsgBoxStyle.Information, "Index: " & aName.ToString)
'End If
'MsgBox(oDocument.aName & vbNewLine & aValues(i) & vbNewLine & vType, MsgBoxStyle.Exclamation, "Zeile 87")
Dim value = aValues(i)
Dim convertValue
Dim vektor As Boolean = False
'Den Typ des Index-Feldes auslesen
'MsgBox(value.GetType.ToString)
Select Case (vType)
'Case WMObjectVariableValueTypeUndefined
Case WMObjectVariableValueTypeString
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeString", False)
convertValue = CStr(value)
Case WMObjectVariableValueTypeInteger
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeInteger", False)
value = value.ToString.Replace(" ", "")
If IsNumeric(value) = False Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Achtung: Value '" & value & "' kann nicht in Zahl konvertiert werden!", False)
frmNIHauptseite._MRKONVERT_FEHLER = 1
Else
frmNIHauptseite._MRKONVERT_FEHLER = 0
End If
value = value.ToString.Replace(" ", "")
convertValue = CInt(value)
_int = True
Case WMObjectVariableValueTypeFloat
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeFloat", False)
value = value.ToString.Replace(" ", "")
convertValue = CDbl(value)
Case WMObjectVariableValueTypeFixedPoint
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeFixedPoint", False)
value = value.ToString.Replace(" ", "")
convertValue = CDbl(value)
_dbl = True
Case WMObjectVariableValueTypeBoolean
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeBoolean", False)
convertValue = CBool(value)
_bool = True
Case WMObjectVariableValueTypeDate
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeDate", False)
_date = True
'Dim _date As Date = value
convertValue = value
Case WMObjectVariableValueTypeTimeStamp
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeTimeStamp", False)
convertValue = CDbl(value)
Case WMObjectVariableValueTypeCurrency
ClassLoggerNI.Add(" - Typ des windream-Indexes: WMObjectVariableValueTypeCurrency", False)
'Wegen currency muß ein eigenes Objekt vom typ Variant erzeugt werden
Dim aValueWrapper As System.Runtime.InteropServices.CurrencyWrapper = New System.Runtime.InteropServices.CurrencyWrapper(CDec(value))
convertValue = aValueWrapper
Case WMObjectVariableValueTypeTime
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeTime", False)
'If ((value)) Then
' convertValue = CDate(value)
'Else
' convertValue = ""
'End If
'Dim _date As Date = value
convertValue = convertValue '*_date.ToShortTimeString
Case WMObjectVariableValueTypeFloat
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeFloat", False)
convertValue = CStr(value)
Case WMObjectVariableValueTypeVariant
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeVariant", False)
convertValue = CStr(value)
Case WMObjectVariableValueTypeFulltext
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: WMObjectVariableValueTypeFulltext", False)
convertValue = CStr(value)
Case 4097
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4097 Vektor alphanumerisch", False)
'Vektor alphanumerisch
vektor = True
Case 4098
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4098 Vektor Numerisch", False)
'Vektor Numerisch
vektor = True
Case 4099
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4099 Vektor Kommazahl", False)
'Vektor Kommazahl
vektor = True
Case 4101
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4101 Vektor Date", False)
'Vektor Kommazahl
vektor = True
Case 4103
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4103 Vektor DateTime", False)
'Vektor DateTime
vektor = True
Case 4107
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 4107 Integer 64bit", False)
vektor = True
Case 36865
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes: 36865 Vektor alphanumerisch", False)
'Vektor Kommazahl
vektor = True
Case Else
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Typ des windream-Indexes konnte nicht bestimmt werden!", False)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Versuch des Auslesens (vType): " & vType)
'MsgBox(vType & vbNewLine & CStr(value), MsgBoxStyle.Exclamation, "Marlon-Case Else")
convertValue = ""
End Select
If vektor = False Then
If convertValue.ToString Is Nothing = False Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Konvertierter Wert: '" & convertValue.ToString & "'", False)
End If
End If
'############################################################################################
'####################### Der eigentliche Indexierungsvorgang ################################
'############################################################################################
If vektor = False Then
If convertValue.ToString Is Nothing = False Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Versuch dem Dok einen Index zuzuweisen: oDocument.SetVariableValue(" & aName & ", " & convertValue & ")", False)
Try
If _int = True Then
convertValue = convertValue.ToString.Replace(" ", "")
oDocument.SetVariableValue(aName, CInt(convertValue))
ElseIf _date = True Then
oDocument.SetVariableValue(aName, CDate(convertValue))
ElseIf _bool Then
oDocument.SetVariableValue(aName, CBool(convertValue))
ElseIf _dbl Then
convertValue = convertValue.ToString.Replace(" ", "")
oDocument.SetVariableValue(aName, CDbl(convertValue))
Else
oDocument.SetVariableValue(aName, convertValue)
End If
'Die Datei speichern
oDocument.Save()
Catch ex As Exception
If ex.Message.Contains("External edit not allowed:") Then
ClassLoggerNI.Add("Achtung das Ändern des Indexes: '" & aName & "' ist nicht mehr erlaubt! Bitte überprüfen Sie Ihre Nachindexierungslogik und den Objekttyp.", False)
oDocument.Save()
Else
ClassLoggerNI.Add("Unvorhergesehener Fehler bei NonVektor-SetVariableValue:", True)
ClassLoggerNI.Add("Fehlermeldung:" & ex.Message, True)
oDocument.Save()
oDocument.unlock()
Return True
End If
End Try
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Index '" & aName & "' wurde geschrieben", False)
Else
ClassLoggerNI.Add(" >> Kein Indexwert vorhanden", False)
End If
Else
'VEKTORFELDER, ALSO ÜBERPRÜFEN OB ERGEBNIS-ARRAY GEFÜLLT IST
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> VEKTORFELD: Vorbereiten des Arrays", False)
Dim DS As DataSet
Dim DT As DataTable
Dim DR As DataRow
Dim BS As New System.Windows.Forms.BindingSource
' --- DataSet zuweisen
DS = myDS
' --- Zugriff auf Tabelle
DT = DS.Tables("TBVEKTOR_ARRAY")
' --- den Filter auf den Indexnamen setzen
BS.DataSource = DS
BS.DataMember = "TBVEKTOR_ARRAY"
BS.Filter = "Indexname = '" & aName.ToString & "'"
'For Each row As DataRow In DT.Rows
'MsgBox(aName & vbNewLine & row.Item("Indexname") & vbNewLine & CStr(row.Item("Wert")))
'Next
Dim Anzahl As Integer = BS.Count
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Anzahl Vektorwerte: " & Anzahl.ToString, False)
'Vektorfeld wird mit EINEM Wert gefüllt
Dim temp_arr As New ArrayList
If Anzahl = 1 Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Vektorfeld wird mit EINEM Wert gefüllt ", False)
ReDim myArray(0)
myArray(0) = Convert_VectorType(vType, value)
'Jetzt überprüfen ob Werte in Vektorfeld angefügt oder überschrieben werden sollen
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Konvertierter Wert: " & myArray(0).ToString, False)
' das ausgewählte Profil in _selectedProfile laden
_selectedProfil = ClassNIProfile.getProfilByName(Profil)
If _selectedProfil Is Nothing = False Then
Me._selectedProfil._links.selectedLink = Me._selectedProfil._links.getLinkByIndex(aName)
If Me._selectedProfil._links.selectedLink IsNot Nothing Then
Dim VektorArray
Select Case Me._selectedProfil._links.selectedLink.vktins_state
Case 1
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> vektInsState = '1'", False)
ReDim Preserve VektorArray(0)
VektorArray(0) = myArray(0)
Case 2 'Anfügen
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> vektInsState = '2'", False)
VektorArray = Return_VektorArray(oDocument, aName, myArray, False, vType)
Case 3 'Anfügen mit DuplikatCheck
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> vektInsState = '3'", False)
VektorArray = Return_VektorArray(oDocument, aName, myArray, True, vType)
End Select
If VektorArray Is Nothing = False Then
ReDim myArray(VektorArray.Length - 1)
Array.Copy(VektorArray, myArray, VektorArray.Length)
'Jetzt die Nachindexierung für Vektor-Felder
If BS.Count = 1 Then
If vType = 4097 Then
Dim strArray()
ReDim Preserve strArray(0)
strArray(0) = myArray(0)
temp_arr.Add(CStr(myArray(0)))
oDocument.SetVariableValue(aName, strArray)
ElseIf vType = 4098 Then
temp_arr.Add(CInt(myArray(0)))
If temp_arr.Count > 0 Then
If My.Settings.vLogErrorsonly = False Then ClassLoggerDI.Add("- Einträge in temp_arr also Speichern des Arrays in convertValue", False)
convertValue = Nothing
convertValue = temp_arr.ToArray
Else
convertValue = vbEmpty
End If
' den konvertierten Indexwert dem entsprechenden Index zuweisen
oDocument.SetVariableValue(aName, convertValue)
Else
oDocument.SetVariableValue(aName, myArray(0))
End If
Else
oDocument.SetVariableValue(aName, myArray)
End If
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> 'SetVariableValue' für VEKTOR mit einem Wert erfolgreich", False)
'Die Änderungen festsschreiben/speichern
oDocument.Save()
End If
Else
ClassLoggerNI.Add(" - Achtung: Der Link konnte nicht geladen werden - _selectedProfil._links.selectedLink is NOTHING", False)
End If
Else
ClassLoggerNI.Add(" - Achtung: Das Profil konnte nicht geladen werden - _selectedProfil is NOTHING", False)
End If
Else
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> (RI) Vektorfeld wird mit MEHREREN Werten gefüllt ", False)
' das ausgewählte Profil in _selectedProfile laden
_selectedProfil = ClassNIProfile.getProfilByName(Profil)
'Die Größe des Arrays festlegen
ReDim myArray(Anzahl - 1)
Dim i1 As Integer = 0
'Die Datatable durchlaufen und Werte für den Index in Array schreiben
For Each DR In DT.Rows
If DR.Item("Indexname") = aName.ToString Then
If vType = 4098 Then
myArray(i1) = CInt(DR.Item("Wert"))
ElseIf vType = 4101 Then
myArray(i1) = CDate(DR.Item("Wert"))
Else
myArray(i1) = CStr(DR.Item("Wert"))
End If
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Value (" & i1 & "): '" & DR.Item("Wert").ToString & "'", False)
i1 = i1 + 1
End If
Next
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Array wurde erfolgreich erzeugt", False)
If _selectedProfil Is Nothing = False Then
Me._selectedProfil._links.selectedLink = Me._selectedProfil._links.getLinkByIndex(aName)
If Me._selectedProfil._links.selectedLink IsNot Nothing Then
Dim VektorArray
Select Case Me._selectedProfil._links.selectedLink.vktins_state
Case 1
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> vektInsState = '1'", False)
Dim z As Integer = 0
ReDim VektorArray(myArray.Length)
For Each str As Object In myArray
If str Is Nothing = False Then
'Das Array anpassen
ReDim Preserve VektorArray(z)
'Den Wert im Array speichern
If vType = 4098 Then
VektorArray(z) = CInt(str)
Else
VektorArray(z) = str
End If
z += 1
End If
Next
Case 2 'Anfügen
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> vektInsState = '2'", False)
VektorArray = Return_VektorArray(oDocument, aName, myArray, False, vType)
Case 3 'Anfügen mit DuplikatCheck
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> vektInsState = '3'", False)
VektorArray = Return_VektorArray(oDocument, aName, myArray, True, vType)
End Select
If VektorArray Is Nothing = False Then
'Das Array wieder anpassen
ReDim myArray(VektorArray.Length - 1)
Array.Copy(VektorArray, myArray, VektorArray.Length)
'Jetzt die Nachindexierung für Vektor-Felder
oDocument.SetVariableValue(aName, myArray)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> 'SetVariableValue' für VEKTOR erfolgreich", False)
' oDocument.LockRights()
'Die Änderungen festsschreiben/speichern
oDocument.Save()
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(">> Indexierung erfolgreich beendet (Save ...", False)
Else
ClassLoggerNI.Add(" - Achtung: VektorArray Is NOTHING", False)
oDocument.Save()
Return True
End If
Else
ClassLoggerNI.Add(" - Achtung: Der Link konnte nicht geladen werden - _selectedProfil._links.selectedLink is NOTHING", False)
oDocument.Save()
Return True
End If
Else
ClassLoggerNI.Add(" - Achtung: Das Profil konnte nicht geladen werden - _selectedProfil is NOTHING", False)
oDocument.Save()
Return True
End If
End If
End If
Else
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Array der Indexwerte ist leer/Nothing - Keine Nachindexierung", False)
End If
i += 1
Next
oDocument.unlock()
If My.Settings.vLogErrorsonly = False Then
ClassLoggerNI.Add(" >> Unlock durchgeführt)", False)
ClassLoggerNI.Add("", False)
End If
Return False
Else
ClassLoggerNI.Add(" >> Dokument ist gesperrt, Indexierung erst im nächsten Durchlauf!", False)
'oDocument.unlock()
Return True
End If
End If
Catch ex As Exception
ClassLoggerNI.Add("ACHTUNG: Unvohergesehener Fehler in ClassNiWindream.RunIndexing: " & ex.Message, True)
If Not IsNothing(myArray) Then
Dim i1 As Integer = 0
For Each aValue As String In myArray
ClassLoggerNI.Add(String.Format(">> myArray Value({0}): " & aValue.ToString, i1), False)
i1 += 1
Next
End If
If My.Settings.vNIMailsenden = True Then
email.Send_EMail("Fehler bei RunIndexing - Datei: " & oDocument.aName.ToString & "<br>Profilname: " & Profil & "<br>Fehler: " & ex.Message)
End If
oDocument.Save()
oDocument.unlock()
Return True
End Try
End Function
Private Function Return_VektorArray(ByVal oDocument As WMObject, vktIndexName As String, NIIndexe As Object, CheckDuplikat As Boolean, vType As Object)
Try
Dim missing As Boolean = False
Dim Anzahl As Integer = 0
Dim ValueArray()
'Jeden Wert des Vektorfeldes durchlaufen
Dim wertWD = oDocument.GetVariableValue(vktIndexName)
If wertWD Is Nothing = False Then
'Nochmals prüfen ob wirklich Array
If wertWD.GetType.ToString.Contains("System.Object") Then
'Keine Duplikatprüfung also einfach neues Array füllen
If CheckDuplikat = False Then
For Each value As Object In wertWD
'Das Array anpassen
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = Convert_VectorType(vType, value)
Anzahl += 1
Next
'Und jetzt den/die Neuen Wert(e) anfügen
For Each NewValue As Object In NIIndexe
If NewValue Is Nothing = False Then
'Das Array anpassen
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = Convert_VectorType(vType, NewValue)
Anzahl += 1
End If
Next
Else
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Duplikatprüfung soll durchgeführt werden.", False)
'Duplikat Prüfung an, also nur anhängen wenn Wert <>
For Each WDValue As Object In wertWD
If WDValue Is Nothing = False Then
'Erst einmal die ALten Werte schreiben
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = Convert_VectorType(vType, WDValue)
Anzahl += 1
End If
Next
'Jetzt die Neuen Werte auf Duplikate überprüfen
For Each NewValue As Object In NIIndexe
If NewValue Is Nothing = False Then
If ValueArray.Contains(NewValue) = False Then
'Das Array anpassen
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = Convert_VectorType(vType, NewValue)
Anzahl += 1
Else
ClassLoggerNI.Add(" >> Value '" & NewValue.ToString & "' bereits in Vektorfeld enthalten", False)
End If
End If
Next
End If
End If
Else
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Vektorfeld ist noch leer....", False)
'Den/die Neuen Wert(e) anfügen
For Each NewValue As Object In NIIndexe
If NewValue Is Nothing = False Then
If CheckDuplikat = True Then
If ValueArray Is Nothing = False Then
If ValueArray.Contains(NewValue) = False Then
'Das Array anpassen
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = Convert_VectorType(vType, NewValue)
Anzahl += 1
Else
ClassLoggerNI.Add(" >> Value '" & NewValue.ToString & "' bereits in Array enthalten", False)
End If
Else 'Dererste Wert, also hinzufügen
'Das Array anpassen
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = Convert_VectorType(vType, NewValue)
Anzahl += 1
End If
Else
'Das Array anpassen
ReDim Preserve ValueArray(Anzahl)
'Den Wert im Array speichern
ValueArray(Anzahl) = Convert_VectorType(vType, NewValue)
Anzahl += 1
End If
End If
Next
End If
Return ValueArray
Catch ex As Exception
ClassLoggerNI.Add("ClassNiWindream.Return_VektorArray", ex)
End Try
End Function
Private Shared Function Convert_VectorType(vType As Object, value As String)
Select Case vType
Case 36865
'Umwandeln in String
Return CStr(value)
Case 4097
'Umwandeln in String
Return CStr(value)
Case 4098
'Umwandeln in Integer
value = value.ToString.Replace(" ", "")
Return CInt(value)
Case 4099
Dim Str As String = value
Str = Str.ToString.Replace(" ", "")
'Umwandeln in Double
Return CDbl(Str.Replace(".", ","))
Case 4101
'Umwandeln in Date
Return CDate(value)
Case 4107
Return Convert.ToInt64(value)
Case 4103
'Umwandeln in Datum Uhrzeit
Return value
Case Else
'Umwandeln in String
Return CStr(value)
End Select
End Function
Private Function AddToArray(ByVal myArray As Object, Anzahl As Integer, newvalue As Object)
'Das Array anpassen
ReDim Preserve myArray(Anzahl)
'Den Wert im Array speichern
myArray(Anzahl) = newvalue.ToString
Return myArray
End Function
Public Sub SetfinalIndex(ByVal oDocument As WMObject, ByVal Indexname As String, ByVal _state As Boolean)
Try
If Indexname IsNot Nothing Then
If Not oDocument.aLocked Then
oDocument.lock()
Dim i As Integer = 0
' das entsprechende Attribut aus windream auslesen
Dim oAttribute = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, Indexname)
' den Variablentyp (String, Integer, ...) auslesen
Dim vType = oAttribute.getVariableValue("dwAttrType")
'MsgBox("Typ: " & vType.ToString, MsgBoxStyle.Critical, "_state: " & _state.ToString)
' wenn in aValues an Position i ein Wert steht
If Me.IsNotEmpty(Indexname) Then
'MsgBox(oDocument.aName & vbNewLine & aValues(i) & vbNewLine & vType, MsgBoxStyle.Exclamation, "Zeile 87")
Dim value = _state
Dim convertValue
'Den Typ des Index-Feldes auslesen
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add("- Typ des windream-Indexes: " & vType.ToString)
Select Case (vType)
Case WMObjectVariableValueTypeBoolean
convertValue = CBool(value)
Case Else
ClassLoggerNI.Add(" >> Typ des windream-Indexes ist nicht BOOLEAN also Abbruch:")
End Select
'############################################################################################
'####################### Der eigentliche Indexierungsvorgang ################################
oDocument.SetVariableValue(Indexname, convertValue)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Finaler Index '" & Indexname & "' wurde gesetzt")
oDocument.Save()
oDocument.unlock()
ClassLoggerNI.Add(" >> DATEI wurde erfolgreich als fertig nachindexiert gekennzeichnet")
End If
Else
ClassLoggerNI.Add(" >> Dokument ist gesperrt, Indexierung erst im nächsten Durchlauf!")
End If
End If
Catch ex As Exception
ClassLoggerNI.Add("ClassSearchResult.SetfinalIndex", ex)
If My.Settings.vNIMailsenden = True Then
email.Send_EMail("Fehler bei SetfinalIndex - Datei: " & oDocument.aName.ToString & " - Fehler: " & ex.Message)
End If
oDocument.Save()
oDocument.unlock()
End Try
End Sub
#End Region
#Region "+++++ Allgemeine Funktionen die Informationen zurückliefern +++++"
Public Function GetSearchDocuments(ByVal wdfLocation As String)
If System.IO.File.Exists(wdfLocation) Then
Try
Dim ProfileName = wdfLocation.Substring(wdfLocation.LastIndexOf("\") + 1)
Dim ProfilePath = wdfLocation.Substring(0, wdfLocation.Length - ProfileName.Length)
Me.oController.CheckSearchProfile(wdfLocation.ToLower)
Dim suchTyp = Me.oController.SearchProfileTargetProgID
Dim ExSettings As Object
Dim oSearch As Object
ExSettings = Me.oController.SearchProfileExSettings
If ExSettings = 0 Then ExSettings = 7
Dim srchQuick As WMOSRCHLib.WMQuickSearch = CreateObject("WMOSrch.WMQuickSearch")
Dim srchIndex As WMOSRCHLib.WMIndexSearch = CreateObject("WMOSrch.WMIndexSearch")
Dim srchObjectType As WMOSRCHLib.WMObjectTypeSearch = CreateObject("WMOSrch.WMObjectTypeSearch")
'' Der öffentliche Member CheckSearchProfile für den Typ IWMQuickSearch7 wurde nicht gefunden. [Microsoft.VisualBasic] => GetSearchDocuments()
Select Case suchTyp.ToString.ToUpper
Case "WMOSRCH.WMQUICKSEARCH"
srchQuick.WMSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
Me.oConnect.LoginSession(srchQuick.WMSession)
srchQuick.ClearSearch()
srchQuick.SearchProfilePath = ProfilePath
srchQuick.LoadSearchProfile(ProfileName)
oSearch = srchQuick.GetSearch()
Case "WMOSRCH.WMINDEXSEARCH"
srchIndex.WMSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
Me.oConnect.LoginSession(srchIndex.WMSession)
srchIndex.ClearSearch()
srchIndex.SearchProfilePath = ProfilePath
srchIndex.LoadSearchProfile(ProfileName)
oSearch = srchIndex.GetSearch()
Case "WMOSRCH.WMOBJECTTYPESEARCH"
srchObjectType.WMSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
Me.oConnect.LoginSession(srchObjectType.WMSession)
srchObjectType.ClearSearch()
srchObjectType.SearchProfilePath = ProfilePath
srchObjectType.LoadSearchProfile(ProfileName)
oSearch = srchObjectType.GetSearch()
Case Else
ClassLoggerNI.Add("KEIN GÜLTIGER WINDREAM-SUCHTYP")
Return Nothing
End Select
Dim WMObjects As Object
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" - Start der Suche: " & Now, False)
' System.Threading.Thread.Sleep(200000)
WMObjects = oSearch.Execute
Return oSearch.execute
Catch ex As Exception
' bei einem Fehler einen Eintrag in der Logdatei machen
ClassLoggerNI.Add("Fehler in GetSearchDocuments()", ex)
Return Nothing
End Try
End If
Return Nothing
End Function
''' Liefert den Wert eines Indexes als String
''' _indexname = Name des zu überprüfenden Indexfeldes
Public Function GetValueforIndex(ByVal _fullfilepath As String, _indexname As String)
Try
Const WMEntityDocument = 1
Dim IndexwertAusWindream As Object = Nothing
Dim _dok As WINDREAMLib.WMObject
_dok = Nothing
_dok = oSession.GetWMObjectByPath(WMEntityDocument, _fullfilepath) 'WINDREAMLib.WMEntity.WMEntityDocument
IndexwertAusWindream = _dok.GetVariableValue(_indexname)
Return IndexwertAusWindream.ToString
Catch ex As Exception
'MsgBox(ex.Message)
Return Nothing
End Try
End Function
#End Region
End Class

View File

@ -0,0 +1,91 @@
Imports System.Data.SQLite
Public Class ClassSQLITE
Private Shared db_location As String
Public Shared logerrorsonly As Boolean
Public Shared Passwort_admin As String
Public Shared Function Init(_form As Boolean)
Try
db_location = "data source=" & My.Settings.SQLLITE_CONNECTION & ";Version=3;UseUTF16Encoding=True;"
Dim SQLconnect As New SQLite.SQLiteConnection(db_location) '"Data Source=E:\ToolCollection.sqlite;Version=3;UseUTF16Encoding=True;") '""Data Source=" & db_location & ";")
'SQLconnect.ConnectionString = "Data Source=" & db_location
SQLconnect.Open()
Return True
Catch ex As Exception
If _form = False Then
ClassLoggerNI.Add("Fehler in: Init SQLiteDatabase: " & ex.Message)
Else
MsgBox("Fehler in: Init SQLiteDatabase: " & ex.Message, MsgBoxStyle.Critical)
End If
Return False
End Try
End Function
Public Shared Function Return_Datatable(Select_anweisung As String, _form As Boolean)
Try
Dim SQLconnect As New SQLite.SQLiteConnection()
Dim SQLcommand As SQLiteCommand
SQLconnect.ConnectionString = db_location
SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand
SQLcommand.CommandText = Select_anweisung
Dim adapter1 As SQLiteDataAdapter = New SQLiteDataAdapter(SQLcommand)
Dim dt As DataTable = New DataTable()
adapter1.Fill(dt)
SQLconnect.Close()
Return dt
Catch ex As Exception
If _form = False Then
ClassLoggerNI.Add("FEHLER IN Return_Datatable: " & ex.Message)
Else
MsgBox("FEHLER IN Return_Datatable: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End If
Return Nothing
End Try
End Function
Public Shared Function Execute_Command(_sql As String, _form As Boolean)
Try
Dim SQLconnect As New SQLite.SQLiteConnection()
Dim SQLcommand As SQLiteCommand
SQLconnect.ConnectionString = db_location
SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand
'Update Last Created Record in Foo
SQLcommand.CommandText = _sql
SQLcommand.ExecuteNonQuery()
SQLcommand.Dispose()
SQLconnect.Close()
Return True
Catch ex As Exception
If _form = False Then
ClassLoggerNI.Add("Fehler in: SQLite Execute_Command: " & ex.Message)
Else
MsgBox("Fehler in: 'Execute_Command': " & vbNewLine & ex.Message & vbNewLine & vbNewLine & "SQL-Command: " & _sql, MsgBoxStyle.Critical)
End If
Return False
End Try
End Function
Public Shared Function Execute_scalar(_sql As String, _form As Boolean)
Try
Dim SQLconnect As New SQLite.SQLiteConnection()
Dim SQLcommand As SQLiteCommand
SQLconnect.ConnectionString = db_location
SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand
'Update Last Created Record in Foo
SQLcommand.CommandText = _sql
Dim result = SQLcommand.ExecuteScalar()
SQLcommand.Dispose()
SQLconnect.Close()
Return result
Catch ex As Exception
If _form = False Then
ClassLoggerNI.Add("Fehler in: SQLite Execute_scalar: " & ex.Message)
Else
MsgBox("Fehler in: 'Execute_scalar': " & vbNewLine & ex.Message & vbNewLine & vbNewLine & "SQL-Command: " & _sql, MsgBoxStyle.Critical)
End If
Return Nothing
End Try
End Function
End Class

View File

@ -0,0 +1,867 @@
Imports WINDREAMLib
Imports WINDREAMLib.WMCOMEvent
Imports WINDREAMLib.WMEntity
Imports WINDREAMLib.WMObjectEditMode
Imports WINDREAMLib.WMSearchOperator
Imports WINDREAMLib.WMSearchRelation
Imports WMOBRWSLib
Public Class ClassWD_Rechte
#Region "+++++ Konstanten +++++"
Const REL_Document_AccessRight = "AccessRight"
Const COL_AccessRight_AccessRightID = "dwAccessRightID"
Const COL_AccessRight_AccessRight = "dwAccessRight"
Const REL_AccessRight_UserOrGroup = "AccessRightUserOrGroup"
Dim dwAccessRight
Const WMAccessRightUndefined = 0
Const WMAccessRightRead = 1
Const WMAccessRightWrite = 2
Const WMAccessRightAdmin = 4
Const WMAccessRightAllRights = 7 ' doc+folder: read, write and admin access
Const WMUserTypeMain = 1
Const WMUserTypeNormal = 4
Const WMUserTypeInactive = 8
Const WMGroupTypeAdmin = 2
Const WMEntityGroups = 13
Const WMEntityUser = 18
Const WMGroupTypeAll = 127
#End Region
#Region "+++++ Variablen +++++"
Public oConnect ' der Typ darf nicht festgelegt werden (warum auch immer... geht sonst nicht)
Public oSession ' der Typ darf nicht festgelegt werden (warum auch immer... geht sonst nicht)
Public oServername As String
Public oBrowser As New WMOBRWSLib.ServerBrowser
Public oDokumentTypen As WINDREAMLib.WMObjects
Public aktivesProfil As ClassNIProfil
#End Region
''' <summary>
''' Initialisiert die statische Klasse (Login, Session starten, usw.)
''' </summary>
''' <returns>Liefert True wenn das Anmelden erfolgreich war, sonst False</returns>
''' <remarks></remarks>
Public Function Init() As Boolean
Try
Try
' Session-Objekt instanziieren und mit dem im Client ausgewählten Server belegen
Me.oSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
oServername = Me.GetCurrentServer()
' Connection-Objekt instanziieren
Me.oConnect = CreateObject("Windream.WMConnect")
'MsgBox("windrem init 'ed")
Catch ex As Exception
Return False
End Try
' wenn windream nicht angemeldet ist
If Not Me.IsLoggedIn Then
' Art der Anmeldung an windream festlegen
' 0x0L (also 0) = Standard windream Benutzer
' WM_MODULE_ID_DOCTYPEEDITOR_LIC = ermöglicht Zugriff auf die windream Management Funktionen (Z.B. zur Verwaltung der windream Dokumententypen, Auswahllisten, etc.)
' WM_MODULE_ID_INDEXSERVICE = ermöglicht der Session die Indexierungs-Events vom windream DMS-Service zu empfangen
Me.oConnect.ModuleID = 0
' setzt die minimal erwartete windream-Version
Me.oConnect.MinReqVersion = "3"
' Verbindung mit Session-Objekt (und dem ausgewählten Server) aufbauen
Me.oConnect.LoginSession(Me.oSession)
If Me.oSession.aLoggedin = False Then
MsgBox("Es konnte keine Verbindung mit dem windream-Server hergestellt werden", MsgBoxStyle.Exclamation, "Verbindung konnte nicht hergestellt werden")
Return False
End If
Try
Me.oSession.SwitchEvents(WMCOMEventWMSessionNeedIndex, False)
' der Parameter WMEntityDocument definiert, dass nur Dokumenttypen und keine
' Ordnertypen ausgelesen werden
Me.oDokumentTypen = Me.oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
Catch ex As Exception
Return False
End Try
End If
Return True
Catch ex As Exception
If Err.Number = -2147220985 Then
MsgBox("Die installierte windream-Version ist nicht ausreichend für den Betrieb der Tool Collection für windream." & vbNewLine & _
"Bitte kontaktieren Sie Digital Data." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & Err.Description, MsgBoxStyle.Exclamation, "Unzureichende windream-Version")
Else
If Not ex.Message.Contains("Already logged in") Then
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Login an windream")
Else
Return True
End If
End If
Return False
End Try
End Function
''' <summary>
''' Liefert den Servernamen an dem windream aktuell angemeldet ist.
''' </summary>
''' <returns>Servername als String</returns>
''' <remarks></remarks>
Public Function GetCurrentServer() As String
Try
Return Me.oBrowser.GetCurrentServer 'ClassWindream.oBrowser.GetCurrentServer
Catch ex As Exception
MsgBox("Der aktuell gewählte windream-Server konnte nicht ausgelesen werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen des windream-Servers")
End Try
Return ""
End Function
''' <summary>
''' Liefert True wenn die windream-Session angemeldet ist und False für den Fall, dass die Session nicht eingeloggt ist.
''' </summary>
''' <returns>Anmeldestatus als Boolean</returns>
''' <remarks></remarks>
Public Function IsLoggedIn() As Boolean
Try
Return Me.oSession.aLoggedin
Catch ex As Exception
MsgBox("Es konnte nicht erfolgreich geprüft werden, ob das Programm am windream-Server angemeldet ist." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler bei Loggedin-Prüfung")
End Try
Return False
End Function
Function GetWMSessionAsUser(Domain, ServerName, UserName, Password, _form)
Dim SessionAsUser
Dim aConnect, aUserId, aSession
On Error Resume Next
' Hilfsobjekte erschaffen, um eine Verbindung zum windream Server herzustellen
' mit der gewünschten Benutzer-Identität
aConnect = CreateObject("Windream.WMConnect")
'Bei einer impersonifizierten Session ist zu beachten, dass die ModuleID 9 zu nutzen ist.
'Wird keine Session-ID angegeben, hat die Session die ID 0 (Default).
aConnect.ModuleId = 9
If Err.Number <> 0 Then
Dim msg = "Fehler bei CreateObject (aConnect) - Err.Number: " & Err.Number & vbNewLine & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
SessionAsUser = Nothing
Return SessionAsUser
End If
aUserId = CreateObject("WMOTool.WMUserIdentity")
If Err.Number <> 0 Then
Dim msg = "Fehler bei CreateObject('WMOTool.WMUserIdentity') - Err.Number: " & Err.Number & vbNewLine & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
SessionAsUser = Nothing
Return SessionAsUser
End If
aUserId.aDomain = Domain
aUserId.aServerName = ServerName
aUserId.aUserName = UserName
aUserId.aPassword = Password
aSession = aConnect.Login(aUserId)
If Err.Number <> 0 Then
Dim msg = "Fehler bei aConnect.Login(aUserId) - Err.Number: " & Err.Number & vbNewLine & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
SessionAsUser = Nothing
Return SessionAsUser
Else
SessionAsUser = aSession
If aSession.aLoggedin = True Then
Return SessionAsUser
End If
End If
End Function
Public Function Check_Login_Session(ByVal domain As String, Server As String, Username As String, PW As String) As Boolean
Dim oSession
oSession = GetWMSessionAsUser(domain, Server, Username, PW, True)
If Not (oSession Is Nothing) Then
Return True
Else
Return False
End If
End Function
''' <summary>
''' Setzt das Recht für das entsprechende Objekt (File oder Folder)
''' </summary>
''' <returns>Boolean True wenn erfolgreich</returns>
''' <remarks></remarks>
Public Function FileFolder_DeleteAndOrSetRight(docpath As String, profilID As Integer, regelid As Integer, folgeRegel As Boolean, createdFolder As String, _form As Boolean) As Boolean
On Error Resume Next
Dim deleteRights As Boolean = False
Dim domain, Server, Username, PW As String
Dim _methode As String
Dim _GruppenUserRecht
Dim _UserOrGroup
Dim _lRight As Integer
Dim _Erfolgreich As Boolean = True
Dim DT As DataTable = ClassSQLITE.Return_Datatable("select * from TBNI_NACHBEARBEITUNG_AD WHERE GUID = '" & profilID & "'", _form)
If DT Is Nothing = False Then
If DT.Rows.Count = 1 Then
'Profildaten laden
For Each row As DataRow In DT.Rows
deleteRights = CBool(row.Item("DEL_ALL_RIGHTS"))
domain = row.Item("Domain")
Username = row.Item("Username")
PW = row.Item("Password")
Server = row.Item("Servername")
Next
Dim DTR As DataTable = ClassSQLITE.Return_Datatable("select * from TBNI_NB_STEP_AD WHERE GUID = " & regelid, _form)
If DTR.Rows.Count = 1 Then
For Each row As DataRow In DTR.Rows
_methode = row.Item("Methode")
_GruppenUserRecht = row.Item("RECHTENAME")
_UserOrGroup = row.Item("GROUP_OR_USER")
_lRight = row.Item("ACCESS_RIGHT")
Next
Else
Dim msg = "Fehler in File_Delete_SetRight: Es konnte keine eindeutige AD-Regel gelesen werden!"
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
Return False
End If
End If
End If
Dim oSession
Dim oWMObject As WINDREAMLib.WMObject
Dim UserGroupRelation
Dim UserOrGroup
Dim oGroup
Dim oUSer
oSession = GetWMSessionAsUser(domain, Server, Username, PW, _form)
If Err.Number <> 0 Then
Dim msg = "Fehler bei Zugriff GetWMSessionAsUser - Err.Number: " & Err.Number & vbNewLine & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
If Not (oSession Is Nothing) Then
oWMObject = oSession.GetWMObjectByPath(WMEntityDocumentAndMap, docpath)
If Err.Number <> 0 Then
Dim msg = "Fehler Zugriff GetWMObjectByPath - Err.Number: " & Err.Number & vbNewLine & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
'wenn das Recht anhand eine Indexwertes ausgelesen werden soll
If _GruppenUserRecht.ToString.StartsWith("[%") Then
Dim Indexwert As Object
Dim Indexname As String = _GruppenUserRecht.ToString.Substring(2, _GruppenUserRecht.Length - 3)
Dim _WCCase As Integer
'Auf Wildcards prüfen
'Führende und schliessende Wildcard
If Indexname.StartsWith("%") And Indexname.EndsWith("%") Then
_WCCase = 0
ElseIf Indexname.StartsWith("%") Then
_WCCase = 1
ElseIf Indexname.EndsWith("%") Then
_WCCase = 2
Else
_WCCase = 3
End If
frmNIHauptseite.Logger(" * AD _WCCase = " & _WCCase, False)
Indexname = Indexname.Replace("%", "")
Indexwert = oWMObject.GetVariableValue(Indexname)
Dim mask
If Indexwert Is Nothing = False Then
'Maske zusammenbauen
Select Case _WCCase
Case 0
mask = "%" & Indexwert & "%"
Case 1
mask = "%" & Indexwert
Case 2
mask = Indexwert & "%"
Case 3
mask = Indexwert
End Select
frmNIHauptseite.Logger(" * AD mask = '" & mask & "'", False, True)
Dim _WDRecht = GetWDRightNames_byMask(mask, _UserOrGroup, _form)
If _WDRecht IsNot Nothing And _WDRecht.length > 0 Then
Dim msg As String
Dim anz As Integer = 0
For Each recht As String In _WDRecht
anz += 1
Next
'Genau ein Recht wurde zurückgeliefert
If anz = 1 Then
'Genau ein Recht wurde zurückgeliefert
_GruppenUserRecht = CObj(_WDRecht(0))
ElseIf anz > 1 Then
'FEHLER: mehr als 1 Recht wurde zurückgeliefert
msg = "Achtung: Es wurden mehr als 1 Recht anhand der Maske '" & mask & "' gefunden!"
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg, False)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
Else
Dim msg = "Achtung: Anhand der Maske " & mask & " konnte kein Recht gelesen werden!"
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg, False)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
End If
End If
Dim Object2Change As WINDREAMLib.WMObject
If _methode = "AddRightFolder" Then
Object2Change = oWMObject.aParentWMObject
ElseIf _methode = "AddRightCreatedFolder" Then
If Not createdFolder Is Nothing Then
Object2Change = oSession.GetWMObjectByPath(WMEntityFolder, createdFolder.Substring(2))
If Object2Change Is Nothing Then
Dim msg = "Fehler beim Erzeugen des Objektes Folder - Object2Change is nothing"
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg, False)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
Else
Dim msg = "Fehler bei AddRightCreatedFolder - aktivesProfil.CrFolder_Created_Folder is nothing"
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg, False)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
Else
Object2Change = oWMObject
End If
'If Not Object2Change.aLocked Then
' Object2Change.lock()
'End If
' Objekt muss zur Rechteänderung gelockt werden
Dim lret = Object2Change.LockRights()
If CBool(lret) = False Then
If Not Object2Change.aLocked Then
Object2Change.lock()
If Err.Number <> 0 Then
Dim msg = "Die Datei konnte nicht erfolgreich gelocked werden!: Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
Return False
End If
End If
'Dim msg = "Fehler beim Setzen der Sperre für Rechteänderung: .LockRights - Err.Number: " & Err.Number & vbCrLf & Err.Description
'If _form = True Then
' MsgBox(msg, MsgBoxStyle.Critical)
'Else
' ClassLoggerNI.Add(msg)
'End If
'_Erfolgreich = False
'Return _Erfolgreich
End If
'If Err.Number <> 0 Then
' Dim msg = "Fehler beim Setzen der Sperre für Rechteänderung: .LockRights - Err.Number: " & Err.Number & vbCrLf & Err.Description
' If _form = True Then
' MsgBox(msg, MsgBoxStyle.Critical)
' Else
' ClassLoggerNI.Add(msg)
' End If
' _Erfolgreich = False
' Return _Erfolgreich
'End If
' Rechteträger-Liste holen
Dim AccessRightsObject2Change
Dim AccessRightsParent
' Das Recht soll auf Ordnerebene gesetzt werden
If _methode = "AddRightFolder" Then
Dim WMParent = oWMObject.aParentWMObject
AccessRightsParent = WMParent.GetWMObjectRelationByName(REL_Document_AccessRight)
ElseIf _methode = "AddRightCreatedFolder" Then
Dim folder = oSession.GetWMObjectByPath(WMEntityFolder, createdFolder.Substring(2))
AccessRightsParent = folder.GetWMObjectRelationByName(REL_Document_AccessRight)
ElseIf _methode = "AddFolderRightsOnly" Then
Dim WMParent
If createdFolder = "" Then
WMParent = oWMObject.aParentWMObject
Else
ClassLoggerNI.Add(">> CREATED Folder for rightsmanager: " & createdFolder.Substring(2))
WMParent = oSession.GetWMObjectByPath(WMEntityFolder, createdFolder.Substring(2))
End If
AccessRightsParent = WMParent.GetWMObjectRelationByName(REL_Document_AccessRight)
AccessRightsObject2Change = oWMObject.GetWMObjectRelationByName(REL_Document_AccessRight)
Else
Dim WMParent = oWMObject.aParentWMObject
AccessRightsObject2Change = oWMObject.GetWMObjectRelationByName(REL_Document_AccessRight)
AccessRightsParent = WMParent.GetWMObjectRelationByName(REL_Document_AccessRight)
End If
'Bei Fehler in Rechteauswertung
If Err.Number <> 0 Then
Dim msg = "Fehler bei Fehler Zugriff auf REL_Document_AccessRight - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
'############################# Rechte löschen ################################################################################
'#############################################################################################################################
If deleteRights = True And folgeRegel = False Then
Dim Object_Rights2Delete
If _methode.ToLower = "AddFolderRightsOnly".ToLower Then
Object_Rights2Delete = AccessRightsObject2Change
Else
Object_Rights2Delete = AccessRightsObject2Change
End If
' und nun jeden Rechteträger verarbeiten
For Each aRightRelation In Object_Rights2Delete
' Auflistung der Rechteträger-Informationen holen
UserGroupRelation = aRightRelation.GetWMObjectRelationByName(REL_AccessRight_UserOrGroup)
If Err.Number <> 0 Then
Dim msg = "Fehler bei Zugriff auf REL_AccessRight_UserOrGroup - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
' Zugriff auf das Benutzer/Gruppen-Objekt
UserOrGroup = UserGroupRelation.item(0)
Dim _msg As String
If (UserOrGroup.aWMEntity = WMEntityGroups) Then
_msg = "Right for Group '" & UserOrGroup.aName & "'"""
Else
_msg = "Right for User: '" & UserOrGroup.aName & "'"""
End If
If Err.Number <> 0 Then
Dim msg = "Fehler bei Zugriff auf UserGroupRelation - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
'einem Rechteträger ALLE Rechte zu entziehen
'entfernt ihn gleichzeitig aus der Auflistung der Rechteträger
Object_Rights2Delete.Delete2(UserOrGroup, WMAccessRightAllRights)
If Err.Number <> 0 Then
Dim msg = "Fehler bei Zugriff Delete2 - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
Next
If _form = False Then
frmNIHauptseite.Logger(" * Die Rechte wurden erfolgreich entfernt.", False, True)
End If
End If
Err.Clear()
' Wenn ALLE Rechteträger entfernt werden (FOR EACH),
' dann muss mindestens EIN Rechteträger mit dem Recht zur Rechteänderung
' wieder zugefügt werden!!!!!
If _UserOrGroup = "group" Then
' Gruppe holen
oGroup = oSession.GetWMObjectByName(WMEntityGroups, _GruppenUserRecht)
If Err.Number <> 0 Then
Dim msg = "Fehler bei GetWMObjectByName(WMEntityGroups, GruppenUserRecht) - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
AccessRightsObject2Change.Insert2(oGroup, _lRight) 'WMAccessRightAllRights)
ElseIf _UserOrGroup = "user" Then
' User holen
oUSer = oSession.GetWMObjectByName(WMEntityUser, _GruppenUserRecht)
If Err.Number <> 0 Then
Dim msg = "Fehler bei GetWMObjectByName(WMEntityUser, GruppenUserRecht) - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
AccessRightsObject2Change.Insert2(oUSer, _lRight) 'WMAccessRightAllRights)
ElseIf _UserOrGroup = "allfolderrights".ToLower Then
' und nun jeden Rechteträger verarbeiten
For Each aRightRelation In AccessRightsParent
dwAccessRight = aRightRelation.GetVariableValue(COL_AccessRight_AccessRight) 'COL_AccessRight_AccessRight)
Dim _msg As String
If dwAccessRight And WMAccessRightRead Then
_msg = "R"
End If
If dwAccessRight And WMAccessRightWrite Then
_msg = _msg & "W"
End If
If dwAccessRight And WMAccessRightAdmin Then
_msg = _msg & "A"
End If
' Auflistung der Rechteträger-Informationen holen
UserGroupRelation = aRightRelation.GetWMObjectRelationByName(REL_AccessRight_UserOrGroup)
If Err.Number <> 0 Then
Dim msg = "Fehler bei Zugriff auf REL_AccessRight_UserOrGroup (AFRO) - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
Exit_onEror(Object2Change, _form)
_Erfolgreich = False
Return _Erfolgreich
End If
' Zugriff auf das Benutzer/Gruppen-Objekt
UserOrGroup = UserGroupRelation.item(0)
If (UserOrGroup.aWMEntity = WMEntityGroups) Then
_msg = "Right for Group '" & UserOrGroup.aName & "'"""
Else
_msg = "Right for User: '" & UserOrGroup.aName & "'"""
End If
If Err.Number <> 0 Then
Dim msg = "Fehler bei Zugriff auf UserGroupRelation (AFRO) - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg & vbNewLine & _msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg & vbNewLine & _msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
If deleteRights = True Then
AccessRightsObject2Change.Insert2(UserOrGroup, dwAccessRight)
Else
If CHECK_Right_Exists(AccessRightsObject2Change, UserOrGroup) = False Then
AccessRightsObject2Change.Insert2(UserOrGroup, dwAccessRight)
End If
End If
Next
End If
Err.Clear()
If Err.Number <> 0 Then
Dim msg = "Fehler bei AccessRights.Insert2 - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
' Speichern nicht vergessen
Object2Change.Save()
If Err.Number <> 0 Then
Dim msg = "Fehler bei Object2Change.Save( - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
Err.Clear()
''und der Vollständigkeit halber auch ein Unlock
If Object2Change.aLocked = True Then
Object2Change.unlock()
If Err.Number <> 0 Then
Dim msg = "Fehler bei Unlock - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
End If
End If
If _form = False Then
ClassLoggerNI.Add(" >> Das Recht '" & _GruppenUserRecht & "' wurde erfolgreich gesetzt", False)
End If
'jetzt True zurückgeben
Return _Erfolgreich
Else
Dim msg = "FEHLER : es konnte keine Session erzeugt werden!"
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
_Erfolgreich = False
Return _Erfolgreich
End If
End Function
Private Function CHECK_Right_Exists(AccessRightsObject As Object, UserOrGroup As Object)
Try
Dim locUserOrGroup
Dim UserGroupRelation
Dim msg As String
If (UserOrGroup.aWMEntity = WMEntityGroups) Then
msg = "Right for Group '" & UserOrGroup.aName & "'"
Else
msg = "Right for User: '" & UserOrGroup.aName & "'"
End If
' Prüfen ob Recht enthalen ist
For Each aRightRelation In AccessRightsObject
dwAccessRight = aRightRelation.GetVariableValue(COL_AccessRight_AccessRight)
' Auflistung der Rechteträger-Informationen holen
UserGroupRelation = aRightRelation.GetWMObjectRelationByName(REL_AccessRight_UserOrGroup)
If Err.Number <> 0 Then
Return False
End If
' Zugriff auf das Benutzer/Gruppen-Objekt
locUserOrGroup = UserGroupRelation.item(0)
If locUserOrGroup.aName = UserOrGroup.aName Then
Console.WriteLine(msg & " already existing!")
Return True
End If
Next
Console.WriteLine(msg & " NOT existing!")
Return False
Catch ex As Exception
Dim msg = "Fehler bei CHECK_Right_Exists:" & vbCrLf & Err.Description
ClassLoggerNI.Add(msg)
Return False
End Try
End Function
Private Sub Exit_onEror(obj As WINDREAMLib.WMObject, _form As Boolean)
Try
' Speichern nicht vergessen
obj.Save()
If Err.Number <> 0 Then
Dim msg = "Fehler bei Object2Change.Save( - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
End If
Err.Clear()
''und der Vollständigkeit halber auch ein Unlock
If obj.aLocked = True Then
obj.unlock()
If Err.Number <> 0 Then
Dim msg = "Fehler bei Unlock - Err.Number: " & Err.Number & vbCrLf & Err.Description
If _form = True Then
MsgBox(msg, MsgBoxStyle.Critical)
Else
ClassLoggerNI.Add(msg)
End If
End If
End If
Catch ex As Exception
End Try
End Sub
''' <summary>
''' Liefert die windream-Gruppen sowie alle Usernamen zurück
''' </summary>
''' <returns>UserGroupNamen als String()</returns>
''' <remarks></remarks>
Public Function GetAll_WDRightNames_AdminUsers(UserGroup As String)
Try
Dim WMObjects As WINDREAMLib.WMObjects
' WMObjects = oSession.GetUsersOrGroups(WMEntityUser, True, "", WMUserTypeMain)
'Dim msg As String
Dim gesamtanzahl As Integer = 0
Dim i As Integer = 0
Dim aRechteNamen() As String
If UserGroup = "group" Then
'==================================================================
' get groups
'==================================================================
WMObjects = oSession.GetUsersOrGroups(WMEntityGroups, vbTrue, "", -4) ' WMGroupTypeAll)
ReDim Preserve aRechteNamen(WMObjects.Count - 1)
'==================================================================
' enumerate the found objects
'==================================================================
If WMObjects Is Nothing = False Then
' Array für Rechte vorbereiten
'msg = "Admin group(s) are: " + vbCrLf + vbCrLf
gesamtanzahl += WMObjects.Count - 1
' ---------------------
' enumerate list
' ---------------------
For Each aWMObject In WMObjects
aRechteNamen(i) = aWMObject.aName
' msg = msg + aWMObject.aName + vbCrLf
i += 1
Next
If i = 1 Then
i = 0
End If
End If
Else
If UserGroup = "user" Then
'==================================================================
' get all users
'==================================================================
'MsgBox("Getting all users ...")
WMObjects = oSession.GetAllObjects(WMEntityUser)
'==================================================================
' enumerate the found objects
'==================================================================
If Not (WMObjects Is Nothing) Then
' msg = "All users: " + vbCrLf + vbCrLf
' ---------------------
' enumerate list
' ---------------------
For Each aWMObject In WMObjects
i += 1
ReDim Preserve aRechteNamen(i)
aRechteNamen(i) = aWMObject.aName
'msg = msg + aWMObject.aName + vbCrLf
Next
'MsgBox(msg)
End If
End If
End If
Return aRechteNamen
Catch ex As Exception
ClassLoggerNI.Add("## Fehler in ClassWD_Rechte - GetRightsNames - Fehler: " & ex.Message)
Return Nothing
End Try
End Function
''' <summary>
''' Liefert die windream-Rechte nach einer Maske als String() zurück
''' </summary>
''' <returns>Maske als String(); usrgroup als String</returns>
''' <remarks></remarks>
Public Function GetWDRightNames_byMask(mask As Object, usrgroup As String, Optional _form As Boolean = False)
Try
Dim WMObjects
Dim i As Integer = 0
Dim aRechteNamen() As String
'==================================================================
' get Rechte
'==================================================================
If usrgroup = "group" Then
WMObjects = oSession.GetUsersOrGroups(WMEntityGroups, vbTrue, mask, -4) ' WMEntityGroupsWMGroupTypeAdmin)
Else
'MsgBox(mask)
Dim vbobj As Object
If mask.ToString.Contains("%") Then
vbobj = vbTrue
Else
vbobj = vbFalse
End If
WMObjects = oSession.GetUsersOrGroups(WMEntityUser, vbobj, mask, WMUserTypeNormal) ' WMGroupTypeAdmin)
End If
' Array für Rechte vorbereiten
ReDim Preserve aRechteNamen(WMObjects.Count - 1)
'=======================================
'Durchlaufen der gefundenen Rechte
'=======================================
If WMObjects Is Nothing = False Then
For Each aWMObject In WMObjects
aRechteNamen(i) = aWMObject.aName
i += 1
Next
End If
Return aRechteNamen
Catch ex As Exception
ClassLoggerNI.Add("## Fehler in ClassWD_Rechte - GetWDRightNames_byMask - Fehler: " & ex.Message)
If _form = True Then
MsgBox("Fehler in ClassWD_Rechte - GetWDRightNames_byMask - Fehler: " & vbNewLine & ex.Message, MsgBoxStyle.Critical)
End If
Return Nothing
End Try
End Function
End Class

View File

@ -0,0 +1,566 @@
Imports WINDREAMLib
Imports WINDREAMLib.WMCOMEvent
Imports WINDREAMLib.WMEntity
Imports WINDREAMLib.WMObjectEditMode
Imports WINDREAMLib.WMSearchOperator
Imports WINDREAMLib.WMSearchRelation
Imports WMOBRWSLib
Public Class ClassWindream_allgemein
#Region "+++++ Konstanten +++++"
Const DEBUG = AUS
Const AUS = 0
Const WINDREAM = 1
Const VARIABLEN = 2
Const WMAttributeFlagUndefined = 0
Const WMAttributeFlagSystem = 1 ' windream database system columns
Const WMAttributeFlagTypeSpecific = 2 ' windream database objecttype specific column
#End Region
#Region "+++++ Variablen +++++"
Public oConnect ' der Typ darf nicht festgelegt werden (warum auch immer... geht sonst nicht)
Public Shared oSession 'As WINDREAMLib.WMSession ' der Typ darf nicht festgelegt werden (warum auch immer... geht sonst nicht)
Public oBrowser As New WMOBRWSLib.ServerBrowser
Public oObjekttypen As WINDREAMLib.WMObjects
Public oOrdnerTypen As WINDREAMLib.WMObjects
Public oUSERRights As WINDREAMLib.WMObjects
Public oGROUPRights As WINDREAMLib.WMObjects
Public oSystemIndizes As WINDREAMLib.WMObjects
#End Region
#Region "+++++ Allgemeine Methoden und Funktionen +++++"
''' <summary>
''' Konstruktor für die windream-Klasse
''' </summary>
''' <remarks></remarks>
Sub New()
' wenn ein Fehler bei der Initialisierung auftrat
If Not Me.Init() Then
' Nachricht ausgeben
MsgBox("Es trat ein Fehler bei der Initialisierung der Klasse windream auf. Bitte prüfen Sie ob der windream-Server aktiv ist und alle Dienste gestartet sind.", MsgBoxStyle.Exclamation, "Fehler bei Initialisierung")
' das Programm "abschießen"
Process.GetCurrentProcess.Kill()
End If
End Sub
''' <summary>
''' Initialisiert die statische Klasse (Login, Session starten, usw.)
''' </summary>
''' <returns>Liefert True wenn das Anmelden erfolgreich war, sonst False</returns>
''' <remarks></remarks>
Public Function Init() As Boolean
Try
Try
' Session-Objekt instanziieren und mit dem im Client ausgewählten Server belegen
Me.oSession = CreateObject("Windream.WMSession", Me.GetCurrentServer)
' Connection-Objekt instanziieren
Me.oConnect = CreateObject("Windream.WMConnect")
'MsgBox("windrem init 'ed")
Catch ex As Exception
Return False
End Try
' wenn windream nicht angemeldet ist
If Not Me.IsLoggedIn Then
' Art der Anmeldung an windream festlegen
' 0x0L (also 0) = Standard windream Benutzer
' WM_MODULE_ID_DOCTYPEEDITOR_LIC = ermöglicht Zugriff auf die windream Management Funktionen (Z.B. zur Verwaltung der windream Dokumententypen, Auswahllisten, etc.)
' WM_MODULE_ID_INDEXSERVICE = ermöglicht der Session die Indexierungs-Events vom windream DMS-Service zu empfangen
Me.oConnect.ModuleID = 0
' setzt die minimal erwartete windream-Version
Me.oConnect.MinReqVersion = "3"
' -- Impersonifizierung nur möglich mit registry-eintrag --
'oConnect.UserName = "\digitaldata\schreiberm"
'oConnect.Password = "schreiber"
' Verbindung mit Session-Objekt (und dem ausgewählten Server) aufbauen
Me.oConnect.LoginSession(Me.oSession)
If Me.oSession.aLoggedin = False Then
MsgBox("Es konnte keine Verbindung mit dem windream-Server hergestellt werden", MsgBoxStyle.Exclamation, "Verbindung konnte nicht hergestellt werden")
Return False
End If
' AUSGABE VON SYSTEMINFORMATIONEN
' Gibt die Versionsart (Lizenztyp) also Small-Business-Edition (SBE), Small-Business-Extension (SBX)
' oder Business-Edition (BE) aus
'MsgBox("WindreamVersion: " & oSession.GetSystemInfo("WindreamVersion") & vbNewLine & "LicenceKey: " & oSession.GetSystemInfo("LicenceKey") & vbNewLine & _
' vbNewLine & "LicenceName: " & oSession.GetSystemInfo("LicenceName"))
'Dim WMCtrl As AISCONTROLDATACOMLib.AISControlData
'WMCtrl = New AISCONTROLDATACOMLib.AISControlData
'' liefert die Versionsnummer des Clients
'MsgBox(WMCtrl.WMWorkstationBuildNo)
'MsgBox(WMCtrl.W
'' liefert den Servernamen des angemeldeten windreams
'MsgBox(WMCtrl.WMServerName)
Try
Me.oSession.SwitchEvents(WMCOMEventWMSessionNeedIndex, False)
' der Parameter WMEntityDocument definiert, dass nur Dokumenttypen und keine
' Ordnertypen ausgelesen werden
Me.oObjekttypen = Me.oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
' Ordnertypen auslesen
Me.oOrdnerTypen = Me.oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityFolder)
' den Objekttyp laden
' Me.oSystemIndizes = Me.oSession.GetWMObjectByName(WMObjectRelationTypeObjectByName)
Catch ex As Exception
Return False
End Try
End If
Return True
Catch ex As Exception
If Err.Number = -2147220985 Then
MsgBox("Die installierte windream-Version ist nicht ausreichend für den Betrieb der Tool Collection für windream." & vbNewLine & _
"Bitte kontaktieren Sie Digital Data." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & Err.Description, MsgBoxStyle.Exclamation, "Unzureichende windream-Version")
Else
If Not ex.Message.Contains("Already logged in") Then
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Login an windream")
Else
Return True
End If
End If
Return False
End Try
End Function
#End Region
#Region "+++++ Funktionen die für den Objekttyp relevate Informationen zurückliefern +++++"
''' <summary>
''' Liefert alle Objekttypen des aktuellen Servers als windream-Objekte.
''' </summary>
''' <returns>Alle Objekttypen als WMObjects-Objekt</returns>
''' <remarks></remarks>
Public Function GetObjecttypesAsObjects() As WMObjects
Try
Return Me.oObjekttypen
Catch ex As Exception
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der Objekttypen")
Return Nothing
End Try
End Function
''' <summary>
''' Liefert alle Objekttypen des aktuellen Servers als Array aus Strings.
''' </summary>
''' <returns>Array mit allen Objekttypen als Strings</returns>
''' <remarks></remarks>
Public Function GetObjecttypesAsStrings() As String()
Try
Dim objektTypenStr(Me.oObjekttypen.Count) As String
For i As Integer = 0 To Me.oObjekttypen.Count
objektTypenStr(i) = Me.oObjekttypen.Item(i).aName
Next
Return objektTypenStr
Catch ex As Exception
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der Objekttypen als String")
Return Nothing
End Try
End Function
''' <summary>
''' Liefert alle Systemindizes des aktuellen Servers als Array aus Strings.
''' </summary>
''' <returns>Array mit allen Systemindizes als Strings</returns>
''' <remarks></remarks>
Public Function GetSystemIndizesAsStrings() As String()
Try
Dim systemindizesstr(Me.oObjekttypen.Count) As String
For i As Integer = 0 To Me.oObjekttypen.Count
systemindizesstr(i) = Me.oObjekttypen.Item(i).aName
Next
Array.Sort(systemindizesstr)
Return systemindizesstr
Catch ex As Exception
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der Systemindizes als String")
Return Nothing
End Try
End Function
''' <summary>
''' Liefert alle Ordnertypen des aktuellen Servers als windream-Objekte.
''' </summary>
''' <returns>Alle Ordnertypen als WMObjects-Objekt</returns>
''' <remarks></remarks>
Public Function GetOrdnertypenAsObjects() As WMObjects
Try
Return Me.oOrdnerTypen
Catch ex As Exception
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der Ordnertypen")
Return Nothing
End Try
End Function
''' <summary>
''' Liefert alle Ordnertypen des aktuellen Servers als Array aus Strings.
''' </summary>
''' <returns>Array mit allen Objekttypen als Strings</returns>
''' <remarks></remarks>
Public Function GetFolderTypesAsStrings() As String()
Try
Dim OrdnerTypenStr(Me.oOrdnerTypen.Count) As String
For i As Integer = 0 To Me.oOrdnerTypen.Count
OrdnerTypenStr(i) = Me.oOrdnerTypen.Item(i).aName
Next
Return OrdnerTypenStr
Catch ex As Exception
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der Ordnertypen als String")
Return Nothing
End Try
End Function
Public Function GetSystem_Indices()
Try
Dim Indices As WMObject
' den Objekttyp laden
Indices = Me.oSession.GetWMObjectVariableNames(WMAttributeFlagSystem)
Dim msg As String
Dim oSystemIndexes = Indices.GetVariableNames(1, False)
msg = "System indices (internal column names): " & vbNewLine
For Each oSystemIndex In oSystemIndexes
msg = msg & vbNewLine & oSystemIndex
Next
MsgBox(msg)
Catch ex As Exception
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der System-Indizes:")
End Try
End Function
Public Function GetIndices_for_Objecttype(ByVal name As String)
Dim oObjectType As WMObject
' den Objekttyp laden
oObjectType = Me.oSession.GetWMObjectByName(WMEntityObjectType, name)
Dim msg As String
Dim oSystemIndexes = oObjectType.GetVariableNames(1, False)
msg = "System indices (internal column names): " & vbNewLine
For Each oSystemIndex In oSystemIndexes
msg = msg & vbNewLine & oSystemIndex
Next
MsgBox(msg)
End Function
''' <summary>
''' Liefert alle Indexe eines Objekttypen.
''' </summary>
''' <param name="name">Name des Objekttyps</param>
''' <returns>Array mit allen Objekttyp zugeordneten Indexen als String</returns>
''' <remarks></remarks>
Public Function GetIndicesByObjecttype(ByVal name As String, meldung As Boolean, modul As String) As String()
Try
Dim oObjectType As WMObject
Dim oIndexAttributes As WMObjectRelation
Dim oIndexAttribute As WMObject
Dim oIndex As WMObject
Dim oRelProperties As WMObjectRelationClass
' den Objekttyp laden
oObjectType = Me.oSession.GetWMObjectByName(WMEntityObjectType, name)
' Beziehung zu Indizes des Objekttyp auslesen
oIndexAttributes = oObjectType.GetWMObjectRelationByName("TypeAttributes")
' Array für Indizes vorbereiten
Dim aIndexNames(oIndexAttributes.Count - 1) As String
' alle Indizes durchlaufen
For j As Integer = 0 To oIndexAttributes.Count - 1
' aktuellen Index auslesen
oIndexAttribute = oIndexAttributes.Item(j)
' Eigenschaften des Index auslesen
oRelProperties = oIndexAttribute.GetWMObjectRelationByName("Attribute")
' Index aus den Eigenschaften auslesen
oIndex = oRelProperties.Item(0)
' Indexname speichern
aIndexNames(j) = oIndex.aName
Next
' Indexarray sortiert zurückgeben
Array.Sort(aIndexNames)
Return aIndexNames
Catch ex As Exception
If meldung = True Then
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der windream-Indexe")
Else
If modul = "NI" Then
ClassLoggerNI.Add(">> Fehler beim Auslesen der windream-Indexe: " & ex.Message, False)
Else
ClassLoggerDI.Add(">> Fehler beim Auslesen der windream-Indexe: " & ex.Message, False)
End If
End If
Return Nothing
End Try
End Function
''' <summary>
''' Liefert alle Indexe eines Ordnertyps.
''' </summary>
''' <param name="name">Name des Ordnertyps</param>
''' <returns>Array mit allen Ordnertypen zugeordneten Indexen als String</returns>
''' <remarks></remarks>
Public Function GetIndicesByFoldertype(ByVal Ordnertyp As String, ByVal form As Boolean)
Try
Dim oOrdnerType As WMObject
Dim oIndexAttributes As WMObjectRelation
Dim oIndexAttribute As WMObject
Dim oIndex As WMObject
Dim oRelProperties As WMObjectRelationClass
For Each OrdnerType In Me.oOrdnerTypen
If OrdnerType.aName = Ordnertyp Then
oOrdnerType = OrdnerType
End If
Next
'' den Objekttyp laden
'oOrdnerType = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityFolder, Ordnertyp)
' Beziehung zu Indizes des Objekttyp auslesen
oIndexAttributes = oOrdnerType.GetWMObjectRelationByName("TypeAttributes")
' Array für Indizes vorbereiten
Dim aIndexNames(oIndexAttributes.Count - 1) As String
' alle Indizes durchlaufen
For j As Integer = 0 To oIndexAttributes.Count - 1
' aktuellen Index auslesen
oIndexAttribute = oIndexAttributes.Item(j)
' Eigenschaften des Index auslesen
oRelProperties = oIndexAttribute.GetWMObjectRelationByName("Attribute")
' Index aus den Eigenschaften auslesen
oIndex = oRelProperties.Item(0)
' Indexname speichern
aIndexNames(j) = oIndex.aName
Next
' Indexarray zurückgeben
Return aIndexNames
Catch ex As Exception
If form = True Then
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen der windream-Indexe zu OrdnerTyp")
Else
Return "Fehler beim Auslesen der windream-Indexe zu OrdnerTyp: " & ex.Message
End If
End Try
End Function
''' <summary>
''' Liefert einen Objekttyp als WMObject an Hand dessen Name.
''' </summary>
''' <param name="objekttypName">Name des Objekttyps</param>
''' <returns>Objekttyp als WMObject</returns>
''' <remarks></remarks>
Public Function GetObjecttypeByName(ByVal objekttypName As String) As WMObject
Try
' alle Objekttypen auslesen
Dim oObjectTypes As WMObjects = Me.oSession.GetWMObjectTypes(WINDREAMLib.WMEntity.WMEntityDocument)
' alle Objekttypen durchlaufen und nach dem mit dem angegebenen Namen suchen
For Each oObjectType As WMObject In oObjectTypes
If oObjectType.aName = objekttypName Then
Return oObjectType
End If
Next
Return Nothing
Catch ex As Exception
MsgBox("Objekttyp '" & objekttypName & "' konnte nicht ausgelesen werden!" & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return Nothing
End Try
End Function
''' <summary>
''' Überprüft ob der angegebene Index im Objekttyp existiert
''' </summary>
''' <param name="objekttyp">Name des zu durchsuchenden Objekttyps</param>
''' <param name="indexname">Name des zu suchenden Indexes</param>
''' <returns>Liefert True wenn der Index im Objekttyp existiert, sonst False</returns>
''' <remarks></remarks>
Public Function ExistIndexInObjekttyp(ByVal objekttyp As String, ByVal indexname As String) As Boolean
Try
Dim indexnamen() As String = Me.GetIndicesByObjecttype(objekttyp, False, "DI")
If indexnamen Is Nothing Then Return False
For Each index As String In indexnamen
If index = indexname Then Return True
Next
Catch ex As Exception
MsgBox("Beim Prüfen ob ein Index für einen Objekttypen existiert, ist ein Fehler aufgetreten." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Prüfen auf Existenz eines Index in einem Objekttyp")
End Try
Return False
End Function
#End Region
#Region "+++++ Allgemeine Funktionen die Informationen zurückliefern +++++"
''' <summary>
''' Liefert True wenn die windream-Session angemeldet ist und False für den Fall, dass die Session nicht eingeloggt ist.
''' </summary>
''' <returns>Anmeldestatus als Boolean</returns>
''' <remarks></remarks>
Public Function IsLoggedIn() As Boolean
Try
Return Me.oSession.aLoggedin
Catch ex As Exception
MsgBox("Es konnte nicht erfolgreich geprüft werden, ob das Programm am windream-Server angemeldet ist." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler bei Loggedin-Prüfung")
End Try
Return False
End Function
''' <summary>
''' Liefert den Servernamen an dem windream aktuell angemeldet ist.
''' </summary>
''' <returns>Servername als String</returns>
''' <remarks></remarks>
Public Function GetCurrentServer() As String
Try
Return Me.oBrowser.GetCurrentServer 'ClassWindream.oBrowser.GetCurrentServer
Catch ex As Exception
MsgBox("Der aktuell gewählte windream-Server konnte nicht ausgelesen werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen des windream-Servers")
End Try
Return ""
End Function
'Public Function GetSharedCurrentServer() As String
' Try
' Return ClassWindream.oBrowser.GetCurrentServer
' Catch ex As Exception
' MsgBox("Der aktuell gewählte windream-Server konnte nicht ausgelesen werden." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen des windream-Servers")
' End Try
' Return ""
'End Function
''' <summary>
''' Liefert das Windream-Laufwerk des windream-Servers, in Form '[Laufwerksbuchstabe]:'. (z.B. 'W:')
''' </summary>
''' <returns>Laufwerksbuchstabe mit Doppelpunkt als String</returns>
''' <remarks></remarks>
'Public Function GetWindreamDriveLetter() As String
' Try
' Dim oControl As AISCONTROLDATACOMLib.AISControlData
' Dim sDrive As String = ""
' oControl = New AISCONTROLDATACOMLib.AISControlData
' sDrive = oControl.GetStringValue(&H10040003)
' Return sDrive & ":"
' Catch ex As Exception
' MsgBox("Fehlernachricht: " & ex.Message, MsgBoxStyle.Critical, "Fehler beim Auslesen des windream-Laufwerks")
' End Try
' Return ""
'End Function
''' <summary>
''' Liefert den Typen eines Indexes als Integer.
''' </summary>
''' <param name="indexname">Name des zu überprüfenden Indexfeldes</param>
''' <returns>Liefert eine Zahl, die einen Typen beschreibt</returns>
''' <remarks></remarks>
Public Function GetTypeOfIndexAsIntByName(ByVal indexname As String) As Integer
Try
Dim oAttribute = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, indexname)
Dim vType = oAttribute.getVariableValue("dwAttrType")
Return vType
Catch ex As Exception
Return Nothing
End Try
End Function
Public Function GetValuesfromAuswahlliste(ByVal indexname As String) As Object
Try
'Dim oAttribute = Me.oSession.GetWMObjectByName(WINDREAMLib.WMEntity.WMEntityAttribute, indexname)
'Dim vType = oAttribute.getVariableValue("vItems")
'Return vType
Dim oChoiceList = oSession.GetWMObjectByName(WMEntityChoiceList, indexname)
If Err.Number = 0 And TypeName(oChoiceList) <> "Nothing" Then
Dim Values = oChoiceList
Values = oChoiceList.GetVariableValue("vItems")
Dim anz As Integer = 0
For Each CLItem In Values
If oChoiceList.aName IsNot Nothing Then
anz += 1
End If
Next
Dim strListe(anz - 1)
Dim zahl As Integer = 0
For Each CLItem In Values
If oChoiceList.aName IsNot Nothing Then
strListe(zahl) = CLItem
zahl += 1
End If
Next
Return strListe
Else
MsgBox("Auswahlliste: " & indexname & " nicht gefunden!", MsgBoxStyle.Critical, "Fehler:")
Return Nothing
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler in GetValuesfromAuswahlliste:")
Return Nothing
End Try
End Function
#End Region
End Class

View File

@ -0,0 +1,76 @@
Imports System.Xml
Public Class ClassxmlZugriff
Private email As New ClassNIEmail
'führt eine SQL-Anweisung auf der DB aus
Public Function GetValueFromLuratechxml(ByVal vfilename As String, ByVal vfullfilepath As String, ByVal KnotenString As String, ByVal Profil As String) '
Try
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Index-Filename: " & vfilename, False)
' die nötigen Variablen definieren
Dim _xmlDoc As New XmlDocument
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Auslesen des Indexwertes aus Indexfile: " & vfilename, False)
_xmlDoc.Load(vfullfilepath)
Dim _node As XmlNode
If KnotenString.Contains("FormDesignName") Then
KnotenString = KnotenString.Replace("|", "/")
_node = _xmlDoc.SelectSingleNode(KnotenString)
If _node Is Nothing Then
ClassLoggerNI.Add(" >> ACHTUNG bei File: " & vfilename, False)
ClassLoggerNI.Add(" >> ACHTUNG der Knoten " & KnotenString & " existiert nicht!", False)
Return Nothing
Else
' MsgBox(_node.InnerText, MsgBoxStyle.Information, file.Name)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Auslesen aus Knoten: " & KnotenString, False)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Gelesener Wert: " & _node.InnerText, False)
Return _node.InnerText
End If
Else
Dim strTeile() As String = KnotenString.Split("|")
Dim nodeformresults As String
If vfullfilepath.EndsWith(".xffres") Then
nodeformresults = "FreeFormFieldResultBase"
ElseIf vfullfilepath.EndsWith(".xfres") Then
nodeformresults = "FieldResult"
End If
' Den Freiform-Ergebnis Knoten auswählen
Dim child_nodes As XmlNodeList = _xmlDoc.GetElementsByTagName(nodeformresults)
' Überprüfen ob das aktuelle Child den Namen enthält
For Each child As XmlNode In child_nodes
'MsgBox(child.InnerText)
Dim nodeName = child.SelectSingleNode("Name")
If nodeName.InnerText = strTeile(2) Then
If child.HasChildNodes Then
Dim REC_NODE As String
Select Case strTeile(1)
Case "TEXTVALUE"
REC_NODE = "FieldValues/FieldValue/String"
Case "CHECKMARK"
REC_NODE = "FieldValues/FieldValue/Checked"
End Select
Dim nodeErgebnis = child.SelectSingleNode(REC_NODE)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Auslesen aus Knoten: '" & child.Name & "'", False)
If My.Settings.vLogErrorsonly = False Then ClassLoggerNI.Add(" >> Gelesener Wert: '" & nodeErgebnis.InnerText & "'", False)
Return nodeErgebnis.InnerText
Else
ClassLoggerNI.Add(" >> ACHTUNG bei File: " & vfilename, False)
ClassLoggerNI.Add(" >> KEINEN CHILD-NODE für child_nodes gefunden", False)
Return Nothing
End If
End If
Next child
End If
Catch ex As Exception
' an dieser Stelle sollte jeder unvorhergesehene Fehler der Funktion abgefangen werden
ClassLoggerNI.Add("ClassNIDatenbankzClassxmlZugriff", "Ein unbekannter Fehler in GetValueFromLuratechxml.", ex)
If My.Settings.vNIMailsenden = True Then
email.Send_EMail("ClassxmlZugriff.GetValueFromLuratechxml " & "<br> Profil: " & Profil & "<br> Datei: " & vfullfilepath & "<br> Ein unbekannter Fehler: " & ex.Message)
End If
Return Nothing
End Try
End Function
End Class

3073
ToolCollection/DSCursor.Designer.vb generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DataSetUISetting Version="1.00" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TableUISettings />
</DataSetUISetting>

369
ToolCollection/DSCursor.xsd Normal file
View File

@ -0,0 +1,369 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="DSCursor" targetNamespace="http://tempuri.org/DSCursor.xsd" xmlns:mstns="http://tempuri.org/DSCursor.xsd" xmlns="http://tempuri.org/DSCursor.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
<xs:annotation>
<xs:appinfo source="urn:schemas-microsoft-com:xml-msdatasource">
<DataSource DefaultConnectionIndex="0" FunctionsComponentName="QueriesTableAdapter" Modifier="AutoLayout, AnsiClass, Class, Public" SchemaSerializationMode="IncludeSchema" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<Connections>
<Connection AppSettingsObjectName="MySettings" AppSettingsPropertyName="ConnectionStringCursor" ConnectionStringObject="" IsAppSettingsProperty="true" Modifier="Assembly" Name="ConnectionStringCursor (MySettings)" PropertyReference="ApplicationSettings.ToolCollection.My.MySettings.GlobalReference.Default.ConnectionStringCursor" Provider="System.Data.OleDb" />
</Connections>
<Tables>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="SYS_WDCCTableAdapter" GeneratorDataComponentClassName="SYS_WDCCTableAdapter" Name="SYS_WDCC" UserDataComponentName="SYS_WDCCTableAdapter">
<MainSource>
<DbSource ConnectionRef="ConnectionStringCursor (MySettings)" DbObjectName="WDCC.SYS_WDCC" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>DELETE FROM "SYS_WDCC" WHERE (("ID" = ?) AND ((? = 1 AND "CCID" IS NULL) OR ("CCID" = ?)) AND ((? = 1 AND "WDID" IS NULL) OR ("WDID" = ?)) AND ((? = 1 AND "FILENAME_REP" IS NULL) OR ("FILENAME_REP" = ?)) AND ((? = 1 AND "FILENAME_ARCH" IS NULL) OR ("FILENAME_ARCH" = ?)) AND ((? = 1 AND "FILEEXT" IS NULL) OR ("FILEEXT" = ?)) AND ((? = 1 AND "OBJTYPE" IS NULL) OR ("OBJTYPE" = ?)) AND ((? = 1 AND "DOKTYPE" IS NULL) OR ("DOKTYPE" = ?)) AND ((? = 1 AND "OBG0" IS NULL) OR ("OBG0" = ?)) AND ((? = 1 AND "OBG1" IS NULL) OR ("OBG1" = ?)) AND ((? = 1 AND "OBG2" IS NULL) OR ("OBG2" = ?)) AND ((? = 1 AND "OBG3" IS NULL) OR ("OBG3" = ?)) AND ((? = 1 AND "OBG4" IS NULL) OR ("OBG4" = ?)) AND ((? = 1 AND "OBG5" IS NULL) OR ("OBG5" = ?)) AND ((? = 1 AND "OBG6" IS NULL) OR ("OBG6" = ?)) AND ((? = 1 AND "OBG7" IS NULL) OR ("OBG7" = ?)) AND ((? = 1 AND "OBG8" IS NULL) OR ("OBG8" = ?)) AND ((? = 1 AND "OBG9" IS NULL) OR ("OBG9" = ?)) AND ("CREATEDAT" = ?) AND ((? = 1 AND "CREATESYS" IS NULL) OR ("CREATESYS" = ?)) AND ((? = 1 AND "CHANGEDAT" IS NULL) OR ("CHANGEDAT" = ?)) AND ((? = 1 AND "CHANGESYS" IS NULL) OR ("CHANGESYS" = ?)) AND ((? = 1 AND "RETMSG" IS NULL) OR ("RETMSG" = ?)))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="Original_ID" Precision="18" ProviderType="Numeric" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_CCID" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="CCID" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_CCID" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CCID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_WDID" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="WDID" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_WDID" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WDID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_FILENAME_REP" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="FILENAME_REP" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_FILENAME_REP" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILENAME_REP" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_FILENAME_ARCH" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="FILENAME_ARCH" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_FILENAME_ARCH" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILENAME_ARCH" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_FILEEXT" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="FILEEXT" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_FILEEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILEEXT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBJTYPE" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBJTYPE" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBJTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBJTYPE" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_DOKTYPE" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="DOKTYPE" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_DOKTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="DOKTYPE" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG0" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG0" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG0" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG0" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG1" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG1" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG1" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG1" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG2" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG2" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG2" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG2" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG3" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG3" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG3" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG3" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG4" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG4" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG4" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG4" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG5" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG5" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG5" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG5" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG6" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG6" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG6" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG6" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG7" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG7" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG7" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG7" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG8" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG8" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG8" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG8" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG9" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG9" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG9" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG9" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="Original_CREATEDAT" Precision="0" ProviderType="DBTimeStamp" Scale="0" Size="0" SourceColumn="CREATEDAT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_CREATESYS" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="CREATESYS" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_CREATESYS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CREATESYS" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_CHANGEDAT" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="CHANGEDAT" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="Original_CHANGEDAT" Precision="0" ProviderType="DBTimeStamp" Scale="0" Size="0" SourceColumn="CHANGEDAT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_CHANGESYS" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="CHANGESYS" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_CHANGESYS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CHANGESYS" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_RETMSG" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="RETMSG" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_RETMSG" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="RETMSG" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>INSERT INTO "SYS_WDCC" ("ID", "CCID", "WDID", "FILENAME_REP", "FILENAME_ARCH", "FILEEXT", "OBJTYPE", "DOKTYPE", "OBG0", "OBG1", "OBG2", "OBG3", "OBG4", "OBG5", "OBG6", "OBG7", "OBG8", "OBG9", "CREATEDAT", "CREATESYS", "CHANGEDAT", "CHANGESYS", "RETMSG") VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="ID" Precision="18" ProviderType="Numeric" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="CCID" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CCID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="WDID" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WDID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="FILENAME_REP" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILENAME_REP" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="FILENAME_ARCH" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILENAME_ARCH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="FILEEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILEEXT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBJTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBJTYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="DOKTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="DOKTYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG0" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG0" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG1" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG1" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG2" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG2" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG3" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG3" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG4" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG5" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG5" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG6" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG6" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG7" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG7" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG8" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG8" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG9" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG9" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="CREATEDAT" Precision="0" ProviderType="DBTimeStamp" Scale="0" Size="0" SourceColumn="CREATEDAT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="CREATESYS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CREATESYS" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="CHANGEDAT" Precision="0" ProviderType="DBTimeStamp" Scale="0" Size="0" SourceColumn="CHANGEDAT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="CHANGESYS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CHANGESYS" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="RETMSG" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="RETMSG" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT ID, CCID, WDID, FILENAME_REP, FILENAME_ARCH, FILEEXT, OBJTYPE, DOKTYPE, OBG0, OBG1, OBG2, OBG3, OBG4, OBG5, OBG6, OBG7, OBG8, OBG9,
CREATEDAT, CREATESYS, CHANGEDAT, CHANGESYS, RETMSG
FROM SYS_WDCC</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>UPDATE "SYS_WDCC" SET "ID" = ?, "CCID" = ?, "WDID" = ?, "FILENAME_REP" = ?, "FILENAME_ARCH" = ?, "FILEEXT" = ?, "OBJTYPE" = ?, "DOKTYPE" = ?, "OBG0" = ?, "OBG1" = ?, "OBG2" = ?, "OBG3" = ?, "OBG4" = ?, "OBG5" = ?, "OBG6" = ?, "OBG7" = ?, "OBG8" = ?, "OBG9" = ?, "CREATEDAT" = ?, "CREATESYS" = ?, "CHANGEDAT" = ?, "CHANGESYS" = ?, "RETMSG" = ? WHERE (("ID" = ?) AND ((? = 1 AND "CCID" IS NULL) OR ("CCID" = ?)) AND ((? = 1 AND "WDID" IS NULL) OR ("WDID" = ?)) AND ((? = 1 AND "FILENAME_REP" IS NULL) OR ("FILENAME_REP" = ?)) AND ((? = 1 AND "FILENAME_ARCH" IS NULL) OR ("FILENAME_ARCH" = ?)) AND ((? = 1 AND "FILEEXT" IS NULL) OR ("FILEEXT" = ?)) AND ((? = 1 AND "OBJTYPE" IS NULL) OR ("OBJTYPE" = ?)) AND ((? = 1 AND "DOKTYPE" IS NULL) OR ("DOKTYPE" = ?)) AND ((? = 1 AND "OBG0" IS NULL) OR ("OBG0" = ?)) AND ((? = 1 AND "OBG1" IS NULL) OR ("OBG1" = ?)) AND ((? = 1 AND "OBG2" IS NULL) OR ("OBG2" = ?)) AND ((? = 1 AND "OBG3" IS NULL) OR ("OBG3" = ?)) AND ((? = 1 AND "OBG4" IS NULL) OR ("OBG4" = ?)) AND ((? = 1 AND "OBG5" IS NULL) OR ("OBG5" = ?)) AND ((? = 1 AND "OBG6" IS NULL) OR ("OBG6" = ?)) AND ((? = 1 AND "OBG7" IS NULL) OR ("OBG7" = ?)) AND ((? = 1 AND "OBG8" IS NULL) OR ("OBG8" = ?)) AND ((? = 1 AND "OBG9" IS NULL) OR ("OBG9" = ?)) AND ("CREATEDAT" = ?) AND ((? = 1 AND "CREATESYS" IS NULL) OR ("CREATESYS" = ?)) AND ((? = 1 AND "CHANGEDAT" IS NULL) OR ("CHANGEDAT" = ?)) AND ((? = 1 AND "CHANGESYS" IS NULL) OR ("CHANGESYS" = ?)) AND ((? = 1 AND "RETMSG" IS NULL) OR ("RETMSG" = ?)))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="ID" Precision="18" ProviderType="Numeric" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="CCID" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CCID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="WDID" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WDID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="FILENAME_REP" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILENAME_REP" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="FILENAME_ARCH" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILENAME_ARCH" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="FILEEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILEEXT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBJTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBJTYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="DOKTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="DOKTYPE" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG0" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG0" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG1" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG1" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG2" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG2" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG3" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG3" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG4" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG5" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG5" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG6" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG6" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG7" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG7" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG8" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG8" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="OBG9" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG9" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="CREATEDAT" Precision="0" ProviderType="DBTimeStamp" Scale="0" Size="0" SourceColumn="CREATEDAT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="CREATESYS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CREATESYS" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="CHANGEDAT" Precision="0" ProviderType="DBTimeStamp" Scale="0" Size="0" SourceColumn="CHANGEDAT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="CHANGESYS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CHANGESYS" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="RETMSG" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="RETMSG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="Original_ID" Precision="18" ProviderType="Numeric" Scale="0" Size="0" SourceColumn="ID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_CCID" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="CCID" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_CCID" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CCID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_WDID" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="WDID" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_WDID" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="WDID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_FILENAME_REP" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="FILENAME_REP" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_FILENAME_REP" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILENAME_REP" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_FILENAME_ARCH" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="FILENAME_ARCH" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_FILENAME_ARCH" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILENAME_ARCH" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_FILEEXT" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="FILEEXT" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_FILEEXT" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILEEXT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBJTYPE" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBJTYPE" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBJTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBJTYPE" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_DOKTYPE" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="DOKTYPE" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_DOKTYPE" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="DOKTYPE" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG0" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG0" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG0" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG0" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG1" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG1" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG1" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG1" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG2" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG2" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG2" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG2" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG3" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG3" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG3" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG3" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG4" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG4" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG4" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG4" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG5" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG5" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG5" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG5" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG6" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG6" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG6" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG6" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG7" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG7" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG7" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG7" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG8" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG8" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG8" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG8" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_OBG9" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="OBG9" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_OBG9" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="OBG9" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="Original_CREATEDAT" Precision="0" ProviderType="DBTimeStamp" Scale="0" Size="0" SourceColumn="CREATEDAT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_CREATESYS" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="CREATESYS" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_CREATESYS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CREATESYS" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_CHANGEDAT" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="CHANGEDAT" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="Original_CHANGEDAT" Precision="0" ProviderType="DBTimeStamp" Scale="0" Size="0" SourceColumn="CHANGEDAT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_CHANGESYS" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="CHANGESYS" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_CHANGESYS" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="CHANGESYS" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="IsNull_RETMSG" Precision="0" ProviderType="Integer" Scale="0" Size="0" SourceColumn="RETMSG" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="Original_RETMSG" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="RETMSG" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</UpdateCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="ID" DataSetColumn="ID" />
<Mapping SourceColumn="CCID" DataSetColumn="CCID" />
<Mapping SourceColumn="WDID" DataSetColumn="WDID" />
<Mapping SourceColumn="FILENAME_REP" DataSetColumn="FILENAME_REP" />
<Mapping SourceColumn="FILENAME_ARCH" DataSetColumn="FILENAME_ARCH" />
<Mapping SourceColumn="FILEEXT" DataSetColumn="FILEEXT" />
<Mapping SourceColumn="OBJTYPE" DataSetColumn="OBJTYPE" />
<Mapping SourceColumn="DOKTYPE" DataSetColumn="DOKTYPE" />
<Mapping SourceColumn="OBG0" DataSetColumn="OBG0" />
<Mapping SourceColumn="OBG1" DataSetColumn="OBG1" />
<Mapping SourceColumn="OBG2" DataSetColumn="OBG2" />
<Mapping SourceColumn="OBG3" DataSetColumn="OBG3" />
<Mapping SourceColumn="OBG4" DataSetColumn="OBG4" />
<Mapping SourceColumn="OBG5" DataSetColumn="OBG5" />
<Mapping SourceColumn="OBG6" DataSetColumn="OBG6" />
<Mapping SourceColumn="OBG7" DataSetColumn="OBG7" />
<Mapping SourceColumn="OBG8" DataSetColumn="OBG8" />
<Mapping SourceColumn="OBG9" DataSetColumn="OBG9" />
<Mapping SourceColumn="CREATEDAT" DataSetColumn="CREATEDAT" />
<Mapping SourceColumn="CREATESYS" DataSetColumn="CREATESYS" />
<Mapping SourceColumn="CHANGEDAT" DataSetColumn="CHANGEDAT" />
<Mapping SourceColumn="CHANGESYS" DataSetColumn="CHANGESYS" />
<Mapping SourceColumn="RETMSG" DataSetColumn="RETMSG" />
</Mappings>
<Sources />
</TableAdapter>
</Tables>
<Sources />
</DataSource>
</xs:appinfo>
</xs:annotation>
<xs:element name="DSCursor" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="DSCursor" msprop:Generator_UserDSName="DSCursor">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="SYS_WDCC" msprop:Generator_TableClassName="SYS_WDCCDataTable" msprop:Generator_TableVarName="tableSYS_WDCC" msprop:Generator_TablePropName="SYS_WDCC" msprop:Generator_RowDeletingName="SYS_WDCCRowDeleting" msprop:Generator_UserTableName="SYS_WDCC" msprop:Generator_RowChangingName="SYS_WDCCRowChanging" msprop:Generator_RowEvHandlerName="SYS_WDCCRowChangeEventHandler" msprop:Generator_RowDeletedName="SYS_WDCCRowDeleted" msprop:Generator_RowEvArgName="SYS_WDCCRowChangeEvent" msprop:Generator_RowChangedName="SYS_WDCCRowChanged" msprop:Generator_RowClassName="SYS_WDCCRow">
<xs:complexType>
<xs:sequence>
<xs:element name="ID" msprop:Generator_ColumnVarNameInTable="columnID" msprop:Generator_ColumnPropNameInRow="ID" msprop:Generator_ColumnPropNameInTable="IDColumn" msprop:Generator_UserColumnName="ID" type="xs:decimal" />
<xs:element name="CCID" msprop:Generator_ColumnVarNameInTable="columnCCID" msprop:Generator_ColumnPropNameInRow="CCID" msprop:Generator_ColumnPropNameInTable="CCIDColumn" msprop:Generator_UserColumnName="CCID" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="80" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="WDID" msprop:Generator_ColumnVarNameInTable="columnWDID" msprop:Generator_ColumnPropNameInRow="WDID" msprop:Generator_ColumnPropNameInTable="WDIDColumn" msprop:Generator_UserColumnName="WDID" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="80" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FILENAME_REP" msprop:Generator_ColumnVarNameInTable="columnFILENAME_REP" msprop:Generator_ColumnPropNameInRow="FILENAME_REP" msprop:Generator_ColumnPropNameInTable="FILENAME_REPColumn" msprop:Generator_UserColumnName="FILENAME_REP" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="510" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FILENAME_ARCH" msprop:Generator_ColumnVarNameInTable="columnFILENAME_ARCH" msprop:Generator_ColumnPropNameInRow="FILENAME_ARCH" msprop:Generator_ColumnPropNameInTable="FILENAME_ARCHColumn" msprop:Generator_UserColumnName="FILENAME_ARCH" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="510" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FILEEXT" msprop:Generator_ColumnVarNameInTable="columnFILEEXT" msprop:Generator_ColumnPropNameInRow="FILEEXT" msprop:Generator_ColumnPropNameInTable="FILEEXTColumn" msprop:Generator_UserColumnName="FILEEXT" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="40" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBJTYPE" msprop:Generator_ColumnVarNameInTable="columnOBJTYPE" msprop:Generator_ColumnPropNameInRow="OBJTYPE" msprop:Generator_ColumnPropNameInTable="OBJTYPEColumn" msprop:Generator_UserColumnName="OBJTYPE" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="510" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DOKTYPE" msprop:Generator_ColumnVarNameInTable="columnDOKTYPE" msprop:Generator_ColumnPropNameInRow="DOKTYPE" msprop:Generator_ColumnPropNameInTable="DOKTYPEColumn" msprop:Generator_UserColumnName="DOKTYPE" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="510" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBG0" msprop:Generator_ColumnVarNameInTable="columnOBG0" msprop:Generator_ColumnPropNameInRow="OBG0" msprop:Generator_ColumnPropNameInTable="OBG0Column" msprop:Generator_UserColumnName="OBG0" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBG1" msprop:Generator_ColumnVarNameInTable="columnOBG1" msprop:Generator_ColumnPropNameInRow="OBG1" msprop:Generator_ColumnPropNameInTable="OBG1Column" msprop:Generator_UserColumnName="OBG1" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBG2" msprop:Generator_ColumnVarNameInTable="columnOBG2" msprop:Generator_ColumnPropNameInRow="OBG2" msprop:Generator_ColumnPropNameInTable="OBG2Column" msprop:Generator_UserColumnName="OBG2" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBG3" msprop:Generator_ColumnVarNameInTable="columnOBG3" msprop:Generator_ColumnPropNameInRow="OBG3" msprop:Generator_ColumnPropNameInTable="OBG3Column" msprop:Generator_UserColumnName="OBG3" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBG4" msprop:Generator_ColumnVarNameInTable="columnOBG4" msprop:Generator_ColumnPropNameInRow="OBG4" msprop:Generator_ColumnPropNameInTable="OBG4Column" msprop:Generator_UserColumnName="OBG4" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBG5" msprop:Generator_ColumnVarNameInTable="columnOBG5" msprop:Generator_ColumnPropNameInRow="OBG5" msprop:Generator_ColumnPropNameInTable="OBG5Column" msprop:Generator_UserColumnName="OBG5" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBG6" msprop:Generator_ColumnVarNameInTable="columnOBG6" msprop:Generator_ColumnPropNameInRow="OBG6" msprop:Generator_ColumnPropNameInTable="OBG6Column" msprop:Generator_UserColumnName="OBG6" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBG7" msprop:Generator_ColumnVarNameInTable="columnOBG7" msprop:Generator_ColumnPropNameInRow="OBG7" msprop:Generator_ColumnPropNameInTable="OBG7Column" msprop:Generator_UserColumnName="OBG7" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBG8" msprop:Generator_ColumnVarNameInTable="columnOBG8" msprop:Generator_ColumnPropNameInRow="OBG8" msprop:Generator_ColumnPropNameInTable="OBG8Column" msprop:Generator_UserColumnName="OBG8" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OBG9" msprop:Generator_ColumnVarNameInTable="columnOBG9" msprop:Generator_ColumnPropNameInRow="OBG9" msprop:Generator_ColumnPropNameInTable="OBG9Column" msprop:Generator_UserColumnName="OBG9" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="200" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CREATEDAT" msprop:Generator_ColumnVarNameInTable="columnCREATEDAT" msprop:Generator_ColumnPropNameInRow="CREATEDAT" msprop:Generator_ColumnPropNameInTable="CREATEDATColumn" msprop:Generator_UserColumnName="CREATEDAT" type="xs:dateTime" />
<xs:element name="CREATESYS" msprop:Generator_ColumnVarNameInTable="columnCREATESYS" msprop:Generator_ColumnPropNameInRow="CREATESYS" msprop:Generator_ColumnPropNameInTable="CREATESYSColumn" msprop:Generator_UserColumnName="CREATESYS" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="10" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CHANGEDAT" msprop:Generator_ColumnVarNameInTable="columnCHANGEDAT" msprop:Generator_ColumnPropNameInRow="CHANGEDAT" msprop:Generator_ColumnPropNameInTable="CHANGEDATColumn" msprop:Generator_UserColumnName="CHANGEDAT" type="xs:dateTime" minOccurs="0" />
<xs:element name="CHANGESYS" msprop:Generator_ColumnVarNameInTable="columnCHANGESYS" msprop:Generator_ColumnPropNameInRow="CHANGESYS" msprop:Generator_ColumnPropNameInTable="CHANGESYSColumn" msprop:Generator_UserColumnName="CHANGESYS" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="10" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="RETMSG" msprop:Generator_ColumnVarNameInTable="columnRETMSG" msprop:Generator_ColumnPropNameInRow="RETMSG" msprop:Generator_ColumnPropNameInTable="RETMSGColumn" msprop:Generator_UserColumnName="RETMSG" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:unique name="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:SYS_WDCC" />
<xs:field xpath="mstns:ID" />
</xs:unique>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool to store the dataset designer's layout information.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="0" ViewPortY="0" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:SYS_WDCC" ZOrder="1" X="35" Y="27" Height="305" Width="208" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="254" />
</Shapes>
<Connectors />
</DiagramLayout>

View File

@ -0,0 +1,833 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.34011
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict Off
Option Explicit On
'''<summary>
'''Represents a strongly typed in-memory cache of data.
'''</summary>
<Global.System.Serializable(), _
Global.System.ComponentModel.DesignerCategoryAttribute("code"), _
Global.System.ComponentModel.ToolboxItem(true), _
Global.System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedDataSetSchema"), _
Global.System.Xml.Serialization.XmlRootAttribute("DSNachbearbeitung"), _
Global.System.ComponentModel.Design.HelpKeywordAttribute("vs.data.DataSet")> _
Partial Public Class DSNachbearbeitung
Inherits Global.System.Data.DataSet
Private tableTBNI_NACHBEARBEITUNG_AD As TBNI_NACHBEARBEITUNG_ADDataTable
Private _schemaSerializationMode As Global.System.Data.SchemaSerializationMode = Global.System.Data.SchemaSerializationMode.IncludeSchema
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Sub New()
MyBase.New
Me.BeginInit
Me.InitClass
Dim schemaChangedHandler As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged
AddHandler MyBase.Tables.CollectionChanged, schemaChangedHandler
AddHandler MyBase.Relations.CollectionChanged, schemaChangedHandler
Me.EndInit
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Sub New(ByVal info As Global.System.Runtime.Serialization.SerializationInfo, ByVal context As Global.System.Runtime.Serialization.StreamingContext)
MyBase.New(info, context, false)
If (Me.IsBinarySerialized(info, context) = true) Then
Me.InitVars(false)
Dim schemaChangedHandler1 As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged
AddHandler Me.Tables.CollectionChanged, schemaChangedHandler1
AddHandler Me.Relations.CollectionChanged, schemaChangedHandler1
Return
End If
Dim strSchema As String = CType(info.GetValue("XmlSchema", GetType(String)),String)
If (Me.DetermineSchemaSerializationMode(info, context) = Global.System.Data.SchemaSerializationMode.IncludeSchema) Then
Dim ds As Global.System.Data.DataSet = New Global.System.Data.DataSet()
ds.ReadXmlSchema(New Global.System.Xml.XmlTextReader(New Global.System.IO.StringReader(strSchema)))
If (Not (ds.Tables("TBNI_NACHBEARBEITUNG_AD")) Is Nothing) Then
MyBase.Tables.Add(New TBNI_NACHBEARBEITUNG_ADDataTable(ds.Tables("TBNI_NACHBEARBEITUNG_AD")))
End If
Me.DataSetName = ds.DataSetName
Me.Prefix = ds.Prefix
Me.Namespace = ds.Namespace
Me.Locale = ds.Locale
Me.CaseSensitive = ds.CaseSensitive
Me.EnforceConstraints = ds.EnforceConstraints
Me.Merge(ds, false, Global.System.Data.MissingSchemaAction.Add)
Me.InitVars
Else
Me.ReadXmlSchema(New Global.System.Xml.XmlTextReader(New Global.System.IO.StringReader(strSchema)))
End If
Me.GetSerializationData(info, context)
Dim schemaChangedHandler As Global.System.ComponentModel.CollectionChangeEventHandler = AddressOf Me.SchemaChanged
AddHandler MyBase.Tables.CollectionChanged, schemaChangedHandler
AddHandler Me.Relations.CollectionChanged, schemaChangedHandler
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0"), _
Global.System.ComponentModel.Browsable(false), _
Global.System.ComponentModel.DesignerSerializationVisibility(Global.System.ComponentModel.DesignerSerializationVisibility.Content)> _
Public ReadOnly Property TBNI_NACHBEARBEITUNG_AD() As TBNI_NACHBEARBEITUNG_ADDataTable
Get
Return Me.tableTBNI_NACHBEARBEITUNG_AD
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0"), _
Global.System.ComponentModel.BrowsableAttribute(true), _
Global.System.ComponentModel.DesignerSerializationVisibilityAttribute(Global.System.ComponentModel.DesignerSerializationVisibility.Visible)> _
Public Overrides Property SchemaSerializationMode() As Global.System.Data.SchemaSerializationMode
Get
Return Me._schemaSerializationMode
End Get
Set
Me._schemaSerializationMode = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0"), _
Global.System.ComponentModel.DesignerSerializationVisibilityAttribute(Global.System.ComponentModel.DesignerSerializationVisibility.Hidden)> _
Public Shadows ReadOnly Property Tables() As Global.System.Data.DataTableCollection
Get
Return MyBase.Tables
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0"), _
Global.System.ComponentModel.DesignerSerializationVisibilityAttribute(Global.System.ComponentModel.DesignerSerializationVisibility.Hidden)> _
Public Shadows ReadOnly Property Relations() As Global.System.Data.DataRelationCollection
Get
Return MyBase.Relations
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Sub InitializeDerivedDataSet()
Me.BeginInit
Me.InitClass
Me.EndInit
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Overrides Function Clone() As Global.System.Data.DataSet
Dim cln As DSNachbearbeitung = CType(MyBase.Clone,DSNachbearbeitung)
cln.InitVars
cln.SchemaSerializationMode = Me.SchemaSerializationMode
Return cln
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Function ShouldSerializeTables() As Boolean
Return false
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Function ShouldSerializeRelations() As Boolean
Return false
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Sub ReadXmlSerializable(ByVal reader As Global.System.Xml.XmlReader)
If (Me.DetermineSchemaSerializationMode(reader) = Global.System.Data.SchemaSerializationMode.IncludeSchema) Then
Me.Reset
Dim ds As Global.System.Data.DataSet = New Global.System.Data.DataSet()
ds.ReadXml(reader)
If (Not (ds.Tables("TBNI_NACHBEARBEITUNG_AD")) Is Nothing) Then
MyBase.Tables.Add(New TBNI_NACHBEARBEITUNG_ADDataTable(ds.Tables("TBNI_NACHBEARBEITUNG_AD")))
End If
Me.DataSetName = ds.DataSetName
Me.Prefix = ds.Prefix
Me.Namespace = ds.Namespace
Me.Locale = ds.Locale
Me.CaseSensitive = ds.CaseSensitive
Me.EnforceConstraints = ds.EnforceConstraints
Me.Merge(ds, false, Global.System.Data.MissingSchemaAction.Add)
Me.InitVars
Else
Me.ReadXml(reader)
Me.InitVars
End If
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Function GetSchemaSerializable() As Global.System.Xml.Schema.XmlSchema
Dim stream As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream()
Me.WriteXmlSchema(New Global.System.Xml.XmlTextWriter(stream, Nothing))
stream.Position = 0
Return Global.System.Xml.Schema.XmlSchema.Read(New Global.System.Xml.XmlTextReader(stream), Nothing)
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Friend Overloads Sub InitVars()
Me.InitVars(true)
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Friend Overloads Sub InitVars(ByVal initTable As Boolean)
Me.tableTBNI_NACHBEARBEITUNG_AD = CType(MyBase.Tables("TBNI_NACHBEARBEITUNG_AD"),TBNI_NACHBEARBEITUNG_ADDataTable)
If (initTable = true) Then
If (Not (Me.tableTBNI_NACHBEARBEITUNG_AD) Is Nothing) Then
Me.tableTBNI_NACHBEARBEITUNG_AD.InitVars
End If
End If
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Private Sub InitClass()
Me.DataSetName = "DSNachbearbeitung"
Me.Prefix = ""
Me.Namespace = "http://tempuri.org/DSNachbearbeitung.xsd"
Me.EnforceConstraints = true
Me.SchemaSerializationMode = Global.System.Data.SchemaSerializationMode.IncludeSchema
Me.tableTBNI_NACHBEARBEITUNG_AD = New TBNI_NACHBEARBEITUNG_ADDataTable()
MyBase.Tables.Add(Me.tableTBNI_NACHBEARBEITUNG_AD)
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Private Function ShouldSerializeTBNI_NACHBEARBEITUNG_AD() As Boolean
Return false
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Private Sub SchemaChanged(ByVal sender As Object, ByVal e As Global.System.ComponentModel.CollectionChangeEventArgs)
If (e.Action = Global.System.ComponentModel.CollectionChangeAction.Remove) Then
Me.InitVars
End If
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Shared Function GetTypedDataSetSchema(ByVal xs As Global.System.Xml.Schema.XmlSchemaSet) As Global.System.Xml.Schema.XmlSchemaComplexType
Dim ds As DSNachbearbeitung = New DSNachbearbeitung()
Dim type As Global.System.Xml.Schema.XmlSchemaComplexType = New Global.System.Xml.Schema.XmlSchemaComplexType()
Dim sequence As Global.System.Xml.Schema.XmlSchemaSequence = New Global.System.Xml.Schema.XmlSchemaSequence()
Dim any As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny()
any.Namespace = ds.Namespace
sequence.Items.Add(any)
type.Particle = sequence
Dim dsSchema As Global.System.Xml.Schema.XmlSchema = ds.GetSchemaSerializable
If xs.Contains(dsSchema.TargetNamespace) Then
Dim s1 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream()
Dim s2 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream()
Try
Dim schema As Global.System.Xml.Schema.XmlSchema = Nothing
dsSchema.Write(s1)
Dim schemas As Global.System.Collections.IEnumerator = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator
Do While schemas.MoveNext
schema = CType(schemas.Current,Global.System.Xml.Schema.XmlSchema)
s2.SetLength(0)
schema.Write(s2)
If (s1.Length = s2.Length) Then
s1.Position = 0
s2.Position = 0
Do While ((s1.Position <> s1.Length) _
AndAlso (s1.ReadByte = s2.ReadByte))
Loop
If (s1.Position = s1.Length) Then
Return type
End If
End If
Loop
Finally
If (Not (s1) Is Nothing) Then
s1.Close
End If
If (Not (s2) Is Nothing) Then
s2.Close
End If
End Try
End If
xs.Add(dsSchema)
Return type
End Function
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Delegate Sub TBNI_NACHBEARBEITUNG_ADRowChangeEventHandler(ByVal sender As Object, ByVal e As TBNI_NACHBEARBEITUNG_ADRowChangeEvent)
'''<summary>
'''Represents the strongly named DataTable class.
'''</summary>
<Global.System.Serializable(), _
Global.System.Xml.Serialization.XmlSchemaProviderAttribute("GetTypedTableSchema")> _
Partial Public Class TBNI_NACHBEARBEITUNG_ADDataTable
Inherits Global.System.Data.TypedTableBase(Of TBNI_NACHBEARBEITUNG_ADRow)
Private columnPROFILNAME As Global.System.Data.DataColumn
Private columnMethode As Global.System.Data.DataColumn
Private columnRechtename As Global.System.Data.DataColumn
Private columnGroupUser As Global.System.Data.DataColumn
Private columnAccessRight As Global.System.Data.DataColumn
Private columnErstelltwann As Global.System.Data.DataColumn
Private columnErstelltwer As Global.System.Data.DataColumn
Private columnID As Global.System.Data.DataColumn
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Sub New()
MyBase.New
Me.TableName = "TBNI_NACHBEARBEITUNG_AD"
Me.BeginInit
Me.InitClass
Me.EndInit
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Friend Sub New(ByVal table As Global.System.Data.DataTable)
MyBase.New
Me.TableName = table.TableName
If (table.CaseSensitive <> table.DataSet.CaseSensitive) Then
Me.CaseSensitive = table.CaseSensitive
End If
If (table.Locale.ToString <> table.DataSet.Locale.ToString) Then
Me.Locale = table.Locale
End If
If (table.Namespace <> table.DataSet.Namespace) Then
Me.Namespace = table.Namespace
End If
Me.Prefix = table.Prefix
Me.MinimumCapacity = table.MinimumCapacity
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Sub New(ByVal info As Global.System.Runtime.Serialization.SerializationInfo, ByVal context As Global.System.Runtime.Serialization.StreamingContext)
MyBase.New(info, context)
Me.InitVars
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public ReadOnly Property PROFILNAMEColumn() As Global.System.Data.DataColumn
Get
Return Me.columnPROFILNAME
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public ReadOnly Property MethodeColumn() As Global.System.Data.DataColumn
Get
Return Me.columnMethode
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public ReadOnly Property RechtenameColumn() As Global.System.Data.DataColumn
Get
Return Me.columnRechtename
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public ReadOnly Property GroupUserColumn() As Global.System.Data.DataColumn
Get
Return Me.columnGroupUser
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public ReadOnly Property AccessRightColumn() As Global.System.Data.DataColumn
Get
Return Me.columnAccessRight
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public ReadOnly Property ErstelltwannColumn() As Global.System.Data.DataColumn
Get
Return Me.columnErstelltwann
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public ReadOnly Property ErstelltwerColumn() As Global.System.Data.DataColumn
Get
Return Me.columnErstelltwer
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public ReadOnly Property IDColumn() As Global.System.Data.DataColumn
Get
Return Me.columnID
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0"), _
Global.System.ComponentModel.Browsable(false)> _
Public ReadOnly Property Count() As Integer
Get
Return Me.Rows.Count
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Default ReadOnly Property Item(ByVal index As Integer) As TBNI_NACHBEARBEITUNG_ADRow
Get
Return CType(Me.Rows(index),TBNI_NACHBEARBEITUNG_ADRow)
End Get
End Property
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Event TBNI_NACHBEARBEITUNG_ADRowChanging As TBNI_NACHBEARBEITUNG_ADRowChangeEventHandler
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Event TBNI_NACHBEARBEITUNG_ADRowChanged As TBNI_NACHBEARBEITUNG_ADRowChangeEventHandler
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Event TBNI_NACHBEARBEITUNG_ADRowDeleting As TBNI_NACHBEARBEITUNG_ADRowChangeEventHandler
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Event TBNI_NACHBEARBEITUNG_ADRowDeleted As TBNI_NACHBEARBEITUNG_ADRowChangeEventHandler
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Overloads Sub AddTBNI_NACHBEARBEITUNG_ADRow(ByVal row As TBNI_NACHBEARBEITUNG_ADRow)
Me.Rows.Add(row)
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Overloads Function AddTBNI_NACHBEARBEITUNG_ADRow(ByVal PROFILNAME As String, ByVal Methode As String, ByVal Rechtename As String, ByVal GroupUser As String, ByVal AccessRight As String, ByVal Erstelltwann As Date, ByVal Erstelltwer As String) As TBNI_NACHBEARBEITUNG_ADRow
Dim rowTBNI_NACHBEARBEITUNG_ADRow As TBNI_NACHBEARBEITUNG_ADRow = CType(Me.NewRow,TBNI_NACHBEARBEITUNG_ADRow)
Dim columnValuesArray() As Object = New Object() {PROFILNAME, Methode, Rechtename, GroupUser, AccessRight, Erstelltwann, Erstelltwer, Nothing}
rowTBNI_NACHBEARBEITUNG_ADRow.ItemArray = columnValuesArray
Me.Rows.Add(rowTBNI_NACHBEARBEITUNG_ADRow)
Return rowTBNI_NACHBEARBEITUNG_ADRow
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Overrides Function Clone() As Global.System.Data.DataTable
Dim cln As TBNI_NACHBEARBEITUNG_ADDataTable = CType(MyBase.Clone,TBNI_NACHBEARBEITUNG_ADDataTable)
cln.InitVars
Return cln
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Function CreateInstance() As Global.System.Data.DataTable
Return New TBNI_NACHBEARBEITUNG_ADDataTable()
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Friend Sub InitVars()
Me.columnPROFILNAME = MyBase.Columns("Profilname")
Me.columnMethode = MyBase.Columns("Methode")
Me.columnRechtename = MyBase.Columns("Rechtename")
Me.columnGroupUser = MyBase.Columns("GroupUser")
Me.columnAccessRight = MyBase.Columns("AccessRight")
Me.columnErstelltwann = MyBase.Columns("Erstelltwann")
Me.columnErstelltwer = MyBase.Columns("Erstelltwer")
Me.columnID = MyBase.Columns("ID")
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Private Sub InitClass()
Me.columnPROFILNAME = New Global.System.Data.DataColumn("Profilname", GetType(String), Nothing, Global.System.Data.MappingType.Element)
Me.columnPROFILNAME.ExtendedProperties.Add("Generator_ColumnPropNameInRow", "PROFILNAME")
Me.columnPROFILNAME.ExtendedProperties.Add("Generator_ColumnPropNameInTable", "PROFILNAMEColumn")
Me.columnPROFILNAME.ExtendedProperties.Add("Generator_ColumnVarNameInTable", "columnPROFILNAME")
Me.columnPROFILNAME.ExtendedProperties.Add("Generator_UserColumnName", "Profilname")
MyBase.Columns.Add(Me.columnPROFILNAME)
Me.columnMethode = New Global.System.Data.DataColumn("Methode", GetType(String), Nothing, Global.System.Data.MappingType.Element)
MyBase.Columns.Add(Me.columnMethode)
Me.columnRechtename = New Global.System.Data.DataColumn("Rechtename", GetType(String), Nothing, Global.System.Data.MappingType.Element)
MyBase.Columns.Add(Me.columnRechtename)
Me.columnGroupUser = New Global.System.Data.DataColumn("GroupUser", GetType(String), Nothing, Global.System.Data.MappingType.Element)
MyBase.Columns.Add(Me.columnGroupUser)
Me.columnAccessRight = New Global.System.Data.DataColumn("AccessRight", GetType(String), Nothing, Global.System.Data.MappingType.Element)
MyBase.Columns.Add(Me.columnAccessRight)
Me.columnErstelltwann = New Global.System.Data.DataColumn("Erstelltwann", GetType(Date), Nothing, Global.System.Data.MappingType.Element)
MyBase.Columns.Add(Me.columnErstelltwann)
Me.columnErstelltwer = New Global.System.Data.DataColumn("Erstelltwer", GetType(String), Nothing, Global.System.Data.MappingType.Element)
MyBase.Columns.Add(Me.columnErstelltwer)
Me.columnID = New Global.System.Data.DataColumn("ID", GetType(Integer), Nothing, Global.System.Data.MappingType.Element)
MyBase.Columns.Add(Me.columnID)
Me.columnPROFILNAME.AllowDBNull = false
Me.columnRechtename.AllowDBNull = false
Me.columnGroupUser.AllowDBNull = false
Me.columnID.AutoIncrement = true
Me.columnID.AllowDBNull = false
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Function NewTBNI_NACHBEARBEITUNG_ADRow() As TBNI_NACHBEARBEITUNG_ADRow
Return CType(Me.NewRow,TBNI_NACHBEARBEITUNG_ADRow)
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Function NewRowFromBuilder(ByVal builder As Global.System.Data.DataRowBuilder) As Global.System.Data.DataRow
Return New TBNI_NACHBEARBEITUNG_ADRow(builder)
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Function GetRowType() As Global.System.Type
Return GetType(TBNI_NACHBEARBEITUNG_ADRow)
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Sub OnRowChanged(ByVal e As Global.System.Data.DataRowChangeEventArgs)
MyBase.OnRowChanged(e)
If (Not (Me.TBNI_NACHBEARBEITUNG_ADRowChangedEvent) Is Nothing) Then
RaiseEvent TBNI_NACHBEARBEITUNG_ADRowChanged(Me, New TBNI_NACHBEARBEITUNG_ADRowChangeEvent(CType(e.Row,TBNI_NACHBEARBEITUNG_ADRow), e.Action))
End If
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Sub OnRowChanging(ByVal e As Global.System.Data.DataRowChangeEventArgs)
MyBase.OnRowChanging(e)
If (Not (Me.TBNI_NACHBEARBEITUNG_ADRowChangingEvent) Is Nothing) Then
RaiseEvent TBNI_NACHBEARBEITUNG_ADRowChanging(Me, New TBNI_NACHBEARBEITUNG_ADRowChangeEvent(CType(e.Row,TBNI_NACHBEARBEITUNG_ADRow), e.Action))
End If
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Sub OnRowDeleted(ByVal e As Global.System.Data.DataRowChangeEventArgs)
MyBase.OnRowDeleted(e)
If (Not (Me.TBNI_NACHBEARBEITUNG_ADRowDeletedEvent) Is Nothing) Then
RaiseEvent TBNI_NACHBEARBEITUNG_ADRowDeleted(Me, New TBNI_NACHBEARBEITUNG_ADRowChangeEvent(CType(e.Row,TBNI_NACHBEARBEITUNG_ADRow), e.Action))
End If
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Protected Overrides Sub OnRowDeleting(ByVal e As Global.System.Data.DataRowChangeEventArgs)
MyBase.OnRowDeleting(e)
If (Not (Me.TBNI_NACHBEARBEITUNG_ADRowDeletingEvent) Is Nothing) Then
RaiseEvent TBNI_NACHBEARBEITUNG_ADRowDeleting(Me, New TBNI_NACHBEARBEITUNG_ADRowChangeEvent(CType(e.Row,TBNI_NACHBEARBEITUNG_ADRow), e.Action))
End If
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Sub RemoveTBNI_NACHBEARBEITUNG_ADRow(ByVal row As TBNI_NACHBEARBEITUNG_ADRow)
Me.Rows.Remove(row)
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Shared Function GetTypedTableSchema(ByVal xs As Global.System.Xml.Schema.XmlSchemaSet) As Global.System.Xml.Schema.XmlSchemaComplexType
Dim type As Global.System.Xml.Schema.XmlSchemaComplexType = New Global.System.Xml.Schema.XmlSchemaComplexType()
Dim sequence As Global.System.Xml.Schema.XmlSchemaSequence = New Global.System.Xml.Schema.XmlSchemaSequence()
Dim ds As DSNachbearbeitung = New DSNachbearbeitung()
Dim any1 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny()
any1.Namespace = "http://www.w3.org/2001/XMLSchema"
any1.MinOccurs = New Decimal(0)
any1.MaxOccurs = Decimal.MaxValue
any1.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax
sequence.Items.Add(any1)
Dim any2 As Global.System.Xml.Schema.XmlSchemaAny = New Global.System.Xml.Schema.XmlSchemaAny()
any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"
any2.MinOccurs = New Decimal(1)
any2.ProcessContents = Global.System.Xml.Schema.XmlSchemaContentProcessing.Lax
sequence.Items.Add(any2)
Dim attribute1 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute()
attribute1.Name = "namespace"
attribute1.FixedValue = ds.Namespace
type.Attributes.Add(attribute1)
Dim attribute2 As Global.System.Xml.Schema.XmlSchemaAttribute = New Global.System.Xml.Schema.XmlSchemaAttribute()
attribute2.Name = "tableTypeName"
attribute2.FixedValue = "TBNI_NACHBEARBEITUNG_ADDataTable"
type.Attributes.Add(attribute2)
type.Particle = sequence
Dim dsSchema As Global.System.Xml.Schema.XmlSchema = ds.GetSchemaSerializable
If xs.Contains(dsSchema.TargetNamespace) Then
Dim s1 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream()
Dim s2 As Global.System.IO.MemoryStream = New Global.System.IO.MemoryStream()
Try
Dim schema As Global.System.Xml.Schema.XmlSchema = Nothing
dsSchema.Write(s1)
Dim schemas As Global.System.Collections.IEnumerator = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator
Do While schemas.MoveNext
schema = CType(schemas.Current,Global.System.Xml.Schema.XmlSchema)
s2.SetLength(0)
schema.Write(s2)
If (s1.Length = s2.Length) Then
s1.Position = 0
s2.Position = 0
Do While ((s1.Position <> s1.Length) _
AndAlso (s1.ReadByte = s2.ReadByte))
Loop
If (s1.Position = s1.Length) Then
Return type
End If
End If
Loop
Finally
If (Not (s1) Is Nothing) Then
s1.Close
End If
If (Not (s2) Is Nothing) Then
s2.Close
End If
End Try
End If
xs.Add(dsSchema)
Return type
End Function
End Class
'''<summary>
'''Represents strongly named DataRow class.
'''</summary>
Partial Public Class TBNI_NACHBEARBEITUNG_ADRow
Inherits Global.System.Data.DataRow
Private tableTBNI_NACHBEARBEITUNG_AD As TBNI_NACHBEARBEITUNG_ADDataTable
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Friend Sub New(ByVal rb As Global.System.Data.DataRowBuilder)
MyBase.New(rb)
Me.tableTBNI_NACHBEARBEITUNG_AD = CType(Me.Table,TBNI_NACHBEARBEITUNG_ADDataTable)
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Property PROFILNAME() As String
Get
Return CType(Me(Me.tableTBNI_NACHBEARBEITUNG_AD.PROFILNAMEColumn),String)
End Get
Set
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.PROFILNAMEColumn) = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Property Methode() As String
Get
Try
Return CType(Me(Me.tableTBNI_NACHBEARBEITUNG_AD.MethodeColumn),String)
Catch e As Global.System.InvalidCastException
Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte Methode in Tabelle TBNI_NACHBEARBEITUNG_AD ist DBNull.", e)
End Try
End Get
Set
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.MethodeColumn) = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Property Rechtename() As String
Get
Return CType(Me(Me.tableTBNI_NACHBEARBEITUNG_AD.RechtenameColumn),String)
End Get
Set
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.RechtenameColumn) = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Property GroupUser() As String
Get
Return CType(Me(Me.tableTBNI_NACHBEARBEITUNG_AD.GroupUserColumn),String)
End Get
Set
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.GroupUserColumn) = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Property AccessRight() As String
Get
Try
Return CType(Me(Me.tableTBNI_NACHBEARBEITUNG_AD.AccessRightColumn),String)
Catch e As Global.System.InvalidCastException
Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte AccessRight in Tabelle TBNI_NACHBEARBEITUNG_AD ist DBNull.", e)
End Try
End Get
Set
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.AccessRightColumn) = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Property Erstelltwann() As Date
Get
Try
Return CType(Me(Me.tableTBNI_NACHBEARBEITUNG_AD.ErstelltwannColumn),Date)
Catch e As Global.System.InvalidCastException
Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte Erstelltwann in Tabelle TBNI_NACHBEARBEITUNG_AD ist DBNull.", e)
End Try
End Get
Set
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.ErstelltwannColumn) = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Property Erstelltwer() As String
Get
Try
Return CType(Me(Me.tableTBNI_NACHBEARBEITUNG_AD.ErstelltwerColumn),String)
Catch e As Global.System.InvalidCastException
Throw New Global.System.Data.StrongTypingException("Der Wert für Spalte Erstelltwer in Tabelle TBNI_NACHBEARBEITUNG_AD ist DBNull.", e)
End Try
End Get
Set
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.ErstelltwerColumn) = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Property ID() As Integer
Get
Return CType(Me(Me.tableTBNI_NACHBEARBEITUNG_AD.IDColumn),Integer)
End Get
Set
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.IDColumn) = value
End Set
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Function IsMethodeNull() As Boolean
Return Me.IsNull(Me.tableTBNI_NACHBEARBEITUNG_AD.MethodeColumn)
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Sub SetMethodeNull()
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.MethodeColumn) = Global.System.Convert.DBNull
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Function IsAccessRightNull() As Boolean
Return Me.IsNull(Me.tableTBNI_NACHBEARBEITUNG_AD.AccessRightColumn)
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Sub SetAccessRightNull()
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.AccessRightColumn) = Global.System.Convert.DBNull
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Function IsErstelltwannNull() As Boolean
Return Me.IsNull(Me.tableTBNI_NACHBEARBEITUNG_AD.ErstelltwannColumn)
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Sub SetErstelltwannNull()
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.ErstelltwannColumn) = Global.System.Convert.DBNull
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Function IsErstelltwerNull() As Boolean
Return Me.IsNull(Me.tableTBNI_NACHBEARBEITUNG_AD.ErstelltwerColumn)
End Function
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Sub SetErstelltwerNull()
Me(Me.tableTBNI_NACHBEARBEITUNG_AD.ErstelltwerColumn) = Global.System.Convert.DBNull
End Sub
End Class
'''<summary>
'''Row event argument class
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Class TBNI_NACHBEARBEITUNG_ADRowChangeEvent
Inherits Global.System.EventArgs
Private eventRow As TBNI_NACHBEARBEITUNG_ADRow
Private eventAction As Global.System.Data.DataRowAction
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Sub New(ByVal row As TBNI_NACHBEARBEITUNG_ADRow, ByVal action As Global.System.Data.DataRowAction)
MyBase.New
Me.eventRow = row
Me.eventAction = action
End Sub
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public ReadOnly Property Row() As TBNI_NACHBEARBEITUNG_ADRow
Get
Return Me.eventRow
End Get
End Property
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public ReadOnly Property Action() As Global.System.Data.DataRowAction
Get
Return Me.eventAction
End Get
End Property
End Class
End Class

View File

@ -0,0 +1,6 @@
Partial Class DSNachbearbeitung
Partial Class TBNI_NACHBEARBEITUNG_ADDataTable
End Class
End Class

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DataSetUISetting Version="1.00" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TableUISettings />
</DataSetUISetting>

View File

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="DSNachbearbeitung" targetNamespace="http://tempuri.org/DSNachbearbeitung.xsd" xmlns:mstns="http://tempuri.org/DSNachbearbeitung.xsd" xmlns="http://tempuri.org/DSNachbearbeitung.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
<xs:annotation>
<xs:appinfo source="urn:schemas-microsoft-com:xml-msdatasource">
<DataSource DefaultConnectionIndex="0" FunctionsComponentName="QueriesTableAdapter" Modifier="AutoLayout, AnsiClass, Class, Public" SchemaSerializationMode="IncludeSchema" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<Connections />
<Tables />
<Sources />
</DataSource>
</xs:appinfo>
</xs:annotation>
<xs:element name="DSNachbearbeitung" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="DSNachbearbeitung" msprop:Generator_UserDSName="DSNachbearbeitung">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="TBNI_NACHBEARBEITUNG_AD" msprop:Generator_TableClassName="TBNI_NACHBEARBEITUNG_ADDataTable" msprop:Generator_TableVarName="tableTBNI_NACHBEARBEITUNG_AD" msprop:Generator_RowChangedName="TBNI_NACHBEARBEITUNG_ADRowChanged" msprop:Generator_TablePropName="TBNI_NACHBEARBEITUNG_AD" msprop:Generator_RowDeletingName="TBNI_NACHBEARBEITUNG_ADRowDeleting" msprop:Generator_RowChangingName="TBNI_NACHBEARBEITUNG_ADRowChanging" msprop:Generator_RowEvHandlerName="TBNI_NACHBEARBEITUNG_ADRowChangeEventHandler" msprop:Generator_RowDeletedName="TBNI_NACHBEARBEITUNG_ADRowDeleted" msprop:Generator_RowClassName="TBNI_NACHBEARBEITUNG_ADRow" msprop:Generator_UserTableName="TBNI_NACHBEARBEITUNG_AD" msprop:Generator_RowEvArgName="TBNI_NACHBEARBEITUNG_ADRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="Profilname" msprop:Generator_ColumnVarNameInTable="columnPROFILNAME" msprop:Generator_ColumnPropNameInRow="PROFILNAME" msprop:Generator_ColumnPropNameInTable="PROFILNAMEColumn" msprop:Generator_UserColumnName="Profilname" type="xs:string" />
<xs:element name="Methode" msprop:Generator_ColumnVarNameInTable="columnMethode" msprop:Generator_ColumnPropNameInRow="Methode" msprop:Generator_ColumnPropNameInTable="MethodeColumn" msprop:Generator_UserColumnName="Methode" type="xs:string" minOccurs="0" />
<xs:element name="Rechtename" msprop:Generator_ColumnVarNameInTable="columnRechtename" msprop:Generator_ColumnPropNameInRow="Rechtename" msprop:Generator_ColumnPropNameInTable="RechtenameColumn" msprop:Generator_UserColumnName="Rechtename" type="xs:string" />
<xs:element name="GroupUser" msprop:Generator_ColumnVarNameInTable="columnGroupUser" msprop:Generator_ColumnPropNameInRow="GroupUser" msprop:Generator_ColumnPropNameInTable="GroupUserColumn" msprop:Generator_UserColumnName="GroupUser" type="xs:string" />
<xs:element name="AccessRight" msprop:Generator_ColumnVarNameInTable="columnAccessRight" msprop:Generator_ColumnPropNameInRow="AccessRight" msprop:Generator_ColumnPropNameInTable="AccessRightColumn" msprop:Generator_UserColumnName="AccessRight" type="xs:string" minOccurs="0" />
<xs:element name="Erstelltwann" msprop:Generator_ColumnVarNameInTable="columnErstelltwann" msprop:Generator_ColumnPropNameInRow="Erstelltwann" msprop:Generator_ColumnPropNameInTable="ErstelltwannColumn" msprop:Generator_UserColumnName="Erstelltwann" type="xs:dateTime" minOccurs="0" />
<xs:element name="Erstelltwer" msprop:Generator_ColumnVarNameInTable="columnErstelltwer" msprop:Generator_ColumnPropNameInRow="Erstelltwer" msprop:Generator_ColumnPropNameInTable="ErstelltwerColumn" msprop:Generator_UserColumnName="Erstelltwer" type="xs:string" minOccurs="0" />
<xs:element name="ID" msdata:AutoIncrement="true" msprop:Generator_ColumnVarNameInTable="columnID" msprop:Generator_ColumnPropNameInRow="ID" msprop:Generator_ColumnPropNameInTable="IDColumn" msprop:Generator_UserColumnName="ID" type="xs:int" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool to store the dataset designer's layout information.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="345" ViewPortY="158" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:TBNI_NACHBEARBEITUNG_AD" ZOrder="1" X="565" Y="239" Height="181" Width="242" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="196" />
</Shapes>
<Connectors />
</DiagramLayout>

7337
ToolCollection/DS_More.Designer.vb generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DataSetUISetting Version="1.00" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TableUISettings>
<TableUISetting Name="TBMO_RE_KUNDEN">
<ColumnUISettings>
<ColumnUISetting Name="ERSTELLTWANN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="GEAENDERTWANN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
</ColumnUISettings>
</TableUISetting>
<TableUISetting Name="TBMO_RE_DOKART">
<ColumnUISettings>
<ColumnUISetting Name="ERFASSTWANN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
<ColumnUISetting Name="GEAENDERTWANN">
<ControlSettings><ControlSetting ArtifactName="Microsoft:System.Windows.Forms:Form" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<BindableControlInfo Name="TextBox" Type="System.Windows.Forms.TextBox" AssemblyName="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</ControlSetting></ControlSettings>
</ColumnUISetting>
</ColumnUISettings>
</TableUISetting>
</TableUISettings>
</DataSetUISetting>

732
ToolCollection/DS_More.xsd Normal file
View File

@ -0,0 +1,732 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="DS_More" targetNamespace="http://tempuri.org/DS_More.xsd" xmlns:mstns="http://tempuri.org/DS_More.xsd" xmlns="http://tempuri.org/DS_More.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
<xs:annotation>
<xs:appinfo source="urn:schemas-microsoft-com:xml-msdatasource">
<DataSource DefaultConnectionIndex="0" FunctionsComponentName="QueriesTableAdapter" Modifier="AutoLayout, AnsiClass, Class, Public" SchemaSerializationMode="IncludeSchema" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<Connections>
<Connection AppSettingsObjectName="MySettings" AppSettingsPropertyName="DD_DMSConnectionString" ConnectionStringObject="" IsAppSettingsProperty="true" Modifier="Assembly" Name="DD_DMSConnectionString (MySettings)" ParameterPrefix="@" PropertyReference="ApplicationSettings.ToolCollection.My.MySettings.GlobalReference.Default.DD_DMSConnectionString" Provider="System.Data.SqlClient" />
</Connections>
<Tables>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="TBMO_RE_KUNDENTableAdapter" GeneratorDataComponentClassName="TBMO_RE_KUNDENTableAdapter" Name="TBMO_RE_KUNDEN" UserDataComponentName="TBMO_RE_KUNDENTableAdapter">
<MainSource>
<DbSource ConnectionRef="DD_DMSConnectionString (MySettings)" DbObjectName="DD_DMS.dbo.TBMO_RE_KUNDEN" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>DELETE FROM [TBMO_RE_KUNDEN] WHERE (([GUID] = @Original_GUID) AND ([KUNDEN_NAME] = @Original_KUNDEN_NAME) AND ((@IsNull_KUNDE_KURZ = 1 AND [KUNDE_KURZ] IS NULL) OR ([KUNDE_KURZ] = @Original_KUNDE_KURZ)) AND ([AKTIV] = @Original_AKTIV) AND ([ERSTELLTWER] = @Original_ERSTELLTWER) AND ([ERSTELLTWANN] = @Original_ERSTELLTWANN) AND ((@IsNull_GEAENDERTWER = 1 AND [GEAENDERTWER] IS NULL) OR ([GEAENDERTWER] = @Original_GEAENDERTWER)) AND ((@IsNull_GEAENDERTWANN = 1 AND [GEAENDERTWANN] IS NULL) OR ([GEAENDERTWANN] = @Original_GEAENDERTWANN)))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_KUNDEN_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="KUNDEN_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_KUNDE_KURZ" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="KUNDE_KURZ" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_KUNDE_KURZ" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="KUNDE_KURZ" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_AKTIV" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="AKTIV" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_ERSTELLTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ERSTELLTWER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_ERSTELLTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ERSTELLTWANN" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_GEAENDERTWER" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_GEAENDERTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_GEAENDERTWANN" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GEAENDERTWANN" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_GEAENDERTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="GEAENDERTWANN" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>INSERT INTO TBMO_RE_KUNDEN
(KUNDEN_NAME, KUNDE_KURZ, AKTIV, ERSTELLTWER)
VALUES (@KUNDEN_NAME,@KUNDE_KURZ,@AKTIV,@ERSTELLTWER);
SELECT GUID, KUNDEN_NAME, KUNDE_KURZ, AKTIV, ERSTELLTWER, ERSTELLTWANN, GEAENDERTWER, GEAENDERTWANN FROM TBMO_RE_KUNDEN WHERE (GUID = SCOPE_IDENTITY())</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="KUNDEN_NAME" ColumnName="KUNDEN_NAME" DataSourceName="DD_DMS.dbo.TBMO_RE_KUNDEN" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@KUNDEN_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="KUNDEN_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="KUNDE_KURZ" ColumnName="KUNDE_KURZ" DataSourceName="DD_DMS.dbo.TBMO_RE_KUNDEN" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@KUNDE_KURZ" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="KUNDE_KURZ" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="AKTIV" ColumnName="AKTIV" DataSourceName="DD_DMS.dbo.TBMO_RE_KUNDEN" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@AKTIV" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="AKTIV" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ERSTELLTWER" ColumnName="ERSTELLTWER" DataSourceName="DD_DMS.dbo.TBMO_RE_KUNDEN" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@ERSTELLTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="ERSTELLTWER" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT GUID, KUNDEN_NAME, KUNDE_KURZ, AKTIV, ERSTELLTWER, ERSTELLTWANN, GEAENDERTWER, GEAENDERTWANN
FROM TBMO_RE_KUNDEN</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>UPDATE TBMO_RE_KUNDEN
SET KUNDEN_NAME = @KUNDEN_NAME, KUNDE_KURZ = @KUNDE_KURZ, AKTIV = @AKTIV, GEAENDERTWER = @GEAENDERTWER
WHERE (GUID = @Original_GUID);
SELECT GUID, KUNDEN_NAME, KUNDE_KURZ, AKTIV, ERSTELLTWER, ERSTELLTWANN, GEAENDERTWER, GEAENDERTWANN FROM TBMO_RE_KUNDEN WHERE (GUID = @GUID)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="KUNDEN_NAME" ColumnName="KUNDEN_NAME" DataSourceName="DD_DMS.dbo.TBMO_RE_KUNDEN" DataTypeServer="varchar(100)" DbType="AnsiString" Direction="Input" ParameterName="@KUNDEN_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="100" SourceColumn="KUNDEN_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="KUNDE_KURZ" ColumnName="KUNDE_KURZ" DataSourceName="DD_DMS.dbo.TBMO_RE_KUNDEN" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@KUNDE_KURZ" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="KUNDE_KURZ" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="AKTIV" ColumnName="AKTIV" DataSourceName="DD_DMS.dbo.TBMO_RE_KUNDEN" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@AKTIV" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="AKTIV" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="GEAENDERTWER" ColumnName="GEAENDERTWER" DataSourceName="DD_DMS.dbo.TBMO_RE_KUNDEN" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@GEAENDERTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Original_GUID" ColumnName="GUID" DataSourceName="DD_DMS.dbo.TBMO_RE_KUNDEN" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="GUID" ColumnName="GUID" DataSourceName="DD_DMS.dbo.TBMO_RE_KUNDEN" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</UpdateCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="GUID" DataSetColumn="GUID" />
<Mapping SourceColumn="KUNDEN_NAME" DataSetColumn="KUNDEN_NAME" />
<Mapping SourceColumn="KUNDE_KURZ" DataSetColumn="KUNDE_KURZ" />
<Mapping SourceColumn="AKTIV" DataSetColumn="AKTIV" />
<Mapping SourceColumn="ERSTELLTWER" DataSetColumn="ERSTELLTWER" />
<Mapping SourceColumn="ERSTELLTWANN" DataSetColumn="ERSTELLTWANN" />
<Mapping SourceColumn="GEAENDERTWER" DataSetColumn="GEAENDERTWER" />
<Mapping SourceColumn="GEAENDERTWANN" DataSetColumn="GEAENDERTWANN" />
</Mappings>
<Sources />
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="TBMO_RE_DOKART_KUNDETableAdapter" GeneratorDataComponentClassName="TBMO_RE_DOKART_KUNDETableAdapter" Name="TBMO_RE_DOKART_KUNDE" UserDataComponentName="TBMO_RE_DOKART_KUNDETableAdapter">
<MainSource>
<DbSource ConnectionRef="DD_DMSConnectionString (MySettings)" DbObjectName="DD_DMS.dbo.TBMO_RE_DOKART_KUNDE" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>DELETE FROM [TBMO_RE_DOKART_KUNDE] WHERE (([GUID] = @Original_GUID) AND ([KUNDEN_ID] = @Original_KUNDEN_ID) AND ([DA_ID] = @Original_DA_ID) AND ((@IsNull_ZIELORDNER = 1 AND [ZIELORDNER] IS NULL) OR ([ZIELORDNER] = @Original_ZIELORDNER)) AND ([ERFASSTWER] = @Original_ERFASSTWER) AND ([ERFASSTWANN] = @Original_ERFASSTWANN) AND ((@IsNull_GEAENDERTWER = 1 AND [GEAENDERTWER] IS NULL) OR ([GEAENDERTWER] = @Original_GEAENDERTWER)) AND ((@IsNull_GEAENDERTWANN = 1 AND [GEAENDERTWANN] IS NULL) OR ([GEAENDERTWANN] = @Original_GEAENDERTWANN)))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_KUNDEN_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="KUNDEN_ID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_DA_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="DA_ID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_ZIELORDNER" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="ZIELORDNER" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_ZIELORDNER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ZIELORDNER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_ERFASSTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ERFASSTWER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_ERFASSTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ERFASSTWANN" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_GEAENDERTWER" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_GEAENDERTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_GEAENDERTWANN" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GEAENDERTWANN" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_GEAENDERTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="GEAENDERTWANN" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>INSERT INTO TBMO_RE_DOKART_KUNDE
(KUNDEN_ID, DA_ID, ZIELORDNER, ERFASSTWER, UO_IDX1, UO_IDX2, UO_IDX3, UO_IDX4, UO_IDX5)
VALUES (@KUNDEN_ID,@DA_ID,@ZIELORDNER,@ERFASSTWER,@UO_IDX1,@UO_IDX2,@UO_IDX3,@UO_IDX4,@UO_IDX5);
SELECT GUID, KUNDEN_ID, DA_ID, ZIELORDNER, ERFASSTWER, ERFASSTWANN, GEAENDERTWER, GEAENDERTWANN FROM TBMO_RE_DOKART_KUNDE WHERE (DA_ID = @DA_ID) AND (KUNDEN_ID = @KUNDEN_ID)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="KUNDEN_ID" ColumnName="KUNDEN_ID" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART_KUNDE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@KUNDEN_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="KUNDEN_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="DA_ID" ColumnName="DA_ID" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART_KUNDE" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@DA_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="DA_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="ZIELORDNER" ColumnName="ZIELORDNER" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART_KUNDE" DataTypeServer="varchar(500)" DbType="AnsiString" Direction="Input" ParameterName="@ZIELORDNER" Precision="0" ProviderType="VarChar" Scale="0" Size="500" SourceColumn="ZIELORDNER" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ERFASSTWER" ColumnName="ERFASSTWER" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART_KUNDE" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@ERFASSTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="ERFASSTWER" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="UO_IDX1" ColumnName="UO_IDX1" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART_KUNDE" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@UO_IDX1" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="UO_IDX1" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="UO_IDX2" ColumnName="UO_IDX2" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART_KUNDE" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@UO_IDX2" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="UO_IDX2" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="UO_IDX3" ColumnName="UO_IDX3" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART_KUNDE" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@UO_IDX3" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="UO_IDX3" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="UO_IDX4" ColumnName="UO_IDX4" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART_KUNDE" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@UO_IDX4" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="UO_IDX4" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="UO_IDX5" ColumnName="UO_IDX5" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART_KUNDE" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@UO_IDX5" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="UO_IDX5" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT GUID, KUNDEN_ID, DA_ID, ZIELORDNER, ERFASSTWER, ERFASSTWANN, GEAENDERTWER, GEAENDERTWANN
FROM TBMO_RE_DOKART_KUNDE</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>UPDATE [TBMO_RE_DOKART_KUNDE] SET [KUNDEN_ID] = @KUNDEN_ID, [DA_ID] = @DA_ID, [ZIELORDNER] = @ZIELORDNER, [ERFASSTWER] = @ERFASSTWER, [ERFASSTWANN] = @ERFASSTWANN, [GEAENDERTWER] = @GEAENDERTWER, [GEAENDERTWANN] = @GEAENDERTWANN WHERE (([GUID] = @Original_GUID) AND ([KUNDEN_ID] = @Original_KUNDEN_ID) AND ([DA_ID] = @Original_DA_ID) AND ((@IsNull_ZIELORDNER = 1 AND [ZIELORDNER] IS NULL) OR ([ZIELORDNER] = @Original_ZIELORDNER)) AND ([ERFASSTWER] = @Original_ERFASSTWER) AND ([ERFASSTWANN] = @Original_ERFASSTWANN) AND ((@IsNull_GEAENDERTWER = 1 AND [GEAENDERTWER] IS NULL) OR ([GEAENDERTWER] = @Original_GEAENDERTWER)) AND ((@IsNull_GEAENDERTWANN = 1 AND [GEAENDERTWANN] IS NULL) OR ([GEAENDERTWANN] = @Original_GEAENDERTWANN)));
SELECT GUID, KUNDEN_ID, DA_ID, ZIELORDNER, ERFASSTWER, ERFASSTWANN, GEAENDERTWER, GEAENDERTWANN FROM TBMO_RE_DOKART_KUNDE WHERE (DA_ID = @DA_ID) AND (KUNDEN_ID = @KUNDEN_ID)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@KUNDEN_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="KUNDEN_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@DA_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="DA_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@ZIELORDNER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ZIELORDNER" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@ERFASSTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ERFASSTWER" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@ERFASSTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ERFASSTWANN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@GEAENDERTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@GEAENDERTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="GEAENDERTWANN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_KUNDEN_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="KUNDEN_ID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_DA_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="DA_ID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_ZIELORDNER" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="ZIELORDNER" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_ZIELORDNER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ZIELORDNER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_ERFASSTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ERFASSTWER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_ERFASSTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ERFASSTWANN" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_GEAENDERTWER" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_GEAENDERTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_GEAENDERTWANN" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GEAENDERTWANN" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_GEAENDERTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="GEAENDERTWANN" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</UpdateCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="GUID" DataSetColumn="GUID" />
<Mapping SourceColumn="KUNDEN_ID" DataSetColumn="KUNDEN_ID" />
<Mapping SourceColumn="DA_ID" DataSetColumn="DA_ID" />
<Mapping SourceColumn="ZIELORDNER" DataSetColumn="ZIELORDNER" />
<Mapping SourceColumn="ERFASSTWER" DataSetColumn="ERFASSTWER" />
<Mapping SourceColumn="ERFASSTWANN" DataSetColumn="ERFASSTWANN" />
<Mapping SourceColumn="GEAENDERTWER" DataSetColumn="GEAENDERTWER" />
<Mapping SourceColumn="GEAENDERTWANN" DataSetColumn="GEAENDERTWANN" />
</Mappings>
<Sources />
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="WHMO_RE_DOKARTTableAdapter" GeneratorDataComponentClassName="WHMO_RE_DOKARTTableAdapter" Name="WHMO_RE_DOKART" UserDataComponentName="WHMO_RE_DOKARTTableAdapter">
<MainSource>
<DbSource ConnectionRef="DD_DMSConnectionString (MySettings)" DbObjectName="DD_DMS.dbo.TBMO_RE_DOKART" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="false" UserGetMethodName="GetData" UserSourceName="Fill">
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>SELECT GUID, BEZEICHNUNG
FROM TBMO_RE_DOKART
WHERE (AKTIV = 1)</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="GUID" DataSetColumn="GUID" />
<Mapping SourceColumn="BEZEICHNUNG" DataSetColumn="BEZEICHNUNG" />
</Mappings>
<Sources />
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="WHMO_RE_KUNDENTableAdapter" GeneratorDataComponentClassName="WHMO_RE_KUNDENTableAdapter" Name="WHMO_RE_KUNDEN" UserDataComponentName="WHMO_RE_KUNDENTableAdapter">
<MainSource>
<DbSource ConnectionRef="DD_DMSConnectionString (MySettings)" DbObjectName="DD_DMS.dbo.TBMO_RE_KUNDEN" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="false" UserGetMethodName="GetData" UserSourceName="Fill">
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT GUID, KUNDEN_NAME, KUNDE_KURZ
FROM TBMO_RE_KUNDEN
WHERE (AKTIV = 1)</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="GUID" DataSetColumn="GUID" />
<Mapping SourceColumn="KUNDEN_NAME" DataSetColumn="KUNDEN_NAME" />
<Mapping SourceColumn="KUNDE_KURZ" DataSetColumn="KUNDE_KURZ" />
</Mappings>
<Sources />
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="VWMO_RE_DOKUMENTARTZUORDNUNGTableAdapter" GeneratorDataComponentClassName="VWMO_RE_DOKUMENTARTZUORDNUNGTableAdapter" Name="VWMO_RE_DOKUMENTARTZUORDNUNG" UserDataComponentName="VWMO_RE_DOKUMENTARTZUORDNUNGTableAdapter">
<MainSource>
<DbSource ConnectionRef="DD_DMSConnectionString (MySettings)" DbObjectName="DD_DMS.dbo.VWMO_RE_DOKUMENTARTZUORDNUNG" DbObjectType="View" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="false" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="false" UserGetMethodName="GetData" UserSourceName="Fill">
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT GUID, DOKUMENTART_ID, DOKUMENTART, KUNDEN_ID, KUNDEN_NAME, DOKUMENTARTORDNER, PRAEFIX, INDEXNAME, UO_IDX1, UO_IDX2, UO_IDX3, UO_IDX4, UO_IDX5
FROM VWMO_RE_DOKUMENTARTZUORDNUNG</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="GUID" DataSetColumn="GUID" />
<Mapping SourceColumn="DOKUMENTART_ID" DataSetColumn="DOKUMENTART_ID" />
<Mapping SourceColumn="DOKUMENTART" DataSetColumn="DOKUMENTART" />
<Mapping SourceColumn="KUNDEN_ID" DataSetColumn="KUNDEN_ID" />
<Mapping SourceColumn="KUNDEN_NAME" DataSetColumn="KUNDEN_NAME" />
<Mapping SourceColumn="DOKUMENTARTORDNER" DataSetColumn="DOKUMENTARTORDNER" />
<Mapping SourceColumn="PRAEFIX" DataSetColumn="PRAEFIX" />
<Mapping SourceColumn="INDEXNAME" DataSetColumn="INDEXNAME" />
<Mapping SourceColumn="UO_IDX1" DataSetColumn="UO_IDX1" />
<Mapping SourceColumn="UO_IDX2" DataSetColumn="UO_IDX2" />
<Mapping SourceColumn="UO_IDX3" DataSetColumn="UO_IDX3" />
<Mapping SourceColumn="UO_IDX4" DataSetColumn="UO_IDX4" />
<Mapping SourceColumn="UO_IDX5" DataSetColumn="UO_IDX5" />
</Mappings>
<Sources>
<DbSource ConnectionRef="DD_DMSConnectionString (MySettings)" DbObjectName="DD_DMS.dbo.VWMO_RE_DOKUMENTARTZUORDNUNG" DbObjectType="View" FillMethodModifier="Public" FillMethodName="FillByDokartKD" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetDataByDAKD" GeneratorSourceName="FillByDokartKD" GetMethodModifier="Public" GetMethodName="GetDataByDAKD" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataByDAKD" UserSourceName="FillByDokartKD">
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT DOKUMENTART, DOKUMENTARTORDNER, DOKUMENTART_ID, GUID, INDEXNAME, KUNDEN_ID, KUNDEN_NAME, PRAEFIX, UO_IDX1, UO_IDX2, UO_IDX3, UO_IDX4, UO_IDX5 FROM VWMO_RE_DOKUMENTARTZUORDNUNG WHERE (DOKUMENTART = @DOKART) AND (UPPER(KUNDEN_NAME) = UPPER(@KUNDEN_NAME))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="DOKART" ColumnName="DOKUMENTART" DataSourceName="DD_DMS.dbo.VWMO_RE_DOKUMENTARTZUORDNUNG" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@DOKART" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="DOKUMENTART" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="KUNDEN_NAME" ColumnName="" DataSourceName="" DataTypeServer="unknown" DbType="AnsiString" Direction="Input" ParameterName="@KUNDEN_NAME" Precision="0" Scale="0" Size="1024" SourceColumn="" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</SelectCommand>
</DbSource>
</Sources>
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="TBMO_RE_DOKARTTableAdapter" GeneratorDataComponentClassName="TBMO_RE_DOKARTTableAdapter" Name="TBMO_RE_DOKART" UserDataComponentName="TBMO_RE_DOKARTTableAdapter">
<MainSource>
<DbSource ConnectionRef="DD_DMSConnectionString (MySettings)" DbObjectName="DD_DMS.dbo.TBMO_RE_DOKART" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>DELETE FROM [TBMO_RE_DOKART] WHERE (([GUID] = @Original_GUID) AND ([BEZEICHNUNG] = @Original_BEZEICHNUNG) AND ([PRAEFIX] = @Original_PRAEFIX) AND ((@IsNull_INDEXNAME = 1 AND [INDEXNAME] IS NULL) OR ([INDEXNAME] = @Original_INDEXNAME)) AND ([AKTIV] = @Original_AKTIV) AND ([ERFASSTWER] = @Original_ERFASSTWER) AND ([ERFASSTWANN] = @Original_ERFASSTWANN) AND ((@IsNull_GEAENDERTWER = 1 AND [GEAENDERTWER] IS NULL) OR ([GEAENDERTWER] = @Original_GEAENDERTWER)) AND ((@IsNull_GEAENDERTWANN = 1 AND [GEAENDERTWANN] IS NULL) OR ([GEAENDERTWANN] = @Original_GEAENDERTWANN)))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_BEZEICHNUNG" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="BEZEICHNUNG" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PRAEFIX" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PRAEFIX" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_INDEXNAME" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="INDEXNAME" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_INDEXNAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="INDEXNAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Boolean" Direction="Input" ParameterName="@Original_AKTIV" Precision="0" ProviderType="Bit" Scale="0" Size="0" SourceColumn="AKTIV" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_ERFASSTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ERFASSTWER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_ERFASSTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ERFASSTWANN" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_GEAENDERTWER" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_GEAENDERTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_GEAENDERTWANN" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GEAENDERTWANN" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_GEAENDERTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="GEAENDERTWANN" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>INSERT INTO TBMO_RE_DOKART
(BEZEICHNUNG, PRAEFIX, INDEXNAME, AKTIV, ERFASSTWER)
VALUES (@BEZEICHNUNG,@PRAEFIX,@INDEXNAME,@AKTIV,@ERFASSTWER);
SELECT GUID, BEZEICHNUNG, PRAEFIX, INDEXNAME, AKTIV, ERFASSTWER, ERFASSTWANN, GEAENDERTWER, GEAENDERTWANN FROM TBMO_RE_DOKART WHERE (GUID = SCOPE_IDENTITY())</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="BEZEICHNUNG" ColumnName="BEZEICHNUNG" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@BEZEICHNUNG" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="BEZEICHNUNG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="PRAEFIX" ColumnName="PRAEFIX" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@PRAEFIX" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="PRAEFIX" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="INDEXNAME" ColumnName="INDEXNAME" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@INDEXNAME" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="INDEXNAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="AKTIV" ColumnName="AKTIV" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@AKTIV" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="AKTIV" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ERFASSTWER" ColumnName="ERFASSTWER" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@ERFASSTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="ERFASSTWER" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT TBMO_RE_DOKART.*
FROM TBMO_RE_DOKART</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>UPDATE TBMO_RE_DOKART
SET BEZEICHNUNG = @BEZEICHNUNG, PRAEFIX = @PRAEFIX, INDEXNAME = @INDEXNAME, AKTIV = @AKTIV, GEAENDERTWER = @GEAENDERTWER
WHERE (GUID = @Original_GUID);
SELECT GUID, BEZEICHNUNG, PRAEFIX, INDEXNAME, AKTIV, ERFASSTWER, ERFASSTWANN, GEAENDERTWER, GEAENDERTWANN FROM TBMO_RE_DOKART WHERE (GUID = @GUID)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="BEZEICHNUNG" ColumnName="BEZEICHNUNG" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@BEZEICHNUNG" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="BEZEICHNUNG" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="PRAEFIX" ColumnName="PRAEFIX" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@PRAEFIX" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="PRAEFIX" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="INDEXNAME" ColumnName="INDEXNAME" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@INDEXNAME" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="INDEXNAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="AKTIV" ColumnName="AKTIV" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="bit" DbType="Boolean" Direction="Input" ParameterName="@AKTIV" Precision="0" ProviderType="Bit" Scale="0" Size="1" SourceColumn="AKTIV" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="GEAENDERTWER" ColumnName="GEAENDERTWER" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@GEAENDERTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="GEAENDERTWER" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="Original_GUID" ColumnName="GUID" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="GUID" ColumnName="GUID" DataSourceName="DD_DMS.dbo.TBMO_RE_DOKART" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</UpdateCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="GUID" DataSetColumn="GUID" />
<Mapping SourceColumn="BEZEICHNUNG" DataSetColumn="BEZEICHNUNG" />
<Mapping SourceColumn="PRAEFIX" DataSetColumn="PRAEFIX" />
<Mapping SourceColumn="INDEXNAME" DataSetColumn="INDEXNAME" />
<Mapping SourceColumn="AKTIV" DataSetColumn="AKTIV" />
<Mapping SourceColumn="ERFASSTWER" DataSetColumn="ERFASSTWER" />
<Mapping SourceColumn="ERFASSTWANN" DataSetColumn="ERFASSTWANN" />
<Mapping SourceColumn="GEAENDERTWER" DataSetColumn="GEAENDERTWER" />
<Mapping SourceColumn="GEAENDERTWANN" DataSetColumn="GEAENDERTWANN" />
</Mappings>
<Sources />
</TableAdapter>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="TBMO_RE_HISTORYTableAdapter" GeneratorDataComponentClassName="TBMO_RE_HISTORYTableAdapter" Name="TBMO_RE_HISTORY" UserDataComponentName="TBMO_RE_HISTORYTableAdapter">
<MainSource>
<DbSource ConnectionRef="DD_DMSConnectionString (MySettings)" DbObjectName="DD_DMS.dbo.TBMO_RE_HISTORY" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>DELETE FROM [TBMO_RE_HISTORY] WHERE (([GUID] = @Original_GUID) AND ([FILE_ORIGINAL] = @Original_FILE_ORIGINAL) AND ([FILE_NEW] = @Original_FILE_NEW) AND ((@IsNull_KUNDE_KURZ = 1 AND [KUNDE_KURZ] IS NULL) OR ([KUNDE_KURZ] = @Original_KUNDE_KURZ)) AND ((@IsNull_INDEX1 = 1 AND [INDEX1] IS NULL) OR ([INDEX1] = @Original_INDEX1)) AND ((@IsNull_INDEX2 = 1 AND [INDEX2] IS NULL) OR ([INDEX2] = @Original_INDEX2)) AND ([ERSTELLTWER] = @Original_ERSTELLTWER) AND ([ERSTELLTWANN] = @Original_ERSTELLTWANN))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_FILE_ORIGINAL" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILE_ORIGINAL" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_FILE_NEW" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILE_NEW" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_KUNDE_KURZ" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="KUNDE_KURZ" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_KUNDE_KURZ" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="KUNDE_KURZ" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_INDEX1" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="INDEX1" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_INDEX1" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="INDEX1" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_INDEX2" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="INDEX2" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_INDEX2" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="INDEX2" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_ERSTELLTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ERSTELLTWER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_ERSTELLTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ERSTELLTWANN" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>INSERT INTO TBMO_RE_HISTORY
(FILE_ORIGINAL, FILE_NEW, KUNDE_KURZ, INDEX1, INDEX2, ERSTELLTWER)
VALUES (@FILE_ORIGINAL,@FILE_NEW,@KUNDE_KURZ,@INDEX1,@INDEX2,@ERSTELLTWER);
SELECT GUID, FILE_ORIGINAL, FILE_NEW, KUNDE_KURZ, INDEX1, INDEX2, ERSTELLTWER, ERSTELLTWANN FROM TBMO_RE_HISTORY WHERE (GUID = SCOPE_IDENTITY())</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="FILE_ORIGINAL" ColumnName="FILE_ORIGINAL" DataSourceName="DD_DMS.dbo.TBMO_RE_HISTORY" DataTypeServer="varchar(500)" DbType="AnsiString" Direction="Input" ParameterName="@FILE_ORIGINAL" Precision="0" ProviderType="VarChar" Scale="0" Size="500" SourceColumn="FILE_ORIGINAL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="FILE_NEW" ColumnName="FILE_NEW" DataSourceName="DD_DMS.dbo.TBMO_RE_HISTORY" DataTypeServer="varchar(500)" DbType="AnsiString" Direction="Input" ParameterName="@FILE_NEW" Precision="0" ProviderType="VarChar" Scale="0" Size="500" SourceColumn="FILE_NEW" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="KUNDE_KURZ" ColumnName="KUNDE_KURZ" DataSourceName="DD_DMS.dbo.TBMO_RE_HISTORY" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@KUNDE_KURZ" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="KUNDE_KURZ" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="INDEX1" ColumnName="INDEX1" DataSourceName="DD_DMS.dbo.TBMO_RE_HISTORY" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@INDEX1" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="INDEX1" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="INDEX2" ColumnName="INDEX2" DataSourceName="DD_DMS.dbo.TBMO_RE_HISTORY" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@INDEX2" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="INDEX2" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="ERSTELLTWER" ColumnName="ERSTELLTWER" DataSourceName="DD_DMS.dbo.TBMO_RE_HISTORY" DataTypeServer="varchar(50)" DbType="AnsiString" Direction="Input" ParameterName="@ERSTELLTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="50" SourceColumn="ERSTELLTWER" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT GUID, FILE_ORIGINAL, FILE_NEW, KUNDE_KURZ, INDEX1, INDEX2, ERSTELLTWER, ERSTELLTWANN
FROM TBMO_RE_HISTORY</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>UPDATE [TBMO_RE_HISTORY] SET [FILE_ORIGINAL] = @FILE_ORIGINAL, [FILE_NEW] = @FILE_NEW, [KUNDE_KURZ] = @KUNDE_KURZ, [INDEX1] = @INDEX1, [INDEX2] = @INDEX2, [ERSTELLTWER] = @ERSTELLTWER, [ERSTELLTWANN] = @ERSTELLTWANN WHERE (([GUID] = @Original_GUID) AND ([FILE_ORIGINAL] = @Original_FILE_ORIGINAL) AND ([FILE_NEW] = @Original_FILE_NEW) AND ((@IsNull_KUNDE_KURZ = 1 AND [KUNDE_KURZ] IS NULL) OR ([KUNDE_KURZ] = @Original_KUNDE_KURZ)) AND ((@IsNull_INDEX1 = 1 AND [INDEX1] IS NULL) OR ([INDEX1] = @Original_INDEX1)) AND ((@IsNull_INDEX2 = 1 AND [INDEX2] IS NULL) OR ([INDEX2] = @Original_INDEX2)) AND ([ERSTELLTWER] = @Original_ERSTELLTWER) AND ([ERSTELLTWANN] = @Original_ERSTELLTWANN));
SELECT GUID, FILE_ORIGINAL, FILE_NEW, KUNDE_KURZ, INDEX1, INDEX2, ERSTELLTWER, ERSTELLTWANN FROM TBMO_RE_HISTORY WHERE (GUID = @GUID)</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@FILE_ORIGINAL" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILE_ORIGINAL" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@FILE_NEW" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILE_NEW" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@KUNDE_KURZ" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="KUNDE_KURZ" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@INDEX1" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="INDEX1" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@INDEX2" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="INDEX2" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@ERSTELLTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ERSTELLTWER" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@ERSTELLTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ERSTELLTWANN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_GUID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_FILE_ORIGINAL" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILE_ORIGINAL" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_FILE_NEW" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILE_NEW" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_KUNDE_KURZ" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="KUNDE_KURZ" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_KUNDE_KURZ" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="KUNDE_KURZ" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_INDEX1" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="INDEX1" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_INDEX1" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="INDEX1" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_INDEX2" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="INDEX2" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_INDEX2" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="INDEX2" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_ERSTELLTWER" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="ERSTELLTWER" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_ERSTELLTWANN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ERSTELLTWANN" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="GUID" ColumnName="GUID" DataSourceName="DD_DMS.dbo.TBMO_RE_HISTORY" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@GUID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="GUID" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</UpdateCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="GUID" DataSetColumn="GUID" />
<Mapping SourceColumn="FILE_ORIGINAL" DataSetColumn="FILE_ORIGINAL" />
<Mapping SourceColumn="FILE_NEW" DataSetColumn="FILE_NEW" />
<Mapping SourceColumn="KUNDE_KURZ" DataSetColumn="KUNDE_KURZ" />
<Mapping SourceColumn="INDEX1" DataSetColumn="INDEX1" />
<Mapping SourceColumn="INDEX2" DataSetColumn="INDEX2" />
<Mapping SourceColumn="ERSTELLTWER" DataSetColumn="ERSTELLTWER" />
<Mapping SourceColumn="ERSTELLTWANN" DataSetColumn="ERSTELLTWANN" />
</Mappings>
<Sources />
</TableAdapter>
</Tables>
<Sources />
</DataSource>
</xs:appinfo>
</xs:annotation>
<xs:element name="DS_More" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="DS_More" msprop:Generator_UserDSName="DS_More">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="TBMO_RE_KUNDEN" msprop:Generator_TableClassName="TBMO_RE_KUNDENDataTable" msprop:Generator_TableVarName="tableTBMO_RE_KUNDEN" msprop:Generator_RowChangedName="TBMO_RE_KUNDENRowChanged" msprop:Generator_TablePropName="TBMO_RE_KUNDEN" msprop:Generator_RowDeletingName="TBMO_RE_KUNDENRowDeleting" msprop:Generator_RowChangingName="TBMO_RE_KUNDENRowChanging" msprop:Generator_RowEvHandlerName="TBMO_RE_KUNDENRowChangeEventHandler" msprop:Generator_RowDeletedName="TBMO_RE_KUNDENRowDeleted" msprop:Generator_RowClassName="TBMO_RE_KUNDENRow" msprop:Generator_UserTableName="TBMO_RE_KUNDEN" msprop:Generator_RowEvArgName="TBMO_RE_KUNDENRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="GUID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msprop:Generator_ColumnVarNameInTable="columnGUID" msprop:Generator_ColumnPropNameInRow="GUID" msprop:Generator_ColumnPropNameInTable="GUIDColumn" msprop:Generator_UserColumnName="GUID" type="xs:int" />
<xs:element name="KUNDEN_NAME" msprop:Generator_ColumnVarNameInTable="columnKUNDEN_NAME" msprop:Generator_ColumnPropNameInRow="KUNDEN_NAME" msprop:Generator_ColumnPropNameInTable="KUNDEN_NAMEColumn" msprop:Generator_UserColumnName="KUNDEN_NAME">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="100" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="KUNDE_KURZ" msprop:Generator_ColumnVarNameInTable="columnKUNDE_KURZ" msprop:Generator_ColumnPropNameInRow="KUNDE_KURZ" msprop:Generator_ColumnPropNameInTable="KUNDE_KURZColumn" msprop:Generator_UserColumnName="KUNDE_KURZ" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="AKTIV" msprop:Generator_ColumnVarNameInTable="columnAKTIV" msprop:Generator_ColumnPropNameInRow="AKTIV" msprop:Generator_ColumnPropNameInTable="AKTIVColumn" msprop:Generator_UserColumnName="AKTIV" type="xs:boolean" default="true" />
<xs:element name="ERSTELLTWER" msprop:Generator_ColumnVarNameInTable="columnERSTELLTWER" msprop:Generator_ColumnPropNameInRow="ERSTELLTWER" msprop:Generator_ColumnPropNameInTable="ERSTELLTWERColumn" msprop:Generator_UserColumnName="ERSTELLTWER">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ERSTELLTWANN" msprop:Generator_ColumnVarNameInTable="columnERSTELLTWANN" msprop:Generator_ColumnPropNameInRow="ERSTELLTWANN" msprop:Generator_ColumnPropNameInTable="ERSTELLTWANNColumn" msprop:Generator_UserColumnName="ERSTELLTWANN" type="xs:dateTime" minOccurs="0" />
<xs:element name="GEAENDERTWER" msprop:Generator_ColumnVarNameInTable="columnGEAENDERTWER" msprop:Generator_ColumnPropNameInRow="GEAENDERTWER" msprop:Generator_ColumnPropNameInTable="GEAENDERTWERColumn" msprop:Generator_UserColumnName="GEAENDERTWER" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="GEAENDERTWANN" msprop:Generator_ColumnVarNameInTable="columnGEAENDERTWANN" msprop:Generator_ColumnPropNameInRow="GEAENDERTWANN" msprop:Generator_ColumnPropNameInTable="GEAENDERTWANNColumn" msprop:Generator_UserColumnName="GEAENDERTWANN" type="xs:dateTime" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TBMO_RE_DOKART_KUNDE" msprop:Generator_TableClassName="TBMO_RE_DOKART_KUNDEDataTable" msprop:Generator_TableVarName="tableTBMO_RE_DOKART_KUNDE" msprop:Generator_RowChangedName="TBMO_RE_DOKART_KUNDERowChanged" msprop:Generator_TablePropName="TBMO_RE_DOKART_KUNDE" msprop:Generator_RowDeletingName="TBMO_RE_DOKART_KUNDERowDeleting" msprop:Generator_RowChangingName="TBMO_RE_DOKART_KUNDERowChanging" msprop:Generator_RowEvHandlerName="TBMO_RE_DOKART_KUNDERowChangeEventHandler" msprop:Generator_RowDeletedName="TBMO_RE_DOKART_KUNDERowDeleted" msprop:Generator_RowClassName="TBMO_RE_DOKART_KUNDERow" msprop:Generator_UserTableName="TBMO_RE_DOKART_KUNDE" msprop:Generator_RowEvArgName="TBMO_RE_DOKART_KUNDERowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="GUID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnGUID" msprop:Generator_ColumnPropNameInRow="GUID" msprop:Generator_ColumnPropNameInTable="GUIDColumn" msprop:Generator_UserColumnName="GUID" type="xs:int" />
<xs:element name="KUNDEN_ID" msprop:Generator_ColumnVarNameInTable="columnKUNDEN_ID" msprop:Generator_ColumnPropNameInRow="KUNDEN_ID" msprop:Generator_ColumnPropNameInTable="KUNDEN_IDColumn" msprop:Generator_UserColumnName="KUNDEN_ID" type="xs:int" />
<xs:element name="DA_ID" msprop:Generator_ColumnVarNameInTable="columnDA_ID" msprop:Generator_ColumnPropNameInRow="DA_ID" msprop:Generator_ColumnPropNameInTable="DA_IDColumn" msprop:Generator_UserColumnName="DA_ID" type="xs:int" />
<xs:element name="ZIELORDNER" msprop:Generator_ColumnVarNameInTable="columnZIELORDNER" msprop:Generator_ColumnPropNameInRow="ZIELORDNER" msprop:Generator_ColumnPropNameInTable="ZIELORDNERColumn" msprop:Generator_UserColumnName="ZIELORDNER" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ERFASSTWER" msprop:Generator_ColumnVarNameInTable="columnERFASSTWER" msprop:Generator_ColumnPropNameInRow="ERFASSTWER" msprop:Generator_ColumnPropNameInTable="ERFASSTWERColumn" msprop:Generator_UserColumnName="ERFASSTWER">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ERFASSTWANN" msprop:Generator_ColumnVarNameInTable="columnERFASSTWANN" msprop:Generator_ColumnPropNameInRow="ERFASSTWANN" msprop:Generator_ColumnPropNameInTable="ERFASSTWANNColumn" msprop:Generator_UserColumnName="ERFASSTWANN" type="xs:dateTime" minOccurs="0" />
<xs:element name="GEAENDERTWER" msprop:Generator_ColumnVarNameInTable="columnGEAENDERTWER" msprop:Generator_ColumnPropNameInRow="GEAENDERTWER" msprop:Generator_ColumnPropNameInTable="GEAENDERTWERColumn" msprop:Generator_UserColumnName="GEAENDERTWER" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="GEAENDERTWANN" msprop:Generator_ColumnVarNameInTable="columnGEAENDERTWANN" msprop:Generator_ColumnPropNameInRow="GEAENDERTWANN" msprop:Generator_ColumnPropNameInTable="GEAENDERTWANNColumn" msprop:Generator_UserColumnName="GEAENDERTWANN" type="xs:dateTime" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="WHMO_RE_DOKART" msprop:Generator_TableClassName="WHMO_RE_DOKARTDataTable" msprop:Generator_TableVarName="tableWHMO_RE_DOKART" msprop:Generator_TablePropName="WHMO_RE_DOKART" msprop:Generator_RowDeletingName="WHMO_RE_DOKARTRowDeleting" msprop:Generator_RowChangingName="WHMO_RE_DOKARTRowChanging" msprop:Generator_RowEvHandlerName="WHMO_RE_DOKARTRowChangeEventHandler" msprop:Generator_RowDeletedName="WHMO_RE_DOKARTRowDeleted" msprop:Generator_UserTableName="WHMO_RE_DOKART" msprop:Generator_RowChangedName="WHMO_RE_DOKARTRowChanged" msprop:Generator_RowEvArgName="WHMO_RE_DOKARTRowChangeEvent" msprop:Generator_RowClassName="WHMO_RE_DOKARTRow">
<xs:complexType>
<xs:sequence>
<xs:element name="GUID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnGUID" msprop:Generator_ColumnPropNameInRow="GUID" msprop:Generator_ColumnPropNameInTable="GUIDColumn" msprop:Generator_UserColumnName="GUID" type="xs:int" />
<xs:element name="BEZEICHNUNG" msprop:Generator_ColumnVarNameInTable="columnBEZEICHNUNG" msprop:Generator_ColumnPropNameInRow="BEZEICHNUNG" msprop:Generator_ColumnPropNameInTable="BEZEICHNUNGColumn" msprop:Generator_UserColumnName="BEZEICHNUNG">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="WHMO_RE_KUNDEN" msprop:Generator_TableClassName="WHMO_RE_KUNDENDataTable" msprop:Generator_TableVarName="tableWHMO_RE_KUNDEN" msprop:Generator_TablePropName="WHMO_RE_KUNDEN" msprop:Generator_RowDeletingName="WHMO_RE_KUNDENRowDeleting" msprop:Generator_RowChangingName="WHMO_RE_KUNDENRowChanging" msprop:Generator_RowEvHandlerName="WHMO_RE_KUNDENRowChangeEventHandler" msprop:Generator_RowDeletedName="WHMO_RE_KUNDENRowDeleted" msprop:Generator_UserTableName="WHMO_RE_KUNDEN" msprop:Generator_RowChangedName="WHMO_RE_KUNDENRowChanged" msprop:Generator_RowEvArgName="WHMO_RE_KUNDENRowChangeEvent" msprop:Generator_RowClassName="WHMO_RE_KUNDENRow">
<xs:complexType>
<xs:sequence>
<xs:element name="GUID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnGUID" msprop:Generator_ColumnPropNameInRow="GUID" msprop:Generator_ColumnPropNameInTable="GUIDColumn" msprop:Generator_UserColumnName="GUID" type="xs:int" />
<xs:element name="KUNDEN_NAME" msprop:Generator_ColumnVarNameInTable="columnKUNDEN_NAME" msprop:Generator_ColumnPropNameInRow="KUNDEN_NAME" msprop:Generator_ColumnPropNameInTable="KUNDEN_NAMEColumn" msprop:Generator_UserColumnName="KUNDEN_NAME">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="100" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="KUNDE_KURZ" msprop:Generator_ColumnVarNameInTable="columnKUNDE_KURZ" msprop:Generator_ColumnPropNameInRow="KUNDE_KURZ" msprop:Generator_ColumnPropNameInTable="KUNDE_KURZColumn" msprop:Generator_UserColumnName="KUNDE_KURZ" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="VWMO_RE_DOKUMENTARTZUORDNUNG" msprop:Generator_TableClassName="VWMO_RE_DOKUMENTARTZUORDNUNGDataTable" msprop:Generator_TableVarName="tableVWMO_RE_DOKUMENTARTZUORDNUNG" msprop:Generator_TablePropName="VWMO_RE_DOKUMENTARTZUORDNUNG" msprop:Generator_RowDeletingName="VWMO_RE_DOKUMENTARTZUORDNUNGRowDeleting" msprop:Generator_RowChangingName="VWMO_RE_DOKUMENTARTZUORDNUNGRowChanging" msprop:Generator_RowEvHandlerName="VWMO_RE_DOKUMENTARTZUORDNUNGRowChangeEventHandler" msprop:Generator_RowDeletedName="VWMO_RE_DOKUMENTARTZUORDNUNGRowDeleted" msprop:Generator_UserTableName="VWMO_RE_DOKUMENTARTZUORDNUNG" msprop:Generator_RowChangedName="VWMO_RE_DOKUMENTARTZUORDNUNGRowChanged" msprop:Generator_RowEvArgName="VWMO_RE_DOKUMENTARTZUORDNUNGRowChangeEvent" msprop:Generator_RowClassName="VWMO_RE_DOKUMENTARTZUORDNUNGRow">
<xs:complexType>
<xs:sequence>
<xs:element name="GUID" msprop:Generator_ColumnVarNameInTable="columnGUID" msprop:Generator_ColumnPropNameInRow="GUID" msprop:Generator_ColumnPropNameInTable="GUIDColumn" msprop:Generator_UserColumnName="GUID" type="xs:int" />
<xs:element name="DOKUMENTART_ID" msprop:Generator_ColumnVarNameInTable="columnDOKUMENTART_ID" msprop:Generator_ColumnPropNameInRow="DOKUMENTART_ID" msprop:Generator_ColumnPropNameInTable="DOKUMENTART_IDColumn" msprop:Generator_UserColumnName="DOKUMENTART_ID" type="xs:int" />
<xs:element name="DOKUMENTART" msprop:Generator_ColumnVarNameInTable="columnDOKUMENTART" msprop:Generator_ColumnPropNameInRow="DOKUMENTART" msprop:Generator_ColumnPropNameInTable="DOKUMENTARTColumn" msprop:Generator_UserColumnName="DOKUMENTART">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="KUNDEN_ID" msprop:Generator_ColumnVarNameInTable="columnKUNDEN_ID" msprop:Generator_ColumnPropNameInRow="KUNDEN_ID" msprop:Generator_ColumnPropNameInTable="KUNDEN_IDColumn" msprop:Generator_UserColumnName="KUNDEN_ID" type="xs:int" />
<xs:element name="KUNDEN_NAME" msprop:Generator_ColumnVarNameInTable="columnKUNDEN_NAME" msprop:Generator_ColumnPropNameInRow="KUNDEN_NAME" msprop:Generator_ColumnPropNameInTable="KUNDEN_NAMEColumn" msprop:Generator_UserColumnName="KUNDEN_NAME">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="100" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DOKUMENTARTORDNER" msprop:Generator_ColumnVarNameInTable="columnDOKUMENTARTORDNER" msprop:Generator_ColumnPropNameInRow="DOKUMENTARTORDNER" msprop:Generator_ColumnPropNameInTable="DOKUMENTARTORDNERColumn" msprop:Generator_UserColumnName="DOKUMENTARTORDNER" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PRAEFIX" msprop:Generator_ColumnVarNameInTable="columnPRAEFIX" msprop:Generator_ColumnPropNameInRow="PRAEFIX" msprop:Generator_ColumnPropNameInTable="PRAEFIXColumn" msprop:Generator_UserColumnName="PRAEFIX">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="INDEXNAME" msprop:Generator_ColumnVarNameInTable="columnINDEXNAME" msprop:Generator_ColumnPropNameInRow="INDEXNAME" msprop:Generator_ColumnPropNameInTable="INDEXNAMEColumn" msprop:Generator_UserColumnName="INDEXNAME" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="UO_IDX1" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnUO_IDX1" msprop:Generator_ColumnPropNameInRow="UO_IDX1" msprop:Generator_ColumnPropNameInTable="UO_IDX1Column" msprop:Generator_UserColumnName="UO_IDX1" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="UO_IDX2" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnUO_IDX2" msprop:Generator_ColumnPropNameInRow="UO_IDX2" msprop:Generator_ColumnPropNameInTable="UO_IDX2Column" msprop:Generator_UserColumnName="UO_IDX2" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="UO_IDX3" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnUO_IDX3" msprop:Generator_ColumnPropNameInRow="UO_IDX3" msprop:Generator_ColumnPropNameInTable="UO_IDX3Column" msprop:Generator_UserColumnName="UO_IDX3" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="UO_IDX4" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnUO_IDX4" msprop:Generator_ColumnPropNameInRow="UO_IDX4" msprop:Generator_ColumnPropNameInTable="UO_IDX4Column" msprop:Generator_UserColumnName="UO_IDX4" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="UO_IDX5" msdata:ReadOnly="true" msprop:Generator_ColumnVarNameInTable="columnUO_IDX5" msprop:Generator_ColumnPropNameInRow="UO_IDX5" msprop:Generator_ColumnPropNameInTable="UO_IDX5Column" msprop:Generator_UserColumnName="UO_IDX5" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TBMO_RE_DOKART" msprop:Generator_TableClassName="TBMO_RE_DOKARTDataTable" msprop:Generator_TableVarName="tableTBMO_RE_DOKART" msprop:Generator_TablePropName="TBMO_RE_DOKART" msprop:Generator_RowDeletingName="TBMO_RE_DOKARTRowDeleting" msprop:Generator_RowChangingName="TBMO_RE_DOKARTRowChanging" msprop:Generator_RowEvHandlerName="TBMO_RE_DOKARTRowChangeEventHandler" msprop:Generator_RowDeletedName="TBMO_RE_DOKARTRowDeleted" msprop:Generator_UserTableName="TBMO_RE_DOKART" msprop:Generator_RowChangedName="TBMO_RE_DOKARTRowChanged" msprop:Generator_RowEvArgName="TBMO_RE_DOKARTRowChangeEvent" msprop:Generator_RowClassName="TBMO_RE_DOKARTRow">
<xs:complexType>
<xs:sequence>
<xs:element name="GUID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msprop:Generator_ColumnVarNameInTable="columnGUID" msprop:Generator_ColumnPropNameInRow="GUID" msprop:Generator_ColumnPropNameInTable="GUIDColumn" msprop:Generator_UserColumnName="GUID" type="xs:int" />
<xs:element name="BEZEICHNUNG" msprop:Generator_ColumnVarNameInTable="columnBEZEICHNUNG" msprop:Generator_ColumnPropNameInRow="BEZEICHNUNG" msprop:Generator_ColumnPropNameInTable="BEZEICHNUNGColumn" msprop:Generator_UserColumnName="BEZEICHNUNG">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PRAEFIX" msprop:Generator_ColumnVarNameInTable="columnPRAEFIX" msprop:Generator_ColumnPropNameInRow="PRAEFIX" msprop:Generator_ColumnPropNameInTable="PRAEFIXColumn" msprop:Generator_UserColumnName="PRAEFIX">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="INDEXNAME" msprop:Generator_ColumnVarNameInTable="columnINDEXNAME" msprop:Generator_ColumnPropNameInRow="INDEXNAME" msprop:Generator_ColumnPropNameInTable="INDEXNAMEColumn" msprop:Generator_UserColumnName="INDEXNAME" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="AKTIV" msprop:Generator_ColumnVarNameInTable="columnAKTIV" msprop:Generator_ColumnPropNameInRow="AKTIV" msprop:Generator_ColumnPropNameInTable="AKTIVColumn" msprop:Generator_UserColumnName="AKTIV" type="xs:boolean" default="true" />
<xs:element name="ERFASSTWER" msprop:Generator_ColumnVarNameInTable="columnERFASSTWER" msprop:Generator_ColumnPropNameInRow="ERFASSTWER" msprop:Generator_ColumnPropNameInTable="ERFASSTWERColumn" msprop:Generator_UserColumnName="ERFASSTWER">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ERFASSTWANN" msprop:Generator_ColumnVarNameInTable="columnERFASSTWANN" msprop:Generator_ColumnPropNameInRow="ERFASSTWANN" msprop:Generator_ColumnPropNameInTable="ERFASSTWANNColumn" msprop:Generator_UserColumnName="ERFASSTWANN" type="xs:dateTime" minOccurs="0" />
<xs:element name="GEAENDERTWER" msprop:Generator_ColumnVarNameInTable="columnGEAENDERTWER" msprop:Generator_ColumnPropNameInRow="GEAENDERTWER" msprop:Generator_ColumnPropNameInTable="GEAENDERTWERColumn" msprop:Generator_UserColumnName="GEAENDERTWER" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="GEAENDERTWANN" msprop:Generator_ColumnVarNameInTable="columnGEAENDERTWANN" msprop:Generator_ColumnPropNameInRow="GEAENDERTWANN" msprop:Generator_ColumnPropNameInTable="GEAENDERTWANNColumn" msprop:Generator_UserColumnName="GEAENDERTWANN" type="xs:dateTime" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TBMO_RE_HISTORY" msprop:Generator_TableClassName="TBMO_RE_HISTORYDataTable" msprop:Generator_TableVarName="tableTBMO_RE_HISTORY" msprop:Generator_TablePropName="TBMO_RE_HISTORY" msprop:Generator_RowDeletingName="TBMO_RE_HISTORYRowDeleting" msprop:Generator_RowChangingName="TBMO_RE_HISTORYRowChanging" msprop:Generator_RowEvHandlerName="TBMO_RE_HISTORYRowChangeEventHandler" msprop:Generator_RowDeletedName="TBMO_RE_HISTORYRowDeleted" msprop:Generator_UserTableName="TBMO_RE_HISTORY" msprop:Generator_RowChangedName="TBMO_RE_HISTORYRowChanged" msprop:Generator_RowEvArgName="TBMO_RE_HISTORYRowChangeEvent" msprop:Generator_RowClassName="TBMO_RE_HISTORYRow">
<xs:complexType>
<xs:sequence>
<xs:element name="GUID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnGUID" msprop:Generator_ColumnPropNameInRow="GUID" msprop:Generator_ColumnPropNameInTable="GUIDColumn" msprop:Generator_UserColumnName="GUID" type="xs:int" />
<xs:element name="FILE_ORIGINAL" msprop:Generator_ColumnVarNameInTable="columnFILE_ORIGINAL" msprop:Generator_ColumnPropNameInRow="FILE_ORIGINAL" msprop:Generator_ColumnPropNameInTable="FILE_ORIGINALColumn" msprop:Generator_UserColumnName="FILE_ORIGINAL">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="FILE_NEW" msprop:Generator_ColumnVarNameInTable="columnFILE_NEW" msprop:Generator_ColumnPropNameInRow="FILE_NEW" msprop:Generator_ColumnPropNameInTable="FILE_NEWColumn" msprop:Generator_UserColumnName="FILE_NEW">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="500" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="KUNDE_KURZ" msprop:Generator_ColumnVarNameInTable="columnKUNDE_KURZ" msprop:Generator_ColumnPropNameInRow="KUNDE_KURZ" msprop:Generator_ColumnPropNameInTable="KUNDE_KURZColumn" msprop:Generator_UserColumnName="KUNDE_KURZ" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="INDEX1" msprop:Generator_ColumnVarNameInTable="columnINDEX1" msprop:Generator_ColumnPropNameInRow="INDEX1" msprop:Generator_ColumnPropNameInTable="INDEX1Column" msprop:Generator_UserColumnName="INDEX1" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="INDEX2" msprop:Generator_ColumnVarNameInTable="columnINDEX2" msprop:Generator_ColumnPropNameInRow="INDEX2" msprop:Generator_ColumnPropNameInTable="INDEX2Column" msprop:Generator_UserColumnName="INDEX2" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ERSTELLTWER" msprop:Generator_ColumnVarNameInTable="columnERSTELLTWER" msprop:Generator_ColumnPropNameInRow="ERSTELLTWER" msprop:Generator_ColumnPropNameInTable="ERSTELLTWERColumn" msprop:Generator_UserColumnName="ERSTELLTWER">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ERSTELLTWANN" msprop:Generator_ColumnVarNameInTable="columnERSTELLTWANN" msprop:Generator_ColumnPropNameInRow="ERSTELLTWANN" msprop:Generator_ColumnPropNameInTable="ERSTELLTWANNColumn" msprop:Generator_UserColumnName="ERSTELLTWANN" type="xs:dateTime" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:unique name="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:TBMO_RE_KUNDEN" />
<xs:field xpath="mstns:GUID" />
</xs:unique>
<xs:unique name="TBMO_RE_DOKART_KUNDE_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:TBMO_RE_DOKART_KUNDE" />
<xs:field xpath="mstns:KUNDEN_ID" />
<xs:field xpath="mstns:DA_ID" />
</xs:unique>
<xs:unique name="WHMO_RE_DOKART_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:WHMO_RE_DOKART" />
<xs:field xpath="mstns:GUID" />
</xs:unique>
<xs:unique name="WHMO_RE_KUNDEN_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:WHMO_RE_KUNDEN" />
<xs:field xpath="mstns:GUID" />
</xs:unique>
<xs:unique name="TBMO_RE_DOKART_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:TBMO_RE_DOKART" />
<xs:field xpath="mstns:GUID" />
</xs:unique>
<xs:unique name="TBMO_RE_HISTORY_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:TBMO_RE_HISTORY" />
<xs:field xpath="mstns:GUID" />
</xs:unique>
</xs:element>
<xs:annotation>
<xs:appinfo>
<msdata:Relationship name="FK_TBMO_RE_DOKART_KUNDE_KDID" msdata:parent="TBMO_RE_KUNDEN" msdata:child="TBMO_RE_DOKART_KUNDE" msdata:parentkey="GUID" msdata:childkey="KUNDEN_ID" msprop:Generator_UserChildTable="TBMO_RE_DOKART_KUNDE" msprop:Generator_ChildPropName="GetTBMO_RE_DOKART_KUNDERows" msprop:Generator_UserRelationName="FK_TBMO_RE_DOKART_KUNDE_KDID" msprop:Generator_RelationVarName="relationFK_TBMO_RE_DOKART_KUNDE_KDID" msprop:Generator_UserParentTable="TBMO_RE_KUNDEN" msprop:Generator_ParentPropName="TBMO_RE_KUNDENRow" />
<msdata:Relationship name="FK_TBMO_RE_DOKART_KUNDE_KDID1" msdata:parent="WHMO_RE_KUNDEN" msdata:child="TBMO_RE_DOKART_KUNDE" msdata:parentkey="GUID" msdata:childkey="KUNDEN_ID" msprop:Generator_UserChildTable="TBMO_RE_DOKART_KUNDE" msprop:Generator_ChildPropName="GetTBMO_RE_DOKART_KUNDERows" msprop:Generator_UserRelationName="FK_TBMO_RE_DOKART_KUNDE_KDID1" msprop:Generator_RelationVarName="relationFK_TBMO_RE_DOKART_KUNDE_KDID1" msprop:Generator_UserParentTable="WHMO_RE_KUNDEN" msprop:Generator_ParentPropName="WHMO_RE_KUNDENRow" />
<msdata:Relationship name="FK_TBMO_RE_DOKART_KUNDE_DAID" msdata:parent="TBMO_RE_DOKART" msdata:child="TBMO_RE_DOKART_KUNDE" msdata:parentkey="GUID" msdata:childkey="DA_ID" msprop:Generator_UserChildTable="TBMO_RE_DOKART_KUNDE" msprop:Generator_ChildPropName="GetTBMO_RE_DOKART_KUNDERows" msprop:Generator_UserRelationName="FK_TBMO_RE_DOKART_KUNDE_DAID" msprop:Generator_RelationVarName="relationFK_TBMO_RE_DOKART_KUNDE_DAID" msprop:Generator_UserParentTable="TBMO_RE_DOKART" msprop:Generator_ParentPropName="TBMO_RE_DOKARTRow" />
</xs:appinfo>
</xs:annotation>
</xs:schema>

View File

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool to store the dataset designer's layout information.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-10" ViewPortY="-47" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:TBMO_RE_KUNDEN" ZOrder="10" X="830" Y="387" Height="229" Width="258" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:TBMO_RE_DOKART_KUNDE" ZOrder="9" X="618" Y="109" Height="229" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
<Shape ID="DesignTable:WHMO_RE_DOKART" ZOrder="3" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:WHMO_RE_KUNDEN" ZOrder="5" X="302" Y="-14" Height="149" Width="268" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="59" />
<Shape ID="DesignTable:VWMO_RE_DOKUMENTARTZUORDNUNG" ZOrder="6" X="977" Y="121" Height="248" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="161" />
<Shape ID="DesignTable:TBMO_RE_DOKART" ZOrder="2" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:TBMO_RE_HISTORY" ZOrder="1" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
</Shapes>
<Connectors>
<Connector ID="DesignRelation:FK_TBMO_RE_DOKART_KUNDE_KDID" ZOrder="7" LineWidth="11">
<RoutePoints>
<Point>
<X>830</X>
<Y>507</Y>
</Point>
<Point>
<X>753</X>
<Y>507</Y>
</Point>
<Point>
<X>753</X>
<Y>338</Y>
</Point>
</RoutePoints>
</Connector>
<Connector ID="DesignRelation:FK_TBMO_RE_DOKART_KUNDE_KDID1" ZOrder="4" LineWidth="11">
<RoutePoints>
<Point>
<X>443</X>
<Y>135</Y>
</Point>
<Point>
<X>443</X>
<Y>143</Y>
</Point>
<Point>
<X>618</X>
<Y>143</Y>
</Point>
</RoutePoints>
</Connector>
<Connector ID="DesignRelation:FK_TBMO_RE_DOKART_KUNDE_DAID" ZOrder="8" LineWidth="11">
<RoutePoints>
<Point>
<X>503</X>
<Y>198</Y>
</Point>
<Point>
<X>618</X>
<Y>198</Y>
</Point>
</RoutePoints>
</Connector>
</Connectors>
</DiagramLayout>

View File

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>3.8</ProductVersion>
<ProjectGuid>f8188da1-0c6a-4db6-a4b8-f088d0dd0e9b</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
<OutputName>Installer</OutputName>
<OutputType>Package</OutputType>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<OutputPath>bin\$(Configuration)\</OutputPath>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
<DefineConstants>Debug</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<OutputPath>bin\$(Configuration)\</OutputPath>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
</PropertyGroup>
<ItemGroup>
<Compile Include="Product.wxs" />
</ItemGroup>
<Import Project="$(WixTargetsPath)" />
<!--
To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Wix.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="*" Name="Tool CollectionNew" Language="1033" Version="1.0.0.0" Manufacturer="Digital Data" UpgradeCode="e9618da1-e2f1-4475-a861-eb18603bc257">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
<MediaTemplate />
<Feature Id="ProductFeature" Title="Setup TCfW" Level="1">
<ComponentGroupRef Id="ProductComponents" />
</Feature>
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER" />
<UIRef Id="WixUI_InstallDir" />
</Product>
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="CompanyFolder" Name="Digital Data">
<Directory Id="INSTALLFOLDER" Name="Tool Collection" />
</Directory>
</Directory>
</Directory>
</Fragment>
<Fragment>
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
<Component Id="ProductComponent">
<File Source="$(var.ToolCollection.TargetPath)" />
</Component>
<!--<Component Id="iTextSharpComponent" Guid="30C7CA5C-8E12-4B08-BFF5-D464E8349677">
<File Id="itextsharp.dll" Name="itextsharp.dll" Source="$(var.DD_SIMPLE_SCAN.ProjectDir)\lib\itextsharp.dll" />
</Component>-->
</ComponentGroup>
</Fragment>
</Wix>

Binary file not shown.

View File

@ -0,0 +1,14 @@
Module ModuleCURRENT
Public CURRENT_START_DATETIME As Date
Public NI_Restart As Boolean = False
Public NI_OPENED As Boolean = False
Public CURRENT_STATE As String = ""
Public DI_PAGECOUNT As Integer
Public DI_FILESIZE As Decimal
Public DI_STREAMRESULTFILE As String
Public CURRENT_MOVE_FILEPATH As String
End Module

View File

@ -0,0 +1,38 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.42000
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
'HINWEIS: Diese Datei wird automatisch generiert und darf nicht direkt bearbeitet werden. Wenn Sie Änderungen vornehmen möchten
' oder in dieser Datei Buildfehler auftreten, wechseln Sie zum Projekt-Designer.
' (Wechseln Sie dazu zu den Projekteigenschaften, oder doppelklicken Sie auf den Knoten "Mein Projekt" im
' Projektmappen-Explorer). Nehmen Sie auf der Registerkarte "Anwendung" entsprechende Änderungen vor.
'
Partial Friend Class MyApplication
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Public Sub New()
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
Me.IsSingleInstance = true
Me.EnableVisualStyles = true
Me.SaveMySettingsOnExit = true
Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
End Sub
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Protected Overrides Sub OnCreateMainForm()
Me.MainForm = Global.ToolCollection.frmStart
End Sub
End Class
End Namespace

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>true</MySubMain>
<MainForm>frmStart</MainForm>
<SingleInstance>true</SingleInstance>
<ShutdownMode>0</ShutdownMode>
<EnableVisualStyles>true</EnableVisualStyles>
<AuthenticationMode>0</AuthenticationMode>
<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("ToolCollection")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("Digital Data")>
<Assembly: AssemblyProduct("ToolCollection")>
<Assembly: AssemblyCopyright("Copyright © Digital Data 2017")>
<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("B8C96042-DECF-4393-916A-80167B251B44")>
' 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("2.0.4.2")>
<Assembly: AssemblyFileVersion("1.5.1.0")>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,427 @@
<?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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="cross1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cross1.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="user_edit3" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\user_edit3.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Auslesen1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Auslesen1.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\delete.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="table_save" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\table_save.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="key" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\key.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="plugin" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\plugin.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="save" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\save.bmp;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Aktualisieren" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Aktualisieren.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="link" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\link.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="group_key" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\group_key.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (241)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (241).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_arrow_down" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_arrow_down.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ico2312" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ico2312.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="table_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\table_edit.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (1055)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (1055).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="table" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\table.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="user_suit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\user_suit.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="table_add" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\table_add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="link_delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\link_delete.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="book1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\book1.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (49)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (49).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="f2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\f2.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (882)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (882).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="stiftlineal_transparent3" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\stiftlineal_transparent3.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="puzzle4" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\puzzle4.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="database_refresh" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\database_refresh.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (460)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (460).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ico3365" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ico3365.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="link_add" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\link_add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="information" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\information.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ico3366" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ico3366.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="control_fastforward" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\control_fastforward.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="arrow_switch" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arrow_switch.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="arrow_left" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arrow_left.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="book_add" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\book_add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (265)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (265).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (209)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (209).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="resultset_next" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\resultset_next.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="asterisk_orange" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\asterisk_orange.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="link_break" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\link_break.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (1015)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (1015).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ico3674" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ico3674.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="book_save" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\book_save.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="book" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\book.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Dateiimport" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Dateiimport.bmp;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (1051)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (1051).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="user_delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\user_delete.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="f6" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\f6.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="f1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\f1.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="arrow_switch_gross" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arrow_switch_gross.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="puzzle5" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\puzzle5.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="book_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\book_edit.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="add" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="puzzle6" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\puzzle6.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="buch_transparent" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\buch_transparent.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="mail_write" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\mail_write.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="user" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\user.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (218)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (218).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="user_add" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\user_add.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="puzzle1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\puzzle1.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="haken_gruen" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\haken_gruen.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="puzzle2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\puzzle2.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="A_Save8" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\A_Save8.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_arrow_up" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_arrow_up.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Aktualisieren1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Aktualisieren1.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="database_connect" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\database_connect.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="page_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\page_edit.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="clock_run" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\clock_run.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="book_edit1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\book_edit1.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ico2469" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ico2469.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="arrow_right" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arrow_right.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="disk" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\disk.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="aktualisieren5" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\aktualisieren5.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="link_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\link_edit.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="user_edit1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\user_edit1.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="user_edit2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\user_edit2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="aktenordner_transparent2" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\aktenordner_transparent2.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="aktualisieren_1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\aktualisieren_1.jpg;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="1leftarrow" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\1leftarrow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="cog_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cog_edit.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="f3" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\f3.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (640)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (640).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="f5" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\f5.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="b nf" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\b nf.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="asterisk_orange1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\asterisk_orange1.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bomb" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bomb.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="pencil" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\pencil.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="info_small" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\info_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="puzzle3" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\puzzle3.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="book_delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\book_delete.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="cross" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\cross.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (219)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (219).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="control_rewind" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\control_rewind.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="hook" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\hook.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Public" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Public.ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="rosette" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\rosette.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Untitled (142)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Untitled (142).ico;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="table_delete" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\table_delete.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="user_edit" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\user_edit.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="arrow_up" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\arrow_up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="bullet_arrow_down1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bullet_arrow_down1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

View File

@ -0,0 +1,918 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.36366
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </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", "12.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 "Funktion zum automatischen Speichern von My.Settings"
#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
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute(""), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property licensekey() As String
Get
Return CType(Me("licensekey"),String)
End Get
Set
Me("licensekey") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property DIDurchlaufRunning() As Boolean
Get
Return CType(Me("DIDurchlaufRunning"),Boolean)
End Get
Set
Me("DIDurchlaufRunning") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("modNachindexierungConfig.xml"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vNIConfigDatei() As String
Get
Return CType(Me("vNIConfigDatei"),String)
End Get
Set
Me("vNIConfigDatei") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("modDateiimportConfig.xml"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vDIConfigDatei() As String
Get
Return CType(Me("vDIConfigDatei"),String)
End Get
Set
Me("vDIConfigDatei") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("absender@IhrServer.de"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vNIMailfrom() As String
Get
Return CType(Me("vNIMailfrom"),String)
End Get
Set
Me("vNIMailfrom") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute(""), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vNIEmailEmpf() As String
Get
Return CType(Me("vNIEmailEmpf"),String)
End Get
Set
Me("vNIEmailEmpf") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Fehler im Modul Nachindexierung"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vNIMailBetreff() As String
Get
Return CType(Me("vNIMailBetreff"),String)
End Get
Set
Me("vNIMailBetreff") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("<p>__________________<br>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" <b><font face=""Arial"">Achtung Fehler:</font></b><fon"& _
"t face=""Arial""><br>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" <br>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" Folgender Fehler wurde festgestellt:</font> </p>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vNIMailBody() As String
Get
Return CType(Me("vNIMailBody"),String)
End Get
Set
Me("vNIMailBody") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("mailODERpop.smtp.de"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vSMTP() As String
Get
Return CType(Me("vSMTP"),String)
End Get
Set
Me("vSMTP") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Ihr User"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vMailUser() As String
Get
Return CType(Me("vMailUser"),String)
End Get
Set
Me("vMailUser") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute(""), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vMailPW() As String
Get
Return CType(Me("vMailPW"),String)
End Get
Set
Me("vMailPW") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vNIMailsenden() As Boolean
Get
Return CType(Me("vNIMailsenden"),Boolean)
End Get
Set
Me("vNIMailsenden") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmNI_SQL_Loc() As Global.System.Drawing.Point
Get
Return CType(Me("frmNI_SQL_Loc"),Global.System.Drawing.Point)
End Get
Set
Me("frmNI_SQL_Loc") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("dd"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vPW_Admin() As String
Get
Return CType(Me("vPW_Admin"),String)
End Get
Set
Me("vPW_Admin") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property NIDurchlauf_Intervall() As Integer
Get
Return CType(Me("NIDurchlauf_Intervall"),Integer)
End Get
Set
Me("NIDurchlauf_Intervall") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("absender@IhrServer.de"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vDIMailFrom() As String
Get
Return CType(Me("vDIMailFrom"),String)
End Get
Set
Me("vDIMailFrom") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute(""), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vDIMailEmpf() As String
Get
Return CType(Me("vDIMailEmpf"),String)
End Get
Set
Me("vDIMailEmpf") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Fehler im Modul Dateiimporter"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vDIMailBetreff() As String
Get
Return CType(Me("vDIMailBetreff"),String)
End Get
Set
Me("vDIMailBetreff") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("<p>__________________<br>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" <b><font face=""Arial"">Achtung Fehler:</font></b><fon"& _
"t face=""Arial""><br>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" <br>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)&" Folgender Fehler wurde festgestellt:</font> </p>"&Global.Microsoft.VisualBasic.ChrW(13)&Global.Microsoft.VisualBasic.ChrW(10)), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vDIMailBody() As String
Get
Return CType(Me("vDIMailBody"),String)
End Get
Set
Me("vDIMailBody") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vDIDurchlaufRunning() As Boolean
Get
Return CType(Me("vDIDurchlaufRunning"),Boolean)
End Get
Set
Me("vDIDurchlaufRunning") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vDIMailSenden() As Boolean
Get
Return CType(Me("vDIMailSenden"),Boolean)
End Get
Set
Me("vDIMailSenden") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmNIHauptseite_Loc() As Global.System.Drawing.Point
Get
Return CType(Me("frmNIHauptseite_Loc"),Global.System.Drawing.Point)
End Get
Set
Me("frmNIHauptseite_Loc") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmDIHauptseite_Loc() As Global.System.Drawing.Point
Get
Return CType(Me("frmDIHauptseite_Loc"),Global.System.Drawing.Point)
End Get
Set
Me("frmDIHauptseite_Loc") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property DIDurchlauf_Intervall() As Decimal
Get
Return CType(Me("DIDurchlauf_Intervall"),Decimal)
End Get
Set
Me("DIDurchlauf_Intervall") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property NI_Durchlauf_Intervall() As Decimal
Get
Return CType(Me("NI_Durchlauf_Intervall"),Decimal)
End Get
Set
Me("NI_Durchlauf_Intervall") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmDIProfileigenschaften_Loc() As Global.System.Drawing.Point
Get
Return CType(Me("frmDIProfileigenschaften_Loc"),Global.System.Drawing.Point)
End Get
Set
Me("frmDIProfileigenschaften_Loc") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmDIRegelverwaltung_Loc() As Global.System.Drawing.Point
Get
Return CType(Me("frmDIRegelverwaltung_Loc"),Global.System.Drawing.Point)
End Get
Set
Me("frmDIRegelverwaltung_Loc") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmDIRA_Loc() As Global.System.Drawing.Point
Get
Return CType(Me("frmDIRA_Loc"),Global.System.Drawing.Point)
End Get
Set
Me("frmDIRA_Loc") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmNIProfilhinzufuegen() As Global.System.Drawing.Point
Get
Return CType(Me("frmNIProfilhinzufuegen"),Global.System.Drawing.Point)
End Get
Set
Me("frmNIProfilhinzufuegen") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmNIProfileigenschaften() As Global.System.Drawing.Point
Get
Return CType(Me("frmNIProfileigenschaften"),Global.System.Drawing.Point)
End Get
Set
Me("frmNIProfileigenschaften") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.SpecialSettingAttribute(Global.System.Configuration.SpecialSetting.ConnectionString)> _
Public ReadOnly Property Setting() As String
Get
Return CType(Me("Setting"),String)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("modDDIntegrationConfig.xml"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vMIConfigDatei() As String
Get
Return CType(Me("vMIConfigDatei"),String)
End Get
Set
Me("vMIConfigDatei") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0, 0"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property frmMIProfileigenschaften_Loc() As Global.System.Drawing.Point
Get
Return CType(Me("frmMIProfileigenschaften_Loc"),Global.System.Drawing.Point)
End Get
Set
Me("frmMIProfileigenschaften_Loc") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("modMoReConfig.xml"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vMoReConfigDatei() As String
Get
Return CType(Me("vMoReConfigDatei"),String)
End Get
Set
Me("vMoReConfigDatei") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.SpecialSettingAttribute(Global.System.Configuration.SpecialSetting.ConnectionString), _
Global.System.Configuration.DefaultSettingValueAttribute("Data Source=172.24.12.41\tests;Initial Catalog=DD_DMS;User ID=sa;Password=dd")> _
Public ReadOnly Property DD_DMSConnectionString() As String
Get
Return CType(Me("DD_DMSConnectionString"),String)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("modMoReBasConfig.xml"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vMoReBasConfigDatei() As String
Get
Return CType(Me("vMoReBasConfigDatei"),String)
End Get
Set
Me("vMoReBasConfigDatei") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("232"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property spltCMoRe() As Integer
Get
Return CType(Me("spltCMoRe"),Integer)
End Get
Set
Me("spltCMoRe") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute(""), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property TBDMS_ORDNERZUORDNUNGDataGridView() As String
Get
Return CType(Me("TBDMS_ORDNERZUORDNUNGDataGridView"),String)
End Get
Set
Me("TBDMS_ORDNERZUORDNUNGDataGridView") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute(""), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property TBDMS_KUNDENDataGridView() As String
Get
Return CType(Me("TBDMS_KUNDENDataGridView"),String)
End Get
Set
Me("TBDMS_KUNDENDataGridView") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("415"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property scOrdnerKonfig() As Integer
Get
Return CType(Me("scOrdnerKonfig"),Integer)
End Get
Set
Me("scOrdnerKonfig") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("W")> _
Public ReadOnly Property MRWD_Laufwerk() As String
Get
Return CType(Me("MRWD_Laufwerk"),String)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute(""), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property MR() As String
Get
Return CType(Me("MR"),String)
End Get
Set
Me("MR") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("True"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vLogErrorsonly() As Boolean
Get
Return CType(Me("vLogErrorsonly"),Boolean)
End Get
Set
Me("vLogErrorsonly") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("log_Nachindexierung"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vLogNI() As String
Get
Return CType(Me("vLogNI"),String)
End Get
Set
Me("vLogNI") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("log_Dateiimporter"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vLogDI() As String
Get
Return CType(Me("vLogDI"),String)
End Get
Set
Me("vLogDI") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("log_ServiceTC"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vLogService() As String
Get
Return CType(Me("vLogService"),String)
End Get
Set
Me("vLogService") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("log_NachindexierungServ"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vlogNIServ() As String
Get
Return CType(Me("vlogNIServ"),String)
End Get
Set
Me("vlogNIServ") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("log_DateiimporterServ"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vlogDIServ() As String
Get
Return CType(Me("vlogDIServ"),String)
End Get
Set
Me("vlogDIServ") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("thumbs"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vDIAusschluss() As String
Get
Return CType(Me("vDIAusschluss"),String)
End Get
Set
Me("vDIAusschluss") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("D:\Programme\Digital Data\DDLink2Navision\NavisionLink.exe")> _
Public ReadOnly Property PathLink2Navision() As String
Get
Return CType(Me("PathLink2Navision"),String)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Alle Kerne"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property Cores() As String
Get
Return CType(Me("Cores"),String)
End Get
Set
Me("Cores") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Error"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property ERROR_INDEX() As String
Get
Return CType(Me("ERROR_INDEX"),String)
End Get
Set
Me("ERROR_INDEX") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("")> _
Public ReadOnly Property DLL_WMOTOOL() As String
Get
Return CType(Me("DLL_WMOTOOL"),String)
End Get
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("W")> _
Public ReadOnly Property vWLaufwerk() As String
Get
Return CType(Me("vWLaufwerk"),String)
End Get
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.SpecialSettingAttribute(Global.System.Configuration.SpecialSetting.ConnectionString), _
Global.System.Configuration.DefaultSettingValueAttribute("DATA SOURCE=CURSOR_DEMO;PASSWORD=wdcc;PERSIST SECURITY INFO=True;USER ID=WDCC")> _
Public ReadOnly Property ConnectionStringCursor() As String
Get
Return CType(Me("ConnectionStringCursor"),String)
End Get
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("E:\Digital Data\INSERT_TICKET.sql")> _
Public ReadOnly Property INSERTTICKET() As String
Get
Return CType(Me("INSERTTICKET"),String)
End Get
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("E:\Digital Data\INSERT_VERANST.sql")> _
Public ReadOnly Property INSERVERANST() As String
Get
Return CType(Me("INSERVERANST"),String)
End Get
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("E:\Digital Data\INSERT_SONST.sql")> _
Public ReadOnly Property INSERT_SONST() As String
Get
Return CType(Me("INSERT_SONST"),String)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute(""), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property SQLLITE_CONNECTION() As String
Get
Return CType(Me("SQLLITE_CONNECTION"),String)
End Get
Set
Me("SQLLITE_CONNECTION") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("30"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property logolder_then() As String
Get
Return CType(Me("logolder_then"),String)
End Get
Set
Me("logolder_then") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Fehlermeldung")> _
Public Property errortext() As String
Get
Return CType(Me("errortext"),String)
End Get
Set
Me("errortext") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("25"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property vemailPort() As Integer
Get
Return CType(Me("vemailPort"),Integer)
End Get
Set
Me("vemailPort") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.SpecialSettingAttribute(Global.System.Configuration.SpecialSetting.ConnectionString), _
Global.System.Configuration.DefaultSettingValueAttribute("Data Source=172.24.12.41\tests;Initial Catalog=DD_ECM;Persist Security Info=True;"& _
"User ID=sa;Password=dd")> _
Public ReadOnly Property DD_ECMConnString() As String
Get
Return CType(Me("DD_ECMConnString"),String)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property NI_RUNNING() As Boolean
Get
Return CType(Me("NI_RUNNING"),Boolean)
End Get
Set
Me("NI_RUNNING") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("DigitalData\windream_CLIENT_WMCC_Neustart")> _
Public ReadOnly Property WMCC_RESTART() As String
Get
Return CType(Me("WMCC_RESTART"),String)
End Get
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("DigitalData\windream_VFS_RESTART")> _
Public Property VFS_RESTART() As String
Get
Return CType(Me("VFS_RESTART"),String)
End Get
Set
Me("VFS_RESTART") = value
End Set
End Property
<Global.System.Configuration.UserScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("Data Source=172.24.12.41\tests;Initial Catalog=DD_DMS;User ID=sa;Password=dd"), _
Global.System.Configuration.SettingsManageabilityAttribute(Global.System.Configuration.SettingsManageability.Roaming)> _
Public Property IIDConfig_ConString() As String
Get
Return CType(Me("IIDConfig_ConString"),String)
End Get
Set
Me("IIDConfig_ConString") = value
End Set
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0")> _
Public ReadOnly Property Sleep_Begin() As String
Get
Return CType(Me("Sleep_Begin"),String)
End Get
End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("0")> _
Public ReadOnly Property Sleep_End() As String
Get
Return CType(Me("Sleep_End"),String)
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.ToolCollection.My.MySettings
Get
Return Global.ToolCollection.My.MySettings.Default
End Get
End Property
End Module
End Namespace

View File

@ -0,0 +1,237 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="My" GeneratedClassName="MySettings" UseMySettingsClassName="true">
<Profiles />
<Settings>
<Setting Name="licensekey" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="DIDurchlaufRunning" Roaming="true" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="vNIConfigDatei" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">modNachindexierungConfig.xml</Value>
</Setting>
<Setting Name="vDIConfigDatei" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">modDateiimportConfig.xml</Value>
</Setting>
<Setting Name="vNIMailfrom" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">absender@IhrServer.de</Value>
</Setting>
<Setting Name="vNIEmailEmpf" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="vNIMailBetreff" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">Fehler im Modul Nachindexierung</Value>
</Setting>
<Setting Name="vNIMailBody" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">&lt;p&gt;__________________&lt;br&gt;
&lt;b&gt;&lt;font face="Arial"&gt;Achtung Fehler:&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial"&gt;&lt;br&gt;
&lt;br&gt;
Folgender Fehler wurde festgestellt:&lt;/font&gt; &lt;/p&gt;
</Value>
</Setting>
<Setting Name="vSMTP" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">mailODERpop.smtp.de</Value>
</Setting>
<Setting Name="vMailUser" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">Ihr User</Value>
</Setting>
<Setting Name="vMailPW" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="vNIMailsenden" Roaming="true" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="frmNI_SQL_Loc" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="vPW_Admin" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">dd</Value>
</Setting>
<Setting Name="NIDurchlauf_Intervall" Roaming="true" Type="System.Int32" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="vDIMailFrom" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">absender@IhrServer.de</Value>
</Setting>
<Setting Name="vDIMailEmpf" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="vDIMailBetreff" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">Fehler im Modul Dateiimporter</Value>
</Setting>
<Setting Name="vDIMailBody" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">&lt;p&gt;__________________&lt;br&gt;
&lt;b&gt;&lt;font face="Arial"&gt;Achtung Fehler:&lt;/font&gt;&lt;/b&gt;&lt;font face="Arial"&gt;&lt;br&gt;
&lt;br&gt;
Folgender Fehler wurde festgestellt:&lt;/font&gt; &lt;/p&gt;
</Value>
</Setting>
<Setting Name="vDIDurchlaufRunning" Roaming="true" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="vDIMailSenden" Roaming="true" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="frmNIHauptseite_Loc" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmDIHauptseite_Loc" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="DIDurchlauf_Intervall" Roaming="true" Type="System.Decimal" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="NI_Durchlauf_Intervall" Roaming="true" Type="System.Decimal" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="frmDIProfileigenschaften_Loc" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmDIRegelverwaltung_Loc" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmDIRA_Loc" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmNIProfilhinzufuegen" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="frmNIProfileigenschaften" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="Setting" Type="(Connection string)" Scope="Application">
<DesignTimeValue Profile="(Default)" />
<Value Profile="(Default)" />
</Setting>
<Setting Name="vMIConfigDatei" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">modDDIntegrationConfig.xml</Value>
</Setting>
<Setting Name="frmMIProfileigenschaften_Loc" Roaming="true" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="vMoReConfigDatei" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">modMoReConfig.xml</Value>
</Setting>
<Setting Name="DD_DMSConnectionString" Type="(Connection string)" Scope="Application">
<DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
&lt;SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
&lt;ConnectionString&gt;Data Source=172.24.12.41\tests;Initial Catalog=DD_DMS;User ID=sa;Password=dd&lt;/ConnectionString&gt;
&lt;ProviderName&gt;System.Data.SqlClient&lt;/ProviderName&gt;
&lt;/SerializableConnectionString&gt;</DesignTimeValue>
<Value Profile="(Default)">Data Source=172.24.12.41\tests;Initial Catalog=DD_DMS;User ID=sa;Password=dd</Value>
</Setting>
<Setting Name="vMoReBasConfigDatei" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">modMoReBasConfig.xml</Value>
</Setting>
<Setting Name="spltCMoRe" Roaming="true" Type="System.Int32" Scope="User">
<Value Profile="(Default)">232</Value>
</Setting>
<Setting Name="TBDMS_ORDNERZUORDNUNGDataGridView" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="TBDMS_KUNDENDataGridView" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="scOrdnerKonfig" Roaming="true" Type="System.Int32" Scope="User">
<Value Profile="(Default)">415</Value>
</Setting>
<Setting Name="MRWD_Laufwerk" Type="System.String" Scope="Application">
<Value Profile="(Default)">W</Value>
</Setting>
<Setting Name="MR" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="vLogErrorsonly" Roaming="true" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="vLogNI" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">log_Nachindexierung</Value>
</Setting>
<Setting Name="vLogDI" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">log_Dateiimporter</Value>
</Setting>
<Setting Name="vLogService" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">log_ServiceTC</Value>
</Setting>
<Setting Name="vlogNIServ" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">log_NachindexierungServ</Value>
</Setting>
<Setting Name="vlogDIServ" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">log_DateiimporterServ</Value>
</Setting>
<Setting Name="vDIAusschluss" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">thumbs</Value>
</Setting>
<Setting Name="PathLink2Navision" Type="System.String" Scope="Application">
<Value Profile="(Default)">D:\Programme\Digital Data\DDLink2Navision\NavisionLink.exe</Value>
</Setting>
<Setting Name="Cores" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">Alle Kerne</Value>
</Setting>
<Setting Name="ERROR_INDEX" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">Error</Value>
</Setting>
<Setting Name="DLL_WMOTOOL" Type="System.String" Scope="Application">
<Value Profile="(Default)" />
</Setting>
<Setting Name="vWLaufwerk" Type="System.String" Scope="Application">
<Value Profile="(Default)">W</Value>
</Setting>
<Setting Name="ConnectionStringCursor" Type="(Connection string)" Scope="Application">
<DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
&lt;SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
&lt;ConnectionString&gt;DATA SOURCE=CURSOR_DEMO;PASSWORD=wdcc;PERSIST SECURITY INFO=True;USER ID=WDCC&lt;/ConnectionString&gt;
&lt;ProviderName&gt;Oracle.DataAccess.Client&lt;/ProviderName&gt;
&lt;/SerializableConnectionString&gt;</DesignTimeValue>
<Value Profile="(Default)">DATA SOURCE=CURSOR_DEMO;PASSWORD=wdcc;PERSIST SECURITY INFO=True;USER ID=WDCC</Value>
</Setting>
<Setting Name="INSERTTICKET" Type="System.String" Scope="Application">
<Value Profile="(Default)">E:\Digital Data\INSERT_TICKET.sql</Value>
</Setting>
<Setting Name="INSERVERANST" Type="System.String" Scope="Application">
<Value Profile="(Default)">E:\Digital Data\INSERT_VERANST.sql</Value>
</Setting>
<Setting Name="INSERT_SONST" Type="System.String" Scope="Application">
<Value Profile="(Default)">E:\Digital Data\INSERT_SONST.sql</Value>
</Setting>
<Setting Name="SQLLITE_CONNECTION" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="logolder_then" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">30</Value>
</Setting>
<Setting Name="errortext" Type="System.String" Scope="User">
<Value Profile="(Default)">Fehlermeldung</Value>
</Setting>
<Setting Name="vemailPort" Roaming="true" Type="System.Int32" Scope="User">
<Value Profile="(Default)">25</Value>
</Setting>
<Setting Name="DD_ECMConnString" Type="(Connection string)" Scope="Application">
<DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
&lt;SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
&lt;ConnectionString&gt;Data Source=172.24.12.41\tests;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd&lt;/ConnectionString&gt;
&lt;ProviderName&gt;System.Data.SqlClient&lt;/ProviderName&gt;
&lt;/SerializableConnectionString&gt;</DesignTimeValue>
<Value Profile="(Default)">Data Source=172.24.12.41\tests;Initial Catalog=DD_ECM;Persist Security Info=True;User ID=sa;Password=dd</Value>
</Setting>
<Setting Name="NI_RUNNING" Roaming="true" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="WMCC_RESTART" Type="System.String" Scope="Application">
<Value Profile="(Default)">DigitalData\windream_CLIENT_WMCC_Neustart</Value>
</Setting>
<Setting Name="VFS_RESTART" Type="System.String" Scope="User">
<Value Profile="(Default)">DigitalData\windream_VFS_RESTART</Value>
</Setting>
<Setting Name="IIDConfig_ConString" Roaming="true" Type="System.String" Scope="User">
<Value Profile="(Default)">Data Source=172.24.12.41\tests;Initial Catalog=DD_DMS;User ID=sa;Password=dd</Value>
</Setting>
<Setting Name="Sleep_Begin" Type="System.String" Scope="Application">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="Sleep_End" Type="System.String" Scope="Application">
<Value Profile="(Default)">0</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<!-- UAC-Manifestoptionen
Wenn Sie die Zugangsebene für das Windows-Benutzerkonto ändern möchten, ersetzen Sie den
requestedExecutionLevel-Knoten durch eines der folgenden Elemente.
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
Durch Angeben des requestedExecutionLevel-Knotens wird die Datei- und Registrierungsvirtualisierung deaktiviert.
Wenn Sie Datei- und Registrierungsvirtualisierung für Abwärts-
kompatibilität verwenden möchten, löschen Sie den requestedExecutionLevel-Knoten.
-->
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<!-- Eine Liste aller Windows-Versionen, mit denen die Anwendung kompatibel ist. Windows wählt automatisch die am stärksten kompatible Umgebung aus.-->
<!-- Wenn die Anwendung mit Windows 7 kompatibel ist, heben Sie die Kommentierung des folgenden supportedOS-Knotens auf.-->
<!--<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>-->
</application>
</compatibility>
<!-- Designs für allgemeine Windows-Steuerelemente und -Dialogfelder (Windows XP und höher) aktivieren -->
<!-- <dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="*"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>-->
</asmv1:assembly>

2899
ToolCollection/MyDataset.Designer.vb generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DataSetUISetting Version="1.00" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TableUISettings />
</DataSetUISetting>

View File

@ -0,0 +1,161 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="MyDataset" targetNamespace="http://tempuri.org/MyDataset.xsd" xmlns:mstns="http://tempuri.org/MyDataset.xsd" xmlns="http://tempuri.org/MyDataset.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
<xs:annotation>
<xs:appinfo source="urn:schemas-microsoft-com:xml-msdatasource">
<DataSource DefaultConnectionIndex="0" FunctionsComponentName="QueriesTableAdapter" Modifier="AutoLayout, AnsiClass, Class, Public" SchemaSerializationMode="IncludeSchema" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<Connections>
<Connection AppSettingsObjectName="MySettings" AppSettingsPropertyName="DD_ECMConnString" ConnectionStringObject="" IsAppSettingsProperty="true" Modifier="Assembly" Name="DD_ECMConnString (MySettings)" ParameterPrefix="@" PropertyReference="ApplicationSettings.ToolCollection.My.MySettings.GlobalReference.Default.DD_ECMConnString" Provider="System.Data.SqlClient" />
</Connections>
<Tables>
<TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="TBDD_REPORTING_IMPORTTableAdapter" GeneratorDataComponentClassName="TBDD_REPORTING_IMPORTTableAdapter" Name="TBDD_REPORTING_IMPORT" UserDataComponentName="TBDD_REPORTING_IMPORTTableAdapter">
<MainSource>
<DbSource ConnectionRef="DD_ECMConnString (MySettings)" DbObjectName="DD_ECM.dbo.TBDD_REPORTING_IMPORT" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
<DeleteCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>DELETE FROM [TBDD_REPORTING_IMPORT] WHERE (([IMPORT_ID] = @Original_IMPORT_ID) AND ((@IsNull_FILE_NAME = 1 AND [FILE_NAME] IS NULL) OR ([FILE_NAME] = @Original_FILE_NAME)) AND ([PROFILE_NAME] = @Original_PROFILE_NAME) AND ((@IsNull_VOLUME = 1 AND [VOLUME] IS NULL) OR ([VOLUME] = @Original_VOLUME)) AND ((@IsNull_PAGE_COUNT = 1 AND [PAGE_COUNT] IS NULL) OR ([PAGE_COUNT] = @Original_PAGE_COUNT)) AND ((@IsNull_EXTENSION = 1 AND [EXTENSION] IS NULL) OR ([EXTENSION] = @Original_EXTENSION)) AND ([ADDED_WHEN] = @Original_ADDED_WHEN))</CommandText>
<Parameters>
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_IMPORT_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="IMPORT_ID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_FILE_NAME" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="FILE_NAME" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_FILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILE_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PROFILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PROFILE_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_VOLUME" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="VOLUME" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@Original_VOLUME" Precision="10" ProviderType="Decimal" Scale="2" Size="0" SourceColumn="VOLUME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_PAGE_COUNT" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PAGE_COUNT" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_PAGE_COUNT" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PAGE_COUNT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_EXTENSION" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="EXTENSION" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_EXTENSION" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="EXTENSION" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_ADDED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="false" SourceVersion="Original" />
</Parameters>
</DbCommand>
</DeleteCommand>
<InsertCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>INSERT INTO TBDD_REPORTING_IMPORT
(FILE_NAME, PROFILE_NAME, VOLUME, PAGE_COUNT, EXTENSION)
VALUES (@FILE_NAME,@PROFILE_NAME,@VOLUME,@PAGE_COUNT,@EXTENSION);
SELECT IMPORT_ID, FILE_NAME, PROFILE_NAME, VOLUME, PAGE_COUNT, EXTENSION, ADDED_WHEN FROM TBDD_REPORTING_IMPORT WHERE (IMPORT_ID = SCOPE_IDENTITY())</CommandText>
<Parameters>
<Parameter AllowDbNull="true" AutogeneratedName="FILE_NAME" ColumnName="FILE_NAME" DataSourceName="DD_ECM.dbo.TBDD_REPORTING_IMPORT" DataTypeServer="varchar(250)" DbType="AnsiString" Direction="Input" ParameterName="@FILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="250" SourceColumn="FILE_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="PROFILE_NAME" ColumnName="PROFILE_NAME" DataSourceName="DD_ECM.dbo.TBDD_REPORTING_IMPORT" DataTypeServer="varchar(250)" DbType="AnsiString" Direction="Input" ParameterName="@PROFILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="250" SourceColumn="PROFILE_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="VOLUME" ColumnName="VOLUME" DataSourceName="DD_ECM.dbo.TBDD_REPORTING_IMPORT" DataTypeServer="decimal(10, 2)" DbType="Decimal" Direction="Input" ParameterName="@VOLUME" Precision="10" ProviderType="Decimal" Scale="2" Size="9" SourceColumn="VOLUME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="PAGE_COUNT" ColumnName="PAGE_COUNT" DataSourceName="DD_ECM.dbo.TBDD_REPORTING_IMPORT" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@PAGE_COUNT" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="PAGE_COUNT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="EXTENSION" ColumnName="EXTENSION" DataSourceName="DD_ECM.dbo.TBDD_REPORTING_IMPORT" DataTypeServer="varchar(10)" DbType="AnsiString" Direction="Input" ParameterName="@EXTENSION" Precision="0" ProviderType="VarChar" Scale="0" Size="10" SourceColumn="EXTENSION" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</InsertCommand>
<SelectCommand>
<DbCommand CommandType="Text" ModifiedByUser="true">
<CommandText>SELECT TBDD_REPORTING_IMPORT.*
FROM TBDD_REPORTING_IMPORT</CommandText>
<Parameters />
</DbCommand>
</SelectCommand>
<UpdateCommand>
<DbCommand CommandType="Text" ModifiedByUser="false">
<CommandText>UPDATE [TBDD_REPORTING_IMPORT] SET [FILE_NAME] = @FILE_NAME, [PROFILE_NAME] = @PROFILE_NAME, [VOLUME] = @VOLUME, [PAGE_COUNT] = @PAGE_COUNT, [EXTENSION] = @EXTENSION, [ADDED_WHEN] = @ADDED_WHEN WHERE (([IMPORT_ID] = @Original_IMPORT_ID) AND ((@IsNull_FILE_NAME = 1 AND [FILE_NAME] IS NULL) OR ([FILE_NAME] = @Original_FILE_NAME)) AND ([PROFILE_NAME] = @Original_PROFILE_NAME) AND ((@IsNull_VOLUME = 1 AND [VOLUME] IS NULL) OR ([VOLUME] = @Original_VOLUME)) AND ((@IsNull_PAGE_COUNT = 1 AND [PAGE_COUNT] IS NULL) OR ([PAGE_COUNT] = @Original_PAGE_COUNT)) AND ((@IsNull_EXTENSION = 1 AND [EXTENSION] IS NULL) OR ([EXTENSION] = @Original_EXTENSION)) AND ([ADDED_WHEN] = @Original_ADDED_WHEN));
SELECT IMPORT_ID, FILE_NAME, PROFILE_NAME, VOLUME, PAGE_COUNT, EXTENSION, ADDED_WHEN FROM TBDD_REPORTING_IMPORT WHERE (IMPORT_ID = @IMPORT_ID)</CommandText>
<Parameters>
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@FILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILE_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@PROFILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PROFILE_NAME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@VOLUME" Precision="10" ProviderType="Decimal" Scale="2" Size="0" SourceColumn="VOLUME" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@PAGE_COUNT" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PAGE_COUNT" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@EXTENSION" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="EXTENSION" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@ADDED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="false" SourceVersion="Current" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_IMPORT_ID" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="IMPORT_ID" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_FILE_NAME" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="FILE_NAME" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_FILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="FILE_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_PROFILE_NAME" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="PROFILE_NAME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_VOLUME" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="VOLUME" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Decimal" Direction="Input" ParameterName="@Original_VOLUME" Precision="10" ProviderType="Decimal" Scale="2" Size="0" SourceColumn="VOLUME" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_PAGE_COUNT" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PAGE_COUNT" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@Original_PAGE_COUNT" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="PAGE_COUNT" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Int32" Direction="Input" ParameterName="@IsNull_EXTENSION" Precision="0" ProviderType="Int" Scale="0" Size="0" SourceColumn="EXTENSION" SourceColumnNullMapping="true" SourceVersion="Original" />
<Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@Original_EXTENSION" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="EXTENSION" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@Original_ADDED_WHEN" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="ADDED_WHEN" SourceColumnNullMapping="false" SourceVersion="Original" />
<Parameter AllowDbNull="false" AutogeneratedName="IMPORT_ID" ColumnName="IMPORT_ID" DataSourceName="DD_ECM.dbo.TBDD_REPORTING_IMPORT" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@IMPORT_ID" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="IMPORT_ID" SourceColumnNullMapping="false" SourceVersion="Current" />
</Parameters>
</DbCommand>
</UpdateCommand>
</DbSource>
</MainSource>
<Mappings>
<Mapping SourceColumn="IMPORT_ID" DataSetColumn="IMPORT_ID" />
<Mapping SourceColumn="FILE_NAME" DataSetColumn="FILE_NAME" />
<Mapping SourceColumn="PROFILE_NAME" DataSetColumn="PROFILE_NAME" />
<Mapping SourceColumn="VOLUME" DataSetColumn="VOLUME" />
<Mapping SourceColumn="PAGE_COUNT" DataSetColumn="PAGE_COUNT" />
<Mapping SourceColumn="ADDED_WHEN" DataSetColumn="ADDED_WHEN" />
<Mapping SourceColumn="EXTENSION" DataSetColumn="EXTENSION" />
</Mappings>
<Sources />
</TableAdapter>
</Tables>
<Sources />
</DataSource>
</xs:appinfo>
</xs:annotation>
<xs:element name="MyDataset" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="MyDataset" msprop:Generator_UserDSName="MyDataset">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="TBVEKTOR_ARRAY" msprop:Generator_TableClassName="TBVEKTOR_ARRAYDataTable" msprop:Generator_TableVarName="tableTBVEKTOR_ARRAY" msprop:Generator_RowChangedName="TBVEKTOR_ARRAYRowChanged" msprop:Generator_TablePropName="TBVEKTOR_ARRAY" msprop:Generator_RowDeletingName="TBVEKTOR_ARRAYRowDeleting" msprop:Generator_RowChangingName="TBVEKTOR_ARRAYRowChanging" msprop:Generator_RowEvHandlerName="TBVEKTOR_ARRAYRowChangeEventHandler" msprop:Generator_RowDeletedName="TBVEKTOR_ARRAYRowDeleted" msprop:Generator_RowClassName="TBVEKTOR_ARRAYRow" msprop:Generator_UserTableName="TBVEKTOR_ARRAY" msprop:Generator_RowEvArgName="TBVEKTOR_ARRAYRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="Indexname" msprop:Generator_ColumnVarNameInTable="columnIndexname" msprop:Generator_ColumnPropNameInRow="Indexname" msprop:Generator_ColumnPropNameInTable="IndexnameColumn" msprop:Generator_UserColumnName="Indexname" type="xs:string" minOccurs="0" />
<xs:element name="Wert" msprop:Generator_ColumnVarNameInTable="columnWert" msprop:Generator_ColumnPropNameInRow="Wert" msprop:Generator_ColumnPropNameInTable="WertColumn" msprop:Generator_UserColumnName="Wert" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TBErgebnis" msprop:Generator_TableClassName="TBErgebnisDataTable" msprop:Generator_TableVarName="tableTBErgebnis" msprop:Generator_RowChangedName="TBErgebnisRowChanged" msprop:Generator_TablePropName="TBErgebnis" msprop:Generator_RowDeletingName="TBErgebnisRowDeleting" msprop:Generator_RowChangingName="TBErgebnisRowChanging" msprop:Generator_RowEvHandlerName="TBErgebnisRowChangeEventHandler" msprop:Generator_RowDeletedName="TBErgebnisRowDeleted" msprop:Generator_RowClassName="TBErgebnisRow" msprop:Generator_UserTableName="TBErgebnis" msprop:Generator_RowEvArgName="TBErgebnisRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="Ergebniswerte" msprop:Generator_ColumnVarNameInTable="columnErgebniswerte" msprop:Generator_ColumnPropNameInRow="Ergebniswerte" msprop:Generator_ColumnPropNameInTable="ErgebniswerteColumn" msprop:Generator_UserColumnName="Ergebniswerte" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TBUV" msprop:Generator_TableClassName="TBUVDataTable" msprop:Generator_TableVarName="tableTBUV" msprop:Generator_TablePropName="TBUV" msprop:Generator_RowDeletingName="TBUVRowDeleting" msprop:Generator_RowChangingName="TBUVRowChanging" msprop:Generator_RowEvHandlerName="TBUVRowChangeEventHandler" msprop:Generator_RowDeletedName="TBUVRowDeleted" msprop:Generator_UserTableName="TBUV" msprop:Generator_RowChangedName="TBUVRowChanged" msprop:Generator_RowEvArgName="TBUVRowChangeEvent" msprop:Generator_RowClassName="TBUVRow">
<xs:complexType>
<xs:sequence>
<xs:element name="ID" msdata:AutoIncrement="true" msprop:Generator_ColumnVarNameInTable="columnID" msprop:Generator_ColumnPropNameInRow="ID" msprop:Generator_ColumnPropNameInTable="IDColumn" msprop:Generator_UserColumnName="ID" type="xs:int" minOccurs="0" />
<xs:element name="Unterverzeichnis" msprop:Generator_ColumnVarNameInTable="columnUnterverzeichnis" msprop:Generator_ColumnPropNameInRow="Unterverzeichnis" msprop:Generator_ColumnPropNameInTable="UnterverzeichnisColumn" msprop:Generator_UserColumnName="Unterverzeichnis" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TBDD_REPORTING_IMPORT" msprop:Generator_TableClassName="TBDD_REPORTING_IMPORTDataTable" msprop:Generator_TableVarName="tableTBDD_REPORTING_IMPORT" msprop:Generator_RowChangedName="TBDD_REPORTING_IMPORTRowChanged" msprop:Generator_TablePropName="TBDD_REPORTING_IMPORT" msprop:Generator_RowDeletingName="TBDD_REPORTING_IMPORTRowDeleting" msprop:Generator_RowChangingName="TBDD_REPORTING_IMPORTRowChanging" msprop:Generator_RowEvHandlerName="TBDD_REPORTING_IMPORTRowChangeEventHandler" msprop:Generator_RowDeletedName="TBDD_REPORTING_IMPORTRowDeleted" msprop:Generator_RowClassName="TBDD_REPORTING_IMPORTRow" msprop:Generator_UserTableName="TBDD_REPORTING_IMPORT" msprop:Generator_RowEvArgName="TBDD_REPORTING_IMPORTRowChangeEvent">
<xs:complexType>
<xs:sequence>
<xs:element name="IMPORT_ID" msdata:ReadOnly="true" msdata:AutoIncrement="true" msdata:AutoIncrementSeed="-1" msdata:AutoIncrementStep="-1" msprop:Generator_ColumnVarNameInTable="columnIMPORT_ID" msprop:Generator_ColumnPropNameInRow="IMPORT_ID" msprop:Generator_ColumnPropNameInTable="IMPORT_IDColumn" msprop:Generator_UserColumnName="IMPORT_ID" type="xs:int" />
<xs:element name="FILE_NAME" msprop:Generator_ColumnVarNameInTable="columnFILE_NAME" msprop:Generator_ColumnPropNameInRow="FILE_NAME" msprop:Generator_ColumnPropNameInTable="FILE_NAMEColumn" msprop:Generator_UserColumnName="FILE_NAME" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="250" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PROFILE_NAME" msprop:Generator_ColumnVarNameInTable="columnPROFILE_NAME" msprop:Generator_ColumnPropNameInRow="PROFILE_NAME" msprop:Generator_ColumnPropNameInTable="PROFILE_NAMEColumn" msprop:Generator_UserColumnName="PROFILE_NAME">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="250" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="VOLUME" msprop:Generator_ColumnVarNameInTable="columnVOLUME" msprop:Generator_ColumnPropNameInRow="VOLUME" msprop:Generator_ColumnPropNameInTable="VOLUMEColumn" msprop:Generator_UserColumnName="VOLUME" type="xs:decimal" minOccurs="0" />
<xs:element name="PAGE_COUNT" msprop:Generator_ColumnVarNameInTable="columnPAGE_COUNT" msprop:Generator_ColumnPropNameInRow="PAGE_COUNT" msprop:Generator_ColumnPropNameInTable="PAGE_COUNTColumn" msprop:Generator_UserColumnName="PAGE_COUNT" type="xs:int" minOccurs="0" />
<xs:element name="ADDED_WHEN" msprop:Generator_ColumnVarNameInTable="columnADDED_WHEN" msprop:Generator_ColumnPropNameInRow="ADDED_WHEN" msprop:Generator_ColumnPropNameInTable="ADDED_WHENColumn" msprop:Generator_UserColumnName="ADDED_WHEN" type="xs:dateTime" />
<xs:element name="EXTENSION" msprop:Generator_ColumnVarNameInTable="columnEXTENSION" msprop:Generator_ColumnPropNameInRow="EXTENSION" msprop:Generator_ColumnPropNameInTable="EXTENSIONColumn" msprop:Generator_UserColumnName="EXTENSION" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="10" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:unique name="Constraint1" msdata:PrimaryKey="true">
<xs:selector xpath=".//mstns:TBDD_REPORTING_IMPORT" />
<xs:field xpath="mstns:IMPORT_ID" />
</xs:unique>
</xs:element>
</xs:schema>

View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<!--<autogenerated>
This code was generated by a tool to store the dataset designer's layout information.
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</autogenerated>-->
<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-10" ViewPortY="-11" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes>
<Shape ID="DesignTable:TBDD_REPORTING_IMPORT" ZOrder="1" X="342" Y="122" Height="210" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:TBVEKTOR_ARRAY" ZOrder="4" X="42" Y="0" Height="144" Width="174" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" />
<Shape ID="DesignTable:TBErgebnis" ZOrder="3" X="243" Y="-1" Height="48" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="44" />
<Shape ID="DesignTable:TBUV" ZOrder="2" X="44" Y="155" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" />
</Shapes>
<Connectors />
</DiagramLayout>

View File

@ -0,0 +1,48 @@
<System.ComponentModel.RunInstaller(True)> Partial Class ProjectInstaller
Inherits System.Configuration.Install.Installer
'Installer überschreibt den Löschvorgang zum Bereinigen der Komponentenliste.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'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()
Me.ServiceProcessInstaller1 = New System.ServiceProcess.ServiceProcessInstaller()
Me.ServiceInstaller1 = New System.ServiceProcess.ServiceInstaller()
'
'ServiceProcessInstaller1
'
Me.ServiceProcessInstaller1.Account = System.ServiceProcess.ServiceAccount.LocalSystem
Me.ServiceProcessInstaller1.Password = Nothing
Me.ServiceProcessInstaller1.Username = Nothing
'
'ServiceInstaller1
'
Me.ServiceInstaller1.Description = "Dienst der ToolCollection"
Me.ServiceInstaller1.DisplayName = "TCService"
Me.ServiceInstaller1.ServiceName = "TCService"
Me.ServiceInstaller1.StartType = System.ServiceProcess.ServiceStartMode.Automatic
'
'ProjectInstaller
'
Me.Installers.AddRange(New System.Configuration.Install.Installer() {Me.ServiceProcessInstaller1, Me.ServiceInstaller1})
End Sub
Friend WithEvents ServiceProcessInstaller1 As System.ServiceProcess.ServiceProcessInstaller
Friend WithEvents ServiceInstaller1 As System.ServiceProcess.ServiceInstaller
End Class

View File

@ -0,0 +1,129 @@
<?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="ServiceProcessInstaller1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="ServiceInstaller1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>197, 17</value>
</metadata>
<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,16 @@
Imports System.ComponentModel
Imports System.Configuration.Install
Public Class ProjectInstaller
Public Sub New()
MyBase.New()
'Dieser Aufruf ist für den Komponenten-Designer erforderlich.
InitializeComponent()
'Initialisierungscode nach dem Aufruf von InitializeComponent hinzufügen
End Sub
End Class

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,674 @@
Public Class ClassMI_Profil
Private _saved As Boolean = True
Private _originalProfilname As String
Private _originalServername As String
Private _originalZeige_suchmaske As Boolean
Private _originalWdf_suche As String
Private _profilname As String
Private _dokumenttyp As WINDREAMLib.WMObject
Private _dokumenttypString As String
Private _servername As String
Private _zeige_suchmaske As Boolean
Private _wdf_suche As String
Public _parameter As String()
'Public WindreamSuche As String
'Private oWindream As New ClassWindream
'Private linksSaved As Boolean = True
'Private _parameter As ClassDateiimportRegeln
'Private _config As ClassMerkatorIntegrationKonfiguration = New ClassMerkatorIntegrationKonfiguration()
'Private xmlConfigFile As String = My.Settings.vConfigDatei
' Konstruktor
Sub New(ByVal profilname As String, ByVal dokumenttyp As WINDREAMLib.WMObject, ByVal servername As String, ByVal zeige_suchmaske As Boolean, _
ByVal wdf_suche As String, ByVal dokumenttyp_string As String)
Me._dokumenttypString = dokumenttyp_string
Me._originalProfilname = profilname
Me._originalServername = servername
Me._originalZeige_suchmaske = zeige_suchmaske
Me._originalWdf_suche = wdf_suche
Me._profilname = profilname
Me._dokumenttyp = dokumenttyp
Me._servername = servername
Me._zeige_suchmaske = zeige_suchmaske
Me._wdf_suche = wdf_suche
Me._saved = True
'Me._regeln = New ClassDateiimportRegeln(profilname)
End Sub
' wenn im Konstruktor kein Parameter übergeben wurde soll auch nichts gemacht werden
Sub New()
End Sub
' setzt das Profil auf geändert
Public Sub setChanged()
' Profil auf geändert setzen
Me._saved = False
End Sub
' setzt das Profil auf gespeichert
Public Sub setSaved()
' Profil auf gespeichert setzen
Me._saved = True
End Sub
Public Sub SetBackToOriginal()
Me._profilname = Me._originalProfilname
Me._servername = Me._originalServername
Me._zeige_suchmaske = Me._originalZeige_suchmaske
Me._wdf_suche = Me._originalWdf_suche
End Sub
' speichert das Profil
Public Function Save()
Try
' wenn das Profil nicht gespeichert ist
If Not Me.IsSaved Then
' wenn ein Profilname für dieses Profil gesetzt ist
If Me._profilname IsNot Nothing And Me._originalProfilname IsNot Nothing Then
'If Not linksSaved Then
' If Me.Items IsNot Nothing Then
' For Each Item As ClassVerknuepfung In Me.Items
' If Not Item.SaveLink(Me.OriginalProfilname) Then
' Return False
' End If
' Next
' End If
'End If
' XML-Datei initialisieren
Dim xml As New Xml.XmlDocument()
' Profil initialisieren
Dim xmlProfil As Xml.XmlElement
' XML-Datei öffnen und laden
xml.Load(My.Settings.vMIConfigDatei)
' den XML-Knoten des Profils laden
xmlProfil = xml.SelectSingleNode("//Settings/Profile/Profil[@profilname='" & Me._originalProfilname & "']")
' wenn der Knoten NICHT gefunden wurde -> Vorgang abbrechen
If xmlProfil Is Nothing Then Return False
' die neuen Werte den Originalwerten zuweisen
Me.ÜbernehmeAktuelleWerte()
' die neuen Werte in die XML-Datei schreiben
xmlProfil.Attributes("profilname").Value = Me._profilname
xmlProfil.Attributes("dokumenttyp").Value = Me._dokumenttyp.aName
xmlProfil.Attributes("servername").Value = Me._servername
xmlProfil.Attributes("zeige_suchmaske").Value = Me._zeige_suchmaske
xmlProfil.Attributes("wdf_suche").Value = Me._wdf_suche
' XML-Datei speichern
xml.Save(My.Settings.vMIConfigDatei)
' Profil auf gespeichert setzen
Me._saved = True
MsgBox("Das Profil '" & Me._originalProfilname & "' wurde erfolgreich gespeichert.", MsgBoxStyle.Information, "Profil gespeichert")
Return True
Else
MsgBox("Es wurde kein Profilname für das Profil definiert.", MsgBoxStyle.Information, "Profil konnte nicht gespeichert werden")
Return False
End If
End If
Return False
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler beim Speichern eines Profils")
Return False
End Try
End Function
Public Function ExistParameter(ByVal indexname As String) As Boolean
If Me._parameter IsNot Nothing Then
For Each param As String In Me._parameter
If param = indexname Then Return True
Next
End If
Return False
End Function
Public Sub AddParameter(ByVal indexname As String)
If Not indexname = "" Then
If Not Me.ExistParameter(indexname) Then
If Me._parameter IsNot Nothing Then
ReDim Preserve Me._parameter(Me._parameter.Length)
Else
ReDim Me._parameter(0)
End If
Me._parameter(Me._parameter.Length - 1) = indexname
End If
End If
End Sub
Public Sub RemoveParameter(ByVal indexname As String)
If ClassMI_Profile.Exists(Profilname) Then
' temporäres Array erzeugen
Dim tempItems() As String = Me._parameter
Me._parameter = Nothing
Dim i As Integer = 0
If tempItems IsNot Nothing Then
' alle Verknüpfungen durchlaufen
For Each item As String In tempItems
' wenn es sich nicht um das gelöschte handelt
If Not item = indexname Then
' Größe anpassen
ReDim Preserve Me._parameter(i)
' die Verknüpfung in das Items-Array übertragen
Me._parameter(i) = item
' Counter hochzählen
i += 1
End If
Next
End If
End If
End Sub
Public Sub TauscheParameterPosition(ByVal pos_von As Integer, ByVal pos_nach As Integer)
If Me._parameter IsNot Nothing Then
Dim merkeElement As String = Me._parameter(pos_nach)
Me._parameter(pos_nach) = Me._parameter(pos_von)
Me._parameter(pos_von) = merkeElement
End If
End Sub
Public Function GetIndexVonParameter(ByVal indexname As String)
If Me._parameter IsNot Nothing Then
Dim i As Integer = 0
' Position des auzutauschenden Elements auslesen
For Each param As String In Me._parameter
If param = indexname Then Return i
i += 1
Next
End If
Return Nothing
End Function
Public Sub ShiftParameterHoch(ByVal indexname As String)
If Me._parameter IsNot Nothing Then
If Not indexname = "" And Me.GetIndexVonParameter(indexname) > 0 Then
Me.TauscheParameterPosition(Me.GetIndexVonParameter(indexname), Me.GetIndexVonParameter(indexname) - 1)
End If
End If
End Sub
Public Sub ShiftParameterRunter(ByVal indexname As String)
If Me._parameter IsNot Nothing Then
If Not indexname = "" And Me.GetIndexVonParameter(indexname) < Me._parameter.Length - 1 Then
Me.TauscheParameterPosition(Me.GetIndexVonParameter(indexname), Me.GetIndexVonParameter(indexname) + 1)
End If
End If
End Sub
Public Sub SaveParameters()
If Me._parameter IsNot Nothing Then
If Me.IsXmlIsAccessable() Then
' XML-Dokument initialisieren
Dim xml As New Xml.XmlDocument
' XML-Datei laden
xml.Load(My.Settings.vMIConfigDatei)
Try
' versuchen die XML-Beschreibung zu schreiben
xml.InsertBefore(xml.CreateXmlDeclaration("1.0", "ISO-8859-1", "yes"), xml.ChildNodes(0))
Catch ex As Exception
' wenn dies nicht funktioniert, ist die Beschreibung schon vorhanden
End Try
' wenn die Hauptknoten noch nicht eingetragen wurden, sollen diese angelegt werden
If xml.DocumentElement Is Nothing Then xml.AppendChild(xml.CreateElement("Settings"))
If xml.SelectNodes("Settings/Profile/Profil[@profilname='" & Me._originalProfilname & "']") Is Nothing Then Exit Sub
Dim xmlProfil As Xml.XmlNode = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me._originalProfilname & "']")
xmlProfil.InnerXml = ""
Dim i As Integer = 0
For Each param As String In Me._parameter
Dim xmlParam As Xml.XmlElement = xml.CreateElement("Parameter")
xmlParam.SetAttribute("index", param)
xmlParam.SetAttribute("position", i)
' und in den Hauptknoten 'Profile' einhängen
xmlProfil.AppendChild(xmlParam)
i += 1
Next
' XML-Datei speichern
xml.Save(My.Settings.vMIConfigDatei)
End If
End If
End Sub
Private Function IsXmlIsAccessable()
Dim xml As New Xml.XmlDocument
Try
' XML-Datei laden und speichern um Zugriff zu testen
xml.Load(My.Settings.vMIConfigDatei)
xml.Save(My.Settings.vMIConfigDatei)
Return True
Catch ex As Exception
Try
Dim fw As System.IO.StreamWriter = New System.IO.StreamWriter(My.Settings.vMIConfigDatei)
fw.WriteLine("<?xml version=""1.0"" encoding=""ISO-8859-1"" standalone=""yes""?>")
fw.WriteLine("<Settings>")
fw.WriteLine(" <Profile />")
fw.WriteLine("</Settings>")
fw.Close()
Return True
Catch e2 As Exception
Return False
End Try
End Try
End Function
Public Sub ÜbernehmeAktuelleWerte()
' die neuen Werte den Originalwerten zuweisen
Me._originalProfilname = Me._profilname
Me._originalServername = Me._servername
Me._originalZeige_suchmaske = Me._zeige_suchmaske
Me._originalWdf_suche = Me._wdf_suche
End Sub
'Public Function IsLinksSaved()
' Return Me.linksSaved
'End Function
'' setzt das Profil auf geändert
'Public Sub setLinksChanged()
' ' Profil auf geändert setzen
' Me.linksSaved = False
'End Sub
'' setzt das Profil auf gespeichert
'Public Sub setLinksSaved()
' ' Profil auf gespeichert setzen
' Me.linksSaved = True
'End Sub
'Public Sub setProfilname(ByVal profilname As String)
' ' Profilname setzen
' Me._profilname = profilname
' ' Profil auf geändert setzen
' Me.setChanged()
'End Sub
'Public Function getProfilname()
' ' Profilname zurückgeben
' Return Me._originalProfilname
'End Function
'Public Sub setWindreamsuche(ByVal windreamsuche As String)
' ' Speicherort für windream-Suche setzen
' Me.WindreamSuche = windreamsuche
' ' Profil auf geändert setzen
' Me.setChanged()
'End Sub
'Public Function getWindreamsuche()
' ' Speicherort der windream-Suche zurückgeben
' Return Me.WindreamSuche
'End Function
'Public Function getObjekttyp()
' ' wenn für dieses Profil ein Dokumenttyp gesetzt wurde
' If Not Me.DokumentTyp Is Nothing Then
' ' Dokumenttyp als Objekt zurückgeben
' Return Me.DokumentTyp
' End If
' ' wenn keiner gesetzt wurde nichts zurückgeben
' Return Nothing
'End Function
'Public Function getObjekttypAsString()
' ' wenn für dieses Profil ein Dokumenttyp gesetzt wurde
' If Not Me.DokumentTyp Is Nothing Then
' ' Name des Dokumenttyps zurückgeben
' Return Me.DokumentTyp.aName
' End If
' ' wenn keiner gesetzt wurde nichts zurückgeben
' Return Nothing
'End Function
'Public Function getLinkById(ByVal id As Integer)
' If Not id < 0 And Not id > Me.CountLinks - 1 Then
' Return Me.Items(id)
' Else
' Return Nothing
' End If
'End Function
'Public Function getLinkByValues(ByVal index As String, ByVal spalte As String, ByVal from As String)
' For Each link As ClassVerknuepfung In Me.Items
' If link.Index = index And link.Spalte = spalte And link.From = from Then
' Return link
' End If
' Next
' Return Nothing
'End Function
'Public Sub AddLink(ByVal index As String, ByVal spalte As String, ByVal from As String, ByVal selectanweisung As String)
' Dim xml As New Xml.XmlDocument
' Dim xmlProfil As Xml.XmlElement
' ' XML-Datei laden
' xml.Load(Me.xmlConfigFile)
' Try
' ' versuchen die XML-Beschreibung zu schreiben
' xml.InsertBefore(xml.CreateXmlDeclaration("1.0", "ISO-8859-1", "yes"), xml.ChildNodes(0))
' Catch ex As Exception
' ' wenn dies nicht funktioniert, ist die Beschreibung schon vorhanden
' End Try
' ' wenn die Hauptknoten noch nicht eingetragen wurden, sollen diese angelegt werden
' If xml.SelectNodes("Settings") Is Nothing Or _
' xml.SelectNodes("Settings/Profile") Is Nothing Or _
' xml.SelectNodes("Settings/Profile/Profil[@profilname='" & Me.OriginalProfilname & "']") Is Nothing Then
' MsgBox("Profil ist nicht vorhanden. Möglicherweise ist die Konfigurationsdatei ungültig.", MsgBoxStyle.Exclamation, "Fehler beim Anlegen einer Verknüpfung")
' Exit Sub
' End If
' ' dann ein neues Profil anlegen
' xmlProfil = xml.CreateElement("Link")
' ' dem Profil die Attribute zuweisen
' xmlProfil.SetAttribute("index", index)
' xmlProfil.SetAttribute("spalte", spalte)
' xmlProfil.SetAttribute("from", from)
' xmlProfil.SetAttribute("select", "")
' ' und in den Hauptknoten 'Profile' einhängen
' xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me.OriginalProfilname & "']").AppendChild(xmlProfil)
' ' XML-Datei speichern
' xml.Save(Me.xmlConfigFile)
' ' die Liste der Profile im Objekt vergrößern
' ReDim Preserve Me.Items(Me.Count)
' ' und das neue Profil dem Profilarray anhängen und die Eigenschaften zuweisen
' 'Me.Items(Me.CountLinks - 1) = New ClassVerknuepfung(index, spalte, from, selectanweisung)
'End Sub
'Public Sub RemoveLink(ByVal index As String, ByVal spalte As String, ByVal from As String)
' ' *** Element aus Konfigurationsdatei löschen ***
' ' XML-Objekt initialisieren
' Dim xml As New Xml.XmlDocument
' ' XML-Datei laden
' xml.Load(Me.xmlConfigFile)
' ' XML-Element auswählen
' Dim node As Xml.XmlElement = xml.SelectSingleNode("Settings/Profile/Profil[@profilname='" & Me.OriginalProfilname & "']/Link[@index='" & index & "'][@spalte='" & spalte & "'][@from='" & from & "']")
' If node IsNot Nothing Then
' ' Element löschen
' node.ParentNode.RemoveChild(node)
' ' XML-Datei speichern
' xml.Save(Me.xmlConfigFile)
' End If
' ' *** Array umschreiben (Element aus Array entfernen) ***
' ' temporäres Array erzeugen
' Dim tempItems() As ClassVerknuepfung = Me.Items
' Dim i As Integer = 0
' ' Größe anpassen
' ReDim Preserve Me.Items(tempItems.Length - 2)
' ' alle Verknüpfungen durchlaufen
' For Each item As ClassVerknuepfung In tempItems
' ' wenn es sich nicht um das gelöschte handelt
' If Not (item.Index = index And item.Spalte = spalte And item.From = from) Then
' ' die Verknüpfung in das Items-Array übertragen
' Me.Items(i) = item
' ' Counter hochzählen
' i += 1
' End If
' Next
'End Sub
' liefert zurück ob das Profil gespeichert ist oder nicht
'Public Function IsSaved()
' Return Me._saved
'End Function
Public Property OriginalProfilname() As String
Get
Return Me._originalProfilname
End Get
Set(ByVal value As String)
Me._originalProfilname = value
End Set
End Property
Public Property Profilname() As String
Get
Return Me._profilname
End Get
Set(ByVal value As String)
Me._profilname = value
' Profil auf geändert setzen
Me.setChanged()
End Set
End Property
Public Property Dokumenttyp() As WINDREAMLib.WMObject
Get
Try
Return Me._dokumenttyp
Catch ex As Exception
Return Nothing
MsgBox("Der Dokumenttyp konnte nicht korrekt zurückgegeben. (0x00000001)" & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Exclamation, "Fehler bei Zugriff auf Dokumenttyp")
End Try
End Get
Set(ByVal value As WINDREAMLib.WMObject)
Me._dokumenttyp = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property DokumenttypString() As String
Get
Try
If Not Me._dokumenttypString = "" Then
Return Me._dokumenttypString
ElseIf Me._dokumenttypString = "" And Me._dokumenttyp IsNot Nothing Then
Return Me._dokumenttyp.aName
Else
MsgBox("Es ist kein Dokumenttyp definiert. Es kann ggf. nicht auf die windream-Session zugegriffen werden.", MsgBoxStyle.Information, "Fehlender Dokumenttyp")
Return ""
End If
Catch ex As Exception
MsgBox("Der Dokumenttyp konnte nicht korrekt zurückgegeben. (0x00000002)" & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Exclamation, "Fehler bei Zugriff auf Dokumenttyp")
Return ""
End Try
End Get
End Property
Public ReadOnly Property OriginalServername() As String
Get
Return Me._originalServername
End Get
End Property
Public Property Servername() As String
Get
Return Me._servername
End Get
Set(ByVal value As String)
Me._servername = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalZeigeSuchmaske() As Boolean
Get
Return Me._originalZeige_suchmaske
End Get
End Property
Public Property ZeigeSuchmaske() As Boolean
Get
Return Me._zeige_suchmaske
End Get
Set(ByVal value As Boolean)
Me._zeige_suchmaske = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property OriginalWdfSuche() As String
Get
Return Me._originalWdf_suche
End Get
End Property
Public Property WdfSuche() As String
Get
Return Me._wdf_suche
End Get
Set(ByVal value As String)
Me._wdf_suche = value
Me.setChanged()
End Set
End Property
Public ReadOnly Property HasChanges() As Boolean
Get
If Me.Profilname = Me.OriginalProfilname And _
Me.Servername = Me.OriginalServername And _
Me.ZeigeSuchmaske = Me.OriginalZeigeSuchmaske And _
Me.WdfSuche = Me.OriginalWdfSuche Then
Return False
Else
Return True
End If
' Return Not Me._saved
End Get
End Property
Public ReadOnly Property IsSaved() As Boolean
Get
Return Me._saved
End Get
End Property
'Public ReadOnly Property Config() As ClassMerkatorIntegrationKonfiguration
' Get
' Return Me._config
' End Get
'End Property
'Public ReadOnly Property Count()
' Get
' ' Anzahl der Verknüpfungen zurückgeben
' If Me._regeln IsNot Nothing Then
' Return Me._regeln.Length
' Else
' Return 0
' End If
' End Get
'End Property
End Class

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 733 B

Some files were not shown because too many files have changed in this diff Show More