Merge branch 'newMaster2024' of https://git.it.verag.ag/edv/SDL into newMaster2024
This commit is contained in:
@@ -72,6 +72,8 @@ Public Class usrcntlPDFScanList
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
Private Sub usrcntlPDFScan_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||
' Me.txt.Text = _TEXT_PDF
|
||||
Me.AllowDrop = True
|
||||
|
||||
@@ -26,6 +26,10 @@ Public Class cEssensbestellung
|
||||
Property eb_firma As Object = Nothing
|
||||
Property eb_MenuID As Object = Nothing
|
||||
Property eb_archiviert As Boolean
|
||||
Property eb_gesendetVon As Object = Nothing
|
||||
Property eb_abgerechnetVon As Object = Nothing
|
||||
Property eb_storniertVon As Object = Nothing
|
||||
Property eb_gesendetFirst_am As Object = Nothing
|
||||
|
||||
|
||||
Public hasEntry = False
|
||||
@@ -90,6 +94,10 @@ Public Class cEssensbestellung
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_firma", eb_firma))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_archiviert", eb_archiviert))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_MenuID", eb_MenuID))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_gesendetVon", eb_gesendetVon))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_abgerechnetVon", eb_abgerechnetVon))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_storniertVon", eb_storniertVon))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("eb_gesendetFirst_am", eb_gesendetFirst_am))
|
||||
|
||||
|
||||
Return list
|
||||
|
||||
@@ -63,6 +63,7 @@ Public Class cUSTVAntrag
|
||||
Property UStVAn_MWSTEingang_offen As Object = Nothing
|
||||
Property POSITIONEN As New List(Of cUStVPositionen) '= Nothing
|
||||
Property UStVAn_letzteAenderung As Object = Nothing
|
||||
Property UStVAn_letzteAenderungUser As Object = Nothing
|
||||
|
||||
Public hasEntry = False
|
||||
|
||||
@@ -135,6 +136,7 @@ Public Class cUSTVAntrag
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVAn_Sicherheit", UStVAn_Sicherheit))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVAn_MWSTEingang_offen", UStVAn_MWSTEingang_offen))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVAn_letzteAenderung", UStVAn_letzteAenderung))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVAn_letzteAenderungUser", UStVAn_letzteAenderungUser))
|
||||
|
||||
|
||||
Return list
|
||||
@@ -602,6 +604,7 @@ Public Class cUStVErstattungPositionen
|
||||
Property UStVEr_RZVZ As Object = Nothing
|
||||
Property UStVEr_Bank As Object = Nothing
|
||||
Property UStVEr_Differenz As Object = Nothing
|
||||
Property UStVEr_RK_ID As Object = Nothing
|
||||
|
||||
Public hasEntry = False
|
||||
|
||||
@@ -633,30 +636,40 @@ Public Class cUStVErstattungPositionen
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_RZVZ", UStVEr_RZVZ))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_Bank", UStVEr_Bank))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_Differenz", UStVEr_Differenz))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UStVEr_RK_ID", UStVEr_RK_ID))
|
||||
Return list
|
||||
End Function
|
||||
|
||||
Sub New(Belegdatum, Belegnummer, UStVEr_Importfilename)
|
||||
Sub New(Belegdatum As Date, Belegnummer As String, UStVEr_Importfilename As String, antragsid As Integer)
|
||||
Me.Belegdatum = Belegdatum
|
||||
Me.Belegnummer = Belegnummer
|
||||
Me.UStVEr_Importfilename = UStVEr_Importfilename
|
||||
Me.UStVAn_ID = antragsid
|
||||
|
||||
LOAD(Belegdatum, Belegnummer, UStVEr_Importfilename)
|
||||
LOAD(Belegdatum, Belegnummer, UStVEr_Importfilename, antragsid)
|
||||
End Sub
|
||||
|
||||
|
||||
Sub New(UStVAn_ID, UStVEr_ID)
|
||||
Sub New(UStVAn_ID As Integer, UStVEr_ID As Integer)
|
||||
Me.UStVAn_ID = UStVAn_ID
|
||||
Me.UStVEr_ID = UStVEr_ID
|
||||
|
||||
LOAD(UStVAn_ID, UStVEr_ID)
|
||||
End Sub
|
||||
|
||||
Sub New(UStVAn_ID As Integer, GutschriftsNr As Integer, GutschriftsDatum As Date)
|
||||
Me.UStVAn_ID = UStVAn_ID
|
||||
Me.GutschriftsNr = GutschriftsNr
|
||||
Me.GutschriftsDatum = GutschriftsDatum
|
||||
|
||||
LOAD(UStVAn_ID, GutschriftsDatum, GutschriftsNr)
|
||||
End Sub
|
||||
Sub New()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Public Sub LOAD(UStVAn_ID, UStVEr_ID)
|
||||
Public Sub LOAD(UStVAn_ID As Integer, UStVEr_ID As Integer)
|
||||
Try
|
||||
|
||||
hasEntry = False
|
||||
@@ -686,16 +699,48 @@ Public Class cUStVErstattungPositionen
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Public Sub LOAD(Belegdatum, Belegnummer, UStVEr_Importfilename)
|
||||
Public Sub LOAD(Belegdatum As Date, Belegnummer As String, UStVEr_Importfilename As String, UStVAn_ID As Integer)
|
||||
Try
|
||||
|
||||
hasEntry = False
|
||||
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblUStVErstattung WHERE Belegdatum=@Belegdatum AND Belegnummer=@Belegnummer AND UStVEr_Importfilename=@UStVEr_Importfilename ", conn)
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblUStVErstattung WHERE Belegdatum=@Belegdatum AND Belegnummer=@Belegnummer AND UStVEr_Importfilename=@UStVEr_Importfilename AND UStVAn_ID=@UStVAn_ID ", conn)
|
||||
cmd.Parameters.AddWithValue("@Belegdatum", Belegdatum)
|
||||
cmd.Parameters.AddWithValue("@Belegnummer", Belegnummer)
|
||||
cmd.Parameters.AddWithValue("@UStVEr_Importfilename", UStVEr_Importfilename)
|
||||
cmd.Parameters.AddWithValue("@UStVAn_ID", UStVAn_ID)
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
If dr.Read Then
|
||||
'Dim l As New cOfferte
|
||||
For Each i In getParameterList()
|
||||
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(i.Scalarvariable)
|
||||
If dr.Item(i.Text) Is DBNull.Value Then
|
||||
propInfo.SetValue(Me, Nothing)
|
||||
Else
|
||||
propInfo.SetValue(Me, dr.Item(i.Text))
|
||||
End If
|
||||
Next
|
||||
hasEntry = True
|
||||
End If
|
||||
dr.Close()
|
||||
End Using
|
||||
End Using
|
||||
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 Sub LOAD(UStVAn_ID As Integer, GutschriftsDatum As Date, GutschriftNr As Integer)
|
||||
Try
|
||||
|
||||
hasEntry = False
|
||||
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblUStVErstattung WHERE GutschriftsDatum=@GutschriftsDatum AND GutschriftsNr=@GutschriftsNr AND UStVAn_ID=@UStVAn_ID ", conn)
|
||||
cmd.Parameters.AddWithValue("@GutschriftsDatum", GutschriftsDatum)
|
||||
cmd.Parameters.AddWithValue("@GutschriftsNr", GutschriftsNr)
|
||||
cmd.Parameters.AddWithValue("@UStVAn_ID", UStVAn_ID)
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
If dr.Read Then
|
||||
'Dim l As New cOfferte
|
||||
|
||||
@@ -19,16 +19,19 @@ Public Class cUStVLeistender
|
||||
Dim SQL As New SQL
|
||||
|
||||
Sub New(UStV_Leistender As String, Optional searchbyUID As Boolean = False)
|
||||
If Not searchbyUID Then
|
||||
Me.UStV_Leistender = UStV_Leistender
|
||||
LOAD()
|
||||
If UStV_Leistender <> "" Then
|
||||
If Not searchbyUID Then
|
||||
Me.UStV_Leistender = UStV_Leistender
|
||||
LOAD()
|
||||
|
||||
Else
|
||||
Me.UstV_Leistender_UstNr = UStV_Leistender
|
||||
LOADBYUID()
|
||||
Else
|
||||
Me.UstV_Leistender_UstNr = UStV_Leistender
|
||||
LOADByUID()
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Sub New(Id As Integer)
|
||||
|
||||
@@ -45,8 +45,8 @@ Public Class cAdressen
|
||||
'Property SSMA_TimeStamp As Object = Nothing
|
||||
Property MWSTVorauszahlung As Object = Nothing
|
||||
Property PLOSEKundenNr As Object = Nothing
|
||||
|
||||
Property weitereWölflKundenNr As Object = Nothing
|
||||
Property IDSMautbericht_nachOrt As Object = Nothing
|
||||
|
||||
|
||||
Public hasEntry = False
|
||||
@@ -143,6 +143,7 @@ Public Class cAdressen
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("MWSTVorauszahlung", MWSTVorauszahlung))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PLOSEKundenNr", PLOSEKundenNr))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("weitereWölflKundenNr", weitereWölflKundenNr))
|
||||
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("IDSMautbericht_nachOrt", IDSMautbericht_nachOrt))
|
||||
|
||||
Return list
|
||||
End Function
|
||||
|
||||
@@ -245,6 +245,107 @@ Public Class cAufschubKonten
|
||||
Return brgakto_gs_aktSaldo
|
||||
End Function
|
||||
|
||||
Public Function CalcSaldo_new(Optional dtDate As DataTable = Nothing, Optional Stichtag As Date? = Nothing, Optional showMessage As Boolean = False) As String
|
||||
|
||||
Dim datumBis As Date =
|
||||
If(Stichtag.HasValue, Stichtag.Value.Date, Today.Date)
|
||||
|
||||
Dim datumBisSql As String =
|
||||
datumBis.ToString("yyyy-MM-dd")
|
||||
|
||||
Dim standort As String =
|
||||
brgakto_gs_standort.Replace("'", "''")
|
||||
|
||||
|
||||
Dim saldoSql As String = "DECLARE @Stichtag date = '" & datumBisSql & "'; Declare @Standort varchar(100) = '" & standort & "'; " & "DECLARE @Referenzbetrag decimal(18,2);
|
||||
/* Referenzbetrag vor dem Stichtag */
|
||||
SELECT TOP (1)
|
||||
@Referenzbetrag = r.brgarefb_refbetrag
|
||||
FROM [ADMIN].[dbo].[tblBrgAufschubKonten] AS k
|
||||
INNER JOIN [ADMIN].[dbo].[tblBrgAufschubReferenzberaege] AS r
|
||||
ON r.brgarefb_gsid = k.brgakto_id
|
||||
WHERE k.brgakto_gs_standort = @Standort
|
||||
AND ISNULL(r.brgarefb_gs_aktiv, 1) = 1
|
||||
AND r.brgarefb_gueltig_ab < @Stichtag
|
||||
AND (
|
||||
r.brgarefb_gueltig_bis IS NULL
|
||||
OR r.brgarefb_gueltig_bis >= @Stichtag
|
||||
)
|
||||
ORDER BY
|
||||
r.brgarefb_gueltig_ab DESC,
|
||||
r.brgarefb_id DESC;
|
||||
|
||||
|
||||
/* Bewegungen vor dem Stichtag */
|
||||
SELECT
|
||||
ISNULL(@Referenzbetrag, 0)
|
||||
+ ISNULL(SUM(Betrag), 0) AS GesamtSicherheitsSaldo
|
||||
FROM
|
||||
(
|
||||
/* Eingänge vor dem Stichtag */
|
||||
SELECT
|
||||
ISNULL(gs.gs_sicherheitsbetrag, 0) * -1 AS Betrag
|
||||
FROM dbo.tblGesamtsicherheit AS gs
|
||||
WHERE gs.gs_standort = @Standort
|
||||
AND gs.gs_datum < @Stichtag
|
||||
AND ISNULL(gs.gs_ReferenzAenderung, 0) = 0
|
||||
|
||||
UNION ALL
|
||||
|
||||
/* Ausgänge vor dem Stichtag */
|
||||
SELECT
|
||||
ISNULL(gsp.gsp_sicherheitsbetrag, 0) AS Betrag
|
||||
FROM dbo.tblGesamtsicherheitsPositionen AS gsp
|
||||
WHERE gsp.gsp_datum < @Stichtag
|
||||
AND EXISTS
|
||||
(
|
||||
SELECT 1
|
||||
FROM dbo.tblGesamtsicherheit AS gs
|
||||
WHERE gs.gs_gsId = gsp.gsp_gsId
|
||||
AND gs.gs_standort = @Standort
|
||||
AND gs.gs_datum < @Stichtag
|
||||
AND ISNULL(gs.gs_ReferenzAenderung, 0) = 0
|
||||
)
|
||||
) AS Bewegungen;"
|
||||
|
||||
|
||||
Dim dt As DataTable =
|
||||
SQL.loadDgvBySql(saldoSql, "AVISO", 100, True)
|
||||
|
||||
Dim saldo As Decimal = 0D
|
||||
|
||||
If dt IsNot Nothing AndAlso
|
||||
dt.Rows.Count > 0 AndAlso
|
||||
Not IsDBNull(dt.Rows(0).Item("GesamtSicherheitsSaldo")) Then
|
||||
|
||||
saldo = Convert.ToDecimal(
|
||||
dt.Rows(0).Item("GesamtSicherheitsSaldo")
|
||||
)
|
||||
End If
|
||||
|
||||
|
||||
brgakto_gs_aktSaldo = CDbl(saldo)
|
||||
|
||||
|
||||
If showMessage Then
|
||||
MsgBox(
|
||||
"Saldo zum Stichtag " &
|
||||
datumBis.ToShortDateString() &
|
||||
":" & vbNewLine &
|
||||
brgakto_gs_aktSaldo.ToString("N2")
|
||||
)
|
||||
End If
|
||||
|
||||
|
||||
If Not Stichtag.HasValue Then
|
||||
updateSaldo()
|
||||
End If
|
||||
|
||||
|
||||
Return brgakto_gs_aktSaldo.ToString()
|
||||
|
||||
End Function
|
||||
|
||||
Public Function getReferenzbetrag(nowDate As Date) As Double
|
||||
|
||||
Try
|
||||
|
||||
@@ -3,6 +3,7 @@ Imports System.Data.SqlClient
|
||||
Imports System.IO
|
||||
Imports System.Net
|
||||
Imports System.Reflection
|
||||
Imports System.Windows.Forms
|
||||
|
||||
Public Class cIDS
|
||||
|
||||
@@ -757,6 +758,77 @@ Public Class cIDS
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
Function genIDSMautberichtDatatByKdNr(KdNr As String, rechnungsdatum As Date, art As String, Gruppierung_nach_Ort As Boolean) As DataTable
|
||||
|
||||
|
||||
Dim dt As New DataTable
|
||||
|
||||
Dim displayFilter = False
|
||||
Dim sqlstr As String = ""
|
||||
|
||||
Dim sqljoin_nachOrt As String = ""
|
||||
Dim sqlgroup_nachOrt = ""
|
||||
Dim sqlselect_nachOrt = ""
|
||||
If Gruppierung_nach_Ort Then
|
||||
sqljoin_nachOrt = "INNER JOIN tbl_IDS_Stationen ON tblIDSTransactionsNew.OutletCountryCode = tbl_IDS_Stationen.OutletCountryCode and tblIDSTransactionsNew.OutletCode = tbl_IDS_Stationen.OutletCode and tbl_IDS_Stationen.[OutletCountryCode]=740543"
|
||||
sqlgroup_nachOrt = ",tbl_IDS_Stationen.OutletOrt"
|
||||
sqlselect_nachOrt = "tbl_IDS_Stationen.OutletOrt,"
|
||||
End If
|
||||
|
||||
|
||||
Select Case art
|
||||
Case "IDS" 'Offert17
|
||||
|
||||
sqlstr = "SELECT Adressen.AdressenNr, Adressen.[Name 1], Adressen.[Name 2], Adressen.Straße, Adressen.LandKz, Adressen.PLZ, Adressen.Ort, Adressen.UstIdKz, Adressen.UstIdNr, tblIDSTransactionsNew.[CustomerCode], tblIDSTransactionsNew.[OutletCountry], tbl_IDS_Produkte.ProductDescription, tbl_IDS_Länder.Steuersatz, tblIDSTransactionsNew.Rechenwert, tblIDSTransactionsNew.Kz, Sum(tblIDSTransactionsNew.[TransactionVolume]) AS Liter, Sum(tblIDSTransactionsNew.[TotalNetAmount]) AS Nettobetrag, Sum(tblIDSTransactionsNew.[VATAmount]) AS Steuerbetrag,
|
||||
Case when Sum([TransactionVolume]) =0 THEN 0 ELSE Sum([TotalNetAmount])/Sum([TransactionVolume]) END AS NettopreisProLiter,
|
||||
Sum(tblIDSTransactionsNew.Rabattbetrag) As [SummevonRabattbetrag],
|
||||
Case when Sum([TransactionVolume]) =0 THEN 0 ELSE Sum([Rabattbetrag])/Sum([TransactionVolume]) END AS RabattbetragProLiter
|
||||
FROM((tblIDSTransactionsNew INNER JOIN tbl_IDS_Länder ON tblIDSTransactionsNew.[OutletCountryCode] = tbl_IDS_Länder.OutletCountryCode) INNER JOIN tbl_IDS_Produkte On tblIDSTransactionsNew.[ProductTypeCode] = tbl_IDS_Produkte.ProductTypeCode ) INNER JOIN Adressen On tblIDSTransactionsNew.KdNrVERAG = Adressen.AdressenNr
|
||||
Where cast(tblIDSTransactionsNew.YearMonthDay As Date) = '" & rechnungsdatum.ToShortDateString & "' AND tblIDSTransactionsNew.[OutletCountryCode]<>740543 AND tblIDSTransactionsNew.KdNrVERAG = " & KdNr & "
|
||||
GROUP BY Adressen.AdressenNr, Adressen.[Name 1], Adressen.[Name 2], Adressen.Straße, Adressen.LandKz, Adressen.PLZ, Adressen.Ort, Adressen.UstIdKz, Adressen.UstIdNr, tblIDSTransactionsNew.[CustomerCode], tblIDSTransactionsNew.[OutletCountry], tbl_IDS_Produkte.ProductDescription, tbl_IDS_Länder.Steuersatz, tblIDSTransactionsNew.Rechenwert, tblIDSTransactionsNew.Kz"
|
||||
|
||||
|
||||
|
||||
Case "IDS_AT" 'Offert21
|
||||
|
||||
sqlstr = " SELECT Adressen.AdressenNr, Adressen.[Name 1], Adressen.[Name 2], Adressen.Straße, Adressen.LandKz, Adressen.PLZ, Adressen.Ort, Adressen.UstIdKz, Adressen.UstIdNr, tblIDSTransactionsNew.[CustomerCode], CASE WHEN tblIDSTransactionsNew.OutletCode BETWEEN 4473 And 4474 THEN 'Austria Suben' ELSE tblIDSTransactionsNew.OutletCountry END AS OutletCountry, tbl_IDS_Produkte.ProductDescription," & sqlselect_nachOrt & " tbl_IDS_Länder.Steuersatz, tblIDSTransactionsNew.Rechenwert, tblIDSTransactionsNew.Kz, Sum(tblIDSTransactionsNew.[TransactionVolume]) AS Liter, Sum(tblIDSTransactionsNew.[TotalNetAmount]) AS Nettobetrag, Sum(tblIDSTransactionsNew.[VATAmount]) AS Steuerbetrag,
|
||||
Case when Sum([TransactionVolume]) =0 THEN 0 ELSE Sum([TotalNetAmount])/Sum([TransactionVolume]) END AS NettopreisProLiter,
|
||||
Sum(tblIDSTransactionsNew.Rabattbetrag) As [SummevonRabattbetrag],
|
||||
Case when Sum([TransactionVolume]) =0 THEN 0 ELSE Sum([Rabattbetrag])/Sum([TransactionVolume]) END AS RabattbetragProLiter
|
||||
FROM tblIDSTransactionsNew INNER JOIN tbl_IDS_Länder ON tblIDSTransactionsNew.[OutletCountryCode] = tbl_IDS_Länder.OutletCountryCode INNER JOIN tbl_IDS_Produkte On tblIDSTransactionsNew.[ProductTypeCode] = tbl_IDS_Produkte.ProductTypeCode " & sqljoin_nachOrt & " INNER JOIN Adressen On tblIDSTransactionsNew.KdNrVERAG = Adressen.AdressenNr
|
||||
Where cast(tblIDSTransactionsNew.YearMonthDay As Date) = '" & rechnungsdatum.ToShortDateString & "' And tblIDSTransactionsNew.[OutletCountryCode]=740543 AND tblIDSTransactionsNew.KdNrVERAG = " & KdNr & "
|
||||
GROUP BY Adressen.AdressenNr, Adressen.[Name 1], Adressen.[Name 2], Adressen.Straße, Adressen.LandKz, Adressen.PLZ, Adressen.Ort, Adressen.UstIdKz, Adressen.UstIdNr, tblIDSTransactionsNew.[CustomerCode], CASE WHEN tblIDSTransactionsNew.OutletCode BETWEEN 4473 AND 4474 THEN 'Austria Suben' ELSE tblIDSTransactionsNew.OutletCountry END, tbl_IDS_Produkte.ProductDescription, tbl_IDS_Länder.Steuersatz, tblIDSTransactionsNew.Rechenwert, tblIDSTransactionsNew.Kz" & sqlgroup_nachOrt
|
||||
|
||||
End Select
|
||||
|
||||
|
||||
dt = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL")
|
||||
|
||||
Return dt
|
||||
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
Public Function getCurrentInvoicedate(kdNr As String) As String
|
||||
|
||||
Dim datum As String = ""
|
||||
|
||||
If kdNr <> "" AndAlso IsNumeric(kdNr) Then
|
||||
Dim rechnungsdatum As String = SQL.getValueTxtBySql(" select top(1) cast(tblIDSTransactionsNew.YearMonthDay As Date) from tblIDSTransactionsNew Where tblIDSTransactionsNew.KdNrVERAG = " & kdNr & " order by tblIDSTransactionsNew.YearMonthDay desc", "FMZOLL")
|
||||
If rechnungsdatum <> "" AndAlso IsDate(rechnungsdatum) Then
|
||||
datum = rechnungsdatum
|
||||
End If
|
||||
End If
|
||||
|
||||
Return datum
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Public Class Paramter
|
||||
|
||||
Shared apiSettingsloaded As Boolean = False
|
||||
|
||||
@@ -181,7 +181,7 @@ Public Class cMDMZinsberechnung
|
||||
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||
|
||||
Using cmd As New SqlCommand("SELECT id,belegNr,belegDatum,buchungstext,zahlungsBetrag,zahlungDatum, ueberschreitungInTagen, zinssatz,zinsbetrag, zahlungsperiode_start,zahlungsperiode_ende
|
||||
Using cmd As New SqlCommand("SELECT id,belegNr,belegDatum,buchungstext,zahlungsBetrag,zahlungDatum, ueberschreitungInTagen, zinssatz,zinsbetrag, zahlungsperiode_start,zahlungsperiode_ende, faelligkeitsDatum
|
||||
|
||||
FROM
|
||||
tblMDM_Zinsberechnung
|
||||
|
||||
@@ -64,6 +64,10 @@ Public Class cNCTSGestellungsadressen
|
||||
Public Function SAVE() As Boolean
|
||||
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
|
||||
|
||||
If Not VERAG_PROG_ALLGEMEIN.cProgramFunctions.ValidateSQLFieldLengths(list, "tblNCTSGestellungsadressen", "", "FMZOLL") Then
|
||||
Return False
|
||||
End If
|
||||
|
||||
|
||||
Dim sqlstr = " BEGIN TRAN IF EXISTS(SELECT * FROM tblNCTSGestellungsadressen WITH(updlock,serializable) WHERE nga_id=@nga_id) " &
|
||||
" BEGIN " & getUpdateCmd() & " END " &
|
||||
|
||||
@@ -481,6 +481,8 @@ Public Class cSMS
|
||||
If Originator = "" Then Originator = absenderFirma
|
||||
If Originator.Length > 11 Then Originator = Originator.Substring(0, 11)
|
||||
|
||||
Message = System.Text.RegularExpressions.Regex.Replace(Message, "\r\n|\r|\n", ", ")
|
||||
|
||||
Dim json As New Chilkat.JsonObject
|
||||
|
||||
'---------------------------------------------
|
||||
|
||||
@@ -201,7 +201,7 @@ Public Class cTrdInvoice
|
||||
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||
|
||||
Using cmd As New SqlCommand(" SELECT tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer, tblTrdinInvoice.SteuerbetragLokal,(SteuerpflichtigerBetragLokal+SteuerfreierBetragLokal) as Nettobetrag , tblTrdinInvoice.UStVAn_ID, tblTrdinInvoice.FilialenNr
|
||||
Using cmd As New SqlCommand(" SELECT tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer, tblTrdinInvoice.SteuerbetragLokal,(SteuerpflichtigerBetragLokal) as Nettobetrag , tblTrdinInvoice.UStVAn_ID, tblTrdinInvoice.FilialenNr
|
||||
FROM tblTrdinInvoice
|
||||
WHERE tblTrdinInvoice.Rechnungsdatum Between @von And @bis AND tblTrdinInvoice.SteuerbetragLokal<>0 AND tblTrdinInvoice.RechnungsKundenNr=@AdressenNr AND tblTrdinInvoice.WährungLokal='EUR'" & IIf(Archiv, " ", " AND isnull(tblTrdinInvoice.UStVAn_ID,0) = 0 ") & "
|
||||
ORDER BY tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer", conn)
|
||||
|
||||
@@ -953,6 +953,16 @@ Public Class cUTA
|
||||
Sub New()
|
||||
End Sub
|
||||
|
||||
Sub New(RechnungsNr, KundenNr, Datum, DocumentTyp)
|
||||
Me.RechnungsNr = RechnungsNr
|
||||
Me.KundenNr = KundenNr
|
||||
Me.Datum = Datum
|
||||
Me.DocumentTyp = DocumentTyp
|
||||
LOAD(RechnungsNr, KundenNr, Datum, DocumentTyp)
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
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("Id", Id,, True))
|
||||
@@ -978,6 +988,38 @@ Public Class cUTA
|
||||
Return SQL.doSQLVarList(sqlstr, "FMZOLL", , list)
|
||||
End Function
|
||||
|
||||
Public Sub LOAD(RechnungsNr As String, KundenNr As Integer, Datum As Date, DocumentTyp As String)
|
||||
Try
|
||||
hasEntry = False
|
||||
Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
||||
Using cmd As New SqlCommand("Select * FROM tblUTADocuments WHERE Datum=@Datum AND KundenNr = @KundenNr AND RechnungsNr=@RechnungsNr AND DocumentTyp = @DocumentTyp ", conn)
|
||||
cmd.Parameters.AddWithValue("@Datum", Datum)
|
||||
cmd.Parameters.AddWithValue("@KundenNr", KundenNr)
|
||||
cmd.Parameters.AddWithValue("@RechnungsNr", RechnungsNr)
|
||||
cmd.Parameters.AddWithValue("@DocumentTyp", DocumentTyp)
|
||||
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
If dr.Read Then
|
||||
For Each li In getParameterList()
|
||||
Dim propInfo As PropertyInfo = Me.GetType.GetProperty(li.Scalarvariable)
|
||||
|
||||
If dr.Item(li.Text) Is DBNull.Value Then
|
||||
propInfo.SetValue(Me, Nothing)
|
||||
Else
|
||||
propInfo.SetValue(Me, dr.Item(li.Text))
|
||||
End If
|
||||
|
||||
Next
|
||||
hasEntry = True
|
||||
End If
|
||||
dr.Close()
|
||||
End Using
|
||||
End Using
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Public Sub LOAD()
|
||||
Try
|
||||
hasEntry = False
|
||||
|
||||
@@ -337,8 +337,9 @@ Public Class cDATENSERVER
|
||||
|
||||
Public Function insertDataToDATENSERVER(srcPath, Optional bezeichnung = "", Optional endung = "", Optional allowMsg = True, Optional coll_archiv = False) As Boolean
|
||||
'Datei musss schon am Datenserver liegen, wird nciht mehr kopiert!!!!!
|
||||
Try
|
||||
|
||||
If endung = "" Then Dim fi As New System.IO.DirectoryInfo(srcPath) : endung = fi.Extension
|
||||
If endung = "" Then Dim fi As New System.IO.DirectoryInfo(srcPath) : endung = fi.Extension
|
||||
' If bezeichnung = "" Then bezeichnung = System.IO.Path.GetFileName(srcPath) : endung = ""
|
||||
If bezeichnung = "" Then bezeichnung = da_name
|
||||
replaceInvalidCahr(bezeichnung)
|
||||
@@ -351,6 +352,13 @@ Public Class cDATENSERVER
|
||||
If DATA_LIST.ADD_WOcopy(srcPath, bezeichnung, "", coll_archiv) Then
|
||||
Return True
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, "Pfad: " & srcPath & vbNewLine & vbNewLine & ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name, VERAG_PROG_ALLGEMEIN.ERROR_OP.MAIL)
|
||||
Return False
|
||||
End Try
|
||||
|
||||
Return False
|
||||
|
||||
End Function
|
||||
@@ -1266,6 +1274,48 @@ Public Class cFormularManager
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Shared Function convertPictureToPDF(path As String) As String
|
||||
|
||||
If Not File.Exists(path) Then
|
||||
Throw New FileNotFoundException("Picture not found.", path)
|
||||
End If
|
||||
|
||||
Dim outputPath As String = getTMPPath_PDF()
|
||||
|
||||
Dim pdfImage As Spire.Pdf.Graphics.PdfImage = pdfImage.FromFile(path)
|
||||
|
||||
Dim doc As New Spire.Pdf.PdfDocument()
|
||||
|
||||
Try
|
||||
Dim page As PdfPageBase = doc.Pages.Add()
|
||||
|
||||
Dim pageWidth As Single = page.ActualSize.Width
|
||||
Dim pageHeight As Single = page.ActualSize.Height
|
||||
|
||||
'Seitenverhältnis beibehalten
|
||||
Dim scaleX As Single = pageWidth / pdfImage.Width
|
||||
Dim scaleY As Single = pageHeight / pdfImage.Height
|
||||
Dim scale As Single = Math.Min(scaleX, scaleY)
|
||||
|
||||
Dim imageWidth As Single = pdfImage.Width * scale
|
||||
Dim imageHeight As Single = pdfImage.Height * scale
|
||||
|
||||
'Bild zentrieren
|
||||
Dim x As Single = (pageWidth - imageWidth) / 2
|
||||
Dim y As Single = (pageHeight - imageHeight) / 2
|
||||
|
||||
page.Canvas.DrawImage(pdfImage, 0, 0)
|
||||
|
||||
doc.SaveToFile(outputPath)
|
||||
|
||||
Finally
|
||||
doc.Close()
|
||||
End Try
|
||||
|
||||
|
||||
Return outputPath
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1527,6 +1577,7 @@ Public Class cFormularManager
|
||||
|
||||
|
||||
|
||||
|
||||
Public Shared Function getPDFViaSpirePDF_FromURL(URL As String, Optional targetPath As String = "") As String
|
||||
Try
|
||||
If targetPath = "" Then targetPath = getTMPPath_PDF()
|
||||
@@ -2377,17 +2428,27 @@ Public Class DATENVERVER_OPTIONS
|
||||
kdnr_path = kdnr
|
||||
End If
|
||||
If kategorie <> "" Then
|
||||
Dim dir = ""
|
||||
dir &= rootDir
|
||||
dir &= kategorie & "\"
|
||||
dir &= If(ordner IsNot Nothing AndAlso ordner <> "", ordner & "\", "")
|
||||
dir &= If(kdnr_path <> "", kdnr_path & "\", "")
|
||||
dir &= If(da_uOrdner1 IsNot Nothing AndAlso da_uOrdner1 <> "", da_uOrdner1 & "\", "")
|
||||
dir &= If(da_uOrdner2 IsNot Nothing AndAlso da_uOrdner2 <> "", da_uOrdner2 & "\", "")
|
||||
dir &= If(da_uOrdner3 IsNot Nothing AndAlso da_uOrdner3 <> "", da_uOrdner3 & "\", "")
|
||||
Dim dir As String = Path.Combine(
|
||||
rootDir,
|
||||
kategorie,
|
||||
If(String.IsNullOrWhiteSpace(ordner), "", ordner),
|
||||
If(String.IsNullOrWhiteSpace(kdnr_path), "", kdnr_path),
|
||||
If(String.IsNullOrWhiteSpace(da_uOrdner1), "", da_uOrdner1),
|
||||
If(String.IsNullOrWhiteSpace(da_uOrdner2), "", da_uOrdner2),
|
||||
If(String.IsNullOrWhiteSpace(da_uOrdner3), "", da_uOrdner3))
|
||||
If Not onlyordner Then
|
||||
If Not System.IO.Directory.Exists(dir) Then
|
||||
System.IO.Directory.CreateDirectory(dir)
|
||||
Try
|
||||
If Not Directory.Exists(dir) Then
|
||||
Directory.CreateDirectory(dir)
|
||||
End If
|
||||
|
||||
Catch ex As UnauthorizedAccessException
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, "Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & "Keine Berechtigung für den Ordner: " & dir & Environment.NewLine & "Windows-Benutzer: " & System.Security.Principal.WindowsIdentity.GetCurrent().Name & vbNewLine & vbNewLine & ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
|
||||
Catch ex As IOException
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, "Fehler beim Zugriff auf den Ordner: " & dir & vbNewLine & vbNewLine & ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
End Try
|
||||
End If
|
||||
Dim zusatz = "" : Dim zusatzcnt = 1
|
||||
While System.IO.File.Exists(dir & dateiName & zusatz & If(bezeichnung.ToString.EndsWith(endung), "", endung))
|
||||
@@ -2451,7 +2512,7 @@ Public Class DATENVERVER_OPTIONS
|
||||
End Function
|
||||
|
||||
|
||||
Public Shared Function addZugferdXML(pdfPath As String, xmlPath As String) As String
|
||||
Public Shared Function addZugferdXML(pdfPath As String, xmlPath As String, Optional fixedIssuerAssignedID As Boolean = True) As String
|
||||
|
||||
|
||||
Dim tempFile As String = pdfPath & ".tmp"
|
||||
@@ -2461,6 +2522,12 @@ Public Class DATENVERVER_OPTIONS
|
||||
|
||||
|
||||
Dim xmlBytes = File.ReadAllBytes(xmlPath)
|
||||
|
||||
If fixedIssuerAssignedID Then
|
||||
fixIssuerAssignedID(xmlBytes)
|
||||
End If
|
||||
|
||||
|
||||
Dim fileName As String = "factur-x.xml"
|
||||
|
||||
If HasAttachment(pdf, fileName) Then
|
||||
@@ -2496,6 +2563,75 @@ Public Class DATENVERVER_OPTIONS
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Public Shared Sub fixIssuerAssignedID(ByRef xmlBytes As Byte())
|
||||
|
||||
|
||||
Dim xmlDoc As New System.Xml.XmlDocument()
|
||||
xmlDoc.PreserveWhitespace = True
|
||||
|
||||
Using ms As New MemoryStream(xmlBytes)
|
||||
xmlDoc.Load(ms)
|
||||
End Using
|
||||
|
||||
Dim ns As New System.Xml.XmlNamespaceManager(xmlDoc.NameTable)
|
||||
|
||||
ns.AddNamespace(
|
||||
"ram",
|
||||
"urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
|
||||
)
|
||||
|
||||
Dim documents = xmlDoc.SelectNodes(
|
||||
"//ram:AdditionalReferencedDocument",
|
||||
ns
|
||||
)
|
||||
|
||||
For Each document As XmlElement In documents
|
||||
|
||||
Dim idNode As XmlNode =
|
||||
document.SelectSingleNode("ram:ID", ns)
|
||||
|
||||
If idNode Is Nothing Then
|
||||
Continue For
|
||||
End If
|
||||
|
||||
' Wert der bisherigen ID merken
|
||||
Dim idValue As String = idNode.InnerText
|
||||
|
||||
' Neue IssuerAssignedID erzeugen
|
||||
Dim issuerAssignedID As XmlElement =
|
||||
xmlDoc.CreateElement(
|
||||
"ram",
|
||||
"IssuerAssignedID",
|
||||
"urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
|
||||
)
|
||||
|
||||
issuerAssignedID.InnerText = idValue
|
||||
|
||||
' ID entfernen
|
||||
document.RemoveChild(idNode)
|
||||
|
||||
' IssuerAssignedID an ERSTE Stelle setzen
|
||||
document.InsertBefore(
|
||||
issuerAssignedID,
|
||||
document.FirstChild
|
||||
)
|
||||
|
||||
Next
|
||||
|
||||
Using ms As New MemoryStream()
|
||||
xmlDoc.Save(ms)
|
||||
xmlBytes = ms.ToArray()
|
||||
End Using
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Private Shared Function HasAttachment(pdf As iText.Kernel.Pdf.PdfDocument, fileName As String) As Boolean
|
||||
|
||||
Dim catalog = pdf.GetCatalog().GetPdfObject()
|
||||
@@ -2606,7 +2742,7 @@ Public Class DATENVERVER_OPTIONS
|
||||
xmp.SetStructField(pdfaExt, "schemas[1]", pdfaSchema, "namespaceURI", fxNs)
|
||||
xmp.SetStructField(pdfaExt, "schemas[1]", pdfaSchema, "prefix", "fx")
|
||||
|
||||
' 🔥 property MUSS rdf:Seq sein!
|
||||
' property MUSS rdf:Seq sein!
|
||||
xmp.SetStructField(
|
||||
pdfaExt,
|
||||
"schemas[1]",
|
||||
@@ -2624,7 +2760,7 @@ Public Class DATENVERVER_OPTIONS
|
||||
|
||||
Dim arrayPath = "schemas[1]/pdfaSchema:property"
|
||||
|
||||
' 🔥 Item in rdf:Seq hinzufügen
|
||||
' Item in rdf:Seq hinzufügen
|
||||
xmp.AppendArrayItem(
|
||||
pdfaExt,
|
||||
arrayPath,
|
||||
|
||||
@@ -252,5 +252,13 @@
|
||||
End Function
|
||||
|
||||
|
||||
Public Class Paramter
|
||||
|
||||
Shared SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
Shared Function GET_PARAM_ByName(tcParam_name, TESTSYSTEM) As String
|
||||
Return SQL.getValueTxtBySql("SELECT TOP 1 [Param_value] FROM [tblPartnersystem_Paramter] WHERE Param_system='MIC' AND [Param_name]='" & tcParam_name & "' AND Param_testsystem = " & IIf(TESTSYSTEM, 1, 0), , , SQL.GetNewOpenConnectionFMZOLL_SYSTEM(TESTSYSTEM))
|
||||
End Function
|
||||
End Class
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
@@ -6,15 +6,44 @@ Public Class cSyska_Interface
|
||||
|
||||
'STAMMDATEN
|
||||
Shared Function getStammdaten(FiBuSchnittstelleNr) As DataTable
|
||||
Dim sqlStr = " Select KundenNrZentrale As [Konto-Nr],isnull([Name 1],'') as Name,isnull([Name 2],'') as [Name2],(isnull(UstIdKz,'') + isnull(UstIdNr,'')) as [UST-Id-Nummer],isnull(UstIdGeprüft,'') as [UID-Datum],[Strasse],Adressen.landkz ,PLZ,LTRIM([Ort]) as Ort,isnull(BLZ,'') as [BLZ],isnull(KTO,'') as [KTO], CASE WHEN CAST(Zahlungsziel as VARCHAR(3)) ='0' THEN '' ELSE CAST(Zahlungsziel as VARCHAR(3)) END as [ZZiel],/*'' as [SPz],'' as [STg],*/isnull([E-Mail],'') as [mail],'' AS Info1,'' AS Inf2, Zahlungsziel2, Zahlungsziel3,[E-Mail],[Telefon] ,Telefax "
|
||||
sqlStr &= " ,Ordnungsbegriff ,Kunden.Währungscode,Anrede,Ansprechpartner,Lastschrift,Kunden.[Eingegeben am] as EingegebenAm"
|
||||
sqlStr &= " FROM Adressen INNER JOIN Kunden ON Kundennr=AdressenNr "
|
||||
sqlStr &= " LEFT JOIN tblKundenErweitert ON KundenNr=kde_KundenNr "
|
||||
sqlStr &= " LEFT JOIN [Länderverzeichnis für die Außenhandelsstatistik] as St ON St.LandKz=Adressen.LandKz "
|
||||
sqlStr &= " LEFT JOIN Währungstabelle ON St.LandNr = Währungstabelle.Währungsschlüssel "
|
||||
sqlStr &= " WHERE FiBuSchnittstelle=1 AND Auswahl='A' AND FiBuSchnittstelleNr='" & FiBuSchnittstelleNr & "' "
|
||||
sqlStr &= " Order by [Konto-Nr] "
|
||||
Return SQL.loadDgvBySql(sqlStr, "FMZOLL")
|
||||
|
||||
Dim SQLString = "Select Top(100)
|
||||
KundenNrZentrale As [Konto-Nr],
|
||||
isnull([Name 1],'') as Name,
|
||||
isnull([Name 2],'') as [Name2],
|
||||
(isnull(UstIdKz,'') + isnull(UstIdNr,'')) as [UST-Id-Nummer],
|
||||
isnull(UstIdGeprüft,'') as [UID-Datum],
|
||||
[Strasse],
|
||||
Adressen.landkz ,
|
||||
PLZ,LTRIM([Ort]) as Ort,
|
||||
isnull(BLZ,'') as [BLZ],
|
||||
isnull(KTO,'') as [KTO],
|
||||
CASE WHEN CAST(Zahlungsziel as VARCHAR(3)) ='0' THEN '' ELSE CAST(Zahlungsziel as VARCHAR(3)) END as [ZZiel],
|
||||
isnull([E-Mail],'') as [mail],
|
||||
'' AS Info1,
|
||||
'' AS Inf2,
|
||||
Zahlungsziel2,
|
||||
Zahlungsziel3,
|
||||
[E-Mail],
|
||||
[Telefon] ,
|
||||
Telefax,Ordnungsbegriff,
|
||||
Kunden.Währungscode,
|
||||
Anrede,
|
||||
Ansprechpartner,
|
||||
Lastschrift,
|
||||
Kunden.[Eingegeben am] as EingegebenAm,
|
||||
isnull(tblKundenErweitert.kde_BezFIBU,'') as [Kürzel],
|
||||
2811 as [präf. Bank],
|
||||
isnull(tblKundenErweitert.kde_Fakturierung_Sprache,'') as Sprache,
|
||||
isnull(Adressen.Steuernummer,'')as [SteuerNr],
|
||||
isnull(tblKundenErweitert.kde_betreuer,'') as Betreuer
|
||||
FROM Adressen INNER JOIN Kunden ON Kundennr=AdressenNr
|
||||
Left Join tblKundenErweitert ON KundenNr=kde_KundenNr
|
||||
Left Join [Länderverzeichnis für die Außenhandelsstatistik] as St ON St.LandKz=Adressen.LandKz
|
||||
Left Join Währungstabelle ON St.LandNr = Währungstabelle.Währungsschlüssel
|
||||
WHERE FiBuSchnittstelle = 0 And Auswahl ='A' AND FiBuSchnittstelleNr='" & FiBuSchnittstelleNr & "' and KundenNr = 203152 Order by [Konto-Nr]"
|
||||
|
||||
Return SQL.loadDgvBySql(SQLString, "FMZOLL")
|
||||
End Function
|
||||
|
||||
' Shared Function getStammdatenTEST(FiBuSchnittstelleNr) As DataTable
|
||||
@@ -80,9 +109,6 @@ Public Class cSyska_Interface
|
||||
Dim cleanStringName As String = Regex.Replace(row("Name"), "[^A-Za-z0-9\-/]", "").Replace(" ", "").ToUpper
|
||||
|
||||
Dim Lastschrift = CBool(row("Lastschrift"))
|
||||
'If FormatStringSYS(row("Name2"), 50) <> "" Then
|
||||
' MsgBox(FormatStringSYS(row("Name2"), 50) & vbTab)
|
||||
'End If
|
||||
getPersonenKto = ""
|
||||
getPersonenKto &= row("Konto-Nr") & vbTab
|
||||
getPersonenKto &= FormatStringSYS(cleanStringName, 2) & row("Konto-Nr") & vbTab
|
||||
@@ -113,7 +139,73 @@ Public Class cSyska_Interface
|
||||
getPersonenKto &= FormatStringSYS(row("Telefax")) & vbTab
|
||||
getPersonenKto &= FormatStringSYS(row("E-Mail")) & vbTab
|
||||
getPersonenKto &= vbTab
|
||||
' getPersonenKto &= vbTab
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
Public Shared Function getPersonenKto_MDM(row As DataRow) As String
|
||||
|
||||
Dim LandKz = row("LandKz")
|
||||
Dim Gegenkontonummer = ""
|
||||
Dim Gegenkontonummer2 = ""
|
||||
If LandKz Is DBNull.Value Or LandKz.trim = "" Or LandKz = "A" Then
|
||||
Gegenkontonummer = "4000" ' Erl. 20%
|
||||
Gegenkontonummer2 = "4000" ' Erl. 20%
|
||||
Else
|
||||
If CBool(SQL.DLookup("[MitgliedslandEU]", "[Währungstabelle]", "[LandKz]='" & LandKz & "'", "FMZOLL", False)) Then
|
||||
Gegenkontonummer = "4020" ' Erl. 0% EU
|
||||
Gegenkontonummer2 = "4020" ' Erl. 0% EU
|
||||
Else
|
||||
Gegenkontonummer = "4021" ' Erl. 0% 3.Land
|
||||
Gegenkontonummer2 = "4021" ' Erl. 0% 3.Land
|
||||
End If
|
||||
End If
|
||||
|
||||
Dim cleanStringName As String = Regex.Replace(row("Name"), "[^A-Za-z0-9\-/]", "").Replace(" ", "").ToUpper
|
||||
|
||||
Dim SteuerNr As String = ""
|
||||
|
||||
If Not IsDBNull(row("SteuerNr")) Then
|
||||
SteuerNr = Regex.Replace(row("SteuerNr").ToString(), "[^0-9]", "")
|
||||
End If
|
||||
|
||||
Dim Lastschrift = CBool(row("Lastschrift"))
|
||||
getPersonenKto_MDM = ""
|
||||
getPersonenKto_MDM &= row("Konto-Nr") & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Kürzel"), 24) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Name"), 50) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Name2"), 50) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Strasse"), 50) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("PLZ"), 20) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Ort"), 50) & vbTab
|
||||
getPersonenKto_MDM &= cProgramFunctions.getISO2Land(FormatStringSYS(LandKz, 5)) & vbTab
|
||||
getPersonenKto_MDM &= CDate(row("EingegebenAm")).ToShortDateString & vbTab 'Eröffnungsdatum
|
||||
'getPersonenKto_MDM &= Gegenkontonummer & vbTab
|
||||
getPersonenKto_MDM &= vbTab 'Bankname
|
||||
getPersonenKto_MDM &= If(Lastschrift, row("BLZ"), "") & vbTab
|
||||
getPersonenKto_MDM &= If(Lastschrift, row("KTO"), "") & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Name"), 50) & vbTab 'Inhaber
|
||||
getPersonenKto_MDM &= "00" & vbTab 'Skontotage
|
||||
getPersonenKto_MDM &= If(row("ZZiel") IsNot DBNull.Value AndAlso row("ZZiel") <> String.Empty, CDbl(row("ZZiel")).ToString("00"), "") & vbTab
|
||||
getPersonenKto_MDM &= "00,00" & vbTab 'Skonto
|
||||
getPersonenKto_MDM &= "01" & vbTab 'Mahnkennung
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("UST-Id-Nummer"), 50) & vbTab
|
||||
'getPersonenKto_MDM &= vbTab
|
||||
getPersonenKto_MDM &= row("Währungscode") & vbTab
|
||||
'getPersonenKto_MDM &= vbTab 'Forderungsonto
|
||||
'getPersonenKto_MDM &= vbTab
|
||||
'getPersonenKto_MDM &= Gegenkontonummer2 & vbTab 'Platzhalter??
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Anrede") & " " & row("Ansprechpartner"), 100) & vbTab
|
||||
'getPersonenKto_MDM &= vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Telefon")) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Telefax")) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("E-Mail")) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("präf. Bank")) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Sprache")) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(SteuerNr) & vbTab
|
||||
getPersonenKto_MDM &= FormatStringSYS(row("Betreuer")) & vbTab
|
||||
|
||||
getPersonenKto_MDM &= vbTab
|
||||
|
||||
End Function
|
||||
|
||||
@@ -146,43 +238,50 @@ Public Class cSyska_Interface
|
||||
If True Then 'boolKunden Then
|
||||
'----------------- STAMMDATEN -----------------
|
||||
Dim dt_Stamm As DataTable = getStammdaten(FiBuSchnittstelleNr)
|
||||
Dim postfix As String = ""
|
||||
If dt_Stamm IsNot Nothing AndAlso dt_Stamm.Rows.Count > 0 Then
|
||||
|
||||
If FiBuSchnittstelleNr = 19 Then postfix = "MDM_"
|
||||
Dim fileKD As System.IO.StreamWriter
|
||||
Dim DateinameKD = "AVISO_DEBI_" & Now.ToString("ddMMyyyy_HHmm") & ".txt"
|
||||
Dim DateinameKD = "AVISO_DEBI_" & Now.ToString("ddMMyyyy_HHmm") & postfix & ".txt"
|
||||
fileKD = My.Computer.FileSystem.OpenTextFileWriter(pathKD & DateinameKD, True, System.Text.Encoding.GetEncoding("iso-8859-15"))
|
||||
|
||||
|
||||
'fileKD.WriteLine(genStammdatenBeginn())
|
||||
'fileKD.WriteLine(genStammdatenBeginn())
|
||||
|
||||
|
||||
|
||||
initKDNr(dt_Stamm)
|
||||
initKDNr(dt_Stamm)
|
||||
For Each r In dt_Stamm.Rows
|
||||
fileKD.WriteLine(getPersonenKto(r))
|
||||
If FiBuSchnittstelleNr = 19 Then
|
||||
fileKD.WriteLine(getPersonenKto_MDM(r))
|
||||
Else
|
||||
fileKD.WriteLine(getPersonenKto(r))
|
||||
End If
|
||||
|
||||
|
||||
Next
|
||||
bool_DatenVorhanden = True
|
||||
|
||||
|
||||
fileKD.Close()
|
||||
fileKD.Close()
|
||||
|
||||
'In Archiv sichern
|
||||
If pathArchivKD <> "" Then
|
||||
If Not System.IO.Directory.Exists(pathArchivKD) Then System.IO.Directory.CreateDirectory(pathArchivKD)
|
||||
If pathKD <> pathArchivKD Then System.IO.File.Copy(pathKD & DateinameKD, pathArchivKD & DateinameKD)
|
||||
End If
|
||||
|
||||
If bool_DatenVorhanden Then
|
||||
If OpenFile Then Process.Start(pathKD & DateinameKD)
|
||||
Else
|
||||
System.IO.File.Delete(pathKD & DateinameKD)
|
||||
End If
|
||||
|
||||
'NOCH NICHT!!!
|
||||
updateFibu(FiBuSchnittstelleNr) ' UPDATE FiBuSchnittstelle --> 0
|
||||
|
||||
'In Archiv sichern
|
||||
If pathArchivKD <> "" Then
|
||||
If Not System.IO.Directory.Exists(pathArchivKD) Then System.IO.Directory.CreateDirectory(pathArchivKD)
|
||||
If pathKD <> pathArchivKD Then System.IO.File.Copy(pathKD & DateinameKD, pathArchivKD & DateinameKD)
|
||||
End If
|
||||
|
||||
If bool_DatenVorhanden Then
|
||||
If OpenFile Then Process.Start(pathKD & DateinameKD)
|
||||
Else
|
||||
System.IO.File.Delete(pathKD & DateinameKD)
|
||||
End If
|
||||
|
||||
'NOCH NICHT!!!
|
||||
updateFibu(FiBuSchnittstelleNr) ' UPDATE FiBuSchnittstelle --> 0
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -225,7 +225,13 @@ Public Class cVERAG_CustomsDeclarations
|
||||
' CBAM Pattern (HSCode)
|
||||
' ------------------------------------------------------------
|
||||
Dim cbamWhere As String = VERAG_PROG_ALLGEMEIN.cGreendeal_CBAM_Trn.BuildCBAMPatternWhereClause("i.zaItem_HSCode")
|
||||
Dim cbamWhereSnd As String = " AND " & cbamWhere.Replace("i.zaItem_HSCode", "zaItem_HSCode")
|
||||
Dim cbamWhereSnd As String = " AND " & cbamWhere.Replace("i.zaItem_HSCode", "zaItem_HSCode") &
|
||||
" AND zaItem_OriginCountry NOT IN (
|
||||
'EU','AT','BE','BG','HR','CY','CZ','DK','EE','FI','FR',
|
||||
'DE','GR','HU','IE','IT','LV','LT','LU','MT','NL',
|
||||
'PL','PT','RO','SK','SI','ES','SE',
|
||||
'CH','NO','IS','LI','XI'
|
||||
)"
|
||||
|
||||
Dim cbamWhereISOCntry As String = " i.zaItem_OriginCountry NOT IN (
|
||||
/*EU-27 (ISO2)*/
|
||||
@@ -727,6 +733,12 @@ Public Class cVERAG_CustomsDeclarations
|
||||
p.zaParty_Role IN ('CZ','EX','EXP','EXPORTER','CONSIGNOR'))") & "
|
||||
|
||||
WHERE z.za_ReleaseDate BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "'
|
||||
AND i.zaItem_OriginCountry NOT IN (
|
||||
'EU','AT','BE','BG','HR','CY','CZ','DK','EE','FI','FR',
|
||||
'DE','GR','HU','IE','IT','LV','LT','LU','MT','NL',
|
||||
'PL','PT','RO','SK','SI','ES','SE',
|
||||
'CH','NO','IS','LI','XI'
|
||||
)
|
||||
AND EXISTS (
|
||||
SELECT 1
|
||||
FROM VERAG.dbo.tblGreendeal_CBAM_Trn t
|
||||
@@ -788,11 +800,19 @@ Public Class cVERAG_CustomsDeclarations
|
||||
Dim prefixes As HashSet(Of String) =
|
||||
New HashSet(Of String)(cbamHsCodes)
|
||||
|
||||
Dim excludedCountries As New HashSet(Of String) From {
|
||||
"EU", "AT", "BE", "BG", "HR", "CY", "CZ", "DK", "EE", "FI", "FR",
|
||||
"DE", "GR", "HU", "IE", "IT", "LV", "LT", "LU", "MT", "NL",
|
||||
"PL", "PT", "RO", "SK", "SI", "ES", "SE",
|
||||
"CH", "NO", "IS", "LI", "XI"
|
||||
}
|
||||
|
||||
Return Me.Items.
|
||||
Where(Function(it)
|
||||
Dim hs As String = If(it.zaItem_HSCode, "").Trim()
|
||||
If hs = "" Then Return False
|
||||
' linksseitiger Prefix-Abgleich
|
||||
Dim origin As String = If(it.zaItem_OriginCountry, "").Trim().ToUpper()
|
||||
If origin <> "" AndAlso excludedCountries.Contains(origin) Then Return False
|
||||
For Each p In prefixes
|
||||
If hs.StartsWith(p) Then
|
||||
Return True
|
||||
|
||||
@@ -958,15 +958,17 @@ BindingFlags.Instance Or BindingFlags.NonPublic, Nothing, [Control], New Object(
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
mySmtpsvr.UseDefaultCredentials = False
|
||||
mySmtpsvr.Credentials = myCredentials
|
||||
Try
|
||||
'Msg.BodyEncoding = System.Text.Encoding.GetEncoding("UTF-8")
|
||||
Msg.BodyEncoding = System.Text.Encoding.UTF8 'System.Text.Encoding.GetEncoding("ISO-8859-1")
|
||||
Msg.From = New MailAddress(eMailfrom)
|
||||
|
||||
If myCredentials.UserName.ToLower.Contains("no-reply") AndAlso eMailfrom.ToString.ToLower.Contains("no-reply") Then
|
||||
Msg.From = New MailAddress(myCredentials.UserName)
|
||||
Else
|
||||
Msg.From = New MailAddress(eMailfrom)
|
||||
End If
|
||||
|
||||
If eMailTo IsNot Nothing Then
|
||||
For Each s As String In eMailTo.ToString.Split(";"c)
|
||||
|
||||
@@ -235,7 +235,7 @@ Partial Class frmDatumsabfrage
|
||||
Friend WithEvents btn As Button
|
||||
Friend WithEvents lbl As Label
|
||||
Friend WithEvents Label1 As Label
|
||||
Friend WithEvents dtp_date As DateTimePicker
|
||||
Public WithEvents dtp_date As DateTimePicker
|
||||
Friend WithEvents pnlKunde As Panel
|
||||
Public WithEvents cboKundenkreis As VERAG_PROG_ALLGEMEIN.MyComboBox
|
||||
Public WithEvents cbxKunden As CheckBox
|
||||
|
||||
@@ -71,7 +71,10 @@ Public Class frmDatumsabfrage
|
||||
End Sub
|
||||
|
||||
Private Sub frmDatumsabfrage(sender As Object, e As EventArgs) Handles Me.Load
|
||||
dtp_date.Value = Now.ToShortDateString
|
||||
|
||||
|
||||
|
||||
'dtp_date.Value = Now.ToShortDateString
|
||||
pnlKunde.Visible = panelKunde
|
||||
MyPanel2.Visible = panelLaender
|
||||
|
||||
|
||||
Reference in New Issue
Block a user