KN8, DY->Atez

This commit is contained in:
2024-12-03 13:06:11 +01:00
parent 9995db6b02
commit 24a6d93c9e
3 changed files with 266 additions and 1 deletions

View File

@@ -312,7 +312,7 @@ Public Class KdSearchBox
End Sub
Sub ThreadInitAKTIV()
Sub ThreadInitAKTIV_COMP()
Try
If usrcntl Is Nothing Then Exit Sub
If usrcntl.dgvKundenAktiv Is Nothing Then Exit Sub
@@ -402,6 +402,180 @@ Public Class KdSearchBox
End Try
End Sub
Sub ThreadInit_ALLCOPMP_AND_INAKTIV()
Try
If usrcntl Is Nothing Then Exit Sub
If usrcntl.dgvKundenInAktiv Is Nothing Then Exit Sub
With usrcntl.dgvKundenInAktiv
Dim srch As String = Me.Text.Replace("'", "").ToString.Trim
If srch.StartsWith("*") Then srch = Replace(srch, "*", "%", , 1) ' Suche mit beginnenden *
Dim srch2 As String = ""
If srch.Contains(",") Then
Dim spitter() = srch.Split(",")
srch = spitter(0).ToString.Trim
srch2 = spitter(1).ToString.Trim
End If
If srch2.StartsWith("*") Then srch2 = Replace(srch2, "*", "%", , 1) ' Suche mit beginnenden *
Dim SQLstr As String = " SELECT top 6 Auswahl, Ordnungsbegriff as Firma, AdressenNr as KdNr,Adressen.[LandKz] + ' ' + Adressen.[PLZ] + ' - ' + Adressen.[Ort] + ' ' + Adressen.[Straße] as Adresse "
SQLstr &= ", Filialen.Firma as Firma_Intern "
SQLstr &= " FROM [Adressen] "
SQLstr &= " INNER JOIN Kunden on KundenNr=AdressenNr "
SQLstr &= " INNER JOIN Filialen on Filialen.FilialenNr=isnull(Kunden.FilialenNr,4803) "
SQLstr &= " WHERE 1=1 "
SQLstr &= " AND ( "
SQLstr &= " Ordnungsbegriff COLLATE Latin1_General_CI_AI LIKE '" & srch & "%' COLLATE Latin1_General_CI_AI "
If IsNumeric(srch) Then SQLstr &= " OR AdressenNr LIKE '" & srch & "%' "
If _searchName1 Then SQLstr &= " OR Adressen.[Name 1] LIKE '" & srch & "%' "
SQLstr &= " ) "
If srch2 <> "" Then SQLstr &= " AND (Filialen.Firma LIKE '" & srch2 & "%' OR ( Adressen.PLZ LIKE '" & srch2 & "%' OR Adressen.Ort LIKE '" & srch2 & "%' OR Adressen.LandKz LIKE '" & srch2 & "%' OR Adressen.Straße LIKE '" & srch2 & "%' )) "
' SQLstr &= " AND [Auswahl]='I' "
'If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "FRONTOFFICE" Then 'Keine
' SQLstr &= " AND isnull(Kunden.[FilialenNr],0) NOT IN ('5701') "
'ElseIf VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA <> "VERAG" And VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA <> "ATILLA" Then
' SQLstr &= " AND Kunden.[FilialenNr]='" & VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE & "' "
'Else
' 'SQLstr &= " AND isnull([FilialenNr],0)<>'5501' "
' SQLstr &= " AND isnull(Kunden.[FilialenNr],0) NOT IN ('5501','5601','5701','5801') "
'End If
'If VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER <> "" Then
' SQLstr &= " AND (Filialen.Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' OR Filialen.CLUSTER='" & VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER & "') "
'Else
' SQLstr &= " AND Filialen.Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' "
'End If
SQLstr &= " AND '" & VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER & "' IN (Filialen.Firma,Filialen.Cluster) " ' Wenn die Firmenbezeichnung im CLUSter vorkommt .--> Frontoffice
If _UseFIRMA <> "" Then
SQLstr &= " AND '" & _UseFIRMA & "' IN (Filialen.Firma,Filialen.Cluster) " ' Wenn die Firmenbezeichnung im CLUSter vorkommt .--> Frontoffice
Else
SQLstr &= " AND ( '" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA.Replace("ATILLA", "VERAG") & "' IN (Filialen.Firma,Filialen.Cluster) " ' Wenn die Firmenbezeichnung im CLUSter vorkommt .--> Frontoffice
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("AVISO_IMEX", "AVISO") Then
SQLstr &= " OR Filialen.Firma IN ('IMEX') " ' Wenn die Firmenbezeichnung im CLUSter vorkommt .--> Frontoffice
End If
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("OFFERTE_FREMD_VERAGIMEX", "SDL") Then
SQLstr &= " OR Filialen.Firma IN ('IMEX','VERAG') " ' Wenn die OFFERTE_FREMD_VERAGIMEX --> Beide
End If
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("OFFERTE_FREMD_UNISPED_BREXIT", "SDL") Then
SQLstr &= " OR (Filialen.Firma IN ('UNISPED') AND Kunden.[FilialenNr]=7002) " ' Wenn die OFFERTE_FREMD_VERAGIMEX --> Beide
End If
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("FAKTURIERUNG_FRONTOFFICE", "SDL") Then
SQLstr &= " OR Filialen.Firma IN ('FRONTOFFICE') " ' Wenn die Firmenbezeichnung im CLUSter vorkommt .--> Frontoffice
End If
SQLstr &= " ) "
End If
'AUSNAHME BIS BESSERE LÖSUNG:
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "FRONTOFFICE" Then
SQLstr &= " and Filialen.Firma NOT IN ('AMBAR') "
End If
If Not _displayWoelflKd Then SQLstr &= " AND AdressenNr NOT LIKE '15%'"
SQLstr &= " order by Ordnungsbegriff "
setDS(usrcntl.dgvKundenInAktiv, SQL.loadDgvBySql(SQLstr, "FMZOLL"))
End With
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, "Es ist ein Fehler beim Kunden-Such-Feld aufgetreten!",,,, "ERR_KDS_04")
End Try
End Sub
Sub ThreadInitAKTIV()
Try
If usrcntl Is Nothing Then Exit Sub
If usrcntl.dgvKundenAktiv Is Nothing Then Exit Sub
With usrcntl.dgvKundenAktiv
Dim srch As String = Me.Text.Replace("'", "").ToString.Trim
If srch.StartsWith("*") Then srch = Replace(srch, "*", "%", , 1) ' Suche mit beginnenden *
Dim srch2 As String = ""
If srch.Contains(",") Then
Dim spitter() = srch.Split(",")
srch = spitter(0).ToString.Trim
srch2 = spitter(1).ToString.Trim
End If
If srch2.StartsWith("*") Then srch2 = Replace(srch2, "*", "%", , 1) ' Suche mit beginnenden *
Dim topAnz = 10
If nurAktive Then topAnz = 16
Dim AvisoEmail = ""
If _displayAVISO_Email Then
AvisoEmail = ", (SELECT CASE WHEN Count(*)>0 Then 'JA' ELSE '' END [Adressen] FROM [tblEmailBenachrichtigung] WHERE [eb_KundenNr]=AdressenNr) as [E-Mail] "
End If
Dim SQLstr As String = " SELECT top " & topAnz & " Ordnungsbegriff as Firma, AdressenNr as KdNr,Adressen.[LandKz] + ' ' + Adressen.[PLZ] + ' - ' + Adressen.[Ort] + ' ' + Adressen.[Straße] as Adresse " & AvisoEmail & " "
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "FRONTOFFICE" Or VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "VERIMEX" Or _AlleFirmenCLUSTER Or _UseFIRMA <> "" Or VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("AVISO_IMEX", "AVISO") Or VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("OFFERTE_FREMD_VERAGIMEX", "SDL") Then SQLstr &= ", Filialen.Firma as Firma_Intern "
SQLstr &= " FROM [Adressen] "
SQLstr &= " INNER JOIN Kunden on KundenNr=AdressenNr "
SQLstr &= " INNER JOIN Filialen on Filialen.FilialenNr=isnull(Kunden.FilialenNr,4803) "
SQLstr &= " WHERE 1=1 "
SQLstr &= " AND ( "
SQLstr &= " Ordnungsbegriff COLLATE Latin1_General_CI_AI LIKE '" & srch & "%' COLLATE Latin1_General_CI_AI "
If IsNumeric(srch) Then SQLstr &= " OR AdressenNr LIKE '" & srch & "%' "
If _searchName1 Then SQLstr &= " OR Adressen.[Name 1] LIKE '" & srch & "%' "
SQLstr &= " ) "
If srch2 <> "" Then SQLstr &= " AND (Filialen.Firma LIKE '" & srch2 & "%' OR ( Adressen.PLZ LIKE '" & srch2 & "%' OR Adressen.Ort LIKE '" & srch2 & "%' OR Adressen.LandKz LIKE '" & srch2 & "%' OR Adressen.Straße LIKE '" & srch2 & "%' )) "
SQLstr &= " AND [Auswahl]='A' "
'If VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER <> "" Then
' SQLstr &= " AND (Filialen.Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' OR Filialen.CLUSTER='" & VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER & "') "
'Else
' SQLstr &= " AND Filialen.Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' "
'End If
If _AlleFirmenCLUSTER Then
SQLstr &= " AND '" & VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER & "' IN (Filialen.Firma,Filialen.Cluster) " ' Wenn die Firmenbezeichnung im CLUSter vorkommt .--> Frontoffice
ElseIf _UseFIRMA <> "" Then
SQLstr &= " AND '" & _UseFIRMA & "' IN (Filialen.Firma,Filialen.Cluster) " ' Wenn die Firmenbezeichnung im CLUSter vorkommt .--> Frontoffice
Else
SQLstr &= " AND ( '" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA.Replace("ATILLA", "VERAG") & "' IN (Filialen.Firma,Filialen.Cluster) " ' Wenn die Firmenbezeichnung im CLUSter vorkommt .--> Frontoffice
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("AVISO_IMEX", "AVISO") Then
SQLstr &= " OR Filialen.Firma IN ('IMEX') " ' Wenn die Firmenbezeichnung im CLUSter vorkommt .--> Frontoffice
End If
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("OFFERTE_FREMD_VERAGIMEX", "SDL") Then
SQLstr &= " OR Filialen.Firma IN ('IMEX','VERAG') " ' Wenn die OFFERTE_FREMD_VERAGIMEX --> Beide
End If
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("OFFERTE_FREMD_UNISPED_BREXIT", "SDL") Then
SQLstr &= " OR (Filialen.Firma IN ('UNISPED') AND Kunden.[FilialenNr]=7002) " ' Wenn die OFFERTE_FREMD_VERAGIMEX --> Beide
End If
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("FAKTURIERUNG_FRONTOFFICE", "SDL") Then
SQLstr &= " OR Filialen.Firma IN ('FRONTOFFICE') " ' Wenn die Firmenbezeichnung im CLUSter vorkommt .--> Frontoffice
End If
SQLstr &= " ) "
End If
'AUSNAHME BIS BESSERE LÖSUNG:
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "FRONTOFFICE" Then
SQLstr &= " and Filialen.Firma NOT IN ('AMBAR') "
End If
'If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "FRONTOFFICE" Then 'Keine
' SQLstr &= " AND isnull(Kunden.[FilialenNr],0) NOT IN ('5701') "
'ElseIf VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA <> "VERAG" And VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA <> "ATILLA" Then
' SQLstr &= " AND Kunden.[FilialenNr]='" & VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE & "' "
'Else
' 'SQLstr &= " AND isnull(Kunden.[FilialenNr],0)<>'5501' "
' SQLstr &= " AND isnull(Kunden.[FilialenNr],0) NOT IN ('5501','5601','5701','5801') "
'End If
If Not _displayWoelflKd Then SQLstr &= " AND AdressenNr NOT LIKE '15%'"
SQLstr &= " order by Ordnungsbegriff "
setDS(usrcntl.dgvKundenAktiv, SQL.loadDgvBySql(SQLstr, "FMZOLL"))
End With
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, "Es ist ein Fehler beim Kunden-Such-Feld aufgetreten!",,,, "ERR_KDS_03")
End Try
End Sub
Sub ThreadInitINAKTIV()
Try
If usrcntl Is Nothing Then Exit Sub

View File

@@ -0,0 +1,77 @@

Imports System.IO
Imports System.Globalization
Imports System.Net
Imports io.konik.zugferd.entity
Imports System.Data.SqlClient
' Definieren der Klasse, um die Daten zu repräsentieren
Public Class cTariffKN8
Public Property Spalte1 As String
Public Property Spalte2 As String
Public Property Spalte3 As String
Public Property Spalte4 As String
End Class
Public Class cTariffKN8_Interface
Public Shared Function UPDATE_KN8()
' URL zur Datei
Dim fileUrl As String = "https://www.statistik.at/kdb/downloads/csv/prod/KN" & Now.Year & "_DE_CKT.txt"
'Dim fileUrl As String = "https://www.statistik.at/kdb/downloads/csv/prod/KN2024_DE_CKT.txt"
Try
' WebClient verwenden, um die Datei direkt herunterzuladen
Using client As New WebClient()
Dim fileContent As String = client.DownloadString(fileUrl)
' Datei-Inhalt in Zeilen aufteilen
Dim lines As String() = fileContent.Split(New String() {Environment.NewLine}, StringSplitOptions.None)
' Verbindung zur Datenbank öffnen
Using connection As New SqlConnection(VERAG_PROG_ALLGEMEIN.SQL.GetFMZOLLConnectionString)
connection.Open()
Using command As New SqlCommand("DELETE tblEZTKN8 ", connection)
command.ExecuteNonQuery()
End Using
' Zeilen durchlaufen, Kopfzeile überspringen
For i As Integer = 1 To lines.Length - 1
Dim line As String = lines(i).Trim()
' Überspringen leerer Zeilen
If String.IsNullOrEmpty(line) Then Continue For
' Spalten trennen (Semikolon als Trennzeichen)
Dim columns As String() = line.Split(";")
' Sicherstellen, dass genügend Spalten vorhanden sind
If columns.Length >= 4 Then
' Daten in die Datenbank einfügen
Using command As New SqlCommand("INSERT INTO tblEZTKN8 (Ebene, EDV_Code, Code, Kurztitel) VALUES (@Spalte1, @Spalte2, @Spalte3, @Spalte4)", connection)
command.Parameters.AddWithValue("@Spalte1", columns(0).Trim().Replace("""", ""))
command.Parameters.AddWithValue("@Spalte2", columns(1).Trim().Replace("""", ""))
command.Parameters.AddWithValue("@Spalte3", columns(2).Trim().Replace("""", ""))
command.Parameters.AddWithValue("@Spalte4", columns(3).Trim().Replace("""", ""))
command.ExecuteNonQuery()
End Using
End If
Next
End Using
End Using
Return True
Console.WriteLine("Daten erfolgreich in die Datenbank geladen.")
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Return False
End Function
End Class

View File

@@ -417,6 +417,7 @@
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="Schnittstellen\CBAM\QReport_v17.00.Designer.vb" />
<Compile Include="Schnittstellen\cTariffKN8.vb" />
<Compile Include="Schnittstellen\Digicast\cDigicustAPI.vb" />
<Compile Include="Schnittstellen\Modaltrans\cOregonNCTSDeclarations.vb" />
<Compile Include="Classes\cParameter.vb" />
@@ -664,6 +665,7 @@
<Compile Include="Schnittstellen\VERAG\OUT_NCTS\VERAG_out_ncts.Designer.vb" />
<Compile Include="Schnittstellen\VERAG\OUT_NCTS\VERAG_out_ncts_V2_0_1.Designer.vb" />
<Compile Include="Schnittstellen\VERAG\OUT_NCTS\VERAG_out_ncts_V2_0_2.Designer.vb" />
<Compile Include="Schnittstellen\ZUGFeRD\Factur-X_1.07.2_EN16931.Designer.vb" />
<Compile Include="Service References\DSFinVKService\Reference.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
@@ -892,6 +894,18 @@
<None Include="Schnittstellen\VERAG\OUT_NCTS\VERAG_out_ncts_V2_0_2.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Schnittstellen\ZUGFeRD\Factur-X_1.07.2_EN16931.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Schnittstellen\ZUGFeRD\Factur-X_1.07.2_EN16931_urn_un_unece_uncefact_data_standard_QualifiedDataType_100.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Schnittstellen\ZUGFeRD\Factur-X_1.07.2_EN16931_urn_un_unece_uncefact_data_standard_ReusableAggregateBusinessInformationEntity_100.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Schnittstellen\ZUGFeRD\Factur-X_1.07.2_EN16931_urn_un_unece_uncefact_data_standard_UnqualifiedDataType_100.xsd">
<SubType>Designer</SubType>
</None>
<None Include="Sebastian.pfx" />
<None Include="Service References\DSFinVKService\Arrays.xsd">
<SubType>Designer</SubType>