Merge branch 'newMaster2024' of https://dev.azure.com/VeragAG/_git/SDL into newMaster2024
This commit is contained in:
@@ -1,5 +1,10 @@
|
||||
|
||||
|
||||
Imports iTextSharp.text.pdf
|
||||
Imports iTextSharp.text.pdf.parser
|
||||
Imports System.IO
|
||||
Imports System.Windows.Forms
|
||||
|
||||
Public Class cMDMFunctionsAllgemein
|
||||
|
||||
Public Shared ploseAlteLogikSchnittstelle As Boolean = False
|
||||
@@ -139,7 +144,7 @@ Public Class cMDMFunctionsAllgemein
|
||||
Else
|
||||
sqlWhere = "in (SELECT DISTINCT tblSteuernummern.AdressenNr AS UStVAn_KuNr
|
||||
FROM tblSteuernummern
|
||||
where AdressenNr is not null) "
|
||||
where AdressenNr is not null) AND Adressen.Auswahl = 'A'"
|
||||
End If
|
||||
|
||||
'alle Kunden, die eine SteuerNr hinterlegt haben inkl. deren hinterlegte Summen!
|
||||
@@ -791,4 +796,311 @@ Public Class cMDMFunctionsAllgemein
|
||||
End Function
|
||||
|
||||
|
||||
Shared Function getDaID_OLD(SchnittstellenNr, reDat, reNr, Antrag_LandKz, USTV_ANTRAG)
|
||||
Dim da_id = -1
|
||||
|
||||
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
|
||||
Select Case If(SchnittstellenNr, -1)
|
||||
Case 1 : 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",,, -1)
|
||||
'Case 6, 0 : da_id = SQL.getValueTxtBySql("SELECT TOP(1) [plInv_daId] FROM [tblPLOSE_Inv_Data] where plInv_SupplierRechnungsDatum='" & reDat & "' and isnull(plose_RechnungsNr,plInv_SupplierRechnungsNr)='" & reNr & "' and plInv_SupplierCountry='" & Antrag_LandKz & "' AND [plInv_daId] is not null", "FMZOLL",,, -1)
|
||||
Case 6, 0, 11 : da_id = SQL.getValueTxtBySql("SELECT TOP(1) [plInv_daId] FROM [tblPLOSE_Inv_Data] where plInv_SupplierRechnungsDatum='" & reDat & "' and plInv_SupplierRechnungsNr='" & reNr & "' and plInv_SupplierCountry='" & Antrag_LandKz & "' AND [plInv_daId] is not null", "FMZOLL",,, -1)
|
||||
Case 4, 9 : da_id = SQL.getValueTxtBySql("SELECT TOP(1) [daId] FROM [tblMSEInvoices] as inv inner join tblMSECustomers on inv.customer_number = customer_id where invoice_date='" & reDat & "' and country='" & Antrag_LandKz & "' AND partner_customer_number = " & USTV_ANTRAG.UStVAn_KuNr & " AND daId is not null", "FMZOLL",,, -1)
|
||||
Case 10 : da_id = SQL.getValueTxtBySql("SELECT TOP(1) [daId] FROM [tblUTAImportNew] where Rechnungsdatum='" & reDat & "' and Abrechnungsnummer='" & reNr & "' and Lieferland_ISO2='" & Antrag_LandKz & "' AND daId is not null", "FMZOLL",,, -1)
|
||||
Case 7 : da_id = SQL.getValueTxtBySql("SELECT TOP(1) [rmc_daId] FROM [tblRMCImport] where rmc_reDatum='" & reDat & "' and rmc_reNr='" & reNr & "' and rmc_landKZ='" & Antrag_LandKz & "' AND [rmc_daId] is not null", "FMZOLL",,, -1)
|
||||
Case 8 : da_id = SQL.getValueTxtBySql("SELECT TOP(1) tblIDSInvoicesNew.daId FROM [tblIDSTransactionsNew] INNER JOIN tbl_IDS_Länder ON tblIDSTransactionsNew.[OutletCountryCode] = tbl_IDS_Länder.OutletCountryCode LEFT JOIN tblIDSInvoicesNew on tblIDSInvoicesNew.CustomerCode = tblIDSTransactionsNew.CustomerCode and tblIDSInvoicesNew.Invoicenumber = Paymentsummarynumber where tblIDSTransactionsNew.[YearMonthDay] ='" & reDat & "' AND ISNULL(tblIDSTransactionsNew.[OBONumber], ISNULL(tblIDSTransactionsNew.[VRNumber], tblIDSTransactionsNew.[Paymentsummarynumber])) ='" & reNr & "' and tbl_IDS_Länder.Lieferland_ISO2='" & Antrag_LandKz & "' AND tblIDSInvoicesNew.daId is not null", "FMZOLL",,, -1)
|
||||
Case 12 : da_id = SQL.getValueTxtBySql("SELECT TOP(1) tblIDSInvoicesNewSplittedByCountry.daId FROM [tblIDSInvoicesNewSplittedByCountry] where tblIDSInvoicesNewSplittedByCountry.[YearMonthDay] ='" & reDat & "' AND tblIDSInvoicesNewSplittedByCountry.Invoicenumber ='" & reNr.ToString.Replace("/", "") & "' andtblIDSInvoicesNewSplittedByCountry.Country='" & Antrag_LandKz & "' AND tblIDSInvoicesNewSplittedByCountry.daId is not null", "FMZOLL",,, -1)
|
||||
End Select
|
||||
|
||||
Return da_id
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
Shared Function getPDF(schnittstellenNr, ReNr, ReDat, daId, nummierung, PDFisProtected, LandKZ, USTVA, cFakturierung, returnDSID) As String
|
||||
|
||||
|
||||
Dim schnnittstellenNr = schnittstellenNr
|
||||
Dim dsID
|
||||
|
||||
If Not IsDBNull(daId) AndAlso IsNumeric(daId) AndAlso daId > 0 Then
|
||||
dsID = daId
|
||||
Else
|
||||
dsID = getDaID_OLD(schnnittstellenNr, ReDat, ReNr, LandKZ, USTVA)
|
||||
|
||||
End If
|
||||
|
||||
If dsID < 0 Then
|
||||
Return ""
|
||||
ElseIf returnDSID Then
|
||||
If schnittstellenNr = 8 Then 'Nr enthätl alle IDS-Rechnungen, die nicht mitgeben!
|
||||
Return -1
|
||||
Else
|
||||
Return dsID
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
'Anschrift Nummerierung:
|
||||
Dim x = 100
|
||||
Dim y = 10
|
||||
Dim width = 300
|
||||
Dim height = 10
|
||||
Dim mSize = 10
|
||||
Dim mFont = ""
|
||||
|
||||
Select Case schnnittstellenNr
|
||||
Case 1
|
||||
If dsID > 0 Then
|
||||
'Me.Cursor = Cursors.WaitCursor
|
||||
Dim path As String
|
||||
cFakturierung.doRechnungsDruck_SRorER(dsID,, False, 4, path)
|
||||
|
||||
If nummierung > 0 Then
|
||||
|
||||
Dim pdfReader As iTextSharp.text.pdf.PdfReader = New iTextSharp.text.pdf.PdfReader(path)
|
||||
PdfReader.unethicalreading = True
|
||||
|
||||
Dim fm As New VERAG_PROG_ALLGEMEIN.cFormularManager
|
||||
Dim listTowrite As New List(Of VERAG_PROG_ALLGEMEIN.cPDFWriteValues)
|
||||
|
||||
For page As Integer = 1 To pdfReader.NumberOfPages
|
||||
listTowrite.Add(New VERAG_PROG_ALLGEMEIN.cPDFWriteValues(nummierung, x, y, width, height, mFont, mSize, , iTextSharp.text.Element.ALIGN_LEFT, page))
|
||||
Next
|
||||
|
||||
pdfReader.Close()
|
||||
|
||||
Dim PdfTmp = fm.fillPDFVorhandenesLokalesPDF_Path(path, listTowrite, , , , ,)
|
||||
Return PdfTmp
|
||||
|
||||
Else
|
||||
Return path
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
|
||||
Case 8
|
||||
|
||||
'Me.Cursor = Cursors.WaitCursor
|
||||
Dim ds As New VERAG_PROG_ALLGEMEIN.cDATENSERVER(dsID)
|
||||
|
||||
Dim path_src As String = ds.OPEN_SINGLE(False)
|
||||
If path_src = "" Then Return ""
|
||||
|
||||
Try
|
||||
|
||||
Dim fi As New System.IO.DirectoryInfo(path_src)
|
||||
Dim pdfReader As iTextSharp.text.pdf.PdfReader = New iTextSharp.text.pdf.PdfReader(path_src)
|
||||
|
||||
Dim TMP_Path_New = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(fi.Name, fi.Extension,, False, "IDS-Rechnungen")
|
||||
Dim srcDoc As New iTextSharp.text.Document()
|
||||
Dim PdfCopyProvider As New iTextSharp.text.pdf.PdfCopy(srcDoc, New FileStream(TMP_Path_New, System.IO.FileMode.Create))
|
||||
PdfCopyProvider.SetFullCompression()
|
||||
srcDoc.Open()
|
||||
PdfReader.unethicalreading = True
|
||||
Dim pages As New List(Of Integer)()
|
||||
|
||||
For page As Integer = 1 To pdfReader.NumberOfPages
|
||||
|
||||
Dim strategy As ITextExtractionStrategy = New SimpleTextExtractionStrategy()
|
||||
Dim currentpagetext As String = PdfTextExtractor.GetTextFromPage(pdfReader, page, strategy)
|
||||
Dim searchtext As String = ReNr
|
||||
Dim impPage As iTextSharp.text.pdf.PdfImportedPage = Nothing
|
||||
|
||||
If (currentpagetext.Contains(searchtext)) Then
|
||||
|
||||
If page > pdfReader.NumberOfPages Then
|
||||
MsgBox("Seitenanzahl überschritten!")
|
||||
srcDoc.Close() : pdfReader.Close()
|
||||
Return False
|
||||
End If
|
||||
Try
|
||||
|
||||
impPage = PdfCopyProvider.GetImportedPage(pdfReader, page)
|
||||
' ----- Ermitteln der Seitenauflösung und setzen für die neue Seite
|
||||
PdfCopyProvider.SetPageSize(New iTextSharp.text.Rectangle(0.0F, 0.0F, impPage.Width, impPage.Height, pdfReader.GetPageRotation(page)))
|
||||
' ----- PDF Seite in das neue Dokument einfügen
|
||||
If impPage IsNot Nothing Then PdfCopyProvider.AddPage(impPage)
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
End Try
|
||||
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
Next
|
||||
|
||||
srcDoc.Close()
|
||||
pdfReader.Close()
|
||||
|
||||
If nummierung > 0 Then
|
||||
|
||||
Dim pdfReadernNew As iTextSharp.text.pdf.PdfReader = New iTextSharp.text.pdf.PdfReader(TMP_Path_New)
|
||||
pdfReadernNew.unethicalreading = True
|
||||
|
||||
Dim fm As New VERAG_PROG_ALLGEMEIN.cFormularManager
|
||||
Dim listTowrite As New List(Of VERAG_PROG_ALLGEMEIN.cPDFWriteValues)
|
||||
|
||||
For page As Integer = 1 To pdfReadernNew.NumberOfPages
|
||||
listTowrite.Add(New VERAG_PROG_ALLGEMEIN.cPDFWriteValues(nummierung, x, y - 6, width, height, mFont, mSize, , iTextSharp.text.Element.ALIGN_LEFT, page))
|
||||
Next
|
||||
|
||||
pdfReader.Close()
|
||||
|
||||
Dim PdfTmp = fm.fillPDFVorhandenesLokalesPDF_Path(TMP_Path_New, listTowrite, , , , ,)
|
||||
Return PdfTmp
|
||||
Else
|
||||
|
||||
|
||||
Return TMP_Path_New
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
Catch ex As Exception
|
||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||
End Try
|
||||
Case Else
|
||||
If dsID > 0 Then
|
||||
'Me.Cursor = Cursors.WaitCursor
|
||||
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER(dsID)
|
||||
If nummierung > 0 Then
|
||||
|
||||
'wenn PDF nicht beschreibbar, dann mittels Stamp!
|
||||
If PDFisProtected Then
|
||||
|
||||
Dim tempPathNew = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath(DS.da_name & "_modified", ".pdf", True, False, "USTVA")
|
||||
|
||||
Dim pdfReader As iTextSharp.text.pdf.PdfReader = New iTextSharp.text.pdf.PdfReader(DS.GET_TOP1_PATH)
|
||||
PdfReader.unethicalreading = True
|
||||
|
||||
Dim fs = New FileStream(tempPathNew, FileMode.Create, FileAccess.Write, FileShare.None)
|
||||
Dim stamper = New PdfStamper(pdfReader, fs)
|
||||
|
||||
For page As Integer = 1 To pdfReader.NumberOfPages
|
||||
Dim canvas As PdfContentByte = stamper.GetOverContent(page)
|
||||
Dim bf As BaseFont = BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.EMBEDDED)
|
||||
canvas.SetFontAndSize(bf, 12)
|
||||
canvas.BeginText()
|
||||
|
||||
'The origin (0,0) is at the bottom-left corner of the page and represent coordinates in points!!!!!
|
||||
Dim _height = pdfReader.GetPageSizeWithRotation(page).GetTop(25) 'oberer Rand
|
||||
Dim _width = pdfReader.GetPageSizeWithRotation(page).GetRight(0) / 2 'Mitte
|
||||
|
||||
canvas.ShowTextAligned(PdfContentByte.ALIGN_CENTER, nummierung, _width, _height, 0)
|
||||
'canvas.ShowTextAligned(PdfContentByte.ALIGN_CENTER, nummierung, 350, 550, 0)
|
||||
|
||||
canvas.EndText()
|
||||
'listTowrite.Add(New VERAG_PROG_ALLGEMEIN.cPDFWriteValues(nummierung, x, y, width, height, mFont, mSize, , itextsharp.text.Element.ALIGN_LEFT, page))
|
||||
Next
|
||||
stamper.Close()
|
||||
pdfReader.Close()
|
||||
|
||||
Return tempPathNew
|
||||
|
||||
Else
|
||||
|
||||
|
||||
Dim pdfReader As iTextSharp.text.pdf.PdfReader = New iTextSharp.text.pdf.PdfReader(DS.GET_TOP1_PATH)
|
||||
|
||||
Dim fm As New VERAG_PROG_ALLGEMEIN.cFormularManager
|
||||
Dim listTowrite As New List(Of VERAG_PROG_ALLGEMEIN.cPDFWriteValues)
|
||||
|
||||
For page As Integer = 1 To pdfReader.NumberOfPages
|
||||
listTowrite.Add(New VERAG_PROG_ALLGEMEIN.cPDFWriteValues(nummierung, x, y, width, height, mFont, mSize, , iTextSharp.text.Element.ALIGN_LEFT, page))
|
||||
Next
|
||||
|
||||
pdfReader.Close()
|
||||
|
||||
Dim PdfTmp = fm.fillPDFVorhandenesLokalesPDF_Path(DS.GET_TOP1_PATH, listTowrite, , , , ,)
|
||||
Return PdfTmp
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Else
|
||||
|
||||
Return DS.GET_TOP1_PATH
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End If
|
||||
End Select
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
Shared Function generateExcelPosList(USTV_ANTRAG As cUSTVAntrag, posId As String, Antrag_LandKz As String, SteuerNR As String, openFile As Boolean) As String
|
||||
|
||||
Dim sql As New SQL
|
||||
|
||||
Dim sqlWHere = ""
|
||||
If posId <> "" Then
|
||||
sqlWHere = " And UStVPo_ID in(" & posId & ")"
|
||||
|
||||
End If
|
||||
|
||||
Dim StringSQL = "SELECT [UStVPo_ID] as Number ,[UStVPo_ReDat] as 'Date of Invoice',[UStVPo_ReNr] as 'Number of invoice' ,[UStVPo_Leistungsbezeichnung] as 'Name of service',[UStVPo_Leistender] as 'Name of supplier',leist.[UstV_Leistender_Strasse] + ' ' + leist.[UstV_Leistender_StrasseNr] as Street,
|
||||
leist.[UstV_Leistender_PLZ] as 'ZIP-Code',leist.[UstV_Leistender_Stadt] as City,leist.[UstV_Leistender_Land] as Country,leist.[UstV_Leistender_UstNr] as VAT,[UStVPo_USteuerbetrag] as 'Amount of tax refund'
|
||||
FROM [tblUStVPositionen]
|
||||
LEFT JOIN [tblUStVLeistender] as leist
|
||||
ON ([tblUStVPositionen].[UStVPo_LeistenderId] > 0
|
||||
AND leist.[UStV_LeistenderId] = [tblUStVPositionen].[UStVPo_LeistenderId])
|
||||
OR ([tblUStVPositionen].[UStVPo_LeistenderId] <= 0
|
||||
AND leist.[UStV_Leistender] = [tblUStVPositionen].[UStVPo_Leistender])
|
||||
where UStVAn_ID=" & USTV_ANTRAG.UStVAn_ID & sqlWHere & " ORDER BY UStVPo_ID"
|
||||
|
||||
Dim dtNew As DataTable = sql.loadDgvBySql(StringSQL, "FMZOLL")
|
||||
|
||||
If dtNew IsNot Nothing AndAlso dtNew.Rows.Count > 0 Then
|
||||
|
||||
|
||||
Dim sumVAT As Double = 0
|
||||
|
||||
For Each row In dtNew.Rows
|
||||
If Not IsDBNull(row("Amount of tax refund")) AndAlso IsNumeric(row("Amount of tax refund")) Then sumVAT += CDbl(row("Amount of tax refund"))
|
||||
If Not IsDBNull(row("Amount of tax refund")) AndAlso IsNumeric(row("Amount of tax refund")) Then row("Amount of tax refund") = CDbl(row("Amount of tax refund"))
|
||||
If Not IsDBNull(row("Name of supplier")) AndAlso row("Name of supplier") <> "" AndAlso Not IsDBNull(row("VAT")) AndAlso row("VAT") <> "" Then
|
||||
row("Name of supplier") = row("Name of supplier").ToString.Replace(" " & row("VAT").ToString.Substring(0, 2), "")
|
||||
End If
|
||||
Next
|
||||
|
||||
Dim drLast = dtNew.NewRow
|
||||
If dtNew.Columns.Contains("Number") Then drLast.Item("Number") = dtNew.Rows.Count + 1
|
||||
If dtNew.Columns.Contains("Date of Invoice") Then drLast.Item("Date of Invoice") = DBNull.Value
|
||||
If dtNew.Columns.Contains("Number of invoice") Then drLast.Item("Number of invoice") = DBNull.Value
|
||||
If dtNew.Columns.Contains("Amount of tax refund") Then drLast.Item("Amount of tax refund") = sumVAT
|
||||
If dtNew.Columns.Contains("Name of supplier") Then drLast.Item("Name of supplier") = DBNull.Value
|
||||
If dtNew.Columns.Contains("Street") Then drLast.Item("Street") = DBNull.Value
|
||||
If dtNew.Columns.Contains("City") Then drLast.Item("City") = DBNull.Value
|
||||
If dtNew.Columns.Contains("Country") Then drLast.Item("Country") = DBNull.Value
|
||||
If dtNew.Columns.Contains("ZIP-Code") Then drLast.Item("ZIP-Code") = DBNull.Value
|
||||
If dtNew.Columns.Contains("VAT") Then drLast.Item("VAT") = "SUM"
|
||||
If dtNew.Columns.Contains("Name of service") Then drLast.Item("Name of service") = DBNull.Value
|
||||
|
||||
dtNew.Rows.InsertAt(drLast, dtNew.Rows.Count)
|
||||
|
||||
Dim header1 As String = ""
|
||||
Dim header2 As String = ""
|
||||
Dim AD As New cAdressen(USTV_ANTRAG.UStVAn_KuNr)
|
||||
If Antrag_LandKz <> "" AndAlso SteuerNR <> "" Then
|
||||
header1 = "Statement itemising VAT amounts relating to the period covered by this application"
|
||||
header2 = "VAT NO.: " & USTV_ANTRAG.UStVAn_Steuernummer & " " & "Name/Company: " & AD.Name_1 & " " & AD.Name_2 & " " & "VAT in " & Antrag_LandKz & ": " & SteuerNR
|
||||
End If
|
||||
|
||||
Return cProgramFunctions.genExcelFromDT_NEW_(dtNew, {"K4:K" & (dtNew.Rows.Count + 1)},, header1, header2, IIf(USTV_ANTRAG.UStVAn_Währungscode = "EUR", "€", ""), True, "J", True,, openFile)
|
||||
|
||||
End If
|
||||
|
||||
End Function
|
||||
|
||||
End Class
|
||||
|
||||
@@ -354,6 +354,91 @@ BindingFlags.Instance Or BindingFlags.NonPublic, Nothing, [Control], New Object(
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Shared Function genExcelFromDT_NEW_(dt As DataTable, Optional rangeAsWaehrung() As String = Nothing, Optional ShowAutoFilter As Boolean = True, Optional HeaderTxt As String = "", Optional HeaderTxt2 As String = "", Optional waehrungsZeichen As String = "€", Optional fitCellsToContent As Boolean = False, Optional mergeHeadersToCell As Char = "", Optional Landscape As Boolean = False, Optional fitToOnePage As Boolean = False, Optional openFile As Boolean = True) As String
|
||||
Try
|
||||
|
||||
Dim sPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Personal) & "\VERAG\SDL\tmp\" ' My.Computer.FileSystem.GetTempFileName
|
||||
If Not My.Computer.FileSystem.DirectoryExists(sPath) Then
|
||||
My.Computer.FileSystem.CreateDirectory(sPath)
|
||||
End If
|
||||
|
||||
Dim wb As New XLWorkbook
|
||||
' Dim dt As DataTable = (dgv.DataSource)
|
||||
' Dim dt As DataTable = TryCast(dgv., DataTable)
|
||||
|
||||
wb.Worksheets.Add(dt, "DATEN")
|
||||
wb.Worksheets(0).Tables.FirstOrDefault().ShowAutoFilter = ShowAutoFilter
|
||||
|
||||
If rangeAsWaehrung IsNot Nothing Then
|
||||
For Each r In rangeAsWaehrung
|
||||
Try
|
||||
wb.Worksheets(0).Range(r).Style.NumberFormat.SetFormat("###,###,##0.00 " & waehrungsZeichen)
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message & ex.StackTrace)
|
||||
End Try
|
||||
Next
|
||||
End If
|
||||
|
||||
If HeaderTxt <> "" Then
|
||||
wb.Worksheets(0).FirstRow.InsertRowsAbove(2)
|
||||
wb.Worksheets(0).Range("A1").Value = HeaderTxt
|
||||
wb.Worksheets(0).Range("A1").Style.Font.Bold = True
|
||||
|
||||
If mergeHeadersToCell <> "" Then
|
||||
wb.Worksheets(0).Range("A1:" & mergeHeadersToCell & "1").Merge()
|
||||
wb.Worksheets(0).Range("A1:" & mergeHeadersToCell & "1").Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center
|
||||
wb.Worksheets(0).Range("A1:" & mergeHeadersToCell & "1").Style.Alignment.Vertical = XLAlignmentVerticalValues.Center
|
||||
wb.Worksheets(0).Range("A1:" & mergeHeadersToCell & "1").Style.Alignment.WrapText = True
|
||||
End If
|
||||
|
||||
If HeaderTxt2 <> "" Then
|
||||
wb.Worksheets(0).Range("A2").Value = HeaderTxt2
|
||||
wb.Worksheets(0).Row(2).InsertRowsBelow(1)
|
||||
|
||||
If mergeHeadersToCell <> "" Then
|
||||
wb.Worksheets(0).Range("A2:" & mergeHeadersToCell & "2").Merge()
|
||||
wb.Worksheets(0).Range("A2:" & mergeHeadersToCell & "2").Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center
|
||||
wb.Worksheets(0).Range("A2:" & mergeHeadersToCell & "2").Style.Alignment.Vertical = XLAlignmentVerticalValues.Center
|
||||
wb.Worksheets(0).Range("A2:" & mergeHeadersToCell & "2").Style.Alignment.WrapText = True
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
If fitCellsToContent Then
|
||||
wb.Worksheets(0).Columns().AdjustToContents()
|
||||
wb.Worksheets(0).Rows().AdjustToContents()
|
||||
End If
|
||||
|
||||
If Landscape Then
|
||||
wb.Worksheets(0).PageSetup.PageOrientation = XLPageOrientation.Landscape
|
||||
Else
|
||||
wb.Worksheets(0).PageSetup.PageOrientation = XLPageOrientation.Default
|
||||
End If
|
||||
|
||||
If fitToOnePage Then
|
||||
|
||||
wb.Worksheets(0).PageSetup.PagesWide = 1 ' In die Breite auf eine Seite anpassen
|
||||
wb.Worksheets(0).PageSetup.PagesTall = 1 ' In die Höhe auf eine Seite anpassen
|
||||
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Dim filename As String = sPath & "tmp_" & Now.ToString("ddMMyyyyHHmmss") & ".xlsx"
|
||||
wb.SaveAs(filename)
|
||||
|
||||
|
||||
If openFile Then Process.Start(filename)
|
||||
|
||||
Return filename
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message & ex.StackTrace)
|
||||
Return Nothing
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Public Shared Function sendMail(eMailTo, betreff, text, Optional eMailfrom = "support@verag.ag", Optional prio = False, Optional uhrzeitAngeben = True, Optional cc = "", Optional bcc = "", Optional anhaenge = Nothing, Optional art = 0)
|
||||
Dim Msg As New MailMessage
|
||||
Dim myCredentials As New System.Net.NetworkCredential
|
||||
|
||||
Reference in New Issue
Block a user