This commit is contained in:
2021-03-04 15:47:27 +01:00
parent 8431ce57eb
commit 569991b011
22 changed files with 14399 additions and 116 deletions

View File

@@ -1,7 +1,7 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.28307.106
# Visual Studio Version 16
VisualStudioVersion = 16.0.30804.86
MinimumVisualStudioVersion = 10.0.40219.1
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ADMIN", "UID\ADMIN.vbproj", "{6EB4D3A4-3CF2-4651-9AF9-AD5F727DF403}"
EndProject
@@ -33,6 +33,8 @@ Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "NCTSPartnerWorker", "cNCTSP
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "RKSV_DE", "RKSV_DE\RKSV_DE.vbproj", "{173CD166-FB23-4E8F-9BAA-DBDAF2A0383F}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "MIC_Worker_lib", "MIC_Worker_lib\MIC_Worker_lib.vbproj", "{60833DC6-70ED-450A-B51F-4A953E67ADA0}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -99,6 +101,10 @@ Global
{173CD166-FB23-4E8F-9BAA-DBDAF2A0383F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{173CD166-FB23-4E8F-9BAA-DBDAF2A0383F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{173CD166-FB23-4E8F-9BAA-DBDAF2A0383F}.Release|Any CPU.Build.0 = Release|Any CPU
{60833DC6-70ED-450A-B51F-4A953E67ADA0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{60833DC6-70ED-450A-B51F-4A953E67ADA0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{60833DC6-70ED-450A-B51F-4A953E67ADA0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{60833DC6-70ED-450A-B51F-4A953E67ADA0}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

View File

@@ -532,6 +532,10 @@ Public Class cZOLL_IMPORT
If SPEDITIONSBUCH.Abfertigungsart <= 0 Then SPEDITIONSBUCH.Abfertigungsart = SENDUNG.tblSnd_Abfertigungsart_ID
If SPEDITIONSBUCH.Abfertigungsanzahl = 0 Then SPEDITIONSBUCH.Abfertigungsanzahl = SENDUNG.tblSnd_anzahlHandling
If SPEDITIONSBUCH.AbfertigungsanzahlPos IsNot Nothing AndAlso IsNumeric(SPEDITIONSBUCH.AbfertigungsanzahlPos) Then
SPEDITIONSBUCH.AbfertigungsanzahlPos = SENDUNG.tblSnd_anzahlPOS ' (NOCH) Keine Funktion!
SPEDITIONSBUCH.Vermerk = "Pos-Anzahl: " & SPEDITIONSBUCH.AbfertigungsanzahlPos
End If
If SPEDITIONSBUCH.PersonalnummerQS <= 0 Then SPEDITIONSBUCH.PersonalnummerQS = SENDUNG.tblSnd_QS_MA
If SPEDITIONSBUCH.PersonalnummerAbklTR <= 0 Then SPEDITIONSBUCH.PersonalnummerAbklTR = SENDUNG.tblSnd_AbklaerungTR_MA

View File

@@ -5,6 +5,11 @@ Imports System.Data.SqlClient
Public Class cPLOSE
Property plose_Id As Integer
Property plose_RechnungsDatum As Object = Nothing ' VARCHAR(3) NULL,
Property plose_RechnungsNr As Object = Nothing ' VARCHAR(3) NULL,
Property plose_Dateiname As Object = Nothing ' VARCHAR(3) NULL,
Property plose_Einlesedatum As Date = Now ' VARCHAR(3) NULL,
Property plose_Datensatztyp As Object = Nothing ' VARCHAR(3) NULL,
Property plose_KodexMautTankstelle As Object = Nothing ' VARCHAR(7) NULL,
Property plose_BeschreibungMautTankstelle As Object = Nothing ' VARCHAR(12) NULL,
@@ -55,6 +60,7 @@ Imports System.Data.SqlClient
LOAD()
End Sub
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("plose_id", plose_Id, , True, True))
@@ -62,6 +68,10 @@ Imports System.Data.SqlClient
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("plose_RechnungsDatum", plose_RechnungsDatum)) ' VARCHAR(3) NULL,
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("plose_RechnungsNr", plose_RechnungsNr)) ' VARCHAR(3) NULL,
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("plose_Dateiname", plose_Dateiname)) ' VARCHAR(3) NULL,
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("plose_Einlesedatum", plose_Einlesedatum)) ' VARCHAR(3) NULL,
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("plose_Datensatztyp", plose_Datensatztyp)) ' VARCHAR(3) NULL,
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("plose_KodexMautTankstelle", plose_KodexMautTankstelle)) ' VARCHAR(7) NULL,
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("plose_BeschreibungMautTankstelle", plose_BeschreibungMautTankstelle)) ' VARCHAR(12) NULL,
@@ -150,6 +160,16 @@ Imports System.Data.SqlClient
End Try
End Sub
Shared Sub UPDATE_RGDatum(plose_RechnungsDatum As Date, plose_RechnungsNr As Integer, plose_POLSEKundennummer As Integer)
Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
SQL.doSQL("UPDATE tblPLOSE_Details SET plose_RechnungsDatum='" & plose_RechnungsDatum.ToShortDateString & "' WHERE plose_RechnungsNr='" & plose_RechnungsNr & "' AND plose_POLSEKundennummer='" & plose_POLSEKundennummer & "' ", "FMZOLL")
Catch ex As Exception
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
End Try
End Sub
Public Function getUpdateCmd() As String
Try

3
MIC_Worker_lib/Class1.vb Normal file
View File

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

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,138 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Mit XMLSpy v2011 rel. 3 sp1 (x64) (http://www.altova.com) von MIC Datenverarbeitung GmbH (MIC Datenverarbeitung GmbH) bearbeitet -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:http://www.mic-cust.com/MicErrorWarningMessage/5.2" targetNamespace="urn:http://www.mic-cust.com/MicErrorWarningMessage/5.2" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="ErrorMessages">
<xs:complexType>
<xs:sequence>
<xs:element ref="ErrorMessage" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="WarningMessages">
<xs:complexType>
<xs:sequence>
<xs:element ref="WarningMessage" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="WarningMessage" type="TErrorMessageType">
<xs:annotation>
<xs:documentation>Warning message used for all occurred warnings and minor exceptions</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ErrorMessage" type="TErrorMessageType">
<xs:annotation>
<xs:documentation>Error message used for all occurred exceptions</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="FaultMessage" type="TErrorMessageType">
<xs:annotation>
<xs:documentation>Fault message used for all occurred fault exceptions</xs:documentation>
</xs:annotation>
</xs:element>
<xs:complexType name="TErrorDetail">
<xs:annotation>
<xs:documentation>Contains details to an error message</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="timestamp" type="xs:dateTime"/>
<xs:element name="stackTrace" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>Stacktrace from Exception</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="additionalDetails" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Additional error details</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="type" type="xs:string" use="required"/>
<xs:attribute name="key" type="xs:string" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TErrorMessageType">
<xs:annotation>
<xs:documentation>General error type used for error messages</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="module" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>MIC Module where the error occured</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="process" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>Process inside the MIC module where the error occured</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="errorCode" type="xs:string">
<xs:annotation>
<xs:documentation>Error code to identify error </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="errorDesc" type="xs:string">
<xs:annotation>
<xs:documentation>Description of the occurred exception</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Reference" type="TReference" minOccurs="0"/>
<xs:element name="Details" type="TErrorDetail" minOccurs="0">
<xs:annotation>
<xs:documentation>More detailed information about the error</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TReference">
<xs:sequence>
<xs:element name="company" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>MIC company</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="plant" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>MIC plant</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="correlationId" minOccurs="0">
<xs:annotation>
<xs:documentation>Unique reference number generated in MIC </xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="255"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="referenceType" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>Reference type used in MIC </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceSid" type="xs:long" minOccurs="0">
<xs:annotation>
<xs:documentation>Reference sid used MIC </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="user" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>MIC user</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partnerId" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>Partner ID used in MIC</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="routeId" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>ID of route where error is occurred</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:http://www.mic-cust.com/MicCustImportShipment/6.1" xmlns:meta="urn:http://www.mic-cust.com/MicMetadata/5.2" xmlns:error="urn:http://www.mic-cust.com/MicErrorWarningMessage/5.2" targetNamespace="urn:http://www.mic-cust.com/MicCustImportShipment/6.1" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="MicCustImportShipment.xsd"/>
<xs:import namespace="urn:http://www.mic-cust.com/MicErrorWarningMessage/5.2" schemaLocation="http://www.mic-cust.com/MicMetadata/MicErrorWarningMessage.xsd"/>
<xs:import namespace="urn:http://www.mic-cust.com/MicMetadata/5.2" schemaLocation="http://www.mic-cust.com/MicMetadata/MicMetadata.xsd"/>
<!--===== Data Groups Declarations =====-->
<!-- actual request/response types, describes the data which may be sent as response, you should define a response type for each webservice operation / business process-->
<xs:element name="InsertImportShipment">
<xs:annotation>
<xs:documentation>Message for inserting MIC CUST ImportShipment</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="ImportShipmentMessage"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!--elements which should be used for operations-->
<xs:element name="ImportShipmentMessage" type="TImportShipMsg"/>
<xs:element name="StatusResponse" type="meta:TStatusResponse"/>
<!-- types which include the MIC standard message details, eg messageID, transactionID, ActionCode,... and links it with the actual structure-->
<xs:complexType name="TImportShipMsg">
<xs:annotation>
<xs:documentation>MIC request message</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element ref="meta:Metadata"/>
<xs:element ref="meta:MessageDetail"/>
<xs:element ref="ImportShipment"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@@ -0,0 +1,215 @@
<!-- Mit XMLSpy v2011 rel. 3 sp1 (x64) (http://www.altova.com) von MIC Datenverarbeitung GmbH (MIC Datenverarbeitung GmbH) bearbeitet -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:http://www.mic-cust.com/MicMetadata/5.2" xmlns:err="urn:http://www.mic-cust.com/MicErrorWarningMessage/5.2" targetNamespace="urn:http://www.mic-cust.com/MicMetadata/5.2" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="urn:http://www.mic-cust.com/MicErrorWarningMessage/5.2" schemaLocation="MicErrorWarningMessage.xsd"/>
<xs:element name="Metadata" type="TMicMetadata"/>
<xs:element name="MessageDetail" type="TMessageDetail"/>
<xs:element name="Status" type="TStatus"/>
<xs:complexType name="TMicMetadata">
<xs:annotation>
<xs:documentation>Details of the connection to the ERP-System</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="connectionId" type="TConnectionId"/>
<xs:element name="partnerId" type="TPartnerId">
<xs:annotation>
<xs:documentation>The partner ID is a unique ID provided by the MIC-System and classify the ERP-System of the customer. This information is given by MIC.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dateTime" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Creation date/time of the message in the ERP-System</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TActionCode">
<xs:annotation>
<xs:documentation> Action Requested for automatic processing</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="code">
<xs:annotation>
<xs:documentation>Action code for automatic processing</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="10"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="parameter" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>additional parameters</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="key" use="required"/>
<xs:attribute name="value" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TMessageDetail">
<xs:annotation>
<xs:documentation>MIC Interface Message Envelope: description of the single message</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="messageId" type="TMessageId">
<xs:annotation>
<xs:documentation>Unique Message ID</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="partyId" type="TPartyId">
<xs:annotation>
<xs:documentation>Party ID is used as a separations of departments or single message groups</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="transactionId" type="TTransactionId">
<xs:annotation>
<xs:documentation>Unique Identifier of a transaction (declaration) e.g. MRN or LRN</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="sequenceNum" type="TSequenceNum">
<xs:annotation>
<xs:documentation>Running number of the transaction Id</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ActionCode" type="TActionCode" minOccurs="0">
<xs:annotation>
<xs:documentation>The ActionCode definies the autmoatic process in the MIC-Application. </xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="StatusMessage">
<xs:annotation>
<xs:documentation>Status message with Metadata and MessageDetail</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="Metadata"/>
<xs:element ref="MessageDetail"/>
<xs:element ref="Status">
<xs:annotation>
<xs:documentation>Set of Messages</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="TStatusResponse">
<xs:annotation>
<xs:documentation>Status response message used for synchronous answers</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element ref="Status">
<xs:annotation>
<xs:documentation>Set of Messages</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TStatus">
<xs:sequence>
<xs:element name="status">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="OK"/>
<xs:enumeration value="ERROR"/>
<xs:enumeration value="WARNING"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:choice>
<xs:element name="Reference" type="TMetaReference"/>
<xs:element ref="err:ErrorMessages" minOccurs="0"/>
<xs:element ref="err:WarningMessages" minOccurs="0"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TMetaReference">
<xs:sequence>
<xs:element name="correlationId" minOccurs="0">
<xs:annotation>
<xs:documentation>Unique reference number generated in MIC </xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="255"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="company" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>MIC company</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="plant" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>MIC plant</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceType" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>Reference type used in MIC </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="referenceSid" type="xs:long" minOccurs="0">
<xs:annotation>
<xs:documentation>Reference sid used MIC </xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="TTransactionId">
<xs:annotation>
<xs:documentation> Envelope:Unique transaction ID used for communication with EDIS webservice</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="100"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TSequenceNum">
<xs:annotation>
<xs:documentation> Envelope:running count </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:integer"/>
</xs:simpleType>
<xs:simpleType name="TMessageId">
<xs:annotation>
<xs:documentation>envelope:Unique Message ID used for communication in message envelope</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="100"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TPartyId">
<xs:annotation>
<xs:documentation> Envelope: communication pary</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TPartnerId">
<xs:annotation>
<xs:documentation> Envelope: communication partner</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="30"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TConnectionId">
<xs:annotation>
<xs:documentation>Connection ID of the MIC-Webservice</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="40"/>
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@@ -0,0 +1,119 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{60833DC6-70ED-450A-B51F-4A953E67ADA0}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>MIC_Worker_lib</RootNamespace>
<AssemblyName>MIC_Worker_lib</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v4.7</TargetFrameworkVersion>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>MIC_Worker_lib.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>MIC_Worker_lib.xml</DocumentationFile>
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
</PropertyGroup>
<PropertyGroup>
<OptionExplicit>On</OptionExplicit>
</PropertyGroup>
<PropertyGroup>
<OptionCompare>Binary</OptionCompare>
</PropertyGroup>
<PropertyGroup>
<OptionStrict>Off</OptionStrict>
</PropertyGroup>
<PropertyGroup>
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Net.Http" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Diagnostics" />
<Import Include="System.Linq" />
<Import Include="System.Xml.Linq" />
<Import Include="System.Threading.Tasks" />
</ItemGroup>
<ItemGroup>
<Compile Include="Class1.vb" />
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
</Compile>
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="MIC\Import\MicCustImportInvoiceTypes.xsd">
<SubType>Designer</SubType>
</None>
<None Include="MIC\Import\MicCustImportShipment.xsd">
<SubType>Designer</SubType>
</None>
<None Include="MIC\Import\MicErrorWarningMessage.xsd">
<SubType>Designer</SubType>
</None>
<None Include="MIC\Import\MicMetaCustImportShipment.xsd">
<SubType>Designer</SubType>
</None>
<None Include="MIC\Import\MicMetadata.xsd">
<SubType>Designer</SubType>
</None>
<None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None>
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
</Project>

View File

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

View File

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

View File

@@ -0,0 +1,35 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' Allgemeine Informationen über eine Assembly werden über die folgenden
' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
' die einer Assembly zugeordnet sind.
' Werte der Assemblyattribute überprüfen
<Assembly: AssemblyTitle("MIC_Worker_lib")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("MIC_Worker_lib")>
<Assembly: AssemblyCopyright("Copyright © 2021")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
'Die folgende GUID wird für die typelib-ID verwendet, wenn dieses Projekt für COM verfügbar gemacht wird.
<Assembly: Guid("8ba2f776-e9dd-47cf-9daf-e40ae8f1d935")>
' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
'
' Hauptversion
' Nebenversion
' Buildnummer
' Revision
'
' Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
' indem Sie "*" wie unten gezeigt eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

View File

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

View File

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

View File

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

View File

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

View File

@@ -418,8 +418,8 @@
Select Case GRN
Case "15TR0004000020917", "12TR0004000004665", "17TR0004000032349", "17TR0004000029518"
If cVERAG_Interface_Settings.acticeInterface_TOBB Then IF_Obj.Add(New cVERAG_InterfaceSharedObjects("\\ftps.verag.ag\FTP\TOBB\OUT\", "TOBB"))
Case "18DE0000000073276", "19DE0000000075520", "18DE0000000075520"
If cVERAG_Interface_Settings.acticeInterface_OREGON Then IF_Obj.Add(New cVERAG_InterfaceSharedObjects("\\ftps.verag.ag\FTP\OREGON\OUT\", "OREGON"))
Case "18DE0000000073276", "19DE0000000075520", "18DE0000000075520", "15TR0004000020500"
If cVERAG_Interface_Settings.acticeInterface_OREGON Then IF_Obj.Add(New cVERAG_InterfaceSharedObjects("\\ftps.verag.ag\FTP\OREGON\OUT\", " "))
Case "17DE0000000071678", "05AT510000G000FP7" 'VERAG
If cVERAG_Interface_Settings.acticeInterface_VERAG Then IF_Obj.Add(New cVERAG_InterfaceSharedObjects(VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getRootDir() & "DAKOSY\ECHTSYSTEM\FTP\VERAG\", "VERAG"))
Case "16AT520000G000VA6" 'IMEX

View File

@@ -505,6 +505,13 @@ Public Class cGetMsgType
End If
Return False
End Function
Shared Function isPLOSE_Header(doc As String) As Boolean
Dim lines() As String = IO.File.ReadAllLines(doc)
If lines(0).ToString.StartsWith("TR6") Then
Return True
End If
Return False
End Function
End Class

View File

@@ -5584,22 +5584,29 @@ Public Class frmDYNachrichtenVerarbeitung
ABGABEN.Übernahmedatum = Now
ABGABEN.Eingabedatum = regDat
If If(ABGABEN.Bezugsnummer, "").ToString.Length > 35 Then ABGABEN.Bezugsnummer = ABGABEN.Bezugsnummer.ToString.Substring(0, 35)
If If(ABGABEN.Registriernummer, "").ToString.Length > 21 Then ABGABEN.Registriernummer = ABGABEN.Registriernummer.ToString.Substring(0, 21)
Dim errHInweis = "ATC: " & ABGABEN.Registriernummer & " - BezugsNr: " & ABGABEN.Bezugsnummer
ABGABEN.SAVE(errHInweis)
Select Case CInt(A.AufschubkontoNr)
Case 6128 : tryToInsertProgramm(ABGABEN.Eingabedatum, ABGABEN.Betrag, 1, EDIFACTNachrichtenNr, ABGABEN.Registriernummer, 0)
Case 2718 : tryToInsertProgramm(ABGABEN.Eingabedatum, ABGABEN.Betrag, 8, EDIFACTNachrichtenNr, ABGABEN.Registriernummer, 0)
If Not VERAG_PROG_ALLGEMEIN.cAbgaben.EXISTS(ABGABEN.LeistungsNr, ABGABEN.Betrag, ABGABEN.Registriernummer, ABGABEN.AOFD, ABGABEN.AKTO, ABGABEN.Fälligkeitsdatum) Then
'Case 2718 : VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMailTEST("al@verag.ag", "AUFSCHUB IMEX: " & ABGABEN.Betrag, "AUFSCHUB IMEX: " & ABGABEN.Betrag & vbNewLine & ABGABEN.Bezugsnummer)
End Select
Dim errHInweis = "ATC: " & ABGABEN.Registriernummer & " - BezugsNr: " & ABGABEN.Bezugsnummer
ABGABEN.SAVE(errHInweis)
'Aufschub - Überwachung:
Select Case CInt(A.AufschubkontoNr)
Case 6128 : tryToInsertProgramm(ABGABEN.Eingabedatum, ABGABEN.Betrag, 1, EDIFACTNachrichtenNr, ABGABEN.Registriernummer, 0)
Case 2718 : tryToInsertProgramm(ABGABEN.Eingabedatum, ABGABEN.Betrag, 8, EDIFACTNachrichtenNr, ABGABEN.Registriernummer, 0)
'Case 2718 : VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMailTEST("al@verag.ag", "AUFSCHUB IMEX: " & ABGABEN.Betrag, "AUFSCHUB IMEX: " & ABGABEN.Betrag & vbNewLine & ABGABEN.Bezugsnummer)
End Select
If CInt(A.AufschubkontoNr) = 6128 Then 'Nur bei ZOLL ' --> TEST: Or CInt(A.AufschubkontoNr) = 678010
AtlasAufschubDatenEinlesen.tryToInsertProgramm(regDat, A.Abgabenbetrag, "1", "DY", regNr, "")
If CInt(A.AufschubkontoNr) = 6128 Then 'Nur bei ZOLL ' --> TEST: Or CInt(A.AufschubkontoNr) = 678010
AtlasAufschubDatenEinlesen.tryToInsertProgramm(regDat, A.Abgabenbetrag, "1", "DY", regNr, "")
End If
End If
End If

View File

@@ -269,7 +269,7 @@ Public Class frmMDMNachrichtenVerarbeitung
If True Then
' Temp.DownloadPfad
Dim destFilenameTMP = VERARBEITUNGS_PFAD + "." & If(IO.File.Exists(VERARBEITUNGS_PFAD & "." & name), Now.ToString("yyMMdd_HHmmss.fff_"), "") & name
Dim destFilenameTMP = VERARBEITUNGS_PFAD & "." & If(IO.File.Exists(VERARBEITUNGS_PFAD & "." & name), name.Replace(".csv", "_") & Now.ToString("yyMMdd_HHmmss.fff") & ".csv", name)
Dim downloadRequest As FtpWebRequest = WebRequest.Create(fileUrl)
downloadRequest.Method = WebRequestMethods.Ftp.DownloadFile
@@ -291,7 +291,7 @@ Public Class frmMDMNachrichtenVerarbeitung
targetStream.Dispose()
downloadResponse.Dispose()
Dim destFilename = VERARBEITUNGS_PFAD & If(IO.File.Exists(VERARBEITUNGS_PFAD & name), Now.ToString("yyMMdd_HHmmss.fff_"), "") & name
Dim destFilename = VERARBEITUNGS_PFAD & "." & If(IO.File.Exists(VERARBEITUNGS_PFAD & "." & name), name.Replace(".csv", "_") & Now.ToString("yyMMdd_HHmmss.fff") & ".csv", name)
IO.File.Move(destFilenameTMP, destFilename) 'Datei umbenennen
@@ -442,77 +442,70 @@ Public Class frmMDMNachrichtenVerarbeitung
Exit Sub
End If
For Each d In System.IO.Directory.GetFiles(VERARBEITUNGS_PFAD)
Try
Dateiname = d
cWorker_NCTS.Dateiname = d
If IO.File.Exists(d) Then
Dim found = False
Dim fi As FileInfo = New FileInfo(d)
For i = 1 To 3
' EDIFACT
' If fi.Extension = ".edi" Then
Dim alreadyMoved = False
If fi.Extension.ToLower = ".xml" Then
Dim xmlWriterSettings As XmlWriterSettings = New XmlWriterSettings With {.Encoding = System.Text.Encoding.UTF8, .CheckCharacters = True}
For Each d In System.IO.Directory.GetFiles(VERARBEITUNGS_PFAD)
Try
Dateiname = d
cWorker_NCTS.Dateiname = d
If IO.File.Exists(d) Then
Dim found = False
Dim fi As FileInfo = New FileInfo(d)
Dim doc As New XmlDocument()
Dim XML_Code = System.IO.File.ReadAllText(d, System.Text.UTF8Encoding.Default)
' EDIFACT
' If fi.Extension = ".edi" Then
Dim alreadyMoved = False
doc.LoadXml(SanitizeXmlString(XML_Code))
Dim VERSION As String = ""
If fi.Extension.ToLower = ".csv" Then
'------------------------------------------------------------------------------------------------------------------------------
' PLOSE
'------------------------------------------------------------------------------------------------------------------------------
'------------------------------------------------------------------------------------------------------------------------------
' eZOLL
'------------------------------------------------------------------------------------------------------------------------------
'------------------------------------------
'------------------ DETAIL ------------------
'------------------------------------------
Select Case i
Case 1
'TC: Versandbestätigung
If Not found And cGetMsgType.isPLOSE_Detail(d) Then
If readPLOSE_Detail(d) <> "" Then found = True
' If bezugsNr <> "" Then addDGVEinarbeitung("NCTS: Versandbestätigung", bezugsNr) : found = True
End If
If found Then cntDatenEingelesen += 1
Case 2
'TC: Versandbestätigung
If Not found And cGetMsgType.isPLOSE_Header(d) Then
If readPLOSE_Header(d) <> "" Then found = True
' If bezugsNr <> "" Then addDGVEinarbeitung("NCTS: Versandbestätigung", bezugsNr) : found = True
End If
If found Then cntDatenEingelesen += 1
Case 3
frmStartOptions.moveFile_DateBack(d, ERROR_PFAD)
dsNichtErkannt += 1
End Select
'------------------------------------------
'------------------ Anmeldung ------------------
'------------------------------------------
'TC: Versandbestätigung
'If Not found And cGetMsgType.isTC_Anmeldung(doc) Then
' If readTC_Anmeldung(doc, d) <> "" Then found = True
' ' If bezugsNr <> "" Then addDGVEinarbeitung("NCTS: Versandbestätigung", bezugsNr) : found = True
'End If
ElseIf fi.Extension.ToLower = ".csv" Then
'------------------------------------------------------------------------------------------------------------------------------
' PLOSE
'------------------------------------------------------------------------------------------------------------------------------
'------------------------------------------
'------------------ DETAIL ------------------
'------------------------------------------
'TC: Versandbestätigung
If Not found And cGetMsgType.isPLOSE_Detail(d) Then
If readPLOSE_Detail(d) <> "" Then found = True
' If bezugsNr <> "" Then addDGVEinarbeitung("NCTS: Versandbestätigung", bezugsNr) : found = True
End If
End If
If True Then
If Not alreadyMoved Then
If found Then
If Not IO.Directory.Exists(ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\") Then IO.Directory.CreateDirectory(ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
frmStartOptions.moveFile(d, ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
Else
frmStartOptions.moveFile(d, ERROR_PFAD)
If True Then
If Not alreadyMoved Then
If found Then
If Not IO.Directory.Exists(ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\") Then IO.Directory.CreateDirectory(ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
frmStartOptions.moveFile_DateBack(d, ZIEL_PFAD & Now.Year & "\" & Now.ToString("yyyyMMdd") & "\")
End If
End If
End If
End If
Me.Refresh()
Me.Refresh()
If found Then cntDatenEingelesen += 1 Else dsNichtErkannt += 1
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Next
Next
End Sub
@@ -572,55 +565,62 @@ Public Class frmMDMNachrichtenVerarbeitung
Try
currentRow = MyReader.ReadFields()
Dim fi As FileInfo = New FileInfo(d)
If fi.Name.Length > 8 Then
Dim plose_RechnungsNr = fi.Name.Substring(0, 8)
If currentRow.Length > 24 AndAlso currentRow(12) <> "839160" Then 'KDNR <> VERAG --> Die Kosten bleiben uns
Dim PLOSE As New MDM_Worker.cPLOSE
PLOSE.plose_Datensatztyp = SQL.isleernothing(currentRow(0))
PLOSE.plose_KodexMautTankstelle = SQL.isleernothing(currentRow(1))
PLOSE.plose_BeschreibungMautTankstelle = SQL.isleernothing(currentRow(2))
PLOSE.plose_KodexEinfahrt = SQL.isleernothing(currentRow(3))
PLOSE.plose_BeschreibungEinfahrt = SQL.isleernothing(currentRow(4))
PLOSE.plose_KodexAusfahrt = SQL.isleernothing(currentRow(5))
PLOSE.plose_BeschreibungAusfahrt = SQL.isleernothing(currentRow(6))
PLOSE.plose_Kartenkodex = SQL.isleernothing(currentRow(7))
PLOSE.plose_Kontonummer = SQL.isleernothing(currentRow(8))
PLOSE.plose_NummerKarteGeraet = SQL.isleernothing(currentRow(9))
PLOSE.plose_Kennzeichen = SQL.isleernothing(currentRow(10))
PLOSE.plose_InterneNrFahrzeug = SQL.isleernothing(currentRow(11))
PLOSE.plose_POLSEKundennummer = SQL.isleernothing(currentRow(12))
PLOSE.plose_Firmenname = SQL.isleernothing(currentRow(13))
PLOSE.plose_DatumTransaktion = SQL.isleernothingDateFormatstring(currentRow(14))
PLOSE.plose_Produktbeschreibung = SQL.isleernothing(currentRow(15))
PLOSE.plose_Menge = SQL.isNullNothingDbl(currentRow(16))
PLOSE.plose_Preis = SQL.isNullNothingDbl(currentRow(17))
PLOSE.Einheitsrabatt = SQL.isleernothing(currentRow(18))
PLOSE.plose_NettobetragTransaktion = SQL.isNullNothingDbl(currentRow(19))
PLOSE.plose_MWSTBetrag = SQL.isNullNothingDbl(currentRow(20))
PLOSE.plose_BruttobetragTransaktion = SQL.isNullNothingDbl(currentRow(21))
PLOSE.plose_NettobetragWaehrungAbbuchung = SQL.isNullNothingDbl(currentRow(22))
PLOSE.plose_MWSTBetragWaehrungAbbuchung = SQL.isNullNothingDbl(currentRow(23))
PLOSE.plose_BruttobetragWaehrungAbbuchung = SQL.isNullNothingDbl(currentRow(24))
PLOSE.plose_WaehrungLandDiesntleistung = SQL.isleernothing(currentRow(25))
PLOSE.plose_WaehrungAbbuchung = SQL.isleernothing(currentRow(26))
PLOSE.plose_DokumentNrQuittungUhrzeit = SQL.isleernothing(currentRow(27))
PLOSE.plose_ArtTransaktion = SQL.isleernothing(currentRow(28))
PLOSE.plose_Fahrzeugklasse = SQL.isleernothing(currentRow(29))
PLOSE.plose_KlassenidentifikationEURO = SQL.isleernothing(currentRow(30))
PLOSE.plose_ProduktbeschreibungShort = SQL.isleernothing(currentRow(31))
PLOSE.plose_DokumentNrQuittungUhrzeit = SQL.isleernothing(currentRow(32))
PLOSE.plose_Geraetetyp = SQL.isleernothing(currentRow(33))
PLOSE.plose_ProduktCode = SQL.isleernothing(currentRow(34))
PLOSE.plose_ReferenzenBuchungMaut = SQL.isleernothing(currentRow(35))
If currentRow.Length > 24 AndAlso currentRow(12) <> "839160" Then 'KDNR <> VERAG --> Die Kosten bleiben uns
Dim PLOSE As New MDM_Worker.cPLOSE
''''''''''''
If PLOSE.SAVE() Then
PLOSE.plose_Dateiname = fi.Name
PLOSE.plose_RechnungsNr = plose_RechnungsNr
PLOSE.plose_Datensatztyp = SQL.isleernothing(currentRow(0))
PLOSE.plose_KodexMautTankstelle = SQL.isleernothing(currentRow(1))
PLOSE.plose_BeschreibungMautTankstelle = SQL.isleernothing(currentRow(2))
PLOSE.plose_KodexEinfahrt = SQL.isleernothing(currentRow(3))
PLOSE.plose_BeschreibungEinfahrt = SQL.isleernothing(currentRow(4))
PLOSE.plose_KodexAusfahrt = SQL.isleernothing(currentRow(5))
PLOSE.plose_BeschreibungAusfahrt = SQL.isleernothing(currentRow(6))
PLOSE.plose_Kartenkodex = SQL.isleernothing(currentRow(7))
PLOSE.plose_Kontonummer = SQL.isleernothing(currentRow(8))
PLOSE.plose_NummerKarteGeraet = SQL.isleernothing(currentRow(9))
PLOSE.plose_Kennzeichen = SQL.isleernothing(currentRow(10))
PLOSE.plose_InterneNrFahrzeug = SQL.isleernothing(currentRow(11))
PLOSE.plose_POLSEKundennummer = SQL.isleernothing(currentRow(12))
PLOSE.plose_Firmenname = SQL.isleernothing(currentRow(13))
PLOSE.plose_DatumTransaktion = SQL.isleernothingDateFormatstring(currentRow(14))
PLOSE.plose_Produktbeschreibung = SQL.isleernothing(currentRow(15))
PLOSE.plose_Menge = SQL.isNullNothingDbl(currentRow(16))
PLOSE.plose_Preis = SQL.isNullNothingDbl(currentRow(17))
PLOSE.Einheitsrabatt = SQL.isleernothing(currentRow(18))
PLOSE.plose_NettobetragTransaktion = SQL.isNullNothingDbl(currentRow(19))
PLOSE.plose_MWSTBetrag = SQL.isNullNothingDbl(currentRow(20))
PLOSE.plose_BruttobetragTransaktion = SQL.isNullNothingDbl(currentRow(21))
PLOSE.plose_NettobetragWaehrungAbbuchung = SQL.isNullNothingDbl(currentRow(22))
PLOSE.plose_MWSTBetragWaehrungAbbuchung = SQL.isNullNothingDbl(currentRow(23))
PLOSE.plose_BruttobetragWaehrungAbbuchung = SQL.isNullNothingDbl(currentRow(24))
PLOSE.plose_WaehrungLandDiesntleistung = SQL.isleernothing(currentRow(25))
PLOSE.plose_WaehrungAbbuchung = SQL.isleernothing(currentRow(26))
PLOSE.plose_DokumentNrQuittungUhrzeit = SQL.isleernothing(currentRow(27))
PLOSE.plose_ArtTransaktion = SQL.isleernothing(currentRow(28))
PLOSE.plose_Fahrzeugklasse = SQL.isleernothing(currentRow(29))
PLOSE.plose_KlassenidentifikationEURO = SQL.isleernothing(currentRow(30))
PLOSE.plose_ProduktbeschreibungShort = SQL.isleernothing(currentRow(31))
PLOSE.plose_DokumentNrQuittungUhrzeit = SQL.isleernothing(currentRow(32))
PLOSE.plose_Geraetetyp = SQL.isleernothing(currentRow(33))
PLOSE.plose_ProduktCode = SQL.isleernothing(currentRow(34))
PLOSE.plose_ReferenzenBuchungMaut = SQL.isleernothing(currentRow(35))
''''''''''''
If PLOSE.SAVE() Then
End If
End If
cnt += 1
End If
cnt += 1
'For Each currentField In currentRow
'Next
@@ -661,6 +661,77 @@ Public Class frmMDMNachrichtenVerarbeitung
End Function
Function readPLOSE_Header(d As String) As String
Try
readPLOSE_Header = ""
Dim KdnR = ""
Using MyReader As New Microsoft.VisualBasic.FileIO.TextFieldParser(d, Encoding.UTF8)
MyReader.TextFieldType = FileIO.FieldType.Delimited
MyReader.SetDelimiters(";")
Dim currentRow As String()
Dim cnt = 0
If True Then
While Not MyReader.EndOfData
Try
currentRow = MyReader.ReadFields()
Dim fi As FileInfo = New FileInfo(d)
If fi.Name.Length > 8 Then
Dim plose_RechnungsNr = fi.Name.Substring(0, 8)
If IsNumeric(plose_RechnungsNr) AndAlso IsNumeric(currentRow(12)) Then
If currentRow.Length > 24 AndAlso currentRow(12) <> "839160" Then 'KDNR <> VERAG --> Die Kosten bleiben uns
Dim plose_RechnungsDatum = SQL.isleernothingDateFormatstring(currentRow(14))
If plose_RechnungsDatum IsNot Nothing AndAlso IsDate(plose_RechnungsDatum) Then
MDM_Worker.cPLOSE.UPDATE_RGDatum(plose_RechnungsDatum, plose_RechnungsNr, currentRow(12))
cnt += 1
End If
End If
End If
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
End While
'Label30.Text = (cnt + 1) & " / " & LineCount
'Label31.Visible = True
readPLOSE_Header = "Zeilen: " & cnt
Else
MsgBox("FEHLER beim Löschen der vorhandenen OP-Liste.")
End If
End Using
Try
' System.IO.File.Delete(p)
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
addDGVEinarbeitung("PLOSE: Header" & KdnR, readPLOSE_Header)
' End Using
'End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace & vbNewLine & "Datei: " & Dateiname, System.Reflection.MethodInfo.GetCurrentMethod.Name)
MsgBox(ex.StackTrace & ex.Message)
readPLOSE_Header = ""
End Try
End Function
Private Sub dgvEinarbeitung_SelectionChanged(sender As Object, e As EventArgs) Handles dgvEinarbeitung.SelectionChanged
dgvEinarbeitung.ClearSelection()

View File

@@ -277,6 +277,127 @@ Public Class frmStartOptions
Next
End If
End Sub
Sub doMailZollbeleg(pfad, art, dy_id)
Try
Dim DY As New DAKOSY_Worker.cDakosy_Zollanmeldungen(dy_id)
If DY.dy_SendungsId IsNot Nothing AndAlso CInt(DY.dy_SendungsId) > 0 Then
Dim SND As New VERAG_PROG_ALLGEMEIN.cSendungen(DY.dy_SendungsId)
Dim list As New List(Of Integer)
sendMailZollbeleg(pfad, SND.tblSnd_EmpfaengerKdNr, art, list, DY, SND)
sendMailZollbeleg(pfad, SND.tblSnd_AbsenderKdNr, art, list, DY, SND)
sendMailZollbeleg(pfad, SND.tblSnd_FrachtfuehrerKdNr, art, list, DY, SND)
sendMailZollbeleg(pfad, SND.tblSnd_AvisiererKdNr, art, list, DY, SND)
sendMailZollbeleg(pfad, SND.tblSnd_AuftraggeberKdNr, art, list, DY, SND)
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
End Try
End Sub
Sub sendMailZollbeleg(pfad As String, KundenNr As Integer, art As String, ByRef list As List(Of Integer), DY As DAKOSY_Worker.cDakosy_Zollanmeldungen, SND As VERAG_PROG_ALLGEMEIN.cSendungen)
Try
If KundenNr > 0 Then
If Not list.Find(Function(x) x = KundenNr) Then 'nicht bereits verarbeitet
list.Add(KundenNr)
Dim pfadList As New List(Of String)
pfadList.Add(pfad)
Dim KD As New VERAG_PROG_ALLGEMEIN.cKunde(KundenNr)
Dim KD_ERW As New VERAG_PROG_ALLGEMEIN.cKundenErweitert(KundenNr)
If KD_ERW IsNot Nothing AndAlso KD IsNot Nothing AndAlso KD.EmailFreigabe Then
If KD_ERW.EmailFreigabe_Art = "BLG" Then
Dim Standort = "SUB"
Select Case SND.FilialenNr
Case "5501" : Standort = "IMX"
Case "5601" : Standort = "UNI"
Case "5701" : Standort = "FO"
Case "5801" : Standort = "AMB"
Case "4801" : Standort = "ATL"
Case "5003" : Standort = "SBG"
Case "5103" : Standort = "WAI"
Case "5303" : Standort = "NKD"
Case Else
Standort = "SUB"
End Select
Dim cStandorteDAL As New VERAG_PROG_ALLGEMEIN.cStandorteDAL
'Dim gst = ""
'Dim AVISO = VERAG_PROG_ALLGEMEIN.cAviso.getAvisoById(DY.dy_AvisoId)
'If AVISO IsNot Nothing Then
' gst = AVISO.Grenzstelle.Replace("???", "")
'End If
Dim cStandort = cStandorteDAL.LesenStandort(-1, "", "SELECT * FROM Standorte WHERE Standort = '" & Standort & "'")
Dim FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale2(SND.FilialenNr)
Dim betreff = cStandort.eMail_Zollbeleg_Betreff '"Zollbeleg"
betreff = betreff.Replace("%LKW%", "")
betreff = betreff.Replace("%Standort%", "")
betreff = betreff.Replace("%Uhrzeit%", "")
Dim body = cStandort.eMail_Zollbeleg_Text
Dim EMails As String = ""
Dim EMails_CC As String = ""
Dim EMails_BCC As String = ""
Dim Emails_list_sent As New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList
VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigung.eMails_einlesen(KundenNr, 2, EMails, EMails_CC, EMails_BCC, Emails_list_sent)
body = body.Replace("%Platzhalter%", "E-Mails: " & EMails & " CC: " & EMails_CC & " BCC:" & EMails_BCC)
EMails = "al@verag.ag"
EMails_CC = ""
EMails_BCC = ""
Select Case art
Case "STB"
If KD_ERW.EmailFreigabe_SteuerbescheidPDF Then
betreff = betreff.Replace("%Zollbeleg%", "Abgabenbescheid " & DY.dy_BezugsNr)
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, betreff, body, getAbsenderEmail(FirmaTmp), False, False, EMails_CC, EMails_BCC, pfadList)
End If
Case "VBD"
If KD_ERW.EmailFreigabe_VBDPDF Then
betreff = betreff.Replace("%Zollbeleg%", "Versandbegleitdokument " & DY.dy_BezugsNr)
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, betreff, body, getAbsenderEmail(FirmaTmp), False, False, EMails_CC, EMails_BCC, pfadList)
End If
Case "ABD"
If KD_ERW.EmailFreigabe_SteuerbescheidPDF Then
betreff = betreff.Replace("%Zollbeleg%", "Ausfuhrbegleitdokument " & DY.dy_BezugsNr)
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, betreff, body, getAbsenderEmail(FirmaTmp), False, False, EMails_CC, EMails_BCC, pfadList)
End If
Case "AVM"
If KD_ERW.EmailFreigabe_SteuerbescheidPDF Then
betreff = betreff.Replace("%Zollbeleg%", "Ausgangsvermerk " & DY.dy_BezugsNr)
VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(EMails, betreff, body, getAbsenderEmail(FirmaTmp), False, False, EMails_CC, EMails_BCC, pfadList)
End If
End Select
End If
End If
End If
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
End Try
End Sub
Public Shared Function getAbsenderEmail(Optional FirmaTmp = "") As String
Select Case If(FirmaTmp = "", VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA, FirmaTmp)
Case "IMEX" : Return "noreply@imex-group.at"
Case "ATILLA" : Return "noreply@verag.ag"
Case "UNISPED" : Return "No-Reply@unisped.at"
Case "FRONTOFFICE" : Return "noreply@front-office.eu"
Case Else : Return "noreply@verag.ag"
End Select
End Function
Sub importFileFromDyMailAnhang(pfad, betreff)
@@ -318,6 +439,7 @@ Public Class frmStartOptions
If IsNumeric(dy_id) AndAlso dy_id > 0 Then
sql.doSQL("UPDATE tblDakosy_Zollanmeldungen SET dy_VBD_dsId='" & DS.da_id & "' where dy_id='" & dy_id & "'", "FMZOLL")
sql.doSQL("UPDATE Speditionsbuch SET DokumentId_VBD='" & DS.da_id & "' where AtlasBezNrNCTS='" & betreff.ToString.Trim & "' AND DokumentId_VBD is null", "FMZOLL") 'Falls Spedbuch schon zuvor generiert wurde!
doMailZollbeleg(DS.GET_TOP1_PATH, "VBD", dy_id)
End If
End If
@@ -351,6 +473,7 @@ Public Class frmStartOptions
If IsNumeric(dy_id) AndAlso dy_id > 0 Then
sql.doSQL("UPDATE tblDakosy_Zollanmeldungen SET dy_STEUERBESCHEID_dsId='" & DS.da_id & "' where dy_id='" & dy_id & "'", "FMZOLL")
sql.doSQL("UPDATE Speditionsbuch SET DokumentId_Steuerbeleg='" & DS.da_id & "' where AtlasBezNrEZA='" & betreff.ToString.Trim & "' AND DokumentId_Steuerbeleg is null", "FMZOLL") 'Falls Spedbuch schon zuvor generiert wurde!
doMailZollbeleg(DS.GET_TOP1_PATH, "STB", dy_id)
End If
End If
@@ -373,8 +496,6 @@ Public Class frmStartOptions
End If
' IO.Directory.CreateDirectory(VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getRootDir() & "DAKOSY\ECHTSYSTEM\ZOLLDATEN\TEST3\")
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR("TEST: " & dy_id, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
DS = New VERAG_PROG_ALLGEMEIN.cDATENSERVER("ZOLLDATEN", "ABD", dy_id, "", "", betreff.ToString.Replace("/", "-").Replace(",", "-").Replace("\", "-").Replace(":", "."), 0, False)
DS.da_vorlage = False
@@ -389,6 +510,7 @@ Public Class frmStartOptions
If IsNumeric(dy_id) AndAlso dy_id > 0 Then
sql.doSQL("UPDATE tblDakosy_Zollanmeldungen SET dy_ABD_dsId='" & DS.da_id & "' where dy_id='" & dy_id & "'", "FMZOLL")
sql.doSQL("UPDATE Speditionsbuch SET DokumentId_ABD='" & DS.da_id & "' where AtlasBezNrEZA='" & betreff.ToString.Trim & "' AND DokumentId_ABD is null", "FMZOLL") 'Falls Spedbuch schon zuvor generiert wurde!
doMailZollbeleg(DS.GET_TOP1_PATH, "ABD", dy_id)
End If
End If
@@ -425,6 +547,7 @@ Public Class frmStartOptions
If IsNumeric(dy_id) AndAlso dy_id > 0 Then
sql.doSQL("UPDATE tblDakosy_Zollanmeldungen SET dy_AVM_dsId='" & DS.da_id & "' where dy_id='" & dy_id & "'", "FMZOLL")
sql.doSQL("UPDATE Speditionsbuch SET DokumentId_AVM='" & DS.da_id & "' where AtlasBezNrEZA='" & betreff.ToString.Trim & "' AND DokumentId_AVM is null", "FMZOLL") 'Falls Spedbuch schon zuvor generiert wurde!
doMailZollbeleg(DS.GET_TOP1_PATH, "AVM", dy_id)
End If
End If
@@ -626,6 +749,19 @@ Public Class frmStartOptions
Return True
End Function
Public Function moveFile_DateBack(file, toDirectory, Optional ByRef dest = "")
If Not IO.File.Exists(file) Then Return False
If Not IO.Directory.Exists(toDirectory) Then IO.Directory.CreateDirectory(toDirectory)
dest = toDirectory & cut_file(file)
Dim fio As IO.FileInfo = New FileInfo(file)
Dim ext = fio.Extension
If IO.File.Exists(dest) Then
dest = toDirectory & cut_file(file).Replace(ext, Now.ToString("_yyMMdd_HHmmss.fff")) & ext
End If
IO.File.Move(file, dest) ' Verschiebt die Datei
Return True
End Function
Public Function copyFile(file, toDirectory, Optional ByRef dest = "")
If Not IO.File.Exists(file) Then Return False
If Not IO.Directory.Exists(toDirectory) Then IO.Directory.CreateDirectory(toDirectory)