diff --git a/SDL/Resources/Kostenkalkulation_AG.xlsx b/SDL/Resources/Kostenkalkulation_AG.xlsx
new file mode 100644
index 00000000..6d7d3767
Binary files /dev/null and b/SDL/Resources/Kostenkalkulation_AG.xlsx differ
diff --git a/SDL/Resources/Kostenkalkulation_CS.xlsx b/SDL/Resources/Kostenkalkulation_CS.xlsx
new file mode 100644
index 00000000..aad95ed4
Binary files /dev/null and b/SDL/Resources/Kostenkalkulation_CS.xlsx differ
diff --git a/SDL/Resources/Kostenkalkulation_IMEX.xlsx b/SDL/Resources/Kostenkalkulation_IMEX.xlsx
new file mode 100644
index 00000000..371f7e62
Binary files /dev/null and b/SDL/Resources/Kostenkalkulation_IMEX.xlsx differ
diff --git a/SDL/SDL.vbproj b/SDL/SDL.vbproj
index efc5ca26..4ad06591 100644
--- a/SDL/SDL.vbproj
+++ b/SDL/SDL.vbproj
@@ -4551,7 +4551,9 @@
Always
-
+
+
+
Always
diff --git a/SDL/kunden/usrCntlOfferte.vb b/SDL/kunden/usrCntlOfferte.vb
index 44784183..dab8fcb1 100644
--- a/SDL/kunden/usrCntlOfferte.vb
+++ b/SDL/kunden/usrCntlOfferte.vb
@@ -1,6 +1,7 @@
Imports VERAG_PROG_ALLGEMEIN
+Imports VERAG_PROG_ALLGEMEIN.TESTJSON
Public Class usrCntlOfferte
@@ -580,7 +581,7 @@ Public Class usrCntlOfferte
Next
dgvOfferteDetails.AllowUserToDeleteRows = edit
- End If
+ End If
End With
@@ -602,16 +603,16 @@ Public Class usrCntlOfferte
.Columns.Clear()
OFFERTEBind = New cEasyBinding(BIND_DB)
- OFFERTEBind.initBinding(" SELECT [LeistungsNr],[LeistungsBez],[BerechnungsartNr],[Preis],[Anzahl],[BGebLeistungsNr],[BGebProzent],[BGebMinBetrag],BerechnungsartPosInkludiert,[Eingegeben am],[Geändert am],[Sachbearbeiter],[PreisänderungProzent],[PreisAlt],[Preisänderung],KundenNr,OffertenNr " &
- " FROM [tblOffertenpositionenArchiv] " &
- " WHERE OfId='" & OffertenId & "' ORDER BY LeistungsNr, Preis DESC", "tblOffertenpositionenArchiv")
+ OFFERTEBind.initBinding(" SELECT [LeistungsNr],[LeistungsBez],[BerechnungsartNr],[Preis],[Anzahl],[BGebLeistungsNr],[BGebProzent],[BGebMinBetrag],BerechnungsartPosInkludiert,[Eingegeben am],[Geändert am],[Sachbearbeiter],[PreisänderungProzent],[PreisAlt],[Preisänderung],KundenNr,OffertenNr " &
+ " FROM [tblOffertenpositionenArchiv] " &
+ " WHERE OfId='" & OffertenId & "' ORDER BY LeistungsNr, Preis DESC", "tblOffertenpositionenArchiv")
- .DataSource = OFFERTEBind.bindingdataTable
+ .DataSource = OFFERTEBind.bindingdataTable
- FUNC.dgvCellToCbo(dgvOfferteDetails, 2, "Berechnungsart", "BerechnungsartNr", " SELECT [BerechnungsartNr], CAST(BerechnungsartNr as varchar(3)) + ' - ' + [BerechnungsartBez] as [BerechnungsartBez] FROM [Berechnungsart] ORDER BY BerechnungsartNr ", "FMZOLL", 150)
+ FUNC.dgvCellToCbo(dgvOfferteDetails, 2, "Berechnungsart", "BerechnungsartNr", " SELECT [BerechnungsartNr], CAST(BerechnungsartNr as varchar(3)) + ' - ' + [BerechnungsartBez] as [BerechnungsartBez] FROM [Berechnungsart] ORDER BY BerechnungsartNr ", "FMZOLL", 150)
FUNC.dgvCellToCbo(dgvOfferteDetails, 5, "BGebLeist.", "BGebLeistungsNr", " SELECT [LeistungsNr], CAST(LeistungsNr as varchar(3)) + ' - ' + [LeistungsBez] as LeistungsBez FROM [Leistungen] ORDER BY [LeistungsNr] ", "FMZOLL", 250)
@@ -664,9 +665,9 @@ Public Class usrCntlOfferte
dgvOfferteNew.Enabled = False
- currentOffert = New VERAG_PROG_ALLGEMEIN.cOfferte(kdNr, dgvOfferteNew.SelectedRows(0).Cells("OffertenNr").Value, False)
- Dim orgDataTable As DataTable = dgvOfferteDetails.DataSource
- tmpDataTable = orgDataTable.Copy
+ currentOffert = New VERAG_PROG_ALLGEMEIN.cOfferte(kdNr, dgvOfferteNew.SelectedRows(0).Cells("OffertenNr").Value, False)
+ Dim orgDataTable As DataTable = dgvOfferteDetails.DataSource
+ tmpDataTable = orgDataTable.Copy
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
@@ -816,9 +817,16 @@ Public Class usrCntlOfferte
If True Then
+
+
+ Dim KD As New VERAG_PROG_ALLGEMEIN.cKunde(kdNr)
+ Dim ADR As New VERAG_PROG_ALLGEMEIN.cAdressen(kdNr)
+ Dim FIRMA_TMP = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale(KD.FilialenNr)
+
+
Dim sqlKostenkalk = " Select OffertenNr, isnull(LeistungsNr,'') as LeistungsNr,isnull(LeistungsBez,'' ) as LeistungsBez,isnull(Preis,'') as Preis,isnull([Geändert am],[Eingegeben am]) as Datum
FROM [VERAG].[dbo].[Offertenpositionen] where KundenNr = " & kdNr & " and OffertenNr in (38, 1) and LeistungsNr in (340, 324, 348, 440)
- order by cast([Eingegeben am] as date) desc, LeistungsNr, Preis desc"
+ order by Preis desc"
Dim dtKostenkalk As DataTable = (New SQL).loadDgvBySql(sqlKostenkalk, "FMZOLL")
@@ -840,15 +848,32 @@ Public Class usrCntlOfferte
Dim Blatt As Object 'Microsoft.Office.Interop.Excel.Worksheet 'As Object 'as Worksheet
exclApp = CreateObject("Excel.Application")
+ Dim ExcelBez = "Kostenkalkulation"
+
+ Select Case FIRMA_TMP
+ Case "IMEX" : ExcelBez &= "_IMEX "
+ Case "VERAG" : ExcelBez &= "_AG "
+ Case Else : ExcelBez &= " "
+ End Select
+
+
With exclApp
.Visible = False
Try
- Path = sPath & "Kostenkalkulation " & kdNr & " .xlsx"
+ Path = sPath & ExcelBez & kdNr & " .xlsx"
While System.IO.File.Exists(Path)
- Path = sPath & "Kostenkalkulation " & kdNr & "_" & Now.ToString("ddMMyyyyHHmmss") & ".xlsx"
+ Path = sPath & ExcelBez & kdNr & "_" & Now.ToString("ddMMyyyyHHmmss") & ".xlsx"
End While
- My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.Kostenkalkulation, False)
+
+ Select Case FIRMA_TMP
+ Case "IMEX" : My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.Kostenkalkulation_IMEX, False)
+ Case "VERAG" : My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.Kostenkalkulation_AG, False)
+ Case Else : My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.Kostenkalkulation, False)
+ End Select
+
+
+
Catch ex As System.Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
Me.Cursor = Cursors.Default
@@ -859,8 +884,6 @@ Public Class usrCntlOfferte
Datei = .Workbooks.Open(Path) 'Anpassen
Blatt = Datei.Worksheets(1) 'Anpassen
- Dim KD As New VERAG_PROG_ALLGEMEIN.cKunde(kdNr)
- Dim ADR As New VERAG_PROG_ALLGEMEIN.cAdressen(kdNr)
Blatt.Range("B8").Value = ADR.Name_1
Blatt.Range("B9").Value = ADR.AdressenNr
@@ -869,13 +892,15 @@ Public Class usrCntlOfferte
Dim currentRow As Integer = 13
+ Dim DatumDerZollabf As String = SQL.getValueTxtBySql("select top(1) isnull([Geändert am],[Eingegeben am]) as Datum FROM [VERAG].[dbo].[Offertenpositionen] where KundenNr = 704150 and OffertenNr in (38, 1) and LeistungsNr in (340, 324, 348, 440) order by Preis desc", "FMZOLL")
+
For Each row In dtKostenkalk.Rows
Blatt.Range("A" & currentRow).Value = row("LeistungsBez")
Blatt.Range("B" & currentRow).Value = row("Preis")
- If IsDate(row("Datum")) Then
+ If IsDate(DatumDerZollabf) Then
- Select Case CDate(row("Datum")).Year
+ Select Case CDate(DatumDerZollabf).Year
'Berechnungssätze laut Johanna Luxbauer
Case 2018 : Blatt.Range("D" & currentRow).Value = 0.3387
Case 2019 : Blatt.Range("D" & currentRow).Value = 0.3048