diff --git a/SDL/mdm/usrcntlFremdrechnungen.Designer.vb b/SDL/mdm/usrcntlFremdrechnungen.Designer.vb
index 6a4f5fad..ce8093cc 100644
--- a/SDL/mdm/usrcntlFremdrechnungen.Designer.vb
+++ b/SDL/mdm/usrcntlFremdrechnungen.Designer.vb
@@ -61,6 +61,7 @@ Partial Class usrcntlFremdrechnungen
Me.cntxtExcel = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.ToolStripMenuItem3 = New System.Windows.Forms.ToolStripMenuItem()
Me.ToolStripMenuItem6 = New System.Windows.Forms.ToolStripMenuItem()
+ Me.cbxMailoeffnen = New System.Windows.Forms.CheckBox()
Me.FlowLayoutPanel.SuspendLayout()
Me.ContextMenuStrip1.SuspendLayout()
Me.Panel1.SuspendLayout()
@@ -274,6 +275,7 @@ Partial Class usrcntlFremdrechnungen
Me.Panel1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
Me.Panel1.BackColor = System.Drawing.SystemColors.ControlLightLight
Me.Panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
+ Me.Panel1.Controls.Add(Me.cbxMailoeffnen)
Me.Panel1.Controls.Add(Me.cbxPDFhinterlegt)
Me.Panel1.Controls.Add(Me.cbx)
Me.Panel1.Controls.Add(Me.Label4)
@@ -366,7 +368,7 @@ Partial Class usrcntlFremdrechnungen
Me.Button1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch
Me.Button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.Button1.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft
- Me.Button1.Location = New System.Drawing.Point(200, 218)
+ Me.Button1.Location = New System.Drawing.Point(5, 268)
Me.Button1.Name = "Button1"
Me.Button1.Size = New System.Drawing.Size(50, 44)
Me.Button1.TabIndex = 45
@@ -435,7 +437,7 @@ Partial Class usrcntlFremdrechnungen
Me.Button8.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.Button8.Image = Global.SDL.My.Resources.Resources.Excel_logo
Me.Button8.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft
- Me.Button8.Location = New System.Drawing.Point(132, 168)
+ Me.Button8.Location = New System.Drawing.Point(132, 218)
Me.Button8.Name = "Button8"
Me.Button8.Size = New System.Drawing.Size(118, 44)
Me.Button8.TabIndex = 31
@@ -539,6 +541,18 @@ Partial Class usrcntlFremdrechnungen
Me.ToolStripMenuItem6.Size = New System.Drawing.Size(210, 22)
Me.ToolStripMenuItem6.Text = "Formatiert (dauert länger)"
'
+ 'cbxMailoeffnen
+ '
+ Me.cbxMailoeffnen.AutoSize = True
+ Me.cbxMailoeffnen.Checked = True
+ Me.cbxMailoeffnen.CheckState = System.Windows.Forms.CheckState.Checked
+ Me.cbxMailoeffnen.Location = New System.Drawing.Point(146, 183)
+ Me.cbxMailoeffnen.Name = "cbxMailoeffnen"
+ Me.cbxMailoeffnen.Size = New System.Drawing.Size(91, 17)
+ Me.cbxMailoeffnen.TabIndex = 54
+ Me.cbxMailoeffnen.Text = "Mail anzeigen"
+ Me.cbxMailoeffnen.UseVisualStyleBackColor = True
+ '
'usrcntlFremdrechnungen
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -600,4 +614,5 @@ Partial Class usrcntlFremdrechnungen
Friend WithEvents dat_Sum_Von As DateTimePicker
Friend WithEvents dgvDetails As VERAG_PROG_ALLGEMEIN.MyDatagridview
Friend WithEvents cbxPDFhinterlegt As CheckBox
+ Friend WithEvents cbxMailoeffnen As CheckBox
End Class
diff --git a/SDL/mdm/usrcntlFremdrechnungen.vb b/SDL/mdm/usrcntlFremdrechnungen.vb
index 9bbc93d0..2dabce6d 100644
--- a/SDL/mdm/usrcntlFremdrechnungen.vb
+++ b/SDL/mdm/usrcntlFremdrechnungen.vb
@@ -226,7 +226,7 @@ Public Class usrcntlFremdrechnungen
'IDS
Case "IDS" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") &
- " invoice_id, [YearMonthDay] as Rechnungsdatum,[Invoicenumber] as Rechnungsnummer, CustomerCode as Kundennummer,[daId],[TransactionVolume] as Transaktionsmenge,[AmminclVAT] as Bruttobetrag,[TotalNetAmount] as Nettobetrag,[VATAmount] as MWSt, cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM tblIDSInvoicesNew WHERE [CustomerCode] in (SELECT distinct([CustomerCode]) FROM [VERAG].[dbo].[tbl_IDS_Kunden] WHERE 1 = 1 AND isnull([tbl_IDS_Kunden].KdNrAlt, 0) = 0 " & sqlfehlendePDF & IIf(kdNr > 0, " AND [KdNrVERAG]=" & kdNr, "") & ") and [YearMonthDay] " & setSQLWhere(SDLNrTmp, "") & " order by [YearMonthDay] desc, [Invoicenumber]"
+ " invoice_id,[tbl_IDS_Kunden].KdNrVERAG as AdressenNr, [YearMonthDay] as Rechnungsdatum,[Invoicenumber] as Rechnungsnummer, tblIDSInvoicesNew.CustomerCode as Kundennummer,[daId],[TransactionVolume] as Transaktionsmenge,[AmminclVAT] as Bruttobetrag,[TotalNetAmount] as Nettobetrag,[VATAmount] as MWSt, cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM tblIDSInvoicesNew inner join [VERAG].[dbo].[tbl_IDS_Kunden] on tblIDSInvoicesNew.CustomerCode = tbl_IDS_Kunden.CustomerCode WHERE tblIDSInvoicesNew.[CustomerCode] in (SELECT distinct([CustomerCode]) FROM [VERAG].[dbo].[tbl_IDS_Kunden] WHERE 1 = 1 AND isnull([tbl_IDS_Kunden].KdNrAlt, 0) = 0 " & sqlfehlendePDF & IIf(kdNr > 0, " AND [KdNrVERAG]=" & kdNr, "") & ") and [YearMonthDay] " & setSQLWhere(SDLNrTmp, "") & " order by [YearMonthDay] desc, [Invoicenumber]"
'UTA
Case "UTA" : SQL_STR = "SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahlTop, "") &
@@ -252,34 +252,34 @@ Public Class usrcntlFremdrechnungen
Case "ALLE" : Dim anzahl As Integer = anzahlTop / 6 : SQL_STR = " select * from (SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") &
"
--IDS
- 'IDS' as Lieferant,invoice_id, [YearMonthDay] as Rechnungsdatum,[Invoicenumber] as Rechnungsnummer,CustomerCode as Kundennummer,[AmminclVAT] as Bruttobetrag,[TotalNetAmount] as Nettobetrag,[VATAmount] as MWSt,'' as Land, 'RE' as Art,[daId], cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM tblIDSInvoicesNew WHERE [CustomerCode] in (SELECT [CustomerCode] FROM [VERAG].[dbo].[tbl_IDS_Kunden] WHERE 1 = 1 and isnull([tbl_IDS_Kunden].KdNrAlt, 1) = 0 " & sqlfehlendePDF & IIf(kdNr > 0, " AND [KdNrVERAG]=" & kdNr, "") & " ) and [YearMonthDay] " & setSQLWhere("IDS", "") & " -- order by [YearMonthDay], [Invoicenumber]
+ 'IDS' as Lieferant,invoice_id,[tbl_IDS_Kunden].KdNrVERAG as AdressenNr, [YearMonthDay] as Rechnungsdatum,[Invoicenumber] as Rechnungsnummer,tblIDSInvoicesNew.CustomerCode as Kundennummer,[AmminclVAT] as Bruttobetrag,[TotalNetAmount] as Nettobetrag,[VATAmount] as MWSt,'' as Land, 'RE' as Art,[daId], cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM tblIDSInvoicesNew inner join [VERAG].[dbo].[tbl_IDS_Kunden] on tblIDSInvoicesNew.CustomerCode = tbl_IDS_Kunden.CustomerCode WHERE tblIDSInvoicesNew.[CustomerCode] in (SELECT [CustomerCode] FROM [VERAG].[dbo].[tbl_IDS_Kunden] WHERE 1 = 1 and isnull([tbl_IDS_Kunden].KdNrAlt, 1) = 0 " & sqlfehlendePDF & IIf(kdNr > 0, " AND [KdNrVERAG]=" & kdNr, "") & " ) and [YearMonthDay] " & setSQLWhere("IDS", "") & " -- order by [YearMonthDay], [Invoicenumber]
UNION ALL
--MSE
- SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") & " 'MSE' as Lieferant,-1 as invoice_id, [invoice_date] as Rechnungsdatum, cast([invoice_id] as nvarchar) as Rechnungsnummer,[customer_number] as Kundennummer, [total_amount_euro] as Bruttobetrag ,(total_amount_euro - [total_vat_amount_euro]) as Nettobetrag ,[total_vat_amount_euro] as MWST,[country] as Land,'RE' as Art,daId, cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM tblMSEInvoices inner join tblMSECustomers on customer_id = [customer_number] where 1 = 1 " & sqlfehlendePDF & IIf(kdNr > 0, " AND [partner_customer_number]=" & kdNr, "") & " and [invoice_date] " & setSQLWhere("MSE", "country") & " --order by invoice_date, invoice_id
+ SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") & " 'MSE' as Lieferant,-1 as invoice_id,partner_customer_number as AdressenNr, [invoice_date] as Rechnungsdatum, cast([invoice_id] as nvarchar) as Rechnungsnummer,[customer_number] as Kundennummer, [total_amount_euro] as Bruttobetrag ,(total_amount_euro - [total_vat_amount_euro]) as Nettobetrag ,[total_vat_amount_euro] as MWST,[country] as Land,'RE' as Art,daId, cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM tblMSEInvoices inner join tblMSECustomers on customer_id = [customer_number] where 1 = 1 " & sqlfehlendePDF & IIf(kdNr > 0, " AND [partner_customer_number]=" & kdNr, "") & " and [invoice_date] " & setSQLWhere("MSE", "country") & " --order by invoice_date, invoice_id
UNION ALL
--UTA
- SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") & " 'UTA' as Lieferant,-1 as invoice_id, [Rechnungsdatum],STR([Rechnungsnummer_pro_Lieferland]) as Rechnungsnummer,Kundennummer,SUM(Gesamtbetrag_Brutto_in_Darstellwährung) as Bruttobetrag,SUM(Gesamtbetrag_Netto_in_Darstellwährung) as Nettobetrag, SUM(Gesamtbetrag_Umsatzsteuer_in_Darstellwährung) as MWSt,[Lieferland_ISO2] as Land, 'RE' as Art,[daId], cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM [VERAG].[dbo].[tblUTAImportNew] inner join adressen on Kundennummer = UTAKundenNr where 1 = 1 " & sqlfehlendePDF & IIf(kdNr > 0, " AND [AdressenNr]=" & kdNr, "") & " and [Rechnungsdatum] " & setSQLWhere("UTA", "Lieferland_ISO2") & " group by [Rechnungsnummer_pro_Lieferland],[Rechnungsdatum],Kundennummer,[daId],[Lieferland_ISO2] UNION ALL SELECT 'UTA',-1, [Datum], cast([RechnungsNr] as nvarchar) ,[KundenNr],0,0,0,'',[DocumentTyp],[daId], cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM [VERAG].[dbo].[tblUTADocuments] inner join adressen on KundenNr = UTAKundenNr where AdressenNr = " & kdNr & " AND Datum " & setSQLWhere("UTA_", "") & " --order by Rechnungsnummer desc
+ SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") & " 'UTA' as Lieferant,-1 as invoice_id,Adressen.AdressenNr, [Rechnungsdatum],STR([Rechnungsnummer_pro_Lieferland]) as Rechnungsnummer,Kundennummer,SUM(Gesamtbetrag_Brutto_in_Darstellwährung) as Bruttobetrag,SUM(Gesamtbetrag_Netto_in_Darstellwährung) as Nettobetrag, SUM(Gesamtbetrag_Umsatzsteuer_in_Darstellwährung) as MWSt,[Lieferland_ISO2] as Land, 'RE' as Art,[daId], cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM [VERAG].[dbo].[tblUTAImportNew] inner join adressen on Kundennummer = UTAKundenNr where 1 = 1 " & sqlfehlendePDF & IIf(kdNr > 0, " AND [AdressenNr]=" & kdNr, "") & " and [Rechnungsdatum] " & setSQLWhere("UTA", "Lieferland_ISO2") & " group by [Rechnungsnummer_pro_Lieferland],[Rechnungsdatum],Kundennummer,AdressenNr,[daId],[Lieferland_ISO2] UNION ALL SELECT 'UTA',-1,AdressenNr, [Datum], cast([RechnungsNr] as nvarchar) ,[KundenNr],0,0,0,'',[DocumentTyp],[daId], cast(case when [daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM [VERAG].[dbo].[tblUTADocuments] inner join adressen on KundenNr = UTAKundenNr where AdressenNr = " & kdNr & " AND Datum " & setSQLWhere("UTA_", "") & " --order by Rechnungsnummer desc
UNION ALL
--VERAG
- SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") & " 'VERAG' as Lieferant,-1 as invoice_id, tblTrdinInvoice.Rechnungsdatum, cast(tblTrdinInvoice.Rechnungsnummer as nvarchar) as Rechnungsnummer ,tblTrdinInvoice.KundenNrZentrale as Kundennummer, tblTrdinInvoice.SteuerpflichtigerBetragLokal + tblTrdinInvoice.SteuerfreierBetragLokal as Bruttobetrag ,tblTrdinInvoice.SteuerpflichtigerBetragLokal + tblTrdinInvoice.SteuerfreierBetragLokal - tblTrdinInvoice.SteuerbetragLokal as Nettobetrag ,tblTrdinInvoice.SteuerbetragLokal as MWST, 'AT' as Land, 'RE' as Art, 1 as daId, cast(1 as bit) PDFvorhanden FROM tblTrdinInvoice WHERE 1 = 1 " & IIf(kdNr > 0, " AND tblTrdinInvoice.RechnungsKundenNr=" & kdNr, "") & " and tblTrdinInvoice.Rechnungsdatum " & setSQLWhere("VERAG", "'AT'") & " AND tblTrdinInvoice.FilialenNr = 4814 --ORDER BY tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer
+ SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") & " 'VERAG' as Lieferant,-1 as invoice_id,Adressen.AdressenNr, tblTrdinInvoice.Rechnungsdatum, cast(tblTrdinInvoice.Rechnungsnummer as nvarchar) as Rechnungsnummer ,tblTrdinInvoice.KundenNrZentrale as Kundennummer, tblTrdinInvoice.SteuerpflichtigerBetragLokal + tblTrdinInvoice.SteuerfreierBetragLokal as Bruttobetrag ,tblTrdinInvoice.SteuerpflichtigerBetragLokal + tblTrdinInvoice.SteuerfreierBetragLokal - tblTrdinInvoice.SteuerbetragLokal as Nettobetrag ,tblTrdinInvoice.SteuerbetragLokal as MWST, 'AT' as Land, 'RE' as Art, 1 as daId, cast(1 as bit) PDFvorhanden FROM tblTrdinInvoice inner join Adressen on KundenNrZentrale = AdressenNr WHERE 1 = 1 " & IIf(kdNr > 0, " AND tblTrdinInvoice.RechnungsKundenNr=" & kdNr, "") & " and tblTrdinInvoice.Rechnungsdatum " & setSQLWhere("VERAG", "'AT'") & " AND tblTrdinInvoice.FilialenNr = 4814 --ORDER BY tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer
UNION ALL
--PLOSE
- SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") & " 'PLOSE' as Lieferant,-1 as invoice_id, [plInv_SupplierRechnungsDatum] as Rechnungsdatum, cast([plInv_SupplierRechnungsNr] as nvarchar) as Rechnungsnummer,[plInv_PLOSEKundennummer] as Kundennummer,[plInv_Bruttobetrag] as Bruttobetrag,[plInv_Nettobetrag] as Nettobetrag,[plInv_MWSTBetrag] as MWST, [plInv_SupplierCountry] as Land, 'RE' as Art,[plInv_daId] as daId, cast(case when [plInv_daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM tblPLOSE_Inv_Data inner join Adressen on Adressen.PLOSEKundenNr = plInv_PLOSEKundennummer where 1 = 1 " & sqlfehlendePDF_PLOSE & IIf(kdNr > 0, " AND Adressen.AdressenNr=" & kdNr, "") & " and [plInv_SupplierRechnungsDatum] " & setSQLWhere("PLOSE", "plInv_SupplierCountry") & "-- Order by plInv_SupplierRechnungsDatum desc, [plInv_SupplierRechnungsNr]
+ SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") & " 'PLOSE' as Lieferant,-1 as invoice_id,Adressen.AdressenNr, [plInv_SupplierRechnungsDatum] as Rechnungsdatum, cast([plInv_SupplierRechnungsNr] as nvarchar) as Rechnungsnummer,[plInv_PLOSEKundennummer] as Kundennummer,[plInv_Bruttobetrag] as Bruttobetrag,[plInv_Nettobetrag] as Nettobetrag,[plInv_MWSTBetrag] as MWST, [plInv_SupplierCountry] as Land, 'RE' as Art,[plInv_daId] as daId, cast(case when [plInv_daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM tblPLOSE_Inv_Data inner join Adressen on Adressen.PLOSEKundenNr = plInv_PLOSEKundennummer where 1 = 1 " & sqlfehlendePDF_PLOSE & IIf(kdNr > 0, " AND Adressen.AdressenNr=" & kdNr, "") & " and [plInv_SupplierRechnungsDatum] " & setSQLWhere("PLOSE", "plInv_SupplierCountry") & "-- Order by plInv_SupplierRechnungsDatum desc, [plInv_SupplierRechnungsNr]
UNION ALL
--RMC
- SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") & " 'RMC' as Lieferant,-1 as invoice_id, [rmc_reDatum] as Rechnungsdatum,cast([rmc_reNr] as nvarchar) as Rechnungsnummer,rmc_kdNr as Kundennummer ,[rmc_betragBrutto] as Bruttobetrag,[rmc_betragNetto] as Nettobetrag,[rmc_betragMWST] as MWST, rmc_landKZ as Land, 'RE' as Art, [rmc_daId] as daId, cast(case when [rmc_daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM [VERAG].[dbo].[tblRMCImport] inner join Adressen on Adressen.WölflKundenNr = rmc_kdNr where 1 = 1 " & sqlfehlendePDF_RMC & IIf(kdNr > 0, " AND AdressenNr=" & kdNr, "") & " and [rmc_reDatum] " & setSQLWhere("RMC", "rmc_landKZ") & "-- order by rmc_reDatum, rmc_reNr
+ SELECT " & IIf(cbxMax1000Eintrage.Checked, " top " & anzahl, "") & " 'RMC' as Lieferant,-1 as invoice_id,Adressen.AdressenNr, [rmc_reDatum] as Rechnungsdatum,cast([rmc_reNr] as nvarchar) as Rechnungsnummer,rmc_kdNr as Kundennummer ,[rmc_betragBrutto] as Bruttobetrag,[rmc_betragNetto] as Nettobetrag,[rmc_betragMWST] as MWST, rmc_landKZ as Land, 'RE' as Art, [rmc_daId] as daId, cast(case when [rmc_daId] is not null then 1 else 0 end as bit) as PDFvorhanden FROM [VERAG].[dbo].[tblRMCImport] inner join Adressen on Adressen.WölflKundenNr = rmc_kdNr where 1 = 1 " & sqlfehlendePDF_RMC & IIf(kdNr > 0, " AND AdressenNr=" & kdNr, "") & " and [rmc_reDatum] " & setSQLWhere("RMC", "rmc_landKZ") & "-- order by rmc_reDatum, rmc_reNr
) as temp where 1=1 and temp.Rechnungsdatum" & setSQLWhere(SDLNrTmp, "temp.Land") & " order by Rechnungsdatum desc"
@@ -647,163 +647,217 @@ Public Class usrcntlFremdrechnungen
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
- If dgvLFRechnung.SelectedRows.Count > 0 Then
+ Dim groups As New Dictionary(Of Object, List(Of DataGridViewRow))
- Dim TextHTMLtable = ""
+ For Each r As DataGridViewRow In dgvLFRechnung.SelectedRows
+ Dim key = r.Cells("AdressenNr").Value
+ If Not groups.ContainsKey(key) Then
+ groups(key) = New List(Of DataGridViewRow)
+ End If
+ groups(key).Add(r)
+ Next
- TextHTMLtable &= "
"
- TextHTMLtable &= "| Supplier | Country | Date |
"
-
- Dim pdflist As New List(Of String)
- For Each row In dgvLFRechnung.SelectedRows
+ If aktLieferant = "ALLE" And cbxMax1000Eintrage.Checked Then
+ MsgBox("Entferne die MAX 1000 Einträge Beschänkung, da ansonsten können nicht alle Daten ermittelt werden!")
+ Exit Sub
+ End If
- Dim Lieferant = ""
+ If groups.Count > 0 Then
- If dgvLFRechnung.Columns.Contains("Lieferant") Then
- Lieferant = row.Cells("Lieferant").Value
- Else
- Lieferant = aktLieferant
- End If
-
- If Lieferant = "VERAG" Then
- 'VERAG IGNORIEREN
- 'Dim ReDat = row.Cells("Rechnungsdatum").Value
- 'Dim ReNr = row.Cells("Rechnungsnummer").Value
-
- 'If ReDat IsNot Nothing AndAlso ReNr > 0 Then
- ' Me.Cursor = Cursors.WaitCursor
- ' Dim da_id = SQL.getValueTxtBySql("SELECT TOP(1) RK_ID FROM Rechnungsausgang where cast(Rechnungsausgang.RechnungsDatum as Date) ='" & ReDat & "' and Rechnungsausgang.RechnungsNr='" & ReNr & "' AND FilialenNr = 4814 AND RK_ID is not null", "FMZOLL")
- ' cFakturierung.doRechnungsDruck_SRorER(da_id,, False, 3)
- 'End If
+ If Not vbYes = MsgBox("Möchten Sie die Rechnungen von " & groups.Count & " Kunden per Mail verschicken? " & IIf(Not cbxMailoeffnen.Checked, vbNewLine & "Die Mails werden sofort verschickt!", ""), vbYesNoCancel) Then
+ Exit Sub
+ End If
- Else
+ For Each kvp In groups
+
+ Dim TextHTMLtable = ""
+
+ TextHTMLtable &= ""
+ TextHTMLtable &= "| Supplier | Country | Date |
"
+
+ Dim pdflist As New List(Of String)
+
+ For Each row In kvp.Value
+
+
+ Dim Lieferant = ""
+
+ If dgvLFRechnung.Columns.Contains("Lieferant") Then
+ Lieferant = row.Cells("Lieferant").Value
+ Else
+ Lieferant = aktLieferant
+ End If
+
+ If Lieferant = "VERAG" Then
+ 'VERAG IGNORIEREN
+ 'Dim ReDat = row.Cells("Rechnungsdatum").Value
+ 'Dim ReNr = row.Cells("Rechnungsnummer").Value
+
+ 'If ReDat IsNot Nothing AndAlso ReNr > 0 Then
+ ' Me.Cursor = Cursors.WaitCursor
+ ' Dim da_id = SQL.getValueTxtBySql("SELECT TOP(1) RK_ID FROM Rechnungsausgang where cast(Rechnungsausgang.RechnungsDatum as Date) ='" & ReDat & "' and Rechnungsausgang.RechnungsNr='" & ReNr & "' AND FilialenNr = 4814 AND RK_ID is not null", "FMZOLL")
+ ' cFakturierung.doRechnungsDruck_SRorER(da_id,, False, 3)
+ 'End If
+
+ Else
+
+ If Lieferant = "IDS" Then
+
+ Dim dt As New DataTable
+ dt = initDGVRechnungsdetails(row.Cells("invoice_id").Value, True)
+
+ For Each r As DataRow In dt.Rows
+
+ TextHTMLtable &= ""
+ TextHTMLtable &= "| " & Lieferant & " | "
+ TextHTMLtable &= "" & r.Item("Land") & " | "
+ TextHTMLtable &= "" & r.Item("Rechnungsdatum") & " | "
+ TextHTMLtable &= "
"
+
+ Dim daId As Integer = IIf(IsDBNull(r.Item("daId")), -1, r.Item("daId"))
+ If daId > 0 Then
+ Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER(daId)
+ pdflist.Add(DS.GET_TOP1_PATH())
+ End If
+
+ Next
- '
+ Else
+ TextHTMLtable &= ""
+ TextHTMLtable &= "| " & Lieferant & " | "
+ TextHTMLtable &= "" & row.Cells("Land").Value & " | "
+ TextHTMLtable &= "" & row.Cells("Rechnungsdatum").Value & " | "
+ TextHTMLtable &= "
"
- If Lieferant = "IDS" Then
+ Dim daId As Integer = IIf(IsDBNull(row.Cells("daId").Value), -1, row.Cells("daId").Value)
+ If daId > 0 Then
+ Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER(daId)
+ pdflist.Add(DS.GET_TOP1_PATH())
+ End If
- Dim dt As New DataTable
- dt = initDGVRechnungsdetails(row.Cells("invoice_id").value, True)
-
- For Each r As DataRow In dt.Rows
-
- TextHTMLtable &= ""
- TextHTMLtable &= "| " & Lieferant & " | "
- TextHTMLtable &= "" & r.Item("Land") & " | "
- TextHTMLtable &= "" & r.Item("Rechnungsdatum") & " | "
- TextHTMLtable &= "
"
-
- Dim daId As Integer = IIf(IsDBNull(r.Item("daId")), -1, r.Item("daId"))
- If daId > 0 Then
- Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER(daId)
- pdflist.Add(DS.GET_TOP1_PATH())
End If
+
+
+ End If
+
+ Next
+
+
+ TextHTMLtable &= "
"
+
+ Dim outl As New Outlook.Application
+ Dim Mail As Microsoft.Office.Interop.Outlook.MailItem
+ Mail = outl.CreateItem(0)
+
+ Dim kundeMail As New cKunden()
+ kundeMail = kundenSQL.getKundeByKdNr(kvp.Key)
+
+ Select Case kundeMail.LandKz
+ Case "TR"
+ Mail.Subject = kundeMail.Kurzname & " - ORIJINAL FATURA "
+
+
+ Mail.HTMLBody = "Bayanlar ve Baylar!,
Ekte izlere orijinal faturalarinizi gönderiyoruz.
"
+
+ Mail.HTMLBody &= TextHTMLtable
+
+ Mail.HTMLBody &= "
Iyi calismalar dileriz.
"
+
+ Case "A", "AT", "D", "DE", "CH"
+
+ Mail.Subject = kundeMail.Kurzname & " - ORIGINAL RECHNUNG "
+
+ Mail.HTMLBody = "Sehr geehrte Damen und Herren,
im Anhang senden wir Ihnen die Originalrechnungen.
"
+
+ Mail.HTMLBody &= TextHTMLtable
+
+ Mail.HTMLBody &= "
Mit freundlichen Grüßen
"
+ Case "RO"
+
+ Mail.Subject = kundeMail.Kurzname & " - FACTURI RETURNATE "
+
+ Mail.HTMLBody = "Stimati domni, stimate doamne,
Va returnam facturile originale care nu au fost utilizate spre recuperare TVA.
Va multumim pentru colaborarea.
"
+
+ Mail.HTMLBody &= TextHTMLtable
+
+ Mail.HTMLBody &= "
Cu stima
"
+
+ Case "HR", "BIH", "SLO", "SRB", "BIH"
+ Mail.Subject = kundeMail.Kurzname & " - ORGINALNI RACUNI "
+
+
+ Mail.HTMLBody = "Postovanje,
prilozeno Vam dostavljamo orginalne racune za Vasu daljnu upotrebu.
Za pitanja stojimo na raspolaganju.
"
+
+ Mail.HTMLBody &= TextHTMLtable
+
+ Mail.HTMLBody &= "
Srdacan pozdrav
"
+
+ Case Else
+ Mail.Subject = kundeMail.Kurzname & " - Invoice No."
+
+ Mail.HTMLBody = TextHTMLtable
+
+ Mail.HTMLBody = "Dear Sir or Madam,
attached we send you the original invoice mentioned above.
"
+
+ Mail.HTMLBody &= TextHTMLtable
+
+ Mail.HTMLBody &= "
Best regards
"
+
+
+ End Select
+ If pdflist.Count > 0 Then
+ For Each pdf In pdflist
+ Mail.Attachments.Add(pdf, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, , )
Next
+ End If
+
+ Mail.To &= kundeMail.EMail
+ Mail.CC &= kundeMail.EMail2
+
+ If cbxMailoeffnen.Checked Then
+
+ Mail.Display()
+
+ Else
+
+ If Mail IsNot Nothing Then
+ Dim API = VERAG_PROG_ALLGEMEIN.cAPI.INSERT_API(VERAG_PROG_ALLGEMEIN.cAPI_INOUT.OUT, VERAG_PROG_ALLGEMEIN.cAPI_Type.MAIL, VERAG_PROG_ALLGEMEIN.cAPI_ART.SDL_OUT_SAMMELRECHNUNG, "MAIL-ORIG-RG",,, kvp.Key)
- Else
- TextHTMLtable &= ""
- TextHTMLtable &= "| " & Lieferant & " | "
- TextHTMLtable &= "" & row.Cells("Land").Value & " | "
- TextHTMLtable &= "" & row.Cells("Rechnungsdatum").Value & " | "
- TextHTMLtable &= "
"
+ API.api_EMail = Mail.To
+ API.api_EMailCC = Mail.CC
+ API.api_EMailBCC = Mail.BCC
+ API.api_EMailSubject = Mail.Subject
+ API.api_EMailText = Mail.HTMLBody
+ API.api_EMailAttCnt = Mail.Attachments.Count
+
+ If Mail IsNot Nothing Then
+
+ If VERAG_PROG_ALLGEMEIN.cProgramFunctions.sendMail(API.api_EMail, API.api_EMailSubject, API.api_EMailText, "mmdabrechnung@verag.ag", False, False, API.api_EMailCC, API.api_EMailBCC, pdflist) Then
+ API.UPDTAE_OK()
+
+ Else
+ API.UPDTAE_ERR()
+
+ End If
- Dim daId As Integer = IIf(IsDBNull(row.Cells("daId").Value), -1, row.Cells("daId").Value)
- If daId > 0 Then
- Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER(daId)
- pdflist.Add(DS.GET_TOP1_PATH())
End If
End If
-
-
End If
- Next
-
- TextHTMLtable &= "
"
-
- Dim outl As New Outlook.Application
- Dim Mail As Microsoft.Office.Interop.Outlook.MailItem
- Mail = outl.CreateItem(0)
-
-
-
- Select Case KUNDE.LandKz
- Case "TR"
- Mail.Subject = KUNDE.Kurzname & " - ORIJINAL FATURA "
-
-
- Mail.HTMLBody = "Bayanlar ve Baylar!,
Ekte izlere orijinal faturalarinizi gönderiyoruz.
"
-
- Mail.HTMLBody &= TextHTMLtable
-
- Mail.HTMLBody &= "
Iyi calismalar dileriz.
"
-
- Case "A", "AT", "D", "DE", "CH"
-
- Mail.Subject = KUNDE.Kurzname & " - ORIGINAL RECHNUNG "
-
- Mail.HTMLBody = "Sehr geehrte Damen und Herren,
im Anhang senden wir Ihnen die Originalrechnungen.
"
-
- Mail.HTMLBody &= TextHTMLtable
-
- Mail.HTMLBody &= "
Mit freundlichen Grüßen
"
- Case "RO"
-
- Mail.Subject = KUNDE.Kurzname & " - FACTURI RETURNATE "
-
- Mail.HTMLBody = "Stimati domni, stimate doamne,
Va returnam facturile originale care nu au fost utilizate spre recuperare TVA.
Va multumim pentru colaborarea.
"
-
- Mail.HTMLBody &= TextHTMLtable
-
- Mail.HTMLBody &= "
Cu stima
"
-
- Case "HR", "BIH", "SLO", "SRB", "BIH"
- Mail.Subject = KUNDE.Kurzname & " - ORGINALNI RACUNI "
-
-
- Mail.HTMLBody = "Postovanje,
prilozeno Vam dostavljamo orginalne racune za Vasu daljnu upotrebu.
Za pitanja stojimo na raspolaganju.
"
-
- Mail.HTMLBody &= TextHTMLtable
-
- Mail.HTMLBody &= "
Srdacan pozdrav
"
-
- Case Else
- Mail.Subject = KUNDE.Kurzname & " - Invoice No."
-
- Mail.HTMLBody = TextHTMLtable
-
- Mail.HTMLBody = "Dear Sir or Madam,
attached we send you the original invoice mentioned above.
"
-
- Mail.HTMLBody &= TextHTMLtable
-
- Mail.HTMLBody &= "
Best regards
"
-
-
- End Select
- If pdflist.Count > 0 Then
- For Each pdf In pdflist
- Mail.Attachments.Add(pdf, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, , )
Next
+
End If
- Mail.To &= KUNDE.EMail
- Mail.CC &= KUNDE.EMail2
-
-
- Mail.Display()
-
- End If
-
End Sub