From a4199bf3165eef73b518d1850f974d4e8ce81b7b Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Fri, 27 Dec 2024 17:12:59 +0100 Subject: [PATCH 1/3] Erstattunsgsvhreiben, Kundenblatt, Seriendruck, ustva, uta --- SDL/Fakturierung/cFakturierung.vb | 425 +++++++++-- SDL/My Project/AssemblyInfo.vb | 4 +- SDL/SDL.vbproj | 9 + SDL/USTV/usrCntlUSTV.Designer.vb | 74 +- SDL/USTV/usrCntlUSTV.vb | 1 + SDL/kunden/frmKundenblatt.Designer.vb | 201 +++--- SDL/kunden/frmKundenblatt.vb | 15 + SDL/mdm/usrcntlFremdrechnungen.Designer.vb | 553 ++++++++++++++ SDL/mdm/usrcntlFremdrechnungen.resx | 126 ++++ SDL/mdm/usrcntlFremdrechnungen.vb | 677 ++++++++++++++++++ .../Erstattungsschreiben DE.dotx | Bin 64810 -> 67205 bytes .../Erstattungsschreiben RO.dotx | Bin 65674 -> 66588 bytes .../Erstattungsschreiben TR.dotx | Bin 65181 -> 66271 bytes .../Erstattungsschreiben YU.dotx | Bin 64986 -> 66944 bytes SDL/seriendruck/usrCntlSeriendruck.vb | 12 +- VERAG_PROG_ALLGEMEIN/Classes/cUTA.vb | 124 ++++ 16 files changed, 2009 insertions(+), 212 deletions(-) create mode 100644 SDL/mdm/usrcntlFremdrechnungen.Designer.vb create mode 100644 SDL/mdm/usrcntlFremdrechnungen.resx create mode 100644 SDL/mdm/usrcntlFremdrechnungen.vb diff --git a/SDL/Fakturierung/cFakturierung.vb b/SDL/Fakturierung/cFakturierung.vb index 2387aae4..3932ed0b 100644 --- a/SDL/Fakturierung/cFakturierung.vb +++ b/SDL/Fakturierung/cFakturierung.vb @@ -5,6 +5,7 @@ Imports Microsoft.Office.Interop Imports VERAG_PROG_ALLGEMEIN Imports s2industries.ZUGFeRD Imports System.IO +Imports VERAG_PROG_ALLGEMEIN.TESTJSON Public Class cFakturierung @@ -1539,10 +1540,10 @@ Public Class cFakturierung Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID) Dim enableZugpferd = Paramslist.GET_PARAMETER_VALUE_BOOL("ZUGFeRD") If enableZugpferd Then - tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(RECHNUNG)) + tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(True, RECHNUNG)) Else - Dim Zugferdpath = createZUGFeRD(RECHNUNG) + Dim Zugferdpath = createZUGFeRD(True, RECHNUNG) Dim fileInfo_ZP As New FileInfo(Zugferdpath) Dim ZUGF_DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "ZUGFERD", Now().Year, "", "", fileInfo_ZP.Name, -1, False) ZUGF_DS.uploadDataToDATENSERVER(Zugferdpath, fileInfo_ZP.Name, fileInfo_ZP.Extension,,,, True) @@ -1736,69 +1737,75 @@ Public Class cFakturierung Return False End Function - Shared Function createZUGFeRD(RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang) As String + Shared Function createZUGFeRD(einzelrechnung As Boolean, Optional RECHNUNG As VERAG_PROG_ALLGEMEIN.cRechnungsausgang = Nothing, Optional SR_DT As DataTable = Nothing, Optional rpt As rptSammelRechnungDruck = Nothing) As String Dim ZZTage = 10 Dim vatSeller As ElectronicAddressSchemeIdentifiers Dim vatBuyer As ElectronicAddressSchemeIdentifiers - If RECHNUNG.RechnungsKundenNr > 0 Then + If einzelrechnung AndAlso RECHNUNG IsNot Nothing Then - Dim RECHNUNG_AD As New VERAG_PROG_ALLGEMEIN.cAdressen(RECHNUNG.RechnungsKundenNr) - Dim RECHNUNG_KD As New VERAG_PROG_ALLGEMEIN.cKunde(RECHNUNG.RechnungsKundenNr) + '--------------------------------------------------------------------------------- + '--------------------------------EINZELRECHNUNG----------------------------------- + '--------------------------------------------------------------------------------- - If RECHNUNG_KD.Zahlungsziel IsNot Nothing AndAlso IsNumeric(RECHNUNG_KD.Zahlungsziel) Then - ZZTage = RECHNUNG_KD.Zahlungsziel - End If - End If + If RECHNUNG.RechnungsKundenNr > 0 Then - Dim zahlungszieldatum As Date = CDate(RECHNUNG.RechnungsDatum).AddDays(ZZTage) - Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(RECHNUNG.Firma_ID) - Dim desc As InvoiceDescriptor = InvoiceDescriptor.CreateInvoice(RECHNUNG.RechnungsNr, RECHNUNG.RechnungsDatum, IIf(FIRMA.Firma_ID = 26, CurrencyCodes.GBP, CurrencyCodes.EUR)) + Dim RECHNUNG_AD As New VERAG_PROG_ALLGEMEIN.cAdressen(RECHNUNG.RechnungsKundenNr) + Dim RECHNUNG_KD As New VERAG_PROG_ALLGEMEIN.cKunde(RECHNUNG.RechnungsKundenNr) - Select Case RECHNUNG.BelegartenKz - Case "AR" - desc.Name = "SPEDITIONSRECHNUNG" - desc.Type = InvoiceType.ForwardersInvoice - Case "AG" - desc.Name = "GUTSCHRIFT" - desc.Type = InvoiceType.CreditNote - End Select - - If RECHNUNG.Besonderheiten IsNot Nothing Then desc.AddNote(RECHNUNG.Besonderheiten.ToString, SubjectCodes.AAI) - If RECHNUNG.Text IsNot Nothing Then desc.AddNote(RECHNUNG.Text.ToString, SubjectCodes.AAI) - desc.AddNote("Es bestehen Rabatt- und Bonusvereinbarungen.", SubjectCodes.AAK) - - desc.SetBuyer(RECHNUNG.RechnungsName_1, RECHNUNG.RechnungsOrt, RECHNUNG.RechnungsOrt, RECHNUNG.RechnungsStraße, GetCountryCodeFromLandKZ(RECHNUNG.RechnungsLandKz, vatBuyer), IIf(Not IsDBNull(RECHNUNG.KundenNrZentrale), RECHNUNG.KundenNrZentrale, "")) - - desc.SetSeller(FIRMA.Firma_Bez, FIRMA.Firma_Ort, FIRMA.Firma_Ort, FIRMA.Firma_Straße, GetCountryCodeFromLandKZ(FIRMA.Firma_LandKz, vatSeller)) - desc.AddSellerTaxRegistration(FIRMA.Firma_UID.ToString.Replace("UID: ", ""), TaxRegistrationSchemeID.VA) - - ' Optionally, to support Peppol----------------------------- - - - If Not IsDBNull(RECHNUNG.RechnungsUstIdNr) AndAlso RECHNUNG.RechnungsUstIdNr IsNot Nothing AndAlso Not IsDBNull(RECHNUNG.RechnungsUstIdKz) AndAlso RECHNUNG.RechnungsUstIdKz IsNot Nothing Then - desc.AddBuyerTaxRegistration(RECHNUNG.RechnungsUstIdKz & RECHNUNG.RechnungsUstIdNr, TaxRegistrationSchemeID.VA) - If vatBuyer Then - desc.SetBuyerElectronicAddress(RECHNUNG.RechnungsUstIdKz & RECHNUNG.RechnungsUstIdNr, vatBuyer) - desc.SetSellerElectronicAddress(FIRMA.Firma_UID.ToString.Replace("UID: ", ""), vatSeller) + If RECHNUNG_KD.Zahlungsziel IsNot Nothing AndAlso IsNumeric(RECHNUNG_KD.Zahlungsziel) Then + ZZTage = RECHNUNG_KD.Zahlungsziel + End If End If - End If - '----------------------------- + Dim zahlungszieldatum As Date = CDate(RECHNUNG.RechnungsDatum).AddDays(ZZTage) + Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(RECHNUNG.Firma_ID) + Dim desc As InvoiceDescriptor = InvoiceDescriptor.CreateInvoice(RECHNUNG.RechnungsNr, RECHNUNG.RechnungsDatum, IIf(FIRMA.Firma_ID = 26, CurrencyCodes.GBP, CurrencyCodes.EUR)) + + Select Case RECHNUNG.BelegartenKz + Case "AR" + desc.Name = "SPEDITIONSRECHNUNG" + desc.Type = InvoiceType.ForwardersInvoice + Case "AG" + desc.Name = "GUTSCHRIFT" + desc.Type = InvoiceType.CreditNote + End Select + + If RECHNUNG.Besonderheiten IsNot Nothing Then desc.AddNote(RECHNUNG.Besonderheiten.ToString, SubjectCodes.AAI) + If RECHNUNG.Text IsNot Nothing Then desc.AddNote(RECHNUNG.Text.ToString, SubjectCodes.AAI) + desc.AddNote("Es bestehen Rabatt- und Bonusvereinbarungen.", SubjectCodes.AAK) + + desc.SetBuyer(RECHNUNG.RechnungsName_1, RECHNUNG.RechnungsOrt, RECHNUNG.RechnungsOrt, RECHNUNG.RechnungsStraße, GetCountryCodeFromLandKZ(RECHNUNG.RechnungsLandKz, vatBuyer), IIf(Not IsDBNull(RECHNUNG.KundenNrZentrale), RECHNUNG.KundenNrZentrale, "")) + + desc.SetSeller(FIRMA.Firma_Bez, FIRMA.Firma_Ort, FIRMA.Firma_Ort, FIRMA.Firma_Straße, GetCountryCodeFromLandKZ(FIRMA.Firma_LandKz, vatSeller)) + desc.AddSellerTaxRegistration(FIRMA.Firma_UID.ToString.Replace("UID: ", ""), TaxRegistrationSchemeID.VA) + + ' Optionally, to support Peppol----------------------------- - Dim steuerProzent As Double = SQL.DLookup(" isnull([Steuersatz %],0)", "[Steuertabelle] ", "[Steuerschlüssel]='" & checkNull(RECHNUNG.Steuerschlüssel) & "'", "FMZOLL", 0) - Dim steuerProzenFaktor As Double = 0 - If steuerProzent > 0 AndAlso steuerProzent < 1 Then - steuerProzenFaktor = steuerProzent * 100 - End If + If Not IsDBNull(RECHNUNG.RechnungsUstIdNr) AndAlso RECHNUNG.RechnungsUstIdNr IsNot Nothing AndAlso Not IsDBNull(RECHNUNG.RechnungsUstIdKz) AndAlso RECHNUNG.RechnungsUstIdKz IsNot Nothing Then + desc.AddBuyerTaxRegistration(RECHNUNG.RechnungsUstIdKz & RECHNUNG.RechnungsUstIdNr, TaxRegistrationSchemeID.VA) + If vatBuyer Then + desc.SetBuyerElectronicAddress(RECHNUNG.RechnungsUstIdKz & RECHNUNG.RechnungsUstIdNr, vatBuyer) + desc.SetSellerElectronicAddress(FIRMA.Firma_UID.ToString.Replace("UID: ", ""), vatSeller) + End If + + End If + '----------------------------- - Dim sumNetto As Double = 0 - For Each p In RECHNUNG.POSITIONEN + Dim steuerProzent As Double = SQL.DLookup(" isnull([Steuersatz %],0)", "[Steuertabelle] ", "[Steuerschlüssel]='" & checkNull(RECHNUNG.Steuerschlüssel) & "'", "FMZOLL", 0) + Dim steuerProzenFaktor As Double = 0 + If steuerProzent > 0 AndAlso steuerProzent < 1 Then + steuerProzenFaktor = steuerProzent * 100 + End If - Dim tradeLineItemNew As TradeLineItem = desc.AddTradeLineItem( + + Dim sumNetto As Double = 0 + For Each p In RECHNUNG.POSITIONEN + + Dim tradeLineItemNew As TradeLineItem = desc.AddTradeLineItem( name:=p.LeistungsBez, billedQuantity:=Convert.ToDecimal(p.Anzahl), unitCode:=QuantityCodes.C62, ' immer in Stück @@ -1808,24 +1815,24 @@ Public Class cFakturierung taxPercent:=IIf(p.Steuerpflichtig, Convert.ToDecimal(RECHNUNG.Steuersatz_Proz * 100), 0), taxType:=IIf(p.Steuerpflichtig, TaxTypes.VAT, TaxTypes.VAT) ) - Dim netUnitPrice = Convert.ToDecimal(p.Preis) + Dim netUnitPrice = Convert.ToDecimal(p.Preis) Dim grossUnitPrice = IIf(p.Steuerpflichtig, Convert.ToDecimal(p.Preis * (1 + RECHNUNG.Steuersatz_Proz)), Convert.ToDecimal(p.Preis)) Dim netPricePos = netUnitPrice * Convert.ToDecimal(p.Anzahl) - sumNetto += netPricePos - Next + sumNetto += netPricePos + Next - 'Summe aller Rechnungspositions-Nettobeträge der Rechnung - Dim lineTotalAmont = sumNetto - 'Der Gesamtbetrag der Umsatzsteuer für die Rechnung, - Dim taxTotalAmount = IIf(RECHNUNG.SteuerpflichtigerGesamtbetrag <> 0, Math.Round(Convert.ToDecimal(RECHNUNG.SteuerpflichtigerGesamtbetrag) / (100 + steuerProzenFaktor) * steuerProzenFaktor, 2), 0) - ' Die Gesamtsumme der Rechnung ohne Umsatzsteuer ' RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag + 0 - 0 - Dim taxBasisAmount = Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag + 0 - 0 - taxTotalAmount) - 'Der Gesamtbetrag der Rechnung mit Umsatzsteuer - Dim grandTotalAmount = Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag) - 'Der ausstehende Betrag, um dessen Zahlung gebeten wird. Dieser Betrag ist der Rechnungsgesamtbetrag einschließlich Umsatzsteuer abzüglich des im Voraus gezahlten Betrages.Im Falle einer vollständig beglichenen Rechnung ist dieser Betrag gleich null. Der Betrag kann negativ sein; In diesem Fall schuldet der Verkäufer dem Käufer den Betrag - Dim duePayableAmount = Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag) + 'Summe aller Rechnungspositions-Nettobeträge der Rechnung + Dim lineTotalAmont = sumNetto + 'Der Gesamtbetrag der Umsatzsteuer für die Rechnung, + Dim taxTotalAmount = IIf(RECHNUNG.SteuerpflichtigerGesamtbetrag <> 0, Math.Round(Convert.ToDecimal(RECHNUNG.SteuerpflichtigerGesamtbetrag) / (100 + steuerProzenFaktor) * steuerProzenFaktor, 2), 0) + ' Die Gesamtsumme der Rechnung ohne Umsatzsteuer ' RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag + 0 - 0 + Dim taxBasisAmount = Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag + 0 - 0 - taxTotalAmount) + 'Der Gesamtbetrag der Rechnung mit Umsatzsteuer + Dim grandTotalAmount = Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag) + 'Der ausstehende Betrag, um dessen Zahlung gebeten wird. Dieser Betrag ist der Rechnungsgesamtbetrag einschließlich Umsatzsteuer abzüglich des im Voraus gezahlten Betrages.Im Falle einer vollständig beglichenen Rechnung ist dieser Betrag gleich null. Der Betrag kann negativ sein; In diesem Fall schuldet der Verkäufer dem Käufer den Betrag + Dim duePayableAmount = Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag) - desc.SetTotals( + desc.SetTotals( lineTotalAmount:=Convert.ToDecimal(lineTotalAmont), chargeTotalAmount:=0, 'Summe aller in der Rechnung enthaltenen Zuschläge der Dokumentenebene allowanceTotalAmount:=0, 'Summe aller in der Rechnung enthaltenen Abschläge der Dokumenteneben @@ -1838,27 +1845,278 @@ Public Class cFakturierung ) - desc.AddTradePaymentTerms(RECHNUNG.TextZZ, zahlungszieldatum) + desc.AddTradePaymentTerms(RECHNUNG.TextZZ, zahlungszieldatum) - Dim isReverseCharge = isReverseChargeSumme(FIRMA, RECHNUNG) + Dim isReverseCharge = isReverseChargeSumme(FIRMA, RECHNUNG) - If RECHNUNG.SteuerfreierGesamtbetrag > 0 Then - desc.AddApplicableTradeTax(Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag), 0, TaxTypes.VAT, TaxCategoryCodes.Z) - End If + If RECHNUNG.SteuerfreierGesamtbetrag > 0 Then + desc.AddApplicableTradeTax(Convert.ToDecimal(RECHNUNG.SteuerfreierGesamtbetrag), 0, TaxTypes.VAT, TaxCategoryCodes.Z) + End If + + If RECHNUNG.SteuerpflichtigerGesamtbetrag > 0 Then + desc.AddApplicableTradeTax(Convert.ToDecimal(taxBasisAmount - RECHNUNG.SteuerfreierGesamtbetrag), Convert.ToDecimal(steuerProzenFaktor), Convert.ToDecimal(taxTotalAmount), TaxTypes.VAT, IIf(isReverseCharge, TaxCategoryCodes.AE, TaxCategoryCodes.S)) + End If + + + Dim tmpPathZugpferd = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("ZUGFeRD_Invoice_" & RECHNUNG.RechnungsNr, ".xml", True, False) + Dim stream As FileStream = New FileStream(tmpPathZugpferd, FileMode.Create, FileAccess.Write) + desc.Save(stream, ZUGFeRDVersion.Version20, Profile.Comfort) + + stream.Flush() + stream.Close() + Return tmpPathZugpferd + + ElseIf Not einzelrechnung AndAlso SR_DT IsNot Nothing Then + + '--------------------------------------------------------------------------------- + '--------------------------------SAMMELRECHNUNG----------------------------------- + '--------------------------------------------------------------------------------- + + Dim ROW As DataRow = SR_DT.Rows(0) + Dim FIRMA As New VERAG_PROG_ALLGEMEIN.cFirmen(ROW("Firma_ID")) + + Dim RECHNUNG_AD As New VERAG_PROG_ALLGEMEIN.cAdressen(ROW("RechnungsKundenNr")) + Dim RECHNUNG_KD As New VERAG_PROG_ALLGEMEIN.cKunde(ROW("RechnungsKundenNr")) + + If RECHNUNG_KD.Zahlungsziel IsNot Nothing AndAlso IsNumeric(RECHNUNG_KD.Zahlungsziel) Then + ZZTage = RECHNUNG_KD.Zahlungsziel + End If + + Dim Gesamt_RG_BetragSteuerfrei As Double = CDbl(SR_DT.Compute("SUM(SteuerFreierBetrag)", "")) + + Dim Gesamt_RG_BetragSteuerpflichtig As Double = CDbl(SR_DT.Compute("SUM(SteuerpflichtigerBetrag)", "")) + + Dim Gesamt_RG_Betrag As Double = Gesamt_RG_BetragSteuerfrei + Gesamt_RG_BetragSteuerpflichtig + + Dim BelegartenKz = If(Gesamt_RG_Betrag < 0, "AG", "AR") + + Dim RechnungsNr = If(ROW("RechnungsNr") IsNot DBNull.Value, addYeartoRgNr(FIRMA.Firma_ID, ROW("Buchungsjahr")) & ROW("RechnungsNr"), "Vorschau") + Dim RechnungsDatum = If(ROW("RechnungsDatum") IsNot DBNull.Value, ROW("RechnungsDatum"), "Vorschau") + Dim zahlungszieldatum As Date = CDate(RechnungsDatum).AddDays(ZZTage) + Dim desc As InvoiceDescriptor = InvoiceDescriptor.CreateInvoice(RechnungsNr, RechnungsDatum, IIf(FIRMA.Firma_ID = 26, CurrencyCodes.GBP, CurrencyCodes.EUR)) + + Select Case BelegartenKz + Case "AR" + desc.Name = "SPEDITIONSRECHNUNG" + desc.Type = InvoiceType.ForwardersInvoice + Case "AG" + desc.Name = "GUTSCHRIFT" + desc.Type = InvoiceType.CreditNote + End Select + + + Dim Rechnugnsname2 As String = "" + If ROW("RechnungsName 2") IsNot DBNull.Value AndAlso ROW("RechnungsName 2") <> "" Then + Rechnugnsname2 = ROW("RechnungsName 2") + End If + + Dim RechnungsName_AdressZusatz As String = "" + If ROW("RechnungsName_AdressZusatz") IsNot DBNull.Value AndAlso ROW("RechnungsName_AdressZusatz") <> "" Then + RechnungsName_AdressZusatz = ROW("RechnungsName_AdressZusatz") + End If + + Dim RechnungsStraße As String = "" + If ROW("RechnungsStraße") IsNot DBNull.Value AndAlso ROW("RechnungsStraße") <> "" Then + RechnungsStraße = ROW("RechnungsStraße") + End If + + Dim RechnungsOrt As String = "" + If ROW("RechnungsOrt") IsNot DBNull.Value AndAlso ROW("RechnungsOrt") <> "" Then + RechnungsOrt = ROW("RechnungsOrt") + End If + + Dim RechnungsLandKz As String = "" + If ROW("RechnungsLandKz") IsNot DBNull.Value AndAlso ROW("RechnungsLandKz") <> "" Then + RechnungsLandKz = cProgramFunctions.getLandBez_fromISO1Land(ROW("RechnungsLandKz"), "", ROW("RechnungSprache")).ToString.ToUpper + End If + + + Dim RE_UID As String = If(ROW("RechnungsUstIdKz") IsNot DBNull.Value, ROW("RechnungsUstIdKz"), "") & If(ROW("RechnungsUstIdNr") IsNot DBNull.Value, ROW("RechnungsUstIdNr"), "") + + + 'If RECHNUNG.Besonderheiten IsNot Nothing Then + ' desc.AddNote(RECHNUNG.Besonderheiten.ToString, SubjectCodes.AAI) + 'End If + If rpt.txtVermerk.Text IsNot Nothing AndAlso rpt.txtVermerk.Text <> "" Then desc.AddNote(rpt.txtVermerk.Text.ToString, SubjectCodes.AAI) + + desc.AddNote("Es bestehen Rabatt- und Bonusvereinbarungen.", SubjectCodes.AAK) + + desc.SetBuyer(ROW("RechnungsName 1") & " " & Rechnugnsname2, RechnungsOrt, RechnungsOrt, RechnungsStraße, GetCountryCodeFromLandKZ(RechnungsLandKz, vatBuyer), IIf(Not IsDBNull(ROW("RechnungsKundenNr")), ROW("RechnungsKundenNr"), "")) + + desc.SetSeller(FIRMA.Firma_Bez, FIRMA.Firma_Ort, FIRMA.Firma_Ort, FIRMA.Firma_Straße, GetCountryCodeFromLandKZ(FIRMA.Firma_LandKz, vatSeller)) + desc.AddSellerTaxRegistration(FIRMA.Firma_UID.ToString.Replace("UID: ", ""), TaxRegistrationSchemeID.VA) + + ' Optionally, to support Peppol----------------------------- + + + If RE_UID <> "" Then + desc.AddBuyerTaxRegistration(RE_UID, TaxRegistrationSchemeID.VA) + If vatBuyer Then + desc.SetBuyerElectronicAddress(RE_UID, vatBuyer) + desc.SetSellerElectronicAddress(FIRMA.Firma_UID.ToString.Replace("UID: ", ""), vatSeller) + End If + + End If + + + Dim steuerProzent As Double = SQL.DLookup(" isnull([Steuersatz %],0)", "[Steuertabelle] ", "[Steuerschlüssel]='" & ROW("Steuerschlüssel") & "'", "FMZOLL", 0) + Dim steuerProzenFaktor As Double = 0 + If steuerProzent > 0 AndAlso steuerProzent < 1 Then + steuerProzenFaktor = steuerProzent * 100 + End If + + Dim sumNetto As Double = 0 + + + '--------------------------------------------------------------------------------- + '--------------------------------TODO--------------------------------------------- + '--------------------------------------------------------------------------------- + + 'AddHandler rpt.Detail.Format, Sub() + ' ' rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString + ' ' rpt.lblLKWNr.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString + + ' rpt.lblLeistungNr.Text = checkNull(rpt.Fields.Item("LeistungsNr").Value) + ' rpt.txtLeistung.Text = checkNull(rpt.Fields.Item("LeistungsBez").Value) + + ' If Not ROW("Lastschrift") Then + ' If checkNull(rpt.Fields.Item("LeistungsNr").Value) = "750" Then + ' strText = "Pos. 750 kann bei Zahlung innerhalb 10 Tagen gekürzt werden." + ' End If + ' End If + + + ' If rpt.Fields.Item("Belegdaten") IsNot Nothing AndAlso rpt.Fields.Item("Belegdaten").Value IsNot Nothing Then + ' rpt.txtLeistung.Text &= vbNewLine & checkNull(rpt.Fields.Item("Belegdaten").Value) + ' End If + + ' rpt.lblAnzahl.Text = checkNull(rpt.Fields.Item("Anzahl").Value) + ' ' rpt.lblBetrag.Text = rpt.Fields.Item("betrag").Value + + ' Dim stPfl As Double = 0 + ' Dim stFrei As Double = 0 + + ' If IsNumeric(checkNull(rpt.Fields.Item("SteuerpflichtigerBetrag").Value)) Then stPfl = CDbl(rpt.Fields.Item("SteuerpflichtigerBetrag").Value()) + ' rpt.lblSteuerpflichtig.Text = If(stPfl <> 0, CDbl(stPfl).ToString("N2", Globalization.CultureInfo.CurrentCulture), "") + ' If IsNumeric(checkNull(rpt.Fields.Item("SteuerfreierBetrag").Value)) Then stFrei = CDbl(rpt.Fields.Item("SteuerfreierBetrag").Value()) + ' rpt.lblSteuerfrei.Text = If(stFrei <> 0, CDbl(stFrei).ToString("N2", Globalization.CultureInfo.CurrentCulture), "") + + + ' sumSteuerpflichtig += stPfl + ' sumSteuerfrei += stFrei + + ' ' Anz += 1 + ' ' gesAnz += 1 + + ' ' If Anz Mod 2 = 0 Then + ' ' rpt.Detail.BackColor = Color.FromArgb(240, 240, 240) + ' 'Else + ' ' rpt.Detail.BackColor = Color.White + ' ' End If + ' 'rpt.Line10.Height = rpt.Detail.Height + ' End Sub + + 'AddHandler rpt.ReportFooter1.Format, Sub() + ' rpt.lblSteuerpflichtigGes.Text = If(sumSteuerpflichtig <> 0, (sumSteuerpflichtig).ToString("N2", CultureInfo.CurrentCulture), "") + ' rpt.lblSteuerfreiGes.Text = If(sumSteuerfrei <> 0, (sumSteuerfrei).ToString("N2", CultureInfo.CurrentCulture), "") + + + ' Dim steuerProz As Double = 0 + ' Dim steuerBez As String = "" + + ' Dim dt2 As DataTable = SQL.loadDgvBySql("SELECT TOP 1 isnull([Steuersatz %],0),isnull([Steuerbezeichnung],'') FROM [Steuertabelle] WHERE [Steuerschlüssel]='" & ROW("Steuerschlüssel") & "'", "FMZOLL") + ' If dt2 IsNot Nothing AndAlso dt2.Rows.Count > 0 Then + ' steuerProz = dt2.Rows(0)(0) + ' steuerBez = dt2.Rows(0)(1) + ' End If + + ' rpt.lblSteuersatz.Text = steuerBez + ' rpt.lblSteuerbetrag.Text = If((sumSteuerpflichtig * steuerProz) <> 0, (sumSteuerpflichtig * steuerProz).ToString("N2", CultureInfo.CurrentCulture), "") + ' rpt.lblZWSumme.Text = (sumSteuerpflichtig + sumSteuerfrei).ToString("N2", CultureInfo.CurrentCulture) + ' rpt.lblSumme.Text = (sumSteuerpflichtig + sumSteuerfrei + (sumSteuerpflichtig * steuerProz)).ToString("N2", CultureInfo.CurrentCulture) + ' rpt.Label46.Text = If(ROW("Währungscode") IsNot DBNull.Value, ROW("Währungscode"), "EUR") + + ' If sumSteuerfrei = 0 Or sumSteuerpflichtig = 0 Then + ' rpt.lblZwText.Visible = False + ' rpt.lblZWSumme.Visible = False + ' End If + + + + + + ' End Sub + + + AddHandler rpt.Detail.Format, Sub() + + Dim einzelpreis As Double = IIf(rpt.Fields.Item("SteuerpflichtigerBetrag").Value > 0, rpt.Fields.Item("SteuerpflichtigerBetrag").Value / checkNull(rpt.Fields.Item("Anzahl").Value), rpt.Fields.Item("SteuerfreierBetrag").Value / checkNull(rpt.Fields.Item("Anzahl").Value)) + + Dim tradeLineItemNew As TradeLineItem = desc.AddTradeLineItem( + name:=checkNull(rpt.Fields.Item("LeistungsBez").Value), + billedQuantity:=Convert.ToDecimal(checkNull(rpt.Fields.Item("Anzahl").Value)), + unitCode:=QuantityCodes.C62, ' immer in Stück + netUnitPrice:=Convert.ToDecimal(einzelpreis), + grossUnitPrice:=Convert.ToDecimal(einzelpreis), + categoryCode:=IIf(rpt.Fields.Item("SteuerpflichtigerBetrag").Value > 0, TaxCategoryCodes.S, TaxCategoryCodes.Z), + taxPercent:=IIf(rpt.Fields.Item("SteuerpflichtigerBetrag").Value > 0, Convert.ToDecimal(steuerProzent * 100), 0), + taxType:=IIf(rpt.Fields.Item("SteuerpflichtigerBetrag").Value > 0, TaxTypes.VAT, TaxTypes.VAT) + ) + Dim netUnitPrice = Convert.ToDecimal(einzelpreis) + Dim netPricePos = netUnitPrice * Convert.ToDecimal(checkNull(rpt.Fields.Item("Anzahl").Value)) + sumNetto += netPricePos + + End Sub + + + 'Summe aller Rechnungspositions-Nettobeträge der Rechnung + Dim lineTotalAmont = sumNetto + 'Der Gesamtbetrag der Umsatzsteuer für die Rechnung, + Dim taxTotalAmount = IIf(Gesamt_RG_BetragSteuerpflichtig <> 0, Math.Round(Convert.ToDecimal(Gesamt_RG_BetragSteuerpflichtig) / (100 + steuerProzenFaktor) * steuerProzenFaktor, 2), 0) + ' Die Gesamtsumme der Rechnung ohne Umsatzsteuer ' RECHNUNG.SteuerfreierGesamtbetrag + RECHNUNG.SteuerpflichtigerGesamtbetrag + 0 - 0 + Dim taxBasisAmount = Convert.ToDecimal(Gesamt_RG_BetragSteuerfrei + Gesamt_RG_BetragSteuerpflichtig + 0 - 0 - taxTotalAmount) + 'Der Gesamtbetrag der Rechnung mit Umsatzsteuer + Dim grandTotalAmount = Convert.ToDecimal(Gesamt_RG_BetragSteuerfrei + Gesamt_RG_BetragSteuerpflichtig) + 'Der ausstehende Betrag, um dessen Zahlung gebeten wird. Dieser Betrag ist der Rechnungsgesamtbetrag einschließlich Umsatzsteuer abzüglich des im Voraus gezahlten Betrages.Im Falle einer vollständig beglichenen Rechnung ist dieser Betrag gleich null. Der Betrag kann negativ sein; In diesem Fall schuldet der Verkäufer dem Käufer den Betrag + Dim duePayableAmount = Convert.ToDecimal(Gesamt_RG_BetragSteuerfrei + Gesamt_RG_BetragSteuerpflichtig) + + desc.SetTotals( + lineTotalAmount:=Convert.ToDecimal(lineTotalAmont), + chargeTotalAmount:=0, 'Summe aller in der Rechnung enthaltenen Zuschläge der Dokumentenebene + allowanceTotalAmount:=0, 'Summe aller in der Rechnung enthaltenen Abschläge der Dokumenteneben + taxBasisAmount:=Convert.ToDecimal(taxBasisAmount), + taxTotalAmount:=Convert.ToDecimal(taxTotalAmount), + grandTotalAmount:=Convert.ToDecimal(grandTotalAmount), + totalPrepaidAmount:=0, 'Die Summe der im Voraus gezahlten Beträge + duePayableAmount:=Convert.ToDecimal(duePayableAmount), + roundingAmount:=0 'Der Betrag, der dem Rechnungsgesamtbetrag hinzuzufügen ist, um den zu zahlenden Betrag zu runden +) + + desc.AddTradePaymentTerms(rpt.Label2.Text, zahlungszieldatum) + + Dim isReverseCharge = IIf(getReverseChargeSumme(FIRMA, ROW("RechnungsLandKz"), ROW("RechnungsNr"), ROW("RechnungsDatum"), "") > 0, True, False) + + + If Gesamt_RG_BetragSteuerfrei > 0 Then + desc.AddApplicableTradeTax(Convert.ToDecimal(Gesamt_RG_BetragSteuerfrei), 0, TaxTypes.VAT, TaxCategoryCodes.Z) + End If + + If Gesamt_RG_BetragSteuerpflichtig > 0 Then + desc.AddApplicableTradeTax(Convert.ToDecimal(taxBasisAmount - Gesamt_RG_BetragSteuerfrei), Convert.ToDecimal(steuerProzenFaktor), Convert.ToDecimal(taxTotalAmount), TaxTypes.VAT, IIf(isReverseCharge, TaxCategoryCodes.AE, TaxCategoryCodes.S)) + End If + + Dim tmpPathZugpferd = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("ZUGFeRD_Invoice_" & RechnungsNr, ".xml", True, False) + Dim stream As FileStream = New FileStream(tmpPathZugpferd, FileMode.Create, FileAccess.Write) + desc.Save(stream, ZUGFeRDVersion.Version20, Profile.Comfort) + + stream.Flush() + stream.Close() + Return tmpPathZugpferd - If RECHNUNG.SteuerpflichtigerGesamtbetrag > 0 Then - desc.AddApplicableTradeTax(Convert.ToDecimal(taxBasisAmount), Convert.ToDecimal(steuerProzenFaktor), Convert.ToDecimal(taxTotalAmount), TaxTypes.VAT, IIf(isReverseCharge, TaxCategoryCodes.AE, TaxCategoryCodes.S)) End If - Dim tmpPathZugpferd = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("ZUGFeRD_Invoice_" & RECHNUNG.RechnungsNr, ".xml", True, False) - Dim stream As FileStream = New FileStream(tmpPathZugpferd, FileMode.Create, FileAccess.Write) - desc.Save(stream, ZUGFeRDVersion.Version20, Profile.Comfort) - stream.Flush() - stream.Close() - - Return tmpPathZugpferd End Function @@ -3657,6 +3915,19 @@ Public Class cFakturierung p.NeverEmbedFonts = "" p.Export(rpt.Document, tmpPath) + Dim Paramslist As New cParameterList(VERAG_PROG_ALLGEMEIN.cAllgemein.PROGID) + Dim enableZugpferd = Paramslist.GET_PARAMETER_VALUE_BOOL("ZUGFeRD") + If enableZugpferd Then + tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.addAttachementToPDF(tmpPath, createZUGFeRD(False, Nothing, dt, rpt)) + Else + + Dim Zugferdpath = createZUGFeRD(False, Nothing, dt, rpt) + Dim fileInfo_ZP As New FileInfo(Zugferdpath) + Dim ZUGF_DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "ZUGFERD", Now().Year & "_SR", "", "", fileInfo_ZP.Name, -1, False) + ZUGF_DS.uploadDataToDATENSERVER(Zugferdpath, fileInfo_ZP.Name, fileInfo_ZP.Extension,,,, True) + + End If + Select Case If(Rechnugnsdruck > 0, Rechnugnsdruck, If(AD.Rechnungsdruck, 0))'If(AD.Rechnungsdruck, 0) Case 0, 1 'DRUCKEN diff --git a/SDL/My Project/AssemblyInfo.vb b/SDL/My Project/AssemblyInfo.vb index bc57a485..e25df88f 100644 --- a/SDL/My Project/AssemblyInfo.vb +++ b/SDL/My Project/AssemblyInfo.vb @@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices ' übernehmen, indem Sie "*" eingeben: ' - - + + diff --git a/SDL/SDL.vbproj b/SDL/SDL.vbproj index e32a174f..43f8b0cd 100644 --- a/SDL/SDL.vbproj +++ b/SDL/SDL.vbproj @@ -874,6 +874,12 @@ Component + + usrcntlFremdrechnungen.vb + + + UserControl + frmUSTVoffeneAntraege.vb @@ -3376,6 +3382,9 @@ usrCntlSDLLeistungVERAGCardNEU.vb + + usrcntlFremdrechnungen.vb + usrCntlMDMDatenverarbeitungAuswertungen_divers.vb diff --git a/SDL/USTV/usrCntlUSTV.Designer.vb b/SDL/USTV/usrCntlUSTV.Designer.vb index ca72acba..fd70b88c 100644 --- a/SDL/USTV/usrCntlUSTV.Designer.vb +++ b/SDL/USTV/usrCntlUSTV.Designer.vb @@ -23,7 +23,7 @@ Partial Class usrCntlUSTV Private Sub InitializeComponent() Me.components = New System.ComponentModel.Container() - Dim DataGridViewCellStyle2 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() + Dim DataGridViewCellStyle1 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() Me.pnlFilter = New System.Windows.Forms.Panel() Me.dgvUSTV = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) Me.Label1 = New System.Windows.Forms.Label() @@ -77,9 +77,9 @@ Partial Class usrCntlUSTV Me.pnlFilter.BackColor = System.Drawing.Color.White Me.pnlFilter.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle Me.pnlFilter.Dock = System.Windows.Forms.DockStyle.Bottom - Me.pnlFilter.Location = New System.Drawing.Point(0, 77) + Me.pnlFilter.Location = New System.Drawing.Point(0, 81) Me.pnlFilter.Name = "pnlFilter" - Me.pnlFilter.Size = New System.Drawing.Size(1627, 31) + Me.pnlFilter.Size = New System.Drawing.Size(1627, 27) Me.pnlFilter.TabIndex = 6 ' 'dgvUSTV @@ -87,8 +87,8 @@ Partial Class usrCntlUSTV Me.dgvUSTV.AKTUALISIERUNGS_INTERVALL = -1 Me.dgvUSTV.AllowUserToAddRows = False Me.dgvUSTV.AllowUserToDeleteRows = False - DataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) - Me.dgvUSTV.AlternatingRowsDefaultCellStyle = DataGridViewCellStyle2 + DataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) + Me.dgvUSTV.AlternatingRowsDefaultCellStyle = DataGridViewCellStyle1 Me.dgvUSTV.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize Me.dgvUSTV.Dock = System.Windows.Forms.DockStyle.Fill Me.dgvUSTV.Location = New System.Drawing.Point(0, 108) @@ -164,24 +164,24 @@ Partial Class usrCntlUSTV Me.txtRisiko._WaehrungZeichen = True Me.txtRisiko.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtRisiko.ForeColor = System.Drawing.Color.Black - Me.txtRisiko.Location = New System.Drawing.Point(882, 45) + Me.txtRisiko.Location = New System.Drawing.Point(1161, 28) Me.txtRisiko.MaxLineLength = -1 Me.txtRisiko.MaxLines_Warning = "" Me.txtRisiko.MaxLines_Warning_Label = Nothing Me.txtRisiko.Name = "txtRisiko" Me.txtRisiko.ReadOnly = True - Me.txtRisiko.Size = New System.Drawing.Size(91, 20) + Me.txtRisiko.Size = New System.Drawing.Size(107, 20) Me.txtRisiko.TabIndex = 56 ' 'Label10 ' Me.Label10.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label10.AutoSize = True - Me.Label10.Location = New System.Drawing.Point(821, 48) + Me.Label10.Location = New System.Drawing.Point(1116, 31) Me.Label10.Name = "Label10" - Me.Label10.Size = New System.Drawing.Size(36, 13) + Me.Label10.Size = New System.Drawing.Size(45, 13) Me.Label10.TabIndex = 55 - Me.Label10.Text = "Risiko" + Me.Label10.Text = "= Risiko" ' 'txtOPSaldo ' @@ -199,7 +199,7 @@ Partial Class usrCntlUSTV Me.txtOPSaldo._WaehrungZeichen = True Me.txtOPSaldo.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtOPSaldo.ForeColor = System.Drawing.Color.Black - Me.txtOPSaldo.Location = New System.Drawing.Point(882, 25) + Me.txtOPSaldo.Location = New System.Drawing.Point(999, 0) Me.txtOPSaldo.MaxLineLength = -1 Me.txtOPSaldo.MaxLines_Warning = "" Me.txtOPSaldo.MaxLines_Warning_Label = Nothing @@ -212,7 +212,7 @@ Partial Class usrCntlUSTV ' Me.Label11.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label11.AutoSize = True - Me.Label11.Location = New System.Drawing.Point(824, 32) + Me.Label11.Location = New System.Drawing.Point(941, 6) Me.Label11.Name = "Label11" Me.Label11.Size = New System.Drawing.Size(52, 13) Me.Label11.TabIndex = 53 @@ -222,7 +222,7 @@ Partial Class usrCntlUSTV ' Me.Label9.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label9.AutoSize = True - Me.Label9.Location = New System.Drawing.Point(1483, 52) + Me.Label9.Location = New System.Drawing.Point(1512, 52) Me.Label9.Name = "Label9" Me.Label9.Size = New System.Drawing.Size(102, 13) Me.Label9.TabIndex = 52 @@ -244,13 +244,13 @@ Partial Class usrCntlUSTV Me.txtSumDiff._WaehrungZeichen = True Me.txtSumDiff.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtSumDiff.ForeColor = System.Drawing.Color.Black - Me.txtSumDiff.Location = New System.Drawing.Point(1321, 45) + Me.txtSumDiff.Location = New System.Drawing.Point(999, 19) Me.txtSumDiff.MaxLineLength = -1 Me.txtSumDiff.MaxLines_Warning = "" Me.txtSumDiff.MaxLines_Warning_Label = Nothing Me.txtSumDiff.Name = "txtSumDiff" Me.txtSumDiff.ReadOnly = True - Me.txtSumDiff.Size = New System.Drawing.Size(107, 20) + Me.txtSumDiff.Size = New System.Drawing.Size(91, 20) Me.txtSumDiff.TabIndex = 32 ' 'btnKundendatenaktualisieren @@ -260,7 +260,7 @@ Partial Class usrCntlUSTV Me.btnKundendatenaktualisieren.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.btnKundendatenaktualisieren.ForeColor = System.Drawing.Color.Black Me.btnKundendatenaktualisieren.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft - Me.btnKundendatenaktualisieren.Location = New System.Drawing.Point(1468, 6) + Me.btnKundendatenaktualisieren.Location = New System.Drawing.Point(1497, 6) Me.btnKundendatenaktualisieren.Name = "btnKundendatenaktualisieren" Me.btnKundendatenaktualisieren.Size = New System.Drawing.Size(127, 39) Me.btnKundendatenaktualisieren.TabIndex = 33 @@ -283,7 +283,7 @@ Partial Class usrCntlUSTV Me.txtSumErst._WaehrungZeichen = True Me.txtSumErst.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtSumErst.ForeColor = System.Drawing.Color.Black - Me.txtSumErst.Location = New System.Drawing.Point(1321, 25) + Me.txtSumErst.Location = New System.Drawing.Point(1381, 25) Me.txtSumErst.MaxLineLength = -1 Me.txtSumErst.MaxLines_Warning = "" Me.txtSumErst.MaxLines_Warning_Label = Nothing @@ -308,7 +308,7 @@ Partial Class usrCntlUSTV Me.txtSumUst._WaehrungZeichen = True Me.txtSumUst.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtSumUst.ForeColor = System.Drawing.Color.Black - Me.txtSumUst.Location = New System.Drawing.Point(1321, 5) + Me.txtSumUst.Location = New System.Drawing.Point(1381, 5) Me.txtSumUst.MaxLineLength = -1 Me.txtSumUst.MaxLines_Warning = "" Me.txtSumUst.MaxLines_Warning_Label = Nothing @@ -333,7 +333,7 @@ Partial Class usrCntlUSTV Me.txtVZBetrag._WaehrungZeichen = True Me.txtVZBetrag.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtVZBetrag.ForeColor = System.Drawing.Color.Black - Me.txtVZBetrag.Location = New System.Drawing.Point(1093, 45) + Me.txtVZBetrag.Location = New System.Drawing.Point(1161, 5) Me.txtVZBetrag.MaxLineLength = -1 Me.txtVZBetrag.MaxLines_Warning = "" Me.txtVZBetrag.MaxLines_Warning_Label = Nothing @@ -346,27 +346,27 @@ Partial Class usrCntlUSTV ' Me.Label5.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label5.AutoSize = True - Me.Label5.Location = New System.Drawing.Point(1216, 48) + Me.Label5.Location = New System.Drawing.Point(914, 27) Me.Label5.Name = "Label5" - Me.Label5.Size = New System.Drawing.Size(79, 13) + Me.Label5.Size = New System.Drawing.Size(85, 13) Me.Label5.TabIndex = 29 - Me.Label5.Text = "Differenzbetrag" + Me.Label5.Text = "- Differenzbetrag" ' 'Label8 ' Me.Label8.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label8.AutoSize = True - Me.Label8.Location = New System.Drawing.Point(1032, 48) + Me.Label8.Location = New System.Drawing.Point(1100, 8) Me.Label8.Name = "Label8" - Me.Label8.Size = New System.Drawing.Size(55, 13) + Me.Label8.Size = New System.Drawing.Size(64, 13) Me.Label8.TabIndex = 50 - Me.Label8.Text = "VZ-Betrag" + Me.Label8.Text = "+ VZ-Betrag" ' 'Label4 ' Me.Label4.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label4.AutoSize = True - Me.Label4.Location = New System.Drawing.Point(1216, 28) + Me.Label4.Location = New System.Drawing.Point(1276, 28) Me.Label4.Name = "Label4" Me.Label4.Size = New System.Drawing.Size(90, 13) Me.Label4.TabIndex = 28 @@ -388,20 +388,20 @@ Partial Class usrCntlUSTV Me.txt3470Betrag._WaehrungZeichen = True Me.txt3470Betrag.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txt3470Betrag.ForeColor = System.Drawing.Color.Black - Me.txt3470Betrag.Location = New System.Drawing.Point(1093, 25) + Me.txt3470Betrag.Location = New System.Drawing.Point(999, 40) Me.txt3470Betrag.MaxLineLength = -1 Me.txt3470Betrag.MaxLines_Warning = "" Me.txt3470Betrag.MaxLines_Warning_Label = Nothing Me.txt3470Betrag.Name = "txt3470Betrag" Me.txt3470Betrag.ReadOnly = True - Me.txt3470Betrag.Size = New System.Drawing.Size(107, 20) + Me.txt3470Betrag.Size = New System.Drawing.Size(91, 20) Me.txt3470Betrag.TabIndex = 49 ' 'Label3 ' Me.Label3.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label3.AutoSize = True - Me.Label3.Location = New System.Drawing.Point(1216, 7) + Me.Label3.Location = New System.Drawing.Point(1276, 7) Me.Label3.Name = "Label3" Me.Label3.Size = New System.Drawing.Size(59, 13) Me.Label3.TabIndex = 27 @@ -411,11 +411,11 @@ Partial Class usrCntlUSTV ' Me.Label7.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label7.AutoSize = True - Me.Label7.Location = New System.Drawing.Point(1056, 28) + Me.Label7.Location = New System.Drawing.Point(956, 43) Me.Label7.Name = "Label7" - Me.Label7.Size = New System.Drawing.Size(31, 13) + Me.Label7.Size = New System.Drawing.Size(37, 13) Me.Label7.TabIndex = 48 - Me.Label7.Text = "3470" + Me.Label7.Text = "- 3470" ' 'txtVorschaubetrGes ' @@ -433,24 +433,24 @@ Partial Class usrCntlUSTV Me.txtVorschaubetrGes._WaehrungZeichen = True Me.txtVorschaubetrGes.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.txtVorschaubetrGes.ForeColor = System.Drawing.Color.Black - Me.txtVorschaubetrGes.Location = New System.Drawing.Point(1093, 4) + Me.txtVorschaubetrGes.Location = New System.Drawing.Point(999, 60) Me.txtVorschaubetrGes.MaxLineLength = -1 Me.txtVorschaubetrGes.MaxLines_Warning = "" Me.txtVorschaubetrGes.MaxLines_Warning_Label = Nothing Me.txtVorschaubetrGes.Name = "txtVorschaubetrGes" Me.txtVorschaubetrGes.ReadOnly = True - Me.txtVorschaubetrGes.Size = New System.Drawing.Size(107, 20) + Me.txtVorschaubetrGes.Size = New System.Drawing.Size(91, 20) Me.txtVorschaubetrGes.TabIndex = 34 ' 'Label6 ' Me.Label6.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.Label6.AutoSize = True - Me.Label6.Location = New System.Drawing.Point(969, 7) + Me.Label6.Location = New System.Drawing.Point(872, 63) Me.Label6.Name = "Label6" - Me.Label6.Size = New System.Drawing.Size(121, 13) + Me.Label6.Size = New System.Drawing.Size(127, 13) Me.Label6.TabIndex = 33 - Me.Label6.Text = "Vorschaubetrag-Gesamt" + Me.Label6.Text = "- Vorschaubetrag-Gesamt" ' 'cbxDifferenzbetrag ' diff --git a/SDL/USTV/usrCntlUSTV.vb b/SDL/USTV/usrCntlUSTV.vb index 1e3c1805..10420324 100644 --- a/SDL/USTV/usrCntlUSTV.vb +++ b/SDL/USTV/usrCntlUSTV.vb @@ -749,4 +749,5 @@ Public Class usrCntlUSTV End If End Sub + End Class diff --git a/SDL/kunden/frmKundenblatt.Designer.vb b/SDL/kunden/frmKundenblatt.Designer.vb index ee6dadad..b151a2cb 100644 --- a/SDL/kunden/frmKundenblatt.Designer.vb +++ b/SDL/kunden/frmKundenblatt.Designer.vb @@ -45,7 +45,6 @@ Partial Class frmKundenblatt Me.txtInfotext = New System.Windows.Forms.Label() Me.tbFirmendaten = New System.Windows.Forms.TabPage() Me.Panel4 = New System.Windows.Forms.Panel() - Me.UsrcntlKundeBearbeitenFull1 = New SDL.usrcntlKundeBearbeitenFull() Me.tbcntrMain = New System.Windows.Forms.TabControl() Me.tbAllgemein = New System.Windows.Forms.TabPage() Me.lblAdressenzusatz = New System.Windows.Forms.TextBox() @@ -129,10 +128,8 @@ Partial Class frmKundenblatt Me.lblLetzterSA_SDL = New System.Windows.Forms.Label() Me.rtbVermerke = New System.Windows.Forms.RichTextBox() Me.tbSDLKarten = New System.Windows.Forms.TabPage() - Me.usrcntlKarten = New SDL.usrCntlKartenDaten() Me.tbLKW = New System.Windows.Forms.TabPage() Me.pnlLKWRight = New System.Windows.Forms.Panel() - Me.UsrCntlLKW1 = New SDL.usrCntlLKW() Me.pnlLKW = New System.Windows.Forms.Panel() Me.dgvLKW = New System.Windows.Forms.DataGridView() Me.pnlLKWBottom = New System.Windows.Forms.Panel() @@ -163,7 +160,6 @@ Partial Class frmKundenblatt Me.scanVertragVeragKd = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScan() Me.tbBesuchsberichte = New System.Windows.Forms.TabPage() Me.tbOfferte = New System.Windows.Forms.TabPage() - Me.UsrCntlOfferte1 = New SDL.usrCntlOfferte() Me.tbUSTV = New System.Windows.Forms.TabPage() Me.tbcntrUSTV = New System.Windows.Forms.TabControl() Me.tbUSTVDokumente = New System.Windows.Forms.TabPage() @@ -174,7 +170,6 @@ Partial Class frmKundenblatt Me.scanUSTVFABest = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList() Me.scanUSTVVollmachten = New VERAG_PROG_ALLGEMEIN.usrcntlPDFScanList() Me.tbUSTVAntrage = New System.Windows.Forms.TabPage() - Me.UsrCntlUSTV = New SDL.usrCntlUSTV() Me.cntxtExcel = New System.Windows.Forms.ContextMenuStrip(Me.components) Me.ToolStripMenuItem3 = New System.Windows.Forms.ToolStripMenuItem() Me.ToolStripMenuItem6 = New System.Windows.Forms.ToolStripMenuItem() @@ -200,6 +195,12 @@ Partial Class frmKundenblatt Me.tbiKartenverwaltung = New System.Windows.Forms.ToolStripMenuItem() Me.tbiLKW = New System.Windows.Forms.ToolStripMenuItem() Me.tbiVERAGCard = New System.Windows.Forms.ToolStripMenuItem() + Me.tbFremdrechnungen = New System.Windows.Forms.TabPage() + Me.UsrcntlKundeBearbeitenFull1 = New SDL.usrcntlKundeBearbeitenFull() + Me.usrcntlKarten = New SDL.usrCntlKartenDaten() + Me.UsrCntlLKW1 = New SDL.usrCntlLKW() + Me.UsrCntlOfferte1 = New SDL.usrCntlOfferte() + Me.UsrCntlUSTV = New SDL.usrCntlUSTV() Me.pnlInfo.SuspendLayout() Me.tbFirmendaten.SuspendLayout() Me.Panel4.SuspendLayout() @@ -254,7 +255,7 @@ Partial Class frmKundenblatt Me.pnlInfo.BackColor = System.Drawing.Color.FromArgb(CType(CType(255, Byte), Integer), CType(CType(255, Byte), Integer), CType(CType(128, Byte), Integer)) Me.pnlInfo.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle Me.pnlInfo.Controls.Add(Me.txtInfotext) - Me.pnlInfo.Location = New System.Drawing.Point(325, 6) + Me.pnlInfo.Location = New System.Drawing.Point(332, 6) Me.pnlInfo.Name = "pnlInfo" Me.pnlInfo.Size = New System.Drawing.Size(602, 35) Me.pnlInfo.TabIndex = 1 @@ -276,7 +277,7 @@ Partial Class frmKundenblatt Me.tbFirmendaten.Location = New System.Drawing.Point(4, 25) Me.tbFirmendaten.Name = "tbFirmendaten" Me.tbFirmendaten.Padding = New System.Windows.Forms.Padding(3) - Me.tbFirmendaten.Size = New System.Drawing.Size(1630, 1033) + Me.tbFirmendaten.Size = New System.Drawing.Size(1630, 1067) Me.tbFirmendaten.TabIndex = 3 Me.tbFirmendaten.Text = "Firmendaten" ' @@ -286,19 +287,9 @@ Partial Class frmKundenblatt Me.Panel4.Dock = System.Windows.Forms.DockStyle.Fill Me.Panel4.Location = New System.Drawing.Point(3, 3) Me.Panel4.Name = "Panel4" - Me.Panel4.Size = New System.Drawing.Size(1624, 1027) + Me.Panel4.Size = New System.Drawing.Size(1624, 1061) Me.Panel4.TabIndex = 0 ' - 'UsrcntlKundeBearbeitenFull1 - ' - Me.UsrcntlKundeBearbeitenFull1.BackColor = System.Drawing.Color.White - Me.UsrcntlKundeBearbeitenFull1.Dock = System.Windows.Forms.DockStyle.Fill - Me.UsrcntlKundeBearbeitenFull1.Location = New System.Drawing.Point(0, 0) - Me.UsrcntlKundeBearbeitenFull1.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5) - Me.UsrcntlKundeBearbeitenFull1.Name = "UsrcntlKundeBearbeitenFull1" - Me.UsrcntlKundeBearbeitenFull1.Size = New System.Drawing.Size(1624, 1027) - Me.UsrcntlKundeBearbeitenFull1.TabIndex = 0 - ' 'tbcntrMain ' Me.tbcntrMain.Appearance = System.Windows.Forms.TabAppearance.FlatButtons @@ -314,7 +305,7 @@ Partial Class frmKundenblatt Me.tbcntrMain.Margin = New System.Windows.Forms.Padding(0) Me.tbcntrMain.Name = "tbcntrMain" Me.tbcntrMain.SelectedIndex = 0 - Me.tbcntrMain.Size = New System.Drawing.Size(1638, 1062) + Me.tbcntrMain.Size = New System.Drawing.Size(1652, 1096) Me.tbcntrMain.TabIndex = 3 ' 'tbAllgemein @@ -355,7 +346,7 @@ Partial Class frmKundenblatt Me.tbAllgemein.Margin = New System.Windows.Forms.Padding(0) Me.tbAllgemein.Name = "tbAllgemein" Me.tbAllgemein.Padding = New System.Windows.Forms.Padding(3) - Me.tbAllgemein.Size = New System.Drawing.Size(1630, 1033) + Me.tbAllgemein.Size = New System.Drawing.Size(1644, 1084) Me.tbAllgemein.TabIndex = 0 Me.tbAllgemein.Text = "Allgemein" ' @@ -465,7 +456,7 @@ Partial Class frmKundenblatt Me.dgvOffenePosten.RowHeadersDefaultCellStyle = DataGridViewCellStyle4 Me.dgvOffenePosten.RowHeadersVisible = False Me.dgvOffenePosten.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect - Me.dgvOffenePosten.Size = New System.Drawing.Size(714, 434) + Me.dgvOffenePosten.Size = New System.Drawing.Size(714, 485) Me.dgvOffenePosten.TabIndex = 175 ' 'btnOP @@ -805,7 +796,7 @@ Partial Class frmKundenblatt Me.dgvSperrliste.Name = "dgvSperrliste" Me.dgvSperrliste.ReadOnly = True Me.dgvSperrliste.RowHeadersDefaultCellStyle = DataGridViewCellStyle7 - Me.dgvSperrliste.Size = New System.Drawing.Size(432, 989) + Me.dgvSperrliste.Size = New System.Drawing.Size(446, 1040) Me.dgvSperrliste.TabIndex = 23 ' 'PictureBox2 @@ -859,7 +850,7 @@ Partial Class frmKundenblatt Me.tbZoll.Location = New System.Drawing.Point(4, 25) Me.tbZoll.Name = "tbZoll" Me.tbZoll.Padding = New System.Windows.Forms.Padding(3) - Me.tbZoll.Size = New System.Drawing.Size(1630, 1033) + Me.tbZoll.Size = New System.Drawing.Size(1630, 1067) Me.tbZoll.TabIndex = 9 Me.tbZoll.Text = "ZOLL" Me.tbZoll.UseVisualStyleBackColor = True @@ -871,7 +862,7 @@ Partial Class frmKundenblatt Me.tbcntrZOLL.Location = New System.Drawing.Point(3, 3) Me.tbcntrZOLL.Name = "tbcntrZOLL" Me.tbcntrZOLL.SelectedIndex = 0 - Me.tbcntrZOLL.Size = New System.Drawing.Size(1624, 1027) + Me.tbcntrZOLL.Size = New System.Drawing.Size(1624, 1061) Me.tbcntrZOLL.TabIndex = 0 ' 'tabZoll_Artikel @@ -879,7 +870,7 @@ Partial Class frmKundenblatt Me.tabZoll_Artikel.Location = New System.Drawing.Point(4, 22) Me.tabZoll_Artikel.Name = "tabZoll_Artikel" Me.tabZoll_Artikel.Padding = New System.Windows.Forms.Padding(3) - Me.tabZoll_Artikel.Size = New System.Drawing.Size(1616, 1001) + Me.tabZoll_Artikel.Size = New System.Drawing.Size(1616, 1035) Me.tabZoll_Artikel.TabIndex = 1 Me.tabZoll_Artikel.Text = "Artikel" Me.tabZoll_Artikel.UseVisualStyleBackColor = True @@ -890,7 +881,7 @@ Partial Class frmKundenblatt Me.tbMdm.Location = New System.Drawing.Point(4, 25) Me.tbMdm.Name = "tbMdm" Me.tbMdm.Padding = New System.Windows.Forms.Padding(3) - Me.tbMdm.Size = New System.Drawing.Size(1630, 1033) + Me.tbMdm.Size = New System.Drawing.Size(1644, 1067) Me.tbMdm.TabIndex = 10 Me.tbMdm.Text = "MDM" Me.tbMdm.UseVisualStyleBackColor = True @@ -903,12 +894,13 @@ Partial Class frmKundenblatt Me.tbcntrMDM.Controls.Add(Me.tbVERAGCard) Me.tbcntrMDM.Controls.Add(Me.tbDokumente) Me.tbcntrMDM.Controls.Add(Me.tbBesuchsberichte) + Me.tbcntrMDM.Controls.Add(Me.tbFremdrechnungen) Me.tbcntrMDM.Dock = System.Windows.Forms.DockStyle.Fill Me.tbcntrMDM.Location = New System.Drawing.Point(3, 3) Me.tbcntrMDM.Margin = New System.Windows.Forms.Padding(0) Me.tbcntrMDM.Name = "tbcntrMDM" Me.tbcntrMDM.SelectedIndex = 0 - Me.tbcntrMDM.Size = New System.Drawing.Size(1624, 1027) + Me.tbcntrMDM.Size = New System.Drawing.Size(1638, 1061) Me.tbcntrMDM.TabIndex = 0 ' 'tbSDL @@ -920,7 +912,7 @@ Partial Class frmKundenblatt Me.tbSDL.Margin = New System.Windows.Forms.Padding(0) Me.tbSDL.Name = "tbSDL" Me.tbSDL.Padding = New System.Windows.Forms.Padding(3) - Me.tbSDL.Size = New System.Drawing.Size(1616, 1001) + Me.tbSDL.Size = New System.Drawing.Size(1630, 1052) Me.tbSDL.TabIndex = 5 Me.tbSDL.Text = "SDL-Leistungen" Me.tbSDL.UseVisualStyleBackColor = True @@ -962,7 +954,7 @@ Partial Class frmKundenblatt DataGridViewCellStyle13.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] Me.dgvSDLLeistungenFull.RowHeadersDefaultCellStyle = DataGridViewCellStyle13 Me.dgvSDLLeistungenFull.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect - Me.dgvSDLLeistungenFull.Size = New System.Drawing.Size(1610, 805) + Me.dgvSDLLeistungenFull.Size = New System.Drawing.Size(1624, 856) Me.dgvSDLLeistungenFull.TabIndex = 5 ' 'Panel6 @@ -976,7 +968,7 @@ Partial Class frmKundenblatt Me.Panel6.Dock = System.Windows.Forms.DockStyle.Top Me.Panel6.Location = New System.Drawing.Point(3, 3) Me.Panel6.Name = "Panel6" - Me.Panel6.Size = New System.Drawing.Size(1610, 47) + Me.Panel6.Size = New System.Drawing.Size(1624, 47) Me.Panel6.TabIndex = 178 ' 'Label28 @@ -1067,9 +1059,9 @@ Partial Class frmKundenblatt Me.Panel5.Controls.Add(Me.lblLetzterSA_SDL) Me.Panel5.Controls.Add(Me.rtbVermerke) Me.Panel5.Dock = System.Windows.Forms.DockStyle.Bottom - Me.Panel5.Location = New System.Drawing.Point(3, 855) + Me.Panel5.Location = New System.Drawing.Point(3, 906) Me.Panel5.Name = "Panel5" - Me.Panel5.Size = New System.Drawing.Size(1610, 143) + Me.Panel5.Size = New System.Drawing.Size(1624, 143) Me.Panel5.TabIndex = 177 ' 'Button7 @@ -1450,21 +1442,11 @@ Partial Class frmKundenblatt Me.tbSDLKarten.Location = New System.Drawing.Point(4, 22) Me.tbSDLKarten.Name = "tbSDLKarten" Me.tbSDLKarten.Padding = New System.Windows.Forms.Padding(3) - Me.tbSDLKarten.Size = New System.Drawing.Size(178, 39) + Me.tbSDLKarten.Size = New System.Drawing.Size(1630, 1052) Me.tbSDLKarten.TabIndex = 7 Me.tbSDLKarten.Text = "SDL-Kartenverwaltung" Me.tbSDLKarten.UseVisualStyleBackColor = True ' - 'usrcntlKarten - ' - Me.usrcntlKarten.Cursor = System.Windows.Forms.Cursors.Default - Me.usrcntlKarten.Dock = System.Windows.Forms.DockStyle.Fill - Me.usrcntlKarten.Location = New System.Drawing.Point(3, 3) - Me.usrcntlKarten.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5) - Me.usrcntlKarten.Name = "usrcntlKarten" - Me.usrcntlKarten.Size = New System.Drawing.Size(172, 33) - Me.usrcntlKarten.TabIndex = 0 - ' 'tbLKW ' Me.tbLKW.Controls.Add(Me.pnlLKWRight) @@ -1472,7 +1454,7 @@ Partial Class frmKundenblatt Me.tbLKW.Location = New System.Drawing.Point(4, 22) Me.tbLKW.Name = "tbLKW" Me.tbLKW.Padding = New System.Windows.Forms.Padding(3) - Me.tbLKW.Size = New System.Drawing.Size(178, 39) + Me.tbLKW.Size = New System.Drawing.Size(1630, 1052) Me.tbLKW.TabIndex = 4 Me.tbLKW.Text = "LKWs" Me.tbLKW.UseVisualStyleBackColor = True @@ -1484,22 +1466,9 @@ Partial Class frmKundenblatt Me.pnlLKWRight.Location = New System.Drawing.Point(309, 3) Me.pnlLKWRight.Name = "pnlLKWRight" Me.pnlLKWRight.Padding = New System.Windows.Forms.Padding(10, 0, 0, 0) - Me.pnlLKWRight.Size = New System.Drawing.Size(0, 33) + Me.pnlLKWRight.Size = New System.Drawing.Size(1318, 1046) Me.pnlLKWRight.TabIndex = 2 ' - 'UsrCntlLKW1 - ' - Me.UsrCntlLKW1.BackColor = System.Drawing.Color.White - Me.UsrCntlLKW1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom - Me.UsrCntlLKW1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle - Me.UsrCntlLKW1.Dock = System.Windows.Forms.DockStyle.Fill - Me.UsrCntlLKW1.Location = New System.Drawing.Point(10, 0) - Me.UsrCntlLKW1.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5) - Me.UsrCntlLKW1.MaximumSize = New System.Drawing.Size(1200, 1000) - Me.UsrCntlLKW1.Name = "UsrCntlLKW1" - Me.UsrCntlLKW1.Size = New System.Drawing.Size(0, 33) - Me.UsrCntlLKW1.TabIndex = 0 - ' 'pnlLKW ' Me.pnlLKW.Controls.Add(Me.dgvLKW) @@ -1508,7 +1477,7 @@ Partial Class frmKundenblatt Me.pnlLKW.Dock = System.Windows.Forms.DockStyle.Left Me.pnlLKW.Location = New System.Drawing.Point(3, 3) Me.pnlLKW.Name = "pnlLKW" - Me.pnlLKW.Size = New System.Drawing.Size(306, 33) + Me.pnlLKW.Size = New System.Drawing.Size(306, 1046) Me.pnlLKW.TabIndex = 3 ' 'dgvLKW @@ -1549,7 +1518,7 @@ Partial Class frmKundenblatt Me.dgvLKW.RowHeadersDefaultCellStyle = DataGridViewCellStyle17 Me.dgvLKW.RowHeadersVisible = False Me.dgvLKW.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect - Me.dgvLKW.Size = New System.Drawing.Size(306, 0) + Me.dgvLKW.Size = New System.Drawing.Size(306, 872) Me.dgvLKW.TabIndex = 2 ' 'pnlLKWBottom @@ -1561,7 +1530,7 @@ Partial Class frmKundenblatt Me.pnlLKWBottom.Controls.Add(Me.Button13) Me.pnlLKWBottom.Controls.Add(Me.lblErgebnisse) Me.pnlLKWBottom.Dock = System.Windows.Forms.DockStyle.Bottom - Me.pnlLKWBottom.Location = New System.Drawing.Point(0, -79) + Me.pnlLKWBottom.Location = New System.Drawing.Point(0, 934) Me.pnlLKWBottom.Name = "pnlLKWBottom" Me.pnlLKWBottom.Size = New System.Drawing.Size(306, 112) Me.pnlLKWBottom.TabIndex = 3 @@ -1702,7 +1671,7 @@ Partial Class frmKundenblatt Me.tbVERAGCard.Location = New System.Drawing.Point(4, 22) Me.tbVERAGCard.Name = "tbVERAGCard" Me.tbVERAGCard.Padding = New System.Windows.Forms.Padding(3) - Me.tbVERAGCard.Size = New System.Drawing.Size(178, 39) + Me.tbVERAGCard.Size = New System.Drawing.Size(1630, 1052) Me.tbVERAGCard.TabIndex = 6 Me.tbVERAGCard.Text = "VERAG Card" Me.tbVERAGCard.UseVisualStyleBackColor = True @@ -1714,7 +1683,7 @@ Partial Class frmKundenblatt Me.Panel3.Dock = System.Windows.Forms.DockStyle.Fill Me.Panel3.Location = New System.Drawing.Point(3, 3) Me.Panel3.Name = "Panel3" - Me.Panel3.Size = New System.Drawing.Size(172, 33) + Me.Panel3.Size = New System.Drawing.Size(1624, 1046) Me.Panel3.TabIndex = 0 ' 'tbDokumente @@ -1732,7 +1701,7 @@ Partial Class frmKundenblatt Me.tbDokumente.Controls.Add(Me.scanVertragVeragKd) Me.tbDokumente.Location = New System.Drawing.Point(4, 22) Me.tbDokumente.Name = "tbDokumente" - Me.tbDokumente.Size = New System.Drawing.Size(178, 39) + Me.tbDokumente.Size = New System.Drawing.Size(1630, 1052) Me.tbDokumente.TabIndex = 8 Me.tbDokumente.Text = "Dokumente" Me.tbDokumente.UseVisualStyleBackColor = True @@ -1930,7 +1899,7 @@ Partial Class frmKundenblatt Me.tbBesuchsberichte.Location = New System.Drawing.Point(4, 22) Me.tbBesuchsberichte.Name = "tbBesuchsberichte" Me.tbBesuchsberichte.Padding = New System.Windows.Forms.Padding(3) - Me.tbBesuchsberichte.Size = New System.Drawing.Size(178, 39) + Me.tbBesuchsberichte.Size = New System.Drawing.Size(1630, 1052) Me.tbBesuchsberichte.TabIndex = 9 Me.tbBesuchsberichte.Text = "Besuchsberichte" Me.tbBesuchsberichte.UseVisualStyleBackColor = True @@ -1941,27 +1910,17 @@ Partial Class frmKundenblatt Me.tbOfferte.Location = New System.Drawing.Point(4, 25) Me.tbOfferte.Margin = New System.Windows.Forms.Padding(2) Me.tbOfferte.Name = "tbOfferte" - Me.tbOfferte.Size = New System.Drawing.Size(1630, 1033) + Me.tbOfferte.Size = New System.Drawing.Size(1630, 1067) Me.tbOfferte.TabIndex = 11 Me.tbOfferte.Text = "Offerte" Me.tbOfferte.UseVisualStyleBackColor = True ' - 'UsrCntlOfferte1 - ' - Me.UsrCntlOfferte1.BackColor = System.Drawing.Color.White - Me.UsrCntlOfferte1.Dock = System.Windows.Forms.DockStyle.Fill - Me.UsrCntlOfferte1.Location = New System.Drawing.Point(0, 0) - Me.UsrCntlOfferte1.Margin = New System.Windows.Forms.Padding(1) - Me.UsrCntlOfferte1.Name = "UsrCntlOfferte1" - Me.UsrCntlOfferte1.Size = New System.Drawing.Size(1630, 1033) - Me.UsrCntlOfferte1.TabIndex = 0 - ' 'tbUSTV ' Me.tbUSTV.Controls.Add(Me.tbcntrUSTV) Me.tbUSTV.Location = New System.Drawing.Point(4, 25) Me.tbUSTV.Name = "tbUSTV" - Me.tbUSTV.Size = New System.Drawing.Size(1630, 1033) + Me.tbUSTV.Size = New System.Drawing.Size(1630, 1067) Me.tbUSTV.TabIndex = 12 Me.tbUSTV.Text = "USTV" Me.tbUSTV.UseVisualStyleBackColor = True @@ -1975,7 +1934,7 @@ Partial Class frmKundenblatt Me.tbcntrUSTV.Margin = New System.Windows.Forms.Padding(0) Me.tbcntrUSTV.Name = "tbcntrUSTV" Me.tbcntrUSTV.SelectedIndex = 0 - Me.tbcntrUSTV.Size = New System.Drawing.Size(1630, 1033) + Me.tbcntrUSTV.Size = New System.Drawing.Size(1630, 1067) Me.tbcntrUSTV.TabIndex = 1 ' 'tbUSTVDokumente @@ -1988,7 +1947,7 @@ Partial Class frmKundenblatt Me.tbUSTVDokumente.Controls.Add(Me.scanUSTVVollmachten) Me.tbUSTVDokumente.Location = New System.Drawing.Point(4, 22) Me.tbUSTVDokumente.Name = "tbUSTVDokumente" - Me.tbUSTVDokumente.Size = New System.Drawing.Size(1622, 1007) + Me.tbUSTVDokumente.Size = New System.Drawing.Size(1622, 1041) Me.tbUSTVDokumente.TabIndex = 8 Me.tbUSTVDokumente.Text = "Dokumente" Me.tbUSTVDokumente.UseVisualStyleBackColor = True @@ -2086,19 +2045,11 @@ Partial Class frmKundenblatt Me.tbUSTVAntrage.Location = New System.Drawing.Point(4, 22) Me.tbUSTVAntrage.Name = "tbUSTVAntrage" Me.tbUSTVAntrage.Padding = New System.Windows.Forms.Padding(3) - Me.tbUSTVAntrage.Size = New System.Drawing.Size(184, 45) + Me.tbUSTVAntrage.Size = New System.Drawing.Size(1622, 1041) Me.tbUSTVAntrage.TabIndex = 9 Me.tbUSTVAntrage.Text = "USTV-Anträge" Me.tbUSTVAntrage.UseVisualStyleBackColor = True ' - 'UsrCntlUSTV - ' - Me.UsrCntlUSTV.Dock = System.Windows.Forms.DockStyle.Fill - Me.UsrCntlUSTV.Location = New System.Drawing.Point(3, 3) - Me.UsrCntlUSTV.Name = "UsrCntlUSTV" - Me.UsrCntlUSTV.Size = New System.Drawing.Size(178, 39) - Me.UsrCntlUSTV.TabIndex = 0 - ' 'cntxtExcel ' Me.cntxtExcel.ImageScalingSize = New System.Drawing.Size(24, 24) @@ -2124,7 +2075,7 @@ Partial Class frmKundenblatt Me.btnAbfVerb.BackColor = System.Drawing.Color.White Me.btnAbfVerb.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.btnAbfVerb.ForeColor = System.Drawing.Color.Black - Me.btnAbfVerb.Location = New System.Drawing.Point(1010, 43) + Me.btnAbfVerb.Location = New System.Drawing.Point(1024, 43) Me.btnAbfVerb.Name = "btnAbfVerb" Me.btnAbfVerb.Size = New System.Drawing.Size(165, 25) Me.btnAbfVerb.TabIndex = 1 @@ -2138,7 +2089,7 @@ Partial Class frmKundenblatt Me.lblAbfVerb.BackColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) Me.lblAbfVerb.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) Me.lblAbfVerb.ForeColor = System.Drawing.Color.White - Me.lblAbfVerb.Location = New System.Drawing.Point(1396, 117) + Me.lblAbfVerb.Location = New System.Drawing.Point(1410, 117) Me.lblAbfVerb.Name = "lblAbfVerb" Me.lblAbfVerb.Size = New System.Drawing.Size(242, 20) Me.lblAbfVerb.TabIndex = 2 @@ -2188,7 +2139,7 @@ Partial Class frmKundenblatt Me.mne.Location = New System.Drawing.Point(0, 31) Me.mne.Name = "mne" Me.mne.Padding = New System.Windows.Forms.Padding(5, 0, 0, 0) - Me.mne.Size = New System.Drawing.Size(1638, 81) + Me.mne.Size = New System.Drawing.Size(1652, 81) Me.mne.TabIndex = 3 Me.mne.Text = "mnue" ' @@ -2241,7 +2192,6 @@ Partial Class frmKundenblatt ' Me.cntxtCntxtMDM.ImageScalingSize = New System.Drawing.Size(24, 24) Me.cntxtCntxtMDM.Name = "cntxtCntxtMDM" - Me.cntxtCntxtMDM.OwnerItem = Me.ToolStripMenuItem8 Me.cntxtCntxtMDM.Size = New System.Drawing.Size(61, 4) Me.cntxtCntxtMDM.Text = "cntxtMDM" ' @@ -2301,7 +2251,7 @@ Partial Class frmKundenblatt Me.pnl.Dock = System.Windows.Forms.DockStyle.Top Me.pnl.Location = New System.Drawing.Point(0, 0) Me.pnl.Name = "pnl" - Me.pnl.Size = New System.Drawing.Size(1638, 112) + Me.pnl.Size = New System.Drawing.Size(1652, 112) Me.pnl.TabIndex = 0 ' 'lblINAKTIV @@ -2346,7 +2296,7 @@ Partial Class frmKundenblatt Me.KdSearchBox1.Name = "KdSearchBox1" Me.KdSearchBox1.nurAktive = False Me.KdSearchBox1.searchActive = True - Me.KdSearchBox1.Size = New System.Drawing.Size(1638, 34) + Me.KdSearchBox1.Size = New System.Drawing.Size(1652, 34) Me.KdSearchBox1.TabIndex = 0 Me.KdSearchBox1.TIMER_SEARCH = True Me.KdSearchBox1.usrcntl = Nothing @@ -2375,13 +2325,73 @@ Partial Class frmKundenblatt Me.tbiVERAGCard.Size = New System.Drawing.Size(186, 22) Me.tbiVERAGCard.Text = "VERAG Card" ' + 'tbFremdrechnungen + ' + Me.tbFremdrechnungen.Location = New System.Drawing.Point(4, 22) + Me.tbFremdrechnungen.Name = "tbFremdrechnungen" + Me.tbFremdrechnungen.Size = New System.Drawing.Size(1630, 1035) + Me.tbFremdrechnungen.TabIndex = 10 + Me.tbFremdrechnungen.Text = "Fremdrechnungen" + Me.tbFremdrechnungen.UseVisualStyleBackColor = True + ' + 'UsrcntlKundeBearbeitenFull1 + ' + Me.UsrcntlKundeBearbeitenFull1.BackColor = System.Drawing.Color.White + Me.UsrcntlKundeBearbeitenFull1.Dock = System.Windows.Forms.DockStyle.Fill + Me.UsrcntlKundeBearbeitenFull1.Location = New System.Drawing.Point(0, 0) + Me.UsrcntlKundeBearbeitenFull1.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5) + Me.UsrcntlKundeBearbeitenFull1.Name = "UsrcntlKundeBearbeitenFull1" + Me.UsrcntlKundeBearbeitenFull1.Size = New System.Drawing.Size(1624, 1061) + Me.UsrcntlKundeBearbeitenFull1.TabIndex = 0 + ' + 'usrcntlKarten + ' + Me.usrcntlKarten.Cursor = System.Windows.Forms.Cursors.Default + Me.usrcntlKarten.Dock = System.Windows.Forms.DockStyle.Fill + Me.usrcntlKarten.Location = New System.Drawing.Point(3, 3) + Me.usrcntlKarten.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5) + Me.usrcntlKarten.Name = "usrcntlKarten" + Me.usrcntlKarten.Size = New System.Drawing.Size(1624, 1046) + Me.usrcntlKarten.TabIndex = 0 + ' + 'UsrCntlLKW1 + ' + Me.UsrCntlLKW1.BackColor = System.Drawing.Color.White + Me.UsrCntlLKW1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.UsrCntlLKW1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + Me.UsrCntlLKW1.Dock = System.Windows.Forms.DockStyle.Fill + Me.UsrCntlLKW1.Location = New System.Drawing.Point(10, 0) + Me.UsrCntlLKW1.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5) + Me.UsrCntlLKW1.MaximumSize = New System.Drawing.Size(1200, 1000) + Me.UsrCntlLKW1.Name = "UsrCntlLKW1" + Me.UsrCntlLKW1.Size = New System.Drawing.Size(1200, 1000) + Me.UsrCntlLKW1.TabIndex = 0 + ' + 'UsrCntlOfferte1 + ' + Me.UsrCntlOfferte1.BackColor = System.Drawing.Color.White + Me.UsrCntlOfferte1.Dock = System.Windows.Forms.DockStyle.Fill + Me.UsrCntlOfferte1.Location = New System.Drawing.Point(0, 0) + Me.UsrCntlOfferte1.Margin = New System.Windows.Forms.Padding(1) + Me.UsrCntlOfferte1.Name = "UsrCntlOfferte1" + Me.UsrCntlOfferte1.Size = New System.Drawing.Size(1630, 1067) + Me.UsrCntlOfferte1.TabIndex = 0 + ' + 'UsrCntlUSTV + ' + Me.UsrCntlUSTV.Dock = System.Windows.Forms.DockStyle.Fill + Me.UsrCntlUSTV.Location = New System.Drawing.Point(3, 3) + Me.UsrCntlUSTV.Name = "UsrCntlUSTV" + Me.UsrCntlUSTV.Size = New System.Drawing.Size(1616, 1035) + Me.UsrCntlUSTV.TabIndex = 0 + ' 'frmKundenblatt ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.AutoScroll = True Me.BackColor = System.Drawing.Color.White - Me.ClientSize = New System.Drawing.Size(1595, 1191) + Me.ClientSize = New System.Drawing.Size(1595, 1225) Me.Controls.Add(Me.lblAbfVerb) Me.Controls.Add(Me.btnAbfVerb) Me.Controls.Add(Me.tbcntrMain) @@ -2617,4 +2627,5 @@ Partial Class frmKundenblatt Friend WithEvents cboFirmaFMZOLL As VERAG_PROG_ALLGEMEIN.MyComboBox Friend WithEvents lblAdressenzusatz As TextBox Friend WithEvents Button7 As Button + Friend WithEvents tbFremdrechnungen As TabPage End Class diff --git a/SDL/kunden/frmKundenblatt.vb b/SDL/kunden/frmKundenblatt.vb index 3632b69a..b1cad625 100644 --- a/SDL/kunden/frmKundenblatt.vb +++ b/SDL/kunden/frmKundenblatt.vb @@ -273,6 +273,8 @@ Public Class frmKundenblatt scanSonstiges.INIT(kdNr, "KUNDENDATEN") scanUebernahmebestätigungen.INIT(kdNr, "KUNDENDATEN", "Übernahmebestätigungen") Case "tbBesuchsberichte" : initTABBesuchsberichte() + Case "tbFremdrechnungen" : initTABFremdrechnungen() + End Select Case "tbUSTV" Select Case tbcntrUSTV.SelectedTab.Name @@ -353,6 +355,17 @@ Public Class frmKundenblatt tbBesuchsberichte.Controls.Add(usrcntlTMP) End If End Sub + + Sub initTABFremdrechnungen() + If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG("MDM_Fakturierung", Me) = 0 Then + + Dim usrcntlTMP As New usrcntlFremdrechnungen + usrcntlTMP.Dock = DockStyle.Fill + usrcntlTMP.kdNr = kdNr + tbFremdrechnungen.Controls.Clear() + tbFremdrechnungen.Controls.Add(usrcntlTMP) + End If + End Sub Sub initTABSDLDATEN() If False Then @@ -960,6 +973,8 @@ Public Class frmKundenblatt End With End Sub + + 'initialisieren der Offerte-CBO ' Private Sub initOfferte(sender As Object, e As EventArgs) 'Dim offerte As List(Of cOffert) = kundenSQL.getOfferte() diff --git a/SDL/mdm/usrcntlFremdrechnungen.Designer.vb b/SDL/mdm/usrcntlFremdrechnungen.Designer.vb new file mode 100644 index 00000000..71a6888a --- /dev/null +++ b/SDL/mdm/usrcntlFremdrechnungen.Designer.vb @@ -0,0 +1,553 @@ + +Partial Class usrcntlFremdrechnungen + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim DataGridViewCellStyle1 As System.Windows.Forms.DataGridViewCellStyle = New System.Windows.Forms.DataGridViewCellStyle() + Me.DetailsAnzeigenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.FlowLayoutPanel = New System.Windows.Forms.FlowLayoutPanel() + Me.btnSDL_Alle = New System.Windows.Forms.Button() + Me.btnSDL_FREJUS = New System.Windows.Forms.Button() + Me.btnSDL_Hugo = New System.Windows.Forms.Button() + Me.btnSDL_IDS = New System.Windows.Forms.Button() + Me.btnSDL_MautMSE = New System.Windows.Forms.Button() + Me.btnSDL_UTA = New System.Windows.Forms.Button() + Me.btnVERAGCardNew = New System.Windows.Forms.Button() + Me.btnSDL_PLOSE = New System.Windows.Forms.Button() + Me.btnFilter = New System.Windows.Forms.Button() + Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.KundenblattAnzeigenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.Panel1 = New System.Windows.Forms.Panel() + Me.Button1 = New System.Windows.Forms.Button() + Me.cbxMax200Eintrage = New System.Windows.Forms.CheckBox() + Me.lblEinträge = New System.Windows.Forms.Label() + Me.Button4 = New System.Windows.Forms.Button() + Me.Button5 = New System.Windows.Forms.Button() + Me.Label3 = New System.Windows.Forms.Label() + Me.Button8 = New System.Windows.Forms.Button() + Me.Panel3 = New System.Windows.Forms.Panel() + Me.SplitContainer1 = New System.Windows.Forms.SplitContainer() + Me.dgvSDL = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) + Me.UsrCntlDatenDetails1 = New SDL.usrCntlDatenDetails() + Me.Panel4 = New System.Windows.Forms.Panel() + Me.pnlTest = New System.Windows.Forms.Panel() + Me.dgvFILTER = New VERAG_PROG_ALLGEMEIN.MyDatagridview(Me.components) + Me.cntxtExcel = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.ToolStripMenuItem3 = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStripMenuItem6 = New System.Windows.Forms.ToolStripMenuItem() + Me.btnSDL_RMC = New System.Windows.Forms.Button() + Me.FlowLayoutPanel.SuspendLayout() + Me.ContextMenuStrip1.SuspendLayout() + Me.Panel1.SuspendLayout() + Me.Panel3.SuspendLayout() + CType(Me.SplitContainer1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SplitContainer1.Panel1.SuspendLayout() + Me.SplitContainer1.Panel2.SuspendLayout() + Me.SplitContainer1.SuspendLayout() + CType(Me.dgvSDL, System.ComponentModel.ISupportInitialize).BeginInit() + Me.Panel4.SuspendLayout() + Me.pnlTest.SuspendLayout() + CType(Me.dgvFILTER, System.ComponentModel.ISupportInitialize).BeginInit() + Me.cntxtExcel.SuspendLayout() + Me.SuspendLayout() + ' + 'DetailsAnzeigenToolStripMenuItem + ' + Me.DetailsAnzeigenToolStripMenuItem.Name = "DetailsAnzeigenToolStripMenuItem" + Me.DetailsAnzeigenToolStripMenuItem.Size = New System.Drawing.Size(189, 22) + Me.DetailsAnzeigenToolStripMenuItem.Text = "Details anzeigen" + ' + 'FlowLayoutPanel + ' + Me.FlowLayoutPanel.AutoScroll = True + Me.FlowLayoutPanel.BackColor = System.Drawing.Color.White + Me.FlowLayoutPanel.Controls.Add(Me.btnSDL_Alle) + Me.FlowLayoutPanel.Controls.Add(Me.btnSDL_FREJUS) + Me.FlowLayoutPanel.Controls.Add(Me.btnSDL_Hugo) + Me.FlowLayoutPanel.Controls.Add(Me.btnSDL_IDS) + Me.FlowLayoutPanel.Controls.Add(Me.btnSDL_MautMSE) + Me.FlowLayoutPanel.Controls.Add(Me.btnSDL_UTA) + Me.FlowLayoutPanel.Controls.Add(Me.btnVERAGCardNew) + Me.FlowLayoutPanel.Controls.Add(Me.btnSDL_PLOSE) + Me.FlowLayoutPanel.Controls.Add(Me.btnSDL_RMC) + Me.FlowLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill + Me.FlowLayoutPanel.Location = New System.Drawing.Point(0, 0) + Me.FlowLayoutPanel.Margin = New System.Windows.Forms.Padding(0) + Me.FlowLayoutPanel.Name = "FlowLayoutPanel" + Me.FlowLayoutPanel.Size = New System.Drawing.Size(1356, 78) + Me.FlowLayoutPanel.TabIndex = 11 + ' + 'btnSDL_Alle + ' + Me.btnSDL_Alle.Cursor = System.Windows.Forms.Cursors.Default + Me.btnSDL_Alle.FlatAppearance.BorderSize = 0 + Me.btnSDL_Alle.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnSDL_Alle.ForeColor = System.Drawing.Color.Black + Me.btnSDL_Alle.Image = Global.SDL.My.Resources.Resources.rechnung1 + Me.btnSDL_Alle.ImageAlign = System.Drawing.ContentAlignment.TopCenter + Me.btnSDL_Alle.Location = New System.Drawing.Point(0, 0) + Me.btnSDL_Alle.Margin = New System.Windows.Forms.Padding(0) + Me.btnSDL_Alle.Name = "btnSDL_Alle" + Me.btnSDL_Alle.Size = New System.Drawing.Size(78, 64) + Me.btnSDL_Alle.TabIndex = 30 + Me.btnSDL_Alle.Text = "ALLE" + Me.btnSDL_Alle.TextAlign = System.Drawing.ContentAlignment.BottomCenter + Me.btnSDL_Alle.UseVisualStyleBackColor = True + ' + 'btnSDL_FREJUS + ' + Me.btnSDL_FREJUS.Cursor = System.Windows.Forms.Cursors.Default + Me.btnSDL_FREJUS.FlatAppearance.BorderSize = 0 + Me.btnSDL_FREJUS.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnSDL_FREJUS.ForeColor = System.Drawing.Color.Black + Me.btnSDL_FREJUS.Image = Global.SDL.My.Resources.Resources.frejus + Me.btnSDL_FREJUS.ImageAlign = System.Drawing.ContentAlignment.TopCenter + Me.btnSDL_FREJUS.Location = New System.Drawing.Point(78, 0) + Me.btnSDL_FREJUS.Margin = New System.Windows.Forms.Padding(0) + Me.btnSDL_FREJUS.Name = "btnSDL_FREJUS" + Me.btnSDL_FREJUS.Size = New System.Drawing.Size(78, 64) + Me.btnSDL_FREJUS.TabIndex = 35 + Me.btnSDL_FREJUS.Text = "FREJUS" + Me.btnSDL_FREJUS.TextAlign = System.Drawing.ContentAlignment.BottomCenter + Me.btnSDL_FREJUS.UseVisualStyleBackColor = True + ' + 'btnSDL_Hugo + ' + Me.btnSDL_Hugo.Cursor = System.Windows.Forms.Cursors.Default + Me.btnSDL_Hugo.FlatAppearance.BorderSize = 0 + Me.btnSDL_Hugo.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnSDL_Hugo.ForeColor = System.Drawing.Color.Black + Me.btnSDL_Hugo.Image = Global.SDL.My.Resources.Resources.hugo + Me.btnSDL_Hugo.ImageAlign = System.Drawing.ContentAlignment.TopCenter + Me.btnSDL_Hugo.Location = New System.Drawing.Point(156, 0) + Me.btnSDL_Hugo.Margin = New System.Windows.Forms.Padding(0) + Me.btnSDL_Hugo.Name = "btnSDL_Hugo" + Me.btnSDL_Hugo.Size = New System.Drawing.Size(78, 64) + Me.btnSDL_Hugo.TabIndex = 38 + Me.btnSDL_Hugo.Text = "HU-GO" + Me.btnSDL_Hugo.TextAlign = System.Drawing.ContentAlignment.BottomCenter + Me.btnSDL_Hugo.UseVisualStyleBackColor = True + ' + 'btnSDL_IDS + ' + Me.btnSDL_IDS.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.btnSDL_IDS.Cursor = System.Windows.Forms.Cursors.Arrow + Me.btnSDL_IDS.FlatAppearance.BorderSize = 0 + Me.btnSDL_IDS.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnSDL_IDS.ForeColor = System.Drawing.Color.Black + Me.btnSDL_IDS.Image = Global.SDL.My.Resources.Resources.ids + Me.btnSDL_IDS.ImageAlign = System.Drawing.ContentAlignment.TopCenter + Me.btnSDL_IDS.Location = New System.Drawing.Point(234, 0) + Me.btnSDL_IDS.Margin = New System.Windows.Forms.Padding(0) + Me.btnSDL_IDS.Name = "btnSDL_IDS" + Me.btnSDL_IDS.Size = New System.Drawing.Size(78, 64) + Me.btnSDL_IDS.TabIndex = 23 + Me.btnSDL_IDS.Text = "IDS" + Me.btnSDL_IDS.TextAlign = System.Drawing.ContentAlignment.BottomCenter + Me.btnSDL_IDS.UseVisualStyleBackColor = True + ' + 'btnSDL_MautMSE + ' + Me.btnSDL_MautMSE.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.btnSDL_MautMSE.Cursor = System.Windows.Forms.Cursors.Default + Me.btnSDL_MautMSE.FlatAppearance.BorderSize = 0 + Me.btnSDL_MautMSE.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnSDL_MautMSE.ForeColor = System.Drawing.Color.Black + Me.btnSDL_MautMSE.Image = Global.SDL.My.Resources.Resources.mse + Me.btnSDL_MautMSE.ImageAlign = System.Drawing.ContentAlignment.TopCenter + Me.btnSDL_MautMSE.Location = New System.Drawing.Point(312, 0) + Me.btnSDL_MautMSE.Margin = New System.Windows.Forms.Padding(0) + Me.btnSDL_MautMSE.Name = "btnSDL_MautMSE" + Me.btnSDL_MautMSE.Size = New System.Drawing.Size(78, 64) + Me.btnSDL_MautMSE.TabIndex = 27 + Me.btnSDL_MautMSE.Text = "MSE" + Me.btnSDL_MautMSE.TextAlign = System.Drawing.ContentAlignment.BottomCenter + Me.btnSDL_MautMSE.UseVisualStyleBackColor = True + Me.btnSDL_MautMSE.Visible = False + ' + 'btnSDL_UTA + ' + Me.btnSDL_UTA.Cursor = System.Windows.Forms.Cursors.Default + Me.btnSDL_UTA.FlatAppearance.BorderSize = 0 + Me.btnSDL_UTA.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnSDL_UTA.ForeColor = System.Drawing.Color.Black + Me.btnSDL_UTA.Image = Global.SDL.My.Resources.Resources.uta + Me.btnSDL_UTA.ImageAlign = System.Drawing.ContentAlignment.TopCenter + Me.btnSDL_UTA.Location = New System.Drawing.Point(390, 0) + Me.btnSDL_UTA.Margin = New System.Windows.Forms.Padding(0) + Me.btnSDL_UTA.Name = "btnSDL_UTA" + Me.btnSDL_UTA.Size = New System.Drawing.Size(78, 64) + Me.btnSDL_UTA.TabIndex = 28 + Me.btnSDL_UTA.Text = "UTA" + Me.btnSDL_UTA.TextAlign = System.Drawing.ContentAlignment.BottomCenter + Me.btnSDL_UTA.UseVisualStyleBackColor = True + ' + 'btnVERAGCardNew + ' + Me.btnVERAGCardNew.Cursor = System.Windows.Forms.Cursors.Default + Me.btnVERAGCardNew.FlatAppearance.BorderSize = 0 + Me.btnVERAGCardNew.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnVERAGCardNew.ForeColor = System.Drawing.Color.Black + Me.btnVERAGCardNew.Image = Global.SDL.My.Resources.Resources.verag_Card1 + Me.btnVERAGCardNew.ImageAlign = System.Drawing.ContentAlignment.TopCenter + Me.btnVERAGCardNew.Location = New System.Drawing.Point(468, 0) + Me.btnVERAGCardNew.Margin = New System.Windows.Forms.Padding(0) + Me.btnVERAGCardNew.Name = "btnVERAGCardNew" + Me.btnVERAGCardNew.Size = New System.Drawing.Size(78, 64) + Me.btnVERAGCardNew.TabIndex = 45 + Me.btnVERAGCardNew.Text = "VERAG" + Me.btnVERAGCardNew.TextAlign = System.Drawing.ContentAlignment.BottomCenter + Me.btnVERAGCardNew.UseVisualStyleBackColor = True + ' + 'btnSDL_PLOSE + ' + Me.btnSDL_PLOSE.Cursor = System.Windows.Forms.Cursors.Default + Me.btnSDL_PLOSE.FlatAppearance.BorderSize = 0 + Me.btnSDL_PLOSE.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnSDL_PLOSE.ForeColor = System.Drawing.Color.Black + Me.btnSDL_PLOSE.Image = Global.SDL.My.Resources.Resources.plose_1 + Me.btnSDL_PLOSE.ImageAlign = System.Drawing.ContentAlignment.TopCenter + Me.btnSDL_PLOSE.Location = New System.Drawing.Point(546, 0) + Me.btnSDL_PLOSE.Margin = New System.Windows.Forms.Padding(0) + Me.btnSDL_PLOSE.Name = "btnSDL_PLOSE" + Me.btnSDL_PLOSE.Size = New System.Drawing.Size(92, 64) + Me.btnSDL_PLOSE.TabIndex = 41 + Me.btnSDL_PLOSE.Text = "RoadMaster" & Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10) & "PLOSE" + Me.btnSDL_PLOSE.TextAlign = System.Drawing.ContentAlignment.BottomCenter + Me.btnSDL_PLOSE.UseVisualStyleBackColor = True + ' + 'btnFilter + ' + Me.btnFilter.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnFilter.Location = New System.Drawing.Point(7, 19) + Me.btnFilter.Name = "btnFilter" + Me.btnFilter.Size = New System.Drawing.Size(98, 23) + Me.btnFilter.TabIndex = 39 + Me.btnFilter.Text = "Filter einblenden" + Me.btnFilter.UseVisualStyleBackColor = True + Me.btnFilter.Visible = False + ' + 'ContextMenuStrip1 + ' + Me.ContextMenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DetailsAnzeigenToolStripMenuItem, Me.KundenblattAnzeigenToolStripMenuItem}) + Me.ContextMenuStrip1.Name = "ContextMenuStrip1" + Me.ContextMenuStrip1.Size = New System.Drawing.Size(190, 48) + ' + 'KundenblattAnzeigenToolStripMenuItem + ' + Me.KundenblattAnzeigenToolStripMenuItem.Name = "KundenblattAnzeigenToolStripMenuItem" + Me.KundenblattAnzeigenToolStripMenuItem.Size = New System.Drawing.Size(189, 22) + Me.KundenblattAnzeigenToolStripMenuItem.Text = "Kundenblatt anzeigen" + ' + 'Panel1 + ' + 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.Button1) + Me.Panel1.Controls.Add(Me.cbxMax200Eintrage) + Me.Panel1.Controls.Add(Me.lblEinträge) + Me.Panel1.Controls.Add(Me.btnFilter) + Me.Panel1.Controls.Add(Me.Button4) + Me.Panel1.Controls.Add(Me.Button5) + Me.Panel1.Controls.Add(Me.Label3) + Me.Panel1.Controls.Add(Me.Button8) + Me.Panel1.Dock = System.Windows.Forms.DockStyle.Right + Me.Panel1.Location = New System.Drawing.Point(1356, 0) + Me.Panel1.Name = "Panel1" + Me.Panel1.Size = New System.Drawing.Size(260, 907) + Me.Panel1.TabIndex = 23 + ' + 'Button1 + ' + Me.Button1.BackgroundImage = Global.SDL.My.Resources.Resources.refresh + 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(199, 118) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(50, 44) + Me.Button1.TabIndex = 45 + Me.Button1.TextAlign = System.Drawing.ContentAlignment.MiddleRight + Me.Button1.UseVisualStyleBackColor = True + ' + 'cbxMax200Eintrage + ' + Me.cbxMax200Eintrage.AutoSize = True + Me.cbxMax200Eintrage.Checked = True + Me.cbxMax200Eintrage.CheckState = System.Windows.Forms.CheckState.Checked + Me.cbxMax200Eintrage.Location = New System.Drawing.Point(7, 45) + Me.cbxMax200Eintrage.Name = "cbxMax200Eintrage" + Me.cbxMax200Eintrage.Size = New System.Drawing.Size(111, 17) + Me.cbxMax200Eintrage.TabIndex = 41 + Me.cbxMax200Eintrage.Text = "max. 200 Einträge" + Me.cbxMax200Eintrage.UseVisualStyleBackColor = True + ' + 'lblEinträge + ' + Me.lblEinträge.AutoSize = True + Me.lblEinträge.BackColor = System.Drawing.Color.White + Me.lblEinträge.Location = New System.Drawing.Point(191, 19) + Me.lblEinträge.Name = "lblEinträge" + Me.lblEinträge.Size = New System.Drawing.Size(58, 13) + Me.lblEinträge.TabIndex = 40 + Me.lblEinträge.Text = "0 Einträge " + ' + 'Button4 + ' + Me.Button4.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.Button4.Image = Global.SDL.My.Resources.Resources.checklist + Me.Button4.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.Button4.Location = New System.Drawing.Point(7, 118) + Me.Button4.Name = "Button4" + Me.Button4.Size = New System.Drawing.Size(118, 44) + Me.Button4.TabIndex = 21 + Me.Button4.Text = "Details" & Global.Microsoft.VisualBasic.ChrW(10) & "anzeigen" + Me.Button4.TextAlign = System.Drawing.ContentAlignment.MiddleRight + Me.Button4.UseVisualStyleBackColor = True + ' + 'Button5 + ' + Me.Button5.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.Button5.Image = Global.SDL.My.Resources.Resources.kunden + Me.Button5.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.Button5.Location = New System.Drawing.Point(7, 68) + Me.Button5.Name = "Button5" + Me.Button5.Size = New System.Drawing.Size(118, 44) + Me.Button5.TabIndex = 22 + Me.Button5.Text = "Gehe zum" & Global.Microsoft.VisualBasic.ChrW(10) & "Kundenblatt" + Me.Button5.TextAlign = System.Drawing.ContentAlignment.MiddleRight + Me.Button5.UseVisualStyleBackColor = True + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Location = New System.Drawing.Point(3, 3) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(53, 13) + Me.Label3.TabIndex = 25 + Me.Label3.Text = "Optionen:" + ' + 'Button8 + ' + 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(131, 68) + Me.Button8.Name = "Button8" + Me.Button8.Size = New System.Drawing.Size(118, 44) + Me.Button8.TabIndex = 31 + Me.Button8.Text = "In Excel " & Global.Microsoft.VisualBasic.ChrW(10) & "konvertieren" + Me.Button8.TextAlign = System.Drawing.ContentAlignment.MiddleRight + Me.Button8.UseVisualStyleBackColor = True + ' + 'Panel3 + ' + Me.Panel3.AutoScroll = True + Me.Panel3.Controls.Add(Me.SplitContainer1) + Me.Panel3.Controls.Add(Me.Panel4) + Me.Panel3.Dock = System.Windows.Forms.DockStyle.Fill + Me.Panel3.Location = New System.Drawing.Point(0, 0) + Me.Panel3.Name = "Panel3" + Me.Panel3.Size = New System.Drawing.Size(1356, 907) + Me.Panel3.TabIndex = 29 + ' + 'SplitContainer1 + ' + Me.SplitContainer1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + Me.SplitContainer1.Dock = System.Windows.Forms.DockStyle.Fill + Me.SplitContainer1.IsSplitterFixed = True + Me.SplitContainer1.Location = New System.Drawing.Point(0, 108) + Me.SplitContainer1.Name = "SplitContainer1" + Me.SplitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal + ' + 'SplitContainer1.Panel1 + ' + Me.SplitContainer1.Panel1.AutoScroll = True + Me.SplitContainer1.Panel1.Controls.Add(Me.dgvSDL) + ' + 'SplitContainer1.Panel2 + ' + Me.SplitContainer1.Panel2.Controls.Add(Me.UsrCntlDatenDetails1) + Me.SplitContainer1.Panel2MinSize = 234 + Me.SplitContainer1.Size = New System.Drawing.Size(1356, 799) + Me.SplitContainer1.SplitterDistance = 559 + Me.SplitContainer1.TabIndex = 13 + ' + 'dgvSDL + ' + Me.dgvSDL.AKTUALISIERUNGS_INTERVALL = 1000 + Me.dgvSDL.AllowUserToAddRows = False + Me.dgvSDL.AllowUserToDeleteRows = False + Me.dgvSDL.AllowUserToResizeColumns = False + DataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(CType(CType(240, Byte), Integer), CType(CType(245, Byte), Integer), CType(CType(255, Byte), Integer)) + Me.dgvSDL.AlternatingRowsDefaultCellStyle = DataGridViewCellStyle1 + Me.dgvSDL.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize + Me.dgvSDL.Location = New System.Drawing.Point(0, -1) + Me.dgvSDL.Name = "dgvSDL" + Me.dgvSDL.Size = New System.Drawing.Size(1354, 599) + Me.dgvSDL.TabIndex = 29 + ' + 'UsrCntlDatenDetails1 + ' + Me.UsrCntlDatenDetails1.Dock = System.Windows.Forms.DockStyle.Fill + Me.UsrCntlDatenDetails1.Location = New System.Drawing.Point(0, 0) + Me.UsrCntlDatenDetails1.Name = "UsrCntlDatenDetails1" + Me.UsrCntlDatenDetails1.Size = New System.Drawing.Size(1354, 234) + Me.UsrCntlDatenDetails1.TabIndex = 0 + Me.UsrCntlDatenDetails1.Visible = False + ' + 'Panel4 + ' + Me.Panel4.BackColor = System.Drawing.Color.White + Me.Panel4.Controls.Add(Me.FlowLayoutPanel) + Me.Panel4.Controls.Add(Me.pnlTest) + Me.Panel4.Dock = System.Windows.Forms.DockStyle.Top + Me.Panel4.Location = New System.Drawing.Point(0, 0) + Me.Panel4.Name = "Panel4" + Me.Panel4.Size = New System.Drawing.Size(1356, 108) + Me.Panel4.TabIndex = 11 + ' + 'pnlTest + ' + Me.pnlTest.BackColor = System.Drawing.Color.White + Me.pnlTest.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + Me.pnlTest.Controls.Add(Me.dgvFILTER) + Me.pnlTest.Dock = System.Windows.Forms.DockStyle.Bottom + Me.pnlTest.Location = New System.Drawing.Point(0, 78) + Me.pnlTest.Name = "pnlTest" + Me.pnlTest.Size = New System.Drawing.Size(1356, 30) + Me.pnlTest.TabIndex = 33 + ' + 'dgvFILTER + ' + Me.dgvFILTER.AKTUALISIERUNGS_INTERVALL = -1 + Me.dgvFILTER.AllowUserToAddRows = False + Me.dgvFILTER.AllowUserToDeleteRows = False + Me.dgvFILTER.AllowUserToResizeColumns = False + Me.dgvFILTER.AllowUserToResizeRows = False + Me.dgvFILTER.BackgroundColor = System.Drawing.Color.White + Me.dgvFILTER.BorderStyle = System.Windows.Forms.BorderStyle.None + Me.dgvFILTER.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize + Me.dgvFILTER.ColumnHeadersVisible = False + Me.dgvFILTER.Location = New System.Drawing.Point(0, 0) + Me.dgvFILTER.Name = "dgvFILTER" + Me.dgvFILTER.ScrollBars = System.Windows.Forms.ScrollBars.None + Me.dgvFILTER.Size = New System.Drawing.Size(1286, 28) + Me.dgvFILTER.TabIndex = 0 + ' + 'cntxtExcel + ' + Me.cntxtExcel.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripMenuItem3, Me.ToolStripMenuItem6}) + Me.cntxtExcel.Name = "cntxtExcel" + Me.cntxtExcel.Size = New System.Drawing.Size(211, 48) + Me.cntxtExcel.Text = "Excel" + ' + 'ToolStripMenuItem3 + ' + Me.ToolStripMenuItem3.Name = "ToolStripMenuItem3" + Me.ToolStripMenuItem3.Size = New System.Drawing.Size(210, 22) + Me.ToolStripMenuItem3.Text = "Einfach" + ' + 'ToolStripMenuItem6 + ' + Me.ToolStripMenuItem6.Name = "ToolStripMenuItem6" + Me.ToolStripMenuItem6.Size = New System.Drawing.Size(210, 22) + Me.ToolStripMenuItem6.Text = "Formatiert (dauert länger)" + ' + 'btnSDL_RMC + ' + Me.btnSDL_RMC.Cursor = System.Windows.Forms.Cursors.Default + Me.btnSDL_RMC.FlatAppearance.BorderSize = 0 + Me.btnSDL_RMC.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.btnSDL_RMC.ForeColor = System.Drawing.Color.Black + Me.btnSDL_RMC.Image = Global.SDL.My.Resources.Resources.rechnung1 + Me.btnSDL_RMC.ImageAlign = System.Drawing.ContentAlignment.TopCenter + Me.btnSDL_RMC.Location = New System.Drawing.Point(638, 0) + Me.btnSDL_RMC.Margin = New System.Windows.Forms.Padding(0) + Me.btnSDL_RMC.Name = "btnSDL_RMC" + Me.btnSDL_RMC.Size = New System.Drawing.Size(92, 64) + Me.btnSDL_RMC.TabIndex = 46 + Me.btnSDL_RMC.Text = "RMC" + Me.btnSDL_RMC.TextAlign = System.Drawing.ContentAlignment.BottomCenter + Me.btnSDL_RMC.UseVisualStyleBackColor = True + ' + 'usrcntlFremdrechnungen + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.Panel3) + Me.Controls.Add(Me.Panel1) + Me.DoubleBuffered = True + Me.Name = "usrcntlFremdrechnungen" + Me.Size = New System.Drawing.Size(1616, 907) + Me.FlowLayoutPanel.ResumeLayout(False) + Me.ContextMenuStrip1.ResumeLayout(False) + Me.Panel1.ResumeLayout(False) + Me.Panel1.PerformLayout() + Me.Panel3.ResumeLayout(False) + Me.SplitContainer1.Panel1.ResumeLayout(False) + Me.SplitContainer1.Panel2.ResumeLayout(False) + CType(Me.SplitContainer1, System.ComponentModel.ISupportInitialize).EndInit() + Me.SplitContainer1.ResumeLayout(False) + CType(Me.dgvSDL, System.ComponentModel.ISupportInitialize).EndInit() + Me.Panel4.ResumeLayout(False) + Me.pnlTest.ResumeLayout(False) + CType(Me.dgvFILTER, System.ComponentModel.ISupportInitialize).EndInit() + Me.cntxtExcel.ResumeLayout(False) + Me.ResumeLayout(False) + + End Sub + Friend WithEvents DetailsAnzeigenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents FlowLayoutPanel As System.Windows.Forms.FlowLayoutPanel + Friend WithEvents btnSDL_Alle As System.Windows.Forms.Button + Friend WithEvents btnSDL_IDS As System.Windows.Forms.Button + Friend WithEvents btnSDL_MautMSE As System.Windows.Forms.Button + Friend WithEvents btnSDL_UTA As System.Windows.Forms.Button + Friend WithEvents btnSDL_FREJUS As System.Windows.Forms.Button + Friend WithEvents btnSDL_Hugo As System.Windows.Forms.Button + Friend WithEvents btnFilter As System.Windows.Forms.Button + Friend WithEvents ContextMenuStrip1 As System.Windows.Forms.ContextMenuStrip + Friend WithEvents KundenblattAnzeigenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents Panel1 As System.Windows.Forms.Panel + Friend WithEvents Button8 As System.Windows.Forms.Button + Friend WithEvents Label3 As System.Windows.Forms.Label + Friend WithEvents Button5 As System.Windows.Forms.Button + Friend WithEvents Panel3 As System.Windows.Forms.Panel + Friend WithEvents SplitContainer1 As System.Windows.Forms.SplitContainer + Friend WithEvents Button4 As System.Windows.Forms.Button + Friend WithEvents dgvSDL As VERAG_PROG_ALLGEMEIN.MyDatagridview + Friend WithEvents cntxtExcel As System.Windows.Forms.ContextMenuStrip + Friend WithEvents ToolStripMenuItem3 As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents ToolStripMenuItem6 As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents lblEinträge As System.Windows.Forms.Label + Friend WithEvents cbxMax200Eintrage As System.Windows.Forms.CheckBox + Friend WithEvents UsrCntlDatenDetails1 As SDL.usrCntlDatenDetails + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents Panel4 As System.Windows.Forms.Panel + Friend WithEvents pnlTest As System.Windows.Forms.Panel + Friend WithEvents dgvFILTER As VERAG_PROG_ALLGEMEIN.MyDatagridview + Friend WithEvents btnSDL_PLOSE As Button + Friend WithEvents btnVERAGCardNew As Button + Friend WithEvents btnSDL_RMC As Button +End Class diff --git a/SDL/mdm/usrcntlFremdrechnungen.resx b/SDL/mdm/usrcntlFremdrechnungen.resx new file mode 100644 index 00000000..b5f92d43 --- /dev/null +++ b/SDL/mdm/usrcntlFremdrechnungen.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 807, 17 + + \ No newline at end of file diff --git a/SDL/mdm/usrcntlFremdrechnungen.vb b/SDL/mdm/usrcntlFremdrechnungen.vb new file mode 100644 index 00000000..81e9d33e --- /dev/null +++ b/SDL/mdm/usrcntlFremdrechnungen.vb @@ -0,0 +1,677 @@ +Imports System.Reflection + + +Public Class usrcntlFremdrechnungen + Dim KUNDE As New cKunden + Public kdNr As Integer + Public kdNr_filter As Boolean = True + Dim kundenSQL As New kundenSQL + Dim SQL As New SQL + Dim FUNC As New cProgramFunctions + Dim aktbtn As String = "" + Dim dgvInitWait As Boolean = False + Dim aktSDLNr As Integer = -1 + Dim fullyPainted = False + + + ' Dim show200 = True + Private Sub usrCntlDaten_Load(sender As Object, e As EventArgs) Handles Me.Load + EnableDoubleBuffered(dgvSDL) + + init() + + AddHandler SplitContainer1.Panel1.Scroll, Sub() + initFilterLeft() + End Sub + + AddHandler cbxMax200Eintrage.Click, Sub() + reClick() + End Sub + + + + End Sub + + Public Shared Sub EnableDoubleBuffered(ByRef dgv As DataGridView) + Dim dgvType As Type = dgv.[GetType]() + Dim pi As PropertyInfo = dgvType.GetProperty("DoubleBuffered", BindingFlags.Instance Or BindingFlags.NonPublic) + pi.SetValue(dgv, True, Nothing) + End Sub + + + Sub init() + + dgvInitWait = True + + Dim kdNr_WHERE = "" + If kdNr_filter Then + kdNr_WHERE = "" + End If + If kdNr_filter Then + 'Dim dt As DataTable = SQL.loadDgvBySql("SELECT KundenSDL.SDLNr FROM KundenSDL INNER JOIN [Speditionsdienstleistungen] as S ON s.SDLNr=KundenSDL.sdlnr WHERE s.SDLTypNr IN (1,2) AND KundenSDL.KundenNr = '" & kdNr & "' group by KundenSDL.SDLNr ") + 'If dt Is Nothing Then + ' MsgBox("Es wurden noch keine Leistungen freigeschaltet.") + 'Else + btnSDL_IDS.Visible = True ' dt.Select("SDLNr=100").Count > 0 + btnSDL_UTA.Visible = True 'dt.Select("SDLNr=212").Count > 0 + btnSDL_Hugo.Visible = False ' dt.Select("SDLNr=213").Count > 0 + btnSDL_PLOSE.Visible = True 'dt.Select("SDLNr=214").Count > 0 + btnVERAGCardNew.Visible = True 'dt.Select("SDLNr=502").Count > 0 + btnSDL_MautMSE.Visible = True 'dt.Select("SDLNr=208").Count > 0 + btnSDL_FREJUS.Visible = False ' dt.Select("SDLNr=207").Count > 0 + btnSDL_RMC.Visible = True + btnSDL_Alle.Visible = False + 'End If + + SplitContainer1.Panel2Collapsed = False + dgvSDL_SelectionChanged(dgvSDL, New System.EventArgs) + + End If + + SET_SDL(-1) + + dgvInitWait = False + Panel3.Visible = True + + + End Sub + + + + + Sub initFilterLeft() + Dim left_value As Integer = SplitContainer1.Panel1.HorizontalScroll.Value 'HorizontalScrollingOffset + dgvFILTER.Left = (-1) * left_value + End Sub + + + + Sub initFilter() + dgvInitWait = True + + dgvFILTER.RowTemplate.Height = dgvFILTER.Height + If Not fullyPainted Then Exit Sub ' nur wenn die usrcntl komplett gelden wurde... + 'pnlFilter.Controls.Clear() + Try + dgvFILTER.Columns.Clear() + Catch ex As Exception + + End Try + For Each c As DataGridViewColumn In dgvSDL.Columns + Dim cNew As DataGridViewColumn = c.Clone + + If c.ReadOnly And c.Name = "IDS-KdNr" Then + cNew = New DataGridViewTextBoxColumn + cNew.Name = c.Name + cNew.Width = c.Width + cNew.Visible = c.Visible + 'KundenNr + End If + cNew.MinimumWidth = c.Width + dgvFILTER.Columns.Add(cNew) + If cNew.GetType Is GetType(DataGridViewCheckBoxColumn) Then + DirectCast(cNew, DataGridViewCheckBoxColumn).ThreeState = True + DirectCast(cNew, DataGridViewCheckBoxColumn).DefaultCellStyle.NullValue = CheckState.Indeterminate + End If + Next + + If dgvFILTER IsNot Nothing AndAlso dgvFILTER.ColumnCount > 0 Then + + 'dgv.AllowUserToAddRows = False + dgvFILTER.Rows.Add() + ' pnlTest.Controls.Add(dgv) + ' dgv.Top = 0 + ' dgv.Left = 0 + dgvFILTER.Width = dgvSDL.Width + End If + + dgvInitWait = False + + End Sub + + Dim txtchanged As Boolean = False + Sub initSearchOLD() + reClick() + Exit Sub + ' MsgBox("SEARCH") + txtchanged = True + ' initSDLBinding() + initAllg() + + + dgvSDL.RELOAD() + txtchanged = False + dgvSDL.ClearSelection() + If dgvSDL.RowCount > 0 Then dgvSDL.Rows(0).Cells(0).Selected = True + 'dgvSDL_SelectionChanged(dgvSDL, New EventArgs) + End Sub + + Function getSqlText(t) As String + Try + Return t.Replace("'", "") + Catch ex As Exception + Return "" + End Try + End Function + + Function getFilter() As String + + + Dim filter As String = "" + Dim andstr As String = "" + + If dgvFILTER.RowCount > 0 Then + For Each c As DataGridViewCell In dgvFILTER.Rows(0).Cells + If c.Value IsNot DBNull.Value Then + If c.GetType Is GetType(DataGridViewTextBoxCell) Then + If c.Value IsNot Nothing AndAlso c.Value <> "" Then + Dim srchstr = getSqlText(c.Value.ToString.Trim) + If c.OwningColumn.Name.Contains("SDLNr") Then + filter &= andstr & " FMZOLL.[" & c.OwningColumn.Name & "] LIKE '%" & srchstr & "%' " + ElseIf c.OwningColumn.Name.Contains("IDS-KdNr") Then + filter &= andstr & " (SELECT TOP 1 [CustomerCode] FROM [VERAG].[dbo].[tbl_IDS_Kunden] WHERE [KdNrVERAG]=KundenNr AND KdNrAlt =0 ORDER BY Zeitstempel DESC) LIKE '%" & srchstr & "%' " + ElseIf IsDate(srchstr) Then + If srchstr.ToLower = "ist null" Then + filter &= andstr & "( [" & c.OwningColumn.Name & "] is null ) " + Else + filter &= andstr & " convert(varchar,[" & c.OwningColumn.Name & "] ,104) LIKE '%" & srchstr & "%' " + End If + Else + If srchstr.ToLower = "ist null" Then + filter &= andstr & "( [" & c.OwningColumn.Name & "] LIKE '' OR [" & c.OwningColumn.Name & "] is null ) " + Else + filter &= andstr & " [" & c.OwningColumn.Name & "] LIKE '%" & srchstr & "%' " + End If + End If + andstr = " AND " + End If + ElseIf c.GetType Is GetType(DataGridViewCheckBoxCell) Then + If c.Value IsNot Nothing AndAlso c.Value.ToString <> "" Then + If c.Value = CheckState.Checked Then + filter &= andstr & " FMZOLL.[" & c.OwningColumn.Name & "] =1 " + andstr = " AND " + ElseIf c.Value = CheckState.Unchecked Then + filter &= andstr & " FMZOLL.[" & c.OwningColumn.Name & "] =0 " + andstr = " AND " + End If + End If + End If + + End If + Next + End If + + Return filter + End Function + + + + + Sub clearFilter() + If dgvFILTER.RowCount > 0 Then + For Each c As DataGridViewCell In dgvFILTER.Rows(0).Cells + c.Value = c.DefaultNewRowValue + Next + End If + + End Sub + + + Sub initAllg() + If Not fullyPainted Then Exit Sub ' nur wenn die usrcntl komplett gelden wurde... + Try + + With dgvSDL + .RowTemplate.Height = 20 + .AllowUserToOrderColumns = False + .AllowUserToResizeRows = False + .SelectionMode = DataGridViewSelectionMode.FullRowSelect + .ReadOnly = True + + .AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells + + 'redRows() + + End With + + Catch ex As Exception + MsgBox(ex.Message) + End Try + End Sub + + + Sub initDGVWidth() + Dim DGVwidth = 0 + Dim reduceWidth = 0 + For Each c As DataGridViewColumn In dgvSDL.Columns + DGVwidth += c.Width + Next + Dim DGVheight = 0 + For Each r As DataGridViewRow In dgvSDL.Rows + DGVheight += r.Height + Next + DGVheight += 50 + ' + + If DGVheight > (SplitContainer1.Panel1.Height) Then + dgvSDL.Height = DGVheight + reduceWidth = 25 ' Scrollbar + Else + dgvSDL.Height = SplitContainer1.Panel1.Height - 25 + End If + If DGVwidth > SplitContainer1.Panel1.Width Then + dgvSDL.Width = DGVwidth - reduceWidth + Else + dgvSDL.Width = SplitContainer1.Panel1.Width - reduceWidth + End If + + End Sub + + Sub ifContainsAndTrueRed(r As DataGridViewRow, t As String) + If r.Cells(t).Value IsNot DBNull.Value AndAlso r.Cells(t).Value = True Then + r.DefaultCellStyle.ForeColor = Color.Red + End If + End Sub + Sub initBtnClick(b As Button) + 'Dim defaufl_color As Color = Color.FromArgb(240, 245, 255) + Dim defaufl_color As Color = Color.White + Dim defaufl_forecolor As Color = Color.Black + btnSDL_Alle.BackColor = defaufl_color : btnSDL_Alle.ForeColor = defaufl_forecolor : btnSDL_Alle.FlatAppearance.BorderSize = 0 + btnSDL_IDS.BackColor = defaufl_color : btnSDL_IDS.ForeColor = defaufl_forecolor : btnSDL_IDS.FlatAppearance.BorderSize = 0 + btnSDL_UTA.BackColor = defaufl_color : btnSDL_UTA.ForeColor = defaufl_forecolor : btnSDL_UTA.FlatAppearance.BorderSize = 0 + btnSDL_FREJUS.BackColor = defaufl_color : btnSDL_FREJUS.ForeColor = defaufl_forecolor : btnSDL_FREJUS.FlatAppearance.BorderSize = 0 + btnSDL_Hugo.BackColor = defaufl_color : btnSDL_Hugo.ForeColor = defaufl_forecolor : btnSDL_Hugo.FlatAppearance.BorderSize = 0 + btnSDL_MautMSE.BackColor = defaufl_color : btnSDL_MautMSE.ForeColor = defaufl_forecolor : btnSDL_MautMSE.FlatAppearance.BorderSize = 0 + btnSDL_PLOSE.BackColor = defaufl_color : btnSDL_PLOSE.ForeColor = defaufl_forecolor : btnSDL_PLOSE.FlatAppearance.BorderSize = 0 + btnVERAGCardNew.BackColor = defaufl_color : btnVERAGCardNew.ForeColor = defaufl_forecolor : btnVERAGCardNew.FlatAppearance.BorderSize = 0 + + b.FlatAppearance.BorderSize = 1 + b.BackColor = SystemColors.ButtonHighlight + b.ForeColor = Color.Black + aktbtn = b.Name + + If dgvSDL.Columns("SDLNr") IsNot Nothing Then + + If aktbtn = "btnSDL_Alle" Then + dgvSDL.Columns("SDLNr").Visible = True + Else + dgvSDL.Columns("SDLNr").Visible = False + End If + End If + + End Sub + + + Sub SET_SDL(SDLNrTmp, Optional doFilter = False) + aktSDLNr = SDLNrTmp + + Dim SQL_STR = "" + Select Case SDLNrTmp + + 'IDS + Case 100 : SQL_STR = "SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & + " [YearMonthDay] as Rechnungsdatum,[Invoicenumber] as Rechnungsnummer,[daId], cast(case when [daId] is not null then 1 else 0 end as bit) as PDF FROM tblIDSInvoicesNew WHERE [CustomerCode] = (SELECT TOP 1 [CustomerCode] FROM [VERAG].[dbo].[tbl_IDS_Kunden] WHERE [KdNrVERAG]=" & kdNr & " AND KdNrAlt =0 ORDER BY Zeitstempel DESC) order by [YearMonthDay], [Invoicenumber]" + + 'UTA + Case 212 : SQL_STR = "SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & + " [Rechnungsdatum],[Abrechnungsnummer] as Rechnungsnummer,Kundennummer,[daId],[Lieferland_ISO2] as Land, 'RE' as Art, cast(case when [daId] is not null then 1 else 0 end as bit) as PDF FROM [VERAG].[dbo].[tblUTAImportNew] where Kundennummer = " & kdNr & " group by [Abrechnungsnummer],[Rechnungsdatum],Kundennummer,[daId],[Lieferland_ISO2]" + + SQL_STR &= " UNION ALL SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & " [Datum], [RechnungsNr],[KundenNr],[daId],'',[DocumentTyp], cast(case when [daId] is not null then 1 else 0 end as bit) as PDF FROM [VERAG].[dbo].[tblUTADocuments] where KundenNr = " & kdNr + + 'PLOSE + Case 214 : SQL_STR = "SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & + " [plInv_SupplierRechnungsDatum] as Rechnungsdatum, [plInv_SupplierRechnungsNr] as Rechnungsnummer,[plInv_Nettobetrag] as Nettobetrag,[plInv_MWSTBetrag] as MWST,[plInv_Bruttobetrag] as Bruttobetrag,[plInv_daId] as daId, [plInv_SupplierCountry] as Land, cast(case when [plInv_daId] is not null then 1 else 0 end as bit) as PDF FROM tblPLOSE_Inv_Data where plInv_PLOSEKundennummer = " & kdNr + + 'MSE + Case 208 : SQL_STR = "SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & + " [invoice_date] as Rechnungsdatum, [invoice_id] as Rechnungsnummer/*,[invoice_nr]*/,[customer_number] as Kundennummer, daId, [total_amount_euro] as Brutto_EUR ,[total_vat_amount_euro] as MWST,[country] as Land, cast(case when [daId] is not null then 1 else 0 end as bit) as PDF FROM tblMSEInvoices where customer_number = (select top 1 customer_id from tblMSECustomers where partner_customer_number = " & kdNr & ") order by invoice_date, invoice_id" + + 'VERAG + Case 502 : SQL_STR = "SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & + " tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer , tblTrdinInvoice.SteuerbetragLokal, cast( 1 as bit) as PDF FROM tblTrdinInvoice WHERE tblTrdinInvoice.RechnungsKundenNr=" & kdNr & " ORDER BY tblTrdinInvoice.Rechnungsdatum, tblTrdinInvoice.Rechnungsnummer" + 'RMC + Case 999 : SQL_STR = "SELECT " & IIf(cbxMax200Eintrage.Checked, " top 200 ", "") & + "[rmc_reDatum] as Rechnungsdatum,[rmc_reNr] as Rechnungsnummer,[rmc_betragNetto] as Nettobetrag,[rmc_betragBrutto] as Bruttobetrag,[rmc_waehrung] as Währung ,[rmc_euroBrutto] as Brutto_EUR,[rmc_daId] as daId,[rmc_betragMWST] as MWST, cast(case when [rmc_daId] is not null then 1 else 0 end as bit) as PDF FROM [VERAG].[dbo].[tblRMCImport] where rmc_kdNr = " & kdNr & " order by rmc_reDatum, rmc_reNr" + Case Else + Exit Sub + + End Select + + newBinding(SDLNrTmp, SQL_STR, doFilter) + initBtnClick(getSDLNrButton(SDLNrTmp)) + + With dgvSDL + + If .Columns.Count > 0 Then + If .Columns.Contains("daId") Then + If .Columns("daId") IsNot Nothing Then .Columns("daId").Visible = False + + End If + End If + + End With + + initAllg() + dgvSDL.Width = 100 + dgvSDL.Height = 100 + dgvSDL.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells + + initDGVWidth() 'vor Filter, damit richtige Größe + If Not doFilter Then initFilter() + + + End Sub + + Function getSDLNrButton(SDLNrTmp) As Object + Select Case SDLNrTmp + Case 100 : Return btnSDL_IDS + Case 212 : Return btnSDL_UTA + Case 213 : Return btnSDL_Hugo + Case 214 : Return btnSDL_PLOSE + Case 208 : Return btnSDL_MautMSE + Case 207 : Return btnSDL_FREJUS + Case 502 : Return btnVERAGCardNew + Case 999 : Return btnSDL_RMC + Case Else : Return btnSDL_Alle + End Select + End Function + Private Sub btnSDL_Alle_Click(sender As Object, e As EventArgs) Handles btnSDL_Alle.Click + SET_SDL(-1) + End Sub + + Private Sub btnSDL_IDS_Click(sender As Object, e As EventArgs) Handles btnSDL_IDS.Click + SET_SDL(100) + End Sub + + Private Sub btnSDL_UTA_Click(sender As Object, e As EventArgs) Handles btnSDL_UTA.Click + SET_SDL(212) + End Sub + + Private Sub btnSDL_Hugo_Click(sender As Object, e As EventArgs) Handles btnSDL_Hugo.Click + SET_SDL(213) + End Sub + + Private Sub btnSDL_PLOSE_Click(sender As Object, e As EventArgs) Handles btnSDL_PLOSE.Click + SET_SDL(214) + End Sub + + + Private Sub btnSDL_MautMSE_Click(sender As Object, e As EventArgs) Handles btnSDL_MautMSE.Click + SET_SDL(208) + End Sub + + Private Sub btnSDL_MotorWay_Click(sender As Object, e As EventArgs) + SET_SDL(205) + End Sub + + Private Sub btnSDL_FREJUS_Click(sender As Object, e As EventArgs) Handles btnSDL_FREJUS.Click + SET_SDL(207) + End Sub + + Private Sub btnVERAGCardNew_Click(sender As Object, e As EventArgs) Handles btnVERAGCardNew.Click + SET_SDL(502) + End Sub + + Private Sub btnSDL_RMC_Click(sender As Object, e As EventArgs) Handles btnSDL_RMC.Click + SET_SDL(999) + End Sub + + + Private Sub dgvSDL_ColumnWidthChanged(sender As Object, e As DataGridViewColumnEventArgs) Handles dgvSDL.ColumnWidthChanged + initfilterColumnsWidth() + End Sub + + Sub initfilterColumnsWidth() + + If dgvFILTER.ColumnCount > 0 AndAlso dgvFILTER.ColumnCount = dgvSDL.ColumnCount Then + + dgvFILTER.Width = dgvSDL.Width + For Each c As DataGridViewColumn In dgvSDL.Columns + dgvFILTER.Columns(c.Index).Width = c.Width + Next + + End If + End Sub + Sub newBinding(sdlNr As Integer, ByVal sql As String, doFilter As Boolean) + dgvInitWait = True + ' bindingSDL = Nothing + dgvSDL.Columns.Clear() + dgvSDL.VirtualMode = True + txtchanged = True + dgvInitWait = True + + If doFilter Then + Dim filter As String = getFilter() + If filter <> "" Then sql &= " AND " & filter + Else + + End If + + dgvSDL.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells + + dgvSDL.SET_SQL(sql, "FMZOLL") + dgvSDL.LOAD() + + lblEinträge.Text = dgvSDL.RowCount & " Einträge" + If dgvSDL.RowCount >= 200 Then lblEinträge.Text = dgvSDL.RowCount & " Einträge " & IIf(cbxMax200Eintrage.Checked, "(Anzeige auf 200 beschränkt)", "") + + dgvInitWait = False + + txtchanged = False + dgvInitWait = False + dgvSDL.ClearSelection() + + If dgvSDL.RowCount > 0 Then + dgvSDL.Rows(0).Cells(0).Selected = True + Else + End If + + End Sub + + + + Private Sub Button4_Click(sender As Object, e As EventArgs) Handles btnFilter.Click + ' MsgBox(pnlFilterInside.Height) + Exit Sub + If pnlTest.Height > 0 Then + pnlTest.Height = 0 + btnFilter.Text = "Filter einblenden" + Else + pnlTest.Height = 39 + btnFilter.Text = "Filter ausblenden" + End If + End Sub + + + + Private Sub Button4_Click_1(sender As Object, e As EventArgs) Handles Button4.Click + If SplitContainer1.Panel2Collapsed Then + SplitContainer1.Panel2Collapsed = False + dgvSDL_SelectionChanged(dgvSDL, New System.EventArgs) + Else + SplitContainer1.Panel2Collapsed = True + End If + + End Sub + + Sub reClick() + getSDLNrButton(aktSDLNr).PerformClick() + End Sub + + Sub refreshDgv(kdNr, SDLNr, Optional Kfz = "", Optional History = "") + SET_SDL(aktSDLNr, True) + + dgvSDL.ClearSelection() + If Kfz <> "" And History <> "" Then + For Each r As DataGridViewRow In dgvSDL.Rows + If r.Cells("KundenNr").Value = kdNr And + r.Cells("SDLNr").Value = SDLNr And + r.Cells("KfzKennzeichen").Value = Kfz And + r.Cells("History").Value = History Then + r.Selected = True + Exit For + End If + Next + End If + + End Sub + + + + Private Sub UsrCntlDatenDetails1_Changed(kdNr, Kfz, SDLNr, History) Handles UsrCntlDatenDetails1.Changed + 'refreshDgv(kdNr, SDLNr, Kfz, History)'?????????????? ausgebelndet,was das ein VErsuch? 31.07.2017 + dgvSDL.VALUE_CHANGED = True + End Sub + + Private Sub datadgvSDL_SelectionChanged(kdNr, Kfz, SDLNr, History) Handles UsrCntlDatenDetails1.DataChanged + ' refreshDgv(kdNr, SDLNr, Kfz, History) + dgvSDL.VALUE_CHANGED = True + Exit Sub + + dgvInitWait = True + dgvSDL.RELOAD() + dgvInitWait = False + End Sub + ' Private Sub dgvSDL_SelectionChanged(sender As Object, e As EventArgs) Handles dgvSDL.SelectionChanged + + Private Sub dgvSDL_KeyDown(sender As Object, e As KeyEventArgs) Handles dgvSDL.KeyUp + If e.KeyCode = Keys.Up Or e.KeyCode = Keys.Down Or e.KeyCode = Keys.End Or e.KeyCode = Keys.Home Then '?POS1 + ' ReloadLeistung() + End If + End Sub + Private Sub dgvSDL_SelectionChanged(sender As Object, e As EventArgs) Handles dgvSDL.Click + 'ReloadLeistung() + End Sub + + + Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click + If Not kdNr_filter Then + If dgvSDL.SelectedCells.Count > 0 Then + If IsNumeric(dgvSDL.CurrentRow.Cells("KundenNr").Value) Then + cProgramFunctions.openKundenblatt(dgvSDL.CurrentRow.Cells("KundenNr").Value, Me.FindForm, True) + End If + End If + End If + End Sub + + + Sub SelectRow(kdnr, kfz, SDLNr, history) + dgvInitWait = True + dgvSDL.ClearSelection() + For Each r As DataGridViewRow In dgvSDL.Rows + If r.Cells("KundenNr").Value = kdnr AndAlso + r.Cells("SDLNr").Value = SDLNr AndAlso + r.Cells("KfzKennzeichen").Value = kfz AndAlso + r.Cells("History").Value = history Then + r.Selected = True + dgvSDL.FirstDisplayedScrollingRowIndex = r.Index + Exit For + End If + Next + dgvInitWait = False + 'ReloadLeistung() + dgvSDL.PerformLayout() + End Sub + + + Private Sub ToolStripMenuItem3_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem3.Click + Me.Cursor = Cursors.WaitCursor + cProgramFunctions.genExcelFromDGV(dgvSDL, True) + Me.Cursor = Cursors.Default + End Sub + + Private Sub ToolStripMenuItem6_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem6.Click + Me.Cursor = Cursors.WaitCursor + cProgramFunctions.genExcelFromDGV_NEW(dgvSDL, True) + Me.Cursor = Cursors.Default + End Sub + + + Private Sub Button8_Click_1(sender As Object, e As EventArgs) Handles Button8.Click + Me.Cursor = Cursors.WaitCursor + cProgramFunctions.genExcelFromDGV_NEW(dgvSDL, True, True) + Me.Cursor = Cursors.Default + End Sub + + Private Sub Button1_Click_2(sender As Object, e As EventArgs) Handles Button1.Click + dgvSDL.RELOAD() + End Sub + + + Private Sub dgvSDL_RELOADED() Handles dgvSDL.RELOADED + ' redRows() + End Sub + + Private Sub usrCntlKartenDaten_SizeChanged(sender As Object, e As EventArgs) Handles Me.SizeChanged + ' initDGVWidth() + End Sub + + + Dim vval As Integer + Private Sub dgvSDL_GotFocus(sender As Object, e As EventArgs) Handles dgvSDL.GotFocus + 'dgvSDL.VerticalScrollingOffset = vval + SplitContainer1.Panel1.VerticalScroll.Value = vval + End Sub + + Private Sub dgvSDL_Enter(sender As Object, e As EventArgs) Handles dgvSDL.Enter + vval = SplitContainer1.Panel1.VerticalScroll.Value + End Sub + + + Private Sub dgvFILTER_SelectionChanged(sender As Object, e As EventArgs) Handles dgvFILTER.SelectionChanged + dgvFILTER.ClearSelection() + End Sub + + Private Sub dgvFILTER_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvFILTER.CellContentClick + If dgvFILTER.Columns(e.ColumnIndex).GetType Is GetType(DataGridViewCheckBoxColumn) Then + dgvSDL.Focus() + End If + End Sub + + + Private Sub dgvFILTER_CellValueChanged(sender As Object, e As DataGridViewCellEventArgs) Handles dgvFILTER.CellValueChanged + SET_SDL(aktSDLNr, True) + initfilterColumnsWidth() + End Sub + + Private Sub dgvSDL_CellContentDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvSDL.CellContentDoubleClick + + Try + If e.RowIndex >= 0 AndAlso e.ColumnIndex >= 0 Then + + Select Case aktSDLNr + Case 502 + Dim ReDat = dgvSDL.Rows(e.RowIndex).Cells("Rechnungsdatum").Value + Dim ReNr = dgvSDL.Rows(e.RowIndex).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 + + Case Else + Dim daId = dgvSDL.Rows(e.RowIndex).Cells("daId").Value + If daId > 0 Then + Me.Cursor = Cursors.WaitCursor + Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER(daId) + DS.OPEN_SINGLE() + End If + + End Select + + + End If + + + + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + Me.Cursor = Cursors.Default + End Try + + Me.Cursor = Cursors.Default + + + End Sub +End Class diff --git a/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben DE.dotx b/SDL/seriendruck/Vorlagen/Erstattungsschreiben/Erstattungsschreiben DE.dotx index 6246e8033d185e816c231beae8cf4e925ba8dfba..7dd7bfaf9c56e7bf9b86807067b747fbf69e24d2 100644 GIT binary patch delta 28099 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 Uq<_lE3lQRk90n8oy%p^L0MU9d9{>OV delta 25665 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 tgrz6@?^*3{A)^ZjDH1FL*+ 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 delta 26615 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 delta 26131 zcmZ6y18m?=)HYh%wr$(S*0ycCziqpohJ_=7RVYX#1OagYNv?&(1kNkWDg zL6D14D11E{p^wfuw2(9lJYOK*LH3Q?)E-o%+4=Y2#t&^SC@{rPXrkDzl4LrH1klecOxb_m9J<12i6kAuTIv3XP>9Kpfeij7wJU?2Zw|haOwNZ!d(RFAd@Mu94icTMJ@Fx~T zye<@zpN6;5`5n+qqQdbYuL(b$x)phr`!`>9D|G6LG`+N_b?YsJLsmq`o~y8Wfw;^9 z+ShzYz6pbE=N^$HhkjHP9i;r+5Zi!zL~Vj~HLu&tlLLO^hNXd3d;;oB)1V^9IN2T$ zDmMQ_rlc|n!^M(V!U5{vGHeWf{tI2{xGL9>ryMb!tx*5$Dc>)qW#kJr_Ur}_p@^lD z2#97z38HFbL5t7)KwwIh83wD@fah*eIc^j|Za7gPNOLoA`9`&*{V$ow;y7A@DKBP3 ze&qp0eJJdU5BT8@L*`q7&vi-gyL!)J$XW~=0usa+Ou54!$S~a8b1V4tb0Rt-#3;nj zlORl={Noxwn8zwKabiKbxKArxJ8eO4#FZgGocUh@@pa>z>;xki+U0950nI9#G!wAM zB#wbO$|SIO^XX=N%nX&3`KOfBQZTkX)eWEQ@@v;Dha!ma)}D6wtz5=e7Eo4iI_h*1 zF#Z=}vIFr3-MQvf#o_26=pS7N>-eJzM$kT;okX_t+?C3O8DxmYU3tFU3a~keIRYdX z@$*(?KOzId9h-eL?inpk|OO6y`0YV5^?U^|xW)Z}& ze1nrhi2RK6Vt4E}TAA9>%p^N&dlc`63Rzniw_*?Bo~#8}QdC|?Ke~jd=12hvnt5>O zTu>|IX1(Cff8vq@y?xivChE%q)X>bmI}jp%C_Xlua77#!tnjA0O^h1N_W0WnVN>g( zNb8uWgwW?!>-N}RfR~_mo{*v%NP2z@d7li_ciE4ho<^jTZDeY6JE~-oyJ^whXIRt| zsca!?7E##W%;pLC*FWSnINK~bHdKfMIZ1dmMkwyVpIf@yMC z>E+j?D`pn+)94In%zIGic>2cXG{u*LBE(t!f?EKmc~gfi1SAv_qQOp*3j+7JVd0q3 z55W6m-5_M|(?5=VJP)~%WtH9(aQ!uDERD}pNFN#c`39fW1{LPav)<6HDBVoX)BI&Y zO?l9$RTtfN0YbTklA8{W=T_ZU${U~Z*DiL5Uk?ss2y3>r{d*miO6{VK=BpC>JIt z%$~bH3YhHxmN(B677r>P_tsce_B&3?Oz{f>ZJ<1*ZDo>$1r5!M`L8&-P5Q`!nHyHK(l}Z?fB6(e2MZ{YQ_&DV#;{s z#+KXNR=k%#-(-YD~bt1g5XKO9-fs3}(2L5+jrB-5!hTOjlEs-B(ylRC)Z@`Ld1Romm zcK9A#T>E3N{+_74}K?gZHZh*pdk0?W{bd4d6w66g%kKD`lqDqRnW2u zmG$YoHU1Ge|f<(PIEDa3C;YN%n3FXQk5pm>$G00#Xh?e=?Jx-g8U0$D1$4xN+ z?7cXhek;s?8^Vyp{CiO~5A1OXY+4K#&6-zKf~`iRA%p8qP1EyD!~a7hmO$)jD2}+X zBMQa~(rycSBs%3yPoZ_Ac&D$WMmDx(k`E$xM>I+Og?jTm8jlkHOoxG%4+~Z!R{Zr^ zod%s27h>d@qwoSqvvmU*`5B3i6bS@gY2S*dLcFC!&5=JtG&>^P)Mr9BI zFCIC0dGCY>!|=ge5#;6+8|{z3(g~09b@`t6L;Q`{lDTf)R}o8$%G`Fyx;^H=F8Gye z*k)1TuB3?ENk_h9eF}9X0kILu-Njyh3^iDN&i1VTm$4r_e7nNtBH>SX+vEajIu>Lj zrxCF+ExLeK(|Qjqf=3}~JU_b#+`UqI_5N?vA9)8kHJ3>Cw`EGUp4}N9OKEmeu4X)^ z@zMTWs;J-3!qk^W6ECWfk8jNYt7TNcN`0meI`P48ttw5;qT+R3b#z~K&Nlf@dCj|h z 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 delta 25930 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�-NX;ezCEeeC7jW0U#d|OA-+k}AJNX%Y8(uZD zjJYs8g|rJ}s4njJyf>$S&$QF6|GdS6A?8|CFamPr$-6i*hzmFzUd|V{;8-w-qSwn9 z7F#k?4T@4Q$nEx1-A$-s=gpK47{r{`oW)Pj-)L=-K?sWys3K3G(vR0B6)QC}kc0{* z58ur&fE8!O=%3v;_eU%cBUyGk&6iXCEBoW`|bDt^nE}^ z)jxy=P!Nz+2oMmI|45m;y^{%pshx?Py^E~$FNy3H^2 zxqdP2$2B*?9##sCLFQ!JzN1TbBIG$FQOnjB=OcE&n@4Z+lUcPvdCK~4B>8=+C@k3# zZWGS?`-i#PI0@m8gM1+cob_MRS4#kYm6~iB5fuEG_+OA5HZ`*f_}=17Z%rD~j}42{ z8Do?qRD|LD8KqlD-6EqhSzUCkI~LQ4yb8MAQhaL@$8S`YrZ$ z(X1J#fZH)*E%Tzm^2&ji79yJ*%R*F-^uaL{r80hE4kg7c1db(&c#JezM-(R&lTbhQ zi?+J6Q|suRwf~^E|E8SuRA>KMGz)Lk6G*kVn)a%`!J{M}Z+Z^JQ7L*d&CJMyA>7G; zv}ib$DaxkT0-tpg0g(AmvR`Q{K0sZK17(IuYtD1XOw!!kQi@;eE47y6t5t*EKDkn~ zxj`}LU%5lwyjM#T=iZCgU^}ao?ebF`KN>MgU~t>7&ywfBJ!&sL@|;<==+8I)|J}~7 z5n%;4{%7kpM1nmx4v;u*SI&qW{G2q!O>~VWEH|%4RTzPmRkp52@P9lMx_`o#kT?-l z)M8^JnD)7kf%0~IH!HI!$XtfTkuGM6K$n1A!?_MAoi1#yP5sEy3xJ1bl3&*eW!Xb7_6JDhj-xO_f@8#NtuRFV$fGNwe2v$+uux4JY#f@X<#i^GYFRBUeePMen7Ftkv zbMtF>I)0BSyo)?XiCyF6ko$j3Oqk$(1S-HMNxS~zGB~6lAjtnGKP^lRO-!Ab{=f9x z(6Y4Omx%x5>-mBbgqy&MiD0KLTW8%VdM~zPnc0z*>JU-lVM+b&N|PLIx^Sv&FY~U^ z0A*t)CDj)bGZEvN{d&wX-C=k7CD}>kV}+`JW7ZEFHS!>IT-vJTMxYH$iltlTmA)!k z@Us5;W&3r14t!oN=U=8vf=?jMyP@F8%d(H}u>}_eTSI8Qk>5m;Ns)5D8;O8ot~Qx# zXrPc&i0%D|)^bF}QA-ajBBPsVZ14<%+bR&P#RwGSmI9*#-yG-#qvOop7xyQyPAl>5 zN>K&DGq-1)Rld*sd-)3(*sm9KkZNZ;d25-J;H$Ue6^)K`HVDGeLXoB=TtN;hJs)IP ze^F#%JlPVsyS61k`pD2jL3@}U6p(8G`{o3ju`| z?r_DGC(gN~1j!(Ybevq%<+ixL1F8uNWS19EYi8)qCq!%vG=QFB=o zrG4z8dRzjFZ>-&K=VUvHo+>pHNjAAM4%MdbeqyyGne>!#tb!E@H0v<12(}4@`6***5HA0`1 zw0zpA7l@Rr+_1YyZ$uX?{Go1swy~oO6BvVt=7BQg#Xpg;FA5G{9gIs}}oafOa5BJT7p2;7jnioo6&XG8G0fBT$adp8=u8 zABB0uJniotjK33ZZE&k?VBYBV=cOR7b9eCsm!%2u;9a02G@gt`N1AzF+viGA;d#nv z^La1&_}u|w#g5GO*NkB>h&llgp1-7-0iNSt5DqL<3qb)(d()Z!M}!Rw$5g^z!NATO zX%yf*R?suQK^pSwXVg5M5J@4>ze;4Asq8_-svq6Ce)?il+YOmdFZoznk-)G<^ZVpU zgu>`CJGau(h}OTEabXJe7qiYvL+?_x)5Rjl-F$?#0Rseieje8T$d9d=Db2r`iffV} zIXyk>uT^eHQY1X1O0>F^D3He*>FsOY8TbIDjIYqXEtT6OkQS3)xsy9bX=-tS(%T=5=UJgJv zqn?>n>IYXB;>~It*ptX7PM2CmPH{j`hn}~OCMNq_ugITotqUJ#&Jz$lq4RzPI_|ys zL^my#>V>K9z`35)Q(tvqH8Onae;}LmPFIlqpjH7J2e0z~8;=*@vZSF=QlFwhqz*0? zz41k86bwHi@sKkL4^ubTNEHqA!vmaB|50JZ8Q$;vRASlKpZ8b}!tn+kKTUJx(L|ET zU^30mHvHBnpIZ!N;qB82XNB&D2*mU(SpR)f&A#*Zo%!v+QM;hNxMlRQK;s%fDQT?R zCg$O8*Hf~XY7Q>JCHS&JxcPPLb@O8oVtEsayvz@FDe|y-2Aj0m zTknV;TC2QEl0}YZL=0ldX_noJJ^ePjP($tOc?gb^lIQXXE#p-|#uE<3^GIi7Y(jRh z)8fe`DeP#cA7$oYckB4&@3s^&xgYSh+j*_G+~M@`C3t_AYdS?RaS`%M1shG4POs*O z2W<&_!HAr+_T?JQgN|x1M*^f33^(QD%lh|hJT6gt^g+yYVLjxyKebZ*t2|3kK-v4g zuE}{6yGwq^)!ke=L2SQl)EQ~d_Y!lPFEONuD=1Xded?I_jdnh~NDl`DFSUQvnfs_HvR$Cs580 zRO9(OT$fG5;yV=AU{)o^>7&sw>`X4$vIBepMi$T{waN0Fx*Nc( zQM;kz;N!+VpsEw@rF+{#8&crgY?7?Y&d;b^7f~KDN!Dhd^NZ&`NRfbh|7yTc{`l2$ zfd0pi(2|MhM^uVw4}A*AAgbqxQxC?AL0*124L^&FPGQwDL13@+>FTaVsejUD7{=Ut zZh3;3TMcqQ9?J+P!sG|XV~S*Ai}u_#RW>2EvXh})-JgL(r;wPU`?|F-k^=7vzLI$w zTm{7Lw0(>b-GYdIcv;JHB=L}ql?D%3(6aK=|0V)hVse=^DG14jELrPgHQfgX0&42< zYM2{)=wM2Nm%zLM(-EB${sgU~P>y`NPnvCu@D=_~zd%)Jhgds0W0yX8B)l{Pt)9={ z!5GH7zBNB^mA$b+|FEX^8${*$NF(@kvQLTc_K5p?*?aLsbC>LqL~h>y$-Fj$^Il&J zpW~+O3<2Mo+}ESI?l7pZz0nn2gW)VT-{X*ZNQ$2HTmyz}Ch)xnEETm|t`bgJjMc%1 zeOA2djMod2T`yknRi~Fd&}YNxTT|>L*L~a#&&cNSO1Pg7q(xJ16K2DfJ3nhTWIE>& zLE{gmv?*{sH=?Hh%9}W+^)dNkDu~u*?2ykoxul~^aAJq2fhW6(IEA?%ZGa)Apqa|z zuY@*Nz5?W7(ACj*Vnio$H;nd{f0w+F@0rbvjx;EtxQ{L-U792C>tosEHZjb|RcsD| z9^!IP3;=r6_dzAKpF{~iA-0e>TCNf3Nu5+rUr4r9;VbRST!Ipq?}#Su8-43IYY&w~ z+s?Q@m0eMr1K5T9SIHXPH_Mt&E9cMZl$Yue%z$`NAjP!c(P?p=U&Y&6THmG0W>QEP z!8Ii{N6Gb@QSVWcZH@4~I9>m@Gv^}m4x)`)hAWh#*_(8ASw%Jze!j}I(^^yLBr1(+Y!pw@Q_Fe8<9hgXXOirmmM8IIuMd!&W$}A-dT=N4t)H_UhU=|ETOmmY!)99-o7KQ1tA{SC z;dV?9LBia3WD=^idCN-JcNZ>METV)(oqE!|LHDF+kB?JFY~b%W6Us9|pF?BZ$6;Ox zVxpxlBIRri3%9fy^?hY-Xjj^Wy3tsU6mTxILc>11e`!(q;AMAH<65?_r;51bS0SgQ z)q{#CJ)ppeXuj?u8U$Sf@1DPx{WoGeOXUY&t#hS*X3|5S>`iU$={QWeOJZpXF1#3J ztgZEZ#(yIb#vZjNQiB25XANya{^hb5)m*9S^s4PH3yfPMM$6c^%y5a+^#Hen z_hxT0U2r|$b=Bt58flP?K(dclFIFW{T$*b)b3!H}cd62k5k30KNd^4d^+2Rk5|0&h z9|tXD=68`Cl}mv#E_Q-=HgB#hr6a+OpKiAls&3Y8=Fw2E*=c+`oZ@A)wJazGk(0E~ zJku4h=!Ayx=z$2e@tYtKqaKJRRKHf;42rlA zlRiveRTnjC2WC7;YzpmhJ=l|1-%lO-l?!^Bg1s0n)9fe%*?io5mHPZDV%QKuEyU(4 z`=SFE705=UV@D=*m+pn5toYwgq=T179M@(&;hNiq;SK_H^a&FgAbfM{9KgPV@dzKA z8ds-YG2YU^>N+vr162S1UML7}H1u#Q2l7(ebQRbwyww_8MvGM1+aFO)Sqdk2E?oBeT_NeE)LtkQyR=WTK1on_M{c61{E2 zMV_Cik63Pq-q+ihzF(DQpOn&p#=Xro-FrdX?%T{xsHELmO-+aUDKXDy{MK;6U$uwl z-~aPn2^>U08vF+=NIi`#5Cq7O60euSfPkow{a=vA+0@0w($4&UAWegowDUR#YM1@u z7gWmBIa3&vpx3@k+z+Nvo6N%e34$lFgxE<~LYmmR{f{@>_Z0seMR5@uT@b{v|`ko|P**{Q7uAL|03_?AG^!t*!J8L8JM+ZlzmQ=SDq;eOaHYZ!?Zq{J33xDQx?tXQUw-t;Tt?e{(YtudvrZ;Kc;e>* zoHTt*N;ekYzL!-;tB#1TH<|pieDK|x7&(A)GVrzCtlaEw80UNYXlab#A0qM)hY9{Y zFQa-S{N>YU&>c}t=y8favb=6E%&q5g!=tMju`XHB-N97@SYHl0pn49>i) zefToVw&df6aLfmeK6PVU`Ei{K@R@G~&a{^iJu7v;1d3k=RZYcU9v$;mtUGhQ?azbD zUbgGopEm_&U9#HO%PvQ;rlI*-!XZmMZJ!;NG5hV}@AXZb(tm>v;){w39%R=O$_iCkzG)UUtrL0zR_=M@vavEpJnYA!vURnZ}soeb+3zK$%_J_hT2Jh?AN2! zU`wKpiDQ5VkB(iNoke@EpUd>NL~I$)%ZY_YUEd&6rS15&Ui3@HPu-OcqD<-OT}$4S zT1P-BRj*PnvG}~I!IC?AjCy48g+jCw{+kTBQIJ2RuYqfN!vIK5ZooWOVHqhySqEVEf6fo1Pku&?ht}og1ft0aJNAR2tV0(ci-JT z|JUc#obFpyPxb9S_x6>ln$}{ON`pJLB`*aNbEOB@VWZBI9b+@|-caXc845_U)}ls*Sh{R)B>CWB;6DvTTtRh^(x zjVVr@WQ4?h!`*^3V?EAW?_Z4@L&3A>U1NsvYiG`v>Qj(RcA<*8m>LNpvx*=t2EdEp zmz!9T4*?=GCAM{BD8XYQjUZTwe2477p&0gE7X)OH4H9c)o@AdN_)Z^yIgyr#JS_Dn zXWJaecbW|cNsJI-I3QDMGwNFW6^DcyX(xsS;NF!r;b8X1vuF4)5Q-{jt(tvFAB5Tc z#vI|;9L_-_2uaQta9wuMBFo+_6-|K29_`r$^Gg!rmzcz)qnM{C@*RWMKu=px>|_s@ z{{)EZIsobCWFQciVuI^BCRA`tnOtp)gfgFe)I=jJ)fM(GKt^d-RgA-*Muy?p?4^)$ zauLOxrOTaDu(w5Ksb z;WKObBya#|=F)Ne(8Yiupz}o8VoWl+g0xJx&nlp7wxlu$^JvJFnsE$u+=&s)fliq> zAP!H1#DMC&FH$AU-Hw5o{hkd?tkx~OCAixdSV}@sb8crH7^{Q=ZA6E+EFdbbiwU8l zezyt1E;gz()d)^!#7Nc~d3|YE4GSZJ|+TibQwd^vOSl)i2 zU^fL)WhAiD=nyI!8q$z+acBz}MCC|FCF0FCOLBHU;rnD}zPt&~-Y?z)#h~R()AZEt zH*#5%hdm)n?nYexdjw1H`YZwU|nUHdJOQ)yTbF7xnh zxeQrTtmeSF*k$=t@48rZ?k=RP58v%EBR)n?lnQs!{bsf#{9PMMV-yKGR!)}j?{Kr6 z#oYeQ!a18P?qnsU7C#_k!a;v?U=L`)%)e+76;I;{OegB60j6aB-m*`<`sidsO=^(0 zuOK4*sTn^KivoC>KA3WkYE6knG>;`-0>S3es8b_wqSf+4az!G|yjeXr7*%_?h!$)lJ0RoLNFoOjzYQUA4Yv zeTQelq0hPYXw#OKef+?GZv8c|plIz0(rfo)sPPPc;k1zxvUzpt6I`os8N8^jb$ap5 zHu=)eqt2*wc~uA)=oNpS%Ek!~g_vSP5Mv>`LC(k{mku2sDdzT*~$@+Ua zXwl4F2opkTObAhmR~`nc+}!5;TJ(g3qPH`?eQQJ1Z|B?GcrzxI`mJugQSv7fi=_Ax z?(>Sf(2lrp*G%7`Hd(vunsPOGz>()is-W5S$*DZv_U^q4_f3H3GK_S0r1plS^KaQ>nbfGM&EbC%2u-5VSMqZn5P+U=)=kRs%eIy+dXxvOMIe*4W3+xh) z$71P&EaFAvs#Pm_qxMOvNhUAo;a=xC$x6SI5Y2fS=IVYdBqZP?$3)Pbq&y`w@iYBu z&iDIt)-DSO^BD`qh}HUSKC`zfyXGyjtV!hPDoG&nIMFjyjBwCo z5vQa`E;-<(TpUw*fd(US(9IsT;|(LRAX|{NGtuShJsZlwppH~SxgM&uJ&17uUB#{X z&jq8V;3G-|OE>!Ps!x}3eKA~Vnr1zH2Rd)%d>(dtNRGSfL0G5H2J#x8U0GC*#u_B5cowkw)?W*}UklD&3x4w4U6@4e&!a>h1j^Lq zUyawon`?G45@}v%2uI-r6yfcddb&&(Jmq4~<-@Jm5#tNZ9;Pj2;9=i9I1kQ_Q0xQR z<0U0~@unz!bzD^!AKqu;8QajxRfbZBZNkI3=z*$Q`lwh%#}5NsR1cyTj1h zG;RZwpT{G$-K{p;lWV46ng9KEJui5;F&UqJL(eET($4EQ-<@n_#%}njuX10YY}U<> zqfs+SqQpMV_^M;vZy-qAuy8l15#XF~#i2v=$sAVVqRL=Hj!zslcts1sV?T1GT=A^R zU=8Nt5MkoP6TXccL7IIm!QIVQ^1h~B`_61moE}6q&NzOg!>RsTLY9MmcVoALhCy9Z z@Ra=P#Pith(gC)vm&XAsl?|p;lgB%kcuUo0n!d+JWwHYA#(1}qPYMK}O?@p*X7v8q zedL!*;;a`=1=x3zng)XKN2ech!IH@CNeHPHwpj8oalNgaEYsw!rCZMmIeU>8)TpP? zGmz-ea0JS6nf7vgQfL?X$OvNg-*7r_7}h%g%DZ9tDza{5aF&_U%nRTRn-k&LwOabY zvV7zDBz}srXUht7) z56YVH%a$@&r~lq8E7;Wp7Im)+fnYS4S$|)Wuy!CE|9ek3erpG`xYQ*~W`X(-&?Ogu z_G>_}npl_EP_9WHm&*5CnEQ<$^Uf!y9d?u79^l#UBJxnMc#Pwq0Hqgy)<=TxDj$nY z^0pMZ#QM?#g2U^E+$8W(YLL))`UnP9*saKW6uBfN!MNK&!ti44BL}bm=Yaa+wU3Rl zO~ZBh?JayzYS{(jFszMs2J~^D0FfEctZF51Ug6XuX7UB48PU zzPJlMl#N-UOD{bBVMG5E*Y$~GmEh@z$>-0Do^A1qHG;&}fEYd@`xZl*bDeDT`k(aEW`eqA9_%8 zgvp%lkETQBO#>EjSpl+i0w0`>mN0z*w`qQgyQ9&BTyvMpD-5^jJgN}~qE!3Uc3L@2 z8!ek$Paf=Kz1?N>HnT%%s2$D?oWqOHyq?W9R0uHw?!BAPgV6+BSh{1X;_+D=p7ym= z2lvW%9~S@HAn5wVio%&u)YJ zr`_@wd?4)_xJCiegmIM4@FfSW0d8MI=}~OG9!_%I#<(y8lx#BRwaf!aPc|VEJSG05 zY4o0_DD)7C;O-6Q*ULq-bsjz9y~#db^LkSxp;aCZ;;)lkzS}jXo_IrDUK+#2A;-)q!awp3?g`+Ej?l-gzbx9`5UoHHq{;DL? zDfb4TQzk@b!So-T2!YDk*e^*$SbyRD2V5W{AHE*Rst;n|jpZY)8+vPMB|6X*-EEr-xZ?O`^azg0s_ONgiKkVz@6a_E`u7X#*1yN)zE z9C0gMNXuA(A`hY`S1V0s-B`PMM)jMQ@#8!%hX zw^EySVrM&ibdH+ww*wTRVX12rla^7W5jSVEL&(r!&D$9V?@Yyvwh4Q0g$boiRV<c{R#fGCH@)afcqUDq0oNhJQOFgcCIMYaYF4cX*-~`rFb*0i2!(9oV zWSBFXpCzag04mw1+din$nU``pk0L)>rQJBRiQF_f@hieEtR#z{vM1u`+|C@c7SnQ;;Wb3p8}58*f8eun}xwNf(~Owf2uAhG;C@zoEmdH->A4- zY0<7e3o5!ys>J?GWb|&WjGoS#)_v9KbR1if#lfd)1XLm(g`=2m;rgdw$8>-_(N>&jfbn1|^Fu~He?5eq`2ko-RMWhZoiAjOX zNkPWtBUV7g9R3m%3%f3EOy8@UYI=qz>>KWtW}*outN8^4^HZ62@R|(Cj=S=#<`&p1 zj%XALK~{A$bz$Qc=43RcZ6n9q5X(dNZo7V(O6i@M&u<^(NPIV_R#I$8+{4e@q!(_j zjt+MWY*2{KYM0+=X0BJZ1&Vc)jF-HC;B8F%9NH&LoX;EO9obiz-LPS;d2aQ94L^fu zY95M%_fK~16OwJ!Hqwrpj9*h!Erri`@=Zu+gOG0^?X+rW1gLoQ~Yd>(^8>w7)h7+*yv$vu<06k%1%vtN$wpgq=2{638E6@EVN zSP{yXttahf*%ztDcYku_5Xvz)1S3wknVDOIJm?CZ*BkYtqR;w*eZ3G@YqO*UGF|xi z-uP+1EZeV??Nwh5yukjM5yE8=A2lRM9V>wp?RwZyzn%yF4#{mhj7`?g_^p}sKg2Lhn{;S(5B~3!a z2{FiV`#px=yGa287>JsQ`O!eFS!JCwNt;Z~8lGY}aE8MH8&lRl@$_aTU;BV!nfMy` zQ>0quw@l*>ubzBk{McSFo)vHAgC*CK_5NvF47F_)27c;P`v+sFieT%(;?(iSd8fN= z9{)KkK%qJTdpKks0dTxF*R=7&@a`a90Rxm0&SDc7zRr*KI8Q0NWz@#f4Ns|JfI;Fy zyU5&vL}*jDgc?%%)6!?z{mYx{lGHj30L3XPg`ucv(cYlB9kY}MvQ;E@>Yy~x344$% z`I6X1=qn(56N!%4hWI{>aK0%y^HvSpsS&M=Mrd1w--79${V|<}huHv20{f?VMgd3$ z(pjpr>4`68Xs6aZ7+EL;>McI-1?}ALK~xo0)E0y^_dnu6Rf$j|rfo~{k+ShN%BrCNg)x~b@9U3DkA4D==BZyAoEV5c$~M6 zNqXs3nrN6;YuP$WMI>cE<0V6XC#)gVmkO($L&}&^Ts5K?_G%(ceoY5P6WGKT>Ua%9=EGq$w}?=1VZbv7DOQ)WuU5q{J~!anH30S z46}lT#il;fH-V*1iM!S z!u9Qh-L=a6gSG102@>+{JWhUV_R60I-}s-|9m0}UUnfp)@v8vU$&iec$u3T(d*maI z$$dYQS!=iL(4&F09^$u+5UDo#vqdYTI8ddgXDFQwyCg<-6fyK z+j(ih4}$I$jo<`FA`X?uTFX9Z`>1>G#KC$}wDmHQAE!wk>pc{>vOkdzA&If0@aHBH zXL+H#+3&K^hHCEkH_y0P0cA4fihT1ZW%YtThY4K*uHJ)OQL7y45BQVB<1uHE$_B|Z znE5+CPkEgg;q#Rrgrk0|$v@T_S3#V$L6Jn8vz~&V6F*AEE-*ikOOW)?{dwTyRLw1@ z`U&?iz&1GPFu(%}!!V4|;=SwT^7reC zvxmoBj&|q>tU=cP1DP{eCoK)TR$!akhMjAX`ti1{62(!?w-@s6_~ zFIfApZ$h2?6#@*Po2c2O5e5p%F+uN|7-Z~}!G_bfL3b)Z-qA!5pGeJEm0lG`tLUr4 zak@l7t8+tUDWC{G^>859C9VyY9jotxb!H_w$+>7T*Z`uu6;yRdjb{jFWk)U@osA#T z3~wJV!57CNkl%@Srm+ccoXuUyxI6#Gvuz-22jgj!UNfksp`#z&Gid>j+iOrB50azb zlS484rB*E_dcEEHV=$3E>;p=F+S*t4e(lo6sgmYWK`X-N(%OdHX~@2~A|EfK4YF2x zzk_S|iqzqUGEJ!{e?AnW2SE4EIPDP`0U+7tgNEZfQ;wU^AGm^VO+mEx>n4+9Si>~FN~w5J3QF?!WBUX@I@{j@k=LSh zMeFm%^II{sU6kOqSERU!EfqBB)5gN3K$I6^1ZtWb_VB?Cx|=v_=8@Zvhd7#YiTUWc z)ID8=T4r~w9Z|MLP3qs(InKA=6%5mXfohGRCLVZ;1#!B54q9GO77!=fDV$dbF=qvhH@icUH1k<-B3k`480A}{%ZJ9W1%2g-s09* zkxOxlK9%`ACva$$lVTMp(n9zYxg?D>3isAp#eU zZ}1G8xK~X@#R;y@pc0taFouIgGXg9s8F05;P$QRc8g?B}tg6rR& z{dC(b_!>(S4+#F`dQDQmgao)Ew8fNSFpY1i1-0X`%XZKz4Myp}4l!iK6XmN=B2UBA z5QiRwYPg8BR#o$ViHBn>?dla-42`?9hcgaQM&aMjv8dW!?<$#ECz)=`4KbPFDzIFY zRDX$lYH9O5$qsL@v7&*#R2!l^(t+-{&ebM9)}kRi)8nzvF%pqlH$e4#Wt3NEM&mrs z+Ssl*AF-RgqD@u$2sE756`er;fqrw|Nd#HE0fq7Pa1AiK@iO!$sGFhlDx6)@fqDKh zKm(}oTgi^RZb`gPpn}MO?t)iEM}f&1lJxybNQJtz@J)tpR3qm4RL_adl|Ye!{g<;m4kW@;>- z>jQk5JaYW2dsgz?A{45BCNTd*4XpE|I7f=0@lrv*uowHviE;!6-aX=JIEt4Y5v5A( z$sJqJq0-_CQthsEvJ(ukN2il*QLWgCVEtqmsX8;*CykjJoq3kNeOGQ+^@6Z}v+<7# zfriZv6`)?DVs>5$=U;m*9v{rq|HG9gaY|LbhYbVq!lUb4<*L1ylu>OSO#%T}K}J6I z%}|FG|BU1K>G~@_-PVXtn{x}9$CLK4$8{g^cV6VG@)0>)3}y#I0{t6Et?p`tSUf;~ zn?a-^n%s8H(6|azY#H#IP;FSaXizQ|!J)#Pp-;-LMnHs$MiQxo52HZ#VW>c==TY21 zr`tOIILqU(G)2>`LEA59*YCD8F zyNnJQn(ZtdYs^>7`SnR$xr1cz12aD6P zr(#TT)*$QD3cIS!@iJc&yroL|J=AEV#(<-K^Z>8wX2H#ua4jVo&}EsR*EIHzpn2jj z@^*xBgpW=cGU?FQD2pfi?rMC3F7FF3r}Maq97S<(-Xeh#-$=0URw6zv1&7~9)_xvb z5FjiRvn{*lD(S`C&-uxtCtGM4L8b?fZy2>Ct_>1R{=ILX*`!o2L@Krk-i6-VH8QRWxn|lxLwaaPZmG))_~5v5G-=POuA-54xH5>{@ru( z$sW`Qp42}*^~uv+s2*Q%Vm4xZl=nN;dv_{p!PU*FAOwoiH*RgKr`~roLX-xB=9^bM z%dGh$B-z)4rT`l%uZiPN*|I1)&&!fc;(^b0#HFl!PUzE)LO16+3c^arkk${az1B2e z5o!Hk|D?(K<97xP!}8iX5TKA=TL?wcTj;+3{3ng1GiWZ7zmvuM6_oTU_|K!9HU$U` zO-b^ "" Then bericht.KorrAdresse = bericht.KorrAdresse.Replace(Chr(13) & Chr(10), Chr(13)) If InStr(bericht.KorrAdresse, Chr(13)) > 0 Then @@ -48,7 +57,8 @@ Public Class usrCntlSeriendruck Else WordDoc.FormFields("txtAdresseZeile1").Range.Text = bericht.Name.Trim WordDoc.FormFields("txtAdresseZeile2").Range.Text = bericht.Straße - WordDoc.FormFields("txtAdresseZeile3").Range.Text = bericht.LandKz & " " & bericht.Ort + WordDoc.FormFields("txtAdresseZeile3").Range.Text = bericht.Ort + WordDoc.FormFields("txtAdresseZeile4").Range.Text = cProgramFunctions.getLandBez_fromISO1Land(bericht.LandKz, "", cbxErstSprache.SelectedItem.value).ToString.ToUpper End If WordDoc.FormFields("Datum").Range.Text = bericht.MWST diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cUTA.vb b/VERAG_PROG_ALLGEMEIN/Classes/cUTA.vb index bf7bad3c..dc047385 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cUTA.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cUTA.vb @@ -831,6 +831,130 @@ Public Class cUTA End Class + + Public Class UTADocuments + + Property Id As Integer + Property DocumentName As String + Property DocumentTyp As String + Property Zeitstempel As DateTime + Property daId As Integer + Property KundenNr As Integer + Property RechnungsNr As String + Property Datum As Object = Nothing + + Public hasEntry = False + + Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL + + Sub New(Id) + Me.Id = Id + LOAD() + End Sub + + Sub New() + 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)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DocumentName", DocumentName)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("DocumentTyp", DocumentTyp)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Zeitstempel", Zeitstempel)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("daId", daId)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KundenNr", KundenNr)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("RechnungsNr", RechnungsNr)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum", Datum)) + Return list + End Function + + Public Function SAVE() As Boolean + Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList() + + Dim sqlstr = " BEGIN TRAN If EXISTS(Select * FROM tblUTADocuments WHERE Datum=@Datum AND KundenNr = @KundenNr AND RechnungsNr=@RechnungsNr ) " & + " BEGIN " & getUpdateCmd() & " End " & + " Else " & + " BEGIN " & getInsertCmd() & " End " & + " commit tran " + + Return SQL.doSQLVarList(sqlstr, "FMZOLL", , list) + End Function + + Public Sub LOAD() + Try + hasEntry = False + Using conn As SqlConnection = SQL.GetNewOpenConnectionFMZOLL() + Using cmd As New SqlCommand("Select * FROM tblUTADocuments WHERE Id=@Id ", conn) + cmd.Parameters.AddWithValue("@Id", Id) + 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 Function getUpdateCmd() As String + Try + Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList() + + Dim str As String = "" + For Each i In list + If Not i.isPrimaryParam Then + str &= "[" & i.Text & "] = @" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & "," + End If + Next + str = str.Substring(0, str.Length - 1) 'wg. ',' + Return (" UPDATE tblUTADocuments SET " & str & " WHERE Datum=@Datum AND KundenNr = @KundenNr AND RechnungsNr=@RechnungsNr") + + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name) + End Try + Return "" + End Function + + + Public Function getInsertCmd() As String + Try + Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList() + Dim str As String = "" + Dim values As String = "" + For Each i In list + If Not i.isPrimaryParam Then + str &= "[" & i.Text & "]," + values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & "," + End If + Next + str = str.Substring(0, str.Length - 1) 'wg. ',' + values = values.Substring(0, values.Length - 1) 'wg. ',' + Return (" INSERT INTO tblUTADocuments (" & str & ") VALUES(" & values & ") ") + Catch ex As Exception + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodBase.GetCurrentMethod.Name) + End Try + Return "" + End Function + + + + End Class + + Public Function readAndSaveUTA(objFileRead As StreamReader, fi As FileInfo, cnt As Integer, Optional onlyTestkunedn As Boolean = False) As Boolean From a6ab0aecc8a745b7f02bad1a5e3d106250c0eddc Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Mon, 30 Dec 2024 12:28:09 +0100 Subject: [PATCH 2/3] Zugferd Sammelrechnung --- SDL/Fakturierung/cFakturierung.vb | 151 ++++++++++-------------- VERAG_PROG_ALLGEMEIN/Classes/cFirmen.vb | 2 + 2 files changed, 65 insertions(+), 88 deletions(-) diff --git a/SDL/Fakturierung/cFakturierung.vb b/SDL/Fakturierung/cFakturierung.vb index 3932ed0b..79de4ad1 100644 --- a/SDL/Fakturierung/cFakturierung.vb +++ b/SDL/Fakturierung/cFakturierung.vb @@ -6,7 +6,8 @@ Imports VERAG_PROG_ALLGEMEIN Imports s2industries.ZUGFeRD Imports System.IO Imports VERAG_PROG_ALLGEMEIN.TESTJSON - +Imports org.omg.PortableServer +Imports GrapeCity.ActiveReports.ReportsCore.Tools Public Class cFakturierung @@ -1927,7 +1928,7 @@ Public Class cFakturierung Dim RechnungsLandKz As String = "" If ROW("RechnungsLandKz") IsNot DBNull.Value AndAlso ROW("RechnungsLandKz") <> "" Then - RechnungsLandKz = cProgramFunctions.getLandBez_fromISO1Land(ROW("RechnungsLandKz"), "", ROW("RechnungSprache")).ToString.ToUpper + RechnungsLandKz = ROW("RechnungsLandKz") 'cProgramFunctions.getLandBez_fromISO1Land(ROW("RechnungsLandKz"), "", ROW("RechnungSprache")).ToString.ToUpper End If @@ -1937,13 +1938,15 @@ Public Class cFakturierung 'If RECHNUNG.Besonderheiten IsNot Nothing Then ' desc.AddNote(RECHNUNG.Besonderheiten.ToString, SubjectCodes.AAI) 'End If + If rpt.txtVermerk.Text IsNot Nothing AndAlso rpt.txtVermerk.Text <> "" Then desc.AddNote(rpt.txtVermerk.Text.ToString, SubjectCodes.AAI) desc.AddNote("Es bestehen Rabatt- und Bonusvereinbarungen.", SubjectCodes.AAK) desc.SetBuyer(ROW("RechnungsName 1") & " " & Rechnugnsname2, RechnungsOrt, RechnungsOrt, RechnungsStraße, GetCountryCodeFromLandKZ(RechnungsLandKz, vatBuyer), IIf(Not IsDBNull(ROW("RechnungsKundenNr")), ROW("RechnungsKundenNr"), "")) - desc.SetSeller(FIRMA.Firma_Bez, FIRMA.Firma_Ort, FIRMA.Firma_Ort, FIRMA.Firma_Straße, GetCountryCodeFromLandKZ(FIRMA.Firma_LandKz, vatSeller)) + + If FIRMA.Firma_Steuernummer IsNot Nothing Then desc.AddSellerTaxRegistration(FIRMA.Firma_Steuernummer, TaxRegistrationSchemeID.FC) desc.AddSellerTaxRegistration(FIRMA.Firma_UID.ToString.Replace("UID: ", ""), TaxRegistrationSchemeID.VA) ' Optionally, to support Peppol----------------------------- @@ -1965,108 +1968,79 @@ Public Class cFakturierung steuerProzenFaktor = steuerProzent * 100 End If + Dim einzelpreis As Double = 0 Dim sumNetto As Double = 0 - '--------------------------------------------------------------------------------- - '--------------------------------TODO--------------------------------------------- - '--------------------------------------------------------------------------------- + For Each pos As DataRow In SR_DT.Rows - 'AddHandler rpt.Detail.Format, Sub() - ' ' rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString - ' ' rpt.lblLKWNr.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString + Dim SteuerpflichtigerBetrag As Double = 0 + Dim SteuerfreierBetrag As Double = 0 + Dim anzahl As Double = 0 + Dim bez As String = "" - ' rpt.lblLeistungNr.Text = checkNull(rpt.Fields.Item("LeistungsNr").Value) - ' rpt.txtLeistung.Text = checkNull(rpt.Fields.Item("LeistungsBez").Value) + Dim einzepreis = 0 - ' If Not ROW("Lastschrift") Then - ' If checkNull(rpt.Fields.Item("LeistungsNr").Value) = "750" Then - ' strText = "Pos. 750 kann bei Zahlung innerhalb 10 Tagen gekürzt werden." - ' End If - ' End If + einzelpreis = IIf(pos.Item("SteuerpflichtigerBetrag") > 0, pos.Item("SteuerpflichtigerBetrag") / checkNull(pos.Item("Anzahl")), pos.Item("SteuerfreierBetrag") / checkNull(pos.Item("Anzahl"))) - - ' If rpt.Fields.Item("Belegdaten") IsNot Nothing AndAlso rpt.Fields.Item("Belegdaten").Value IsNot Nothing Then - ' rpt.txtLeistung.Text &= vbNewLine & checkNull(rpt.Fields.Item("Belegdaten").Value) - ' End If - - ' rpt.lblAnzahl.Text = checkNull(rpt.Fields.Item("Anzahl").Value) - ' ' rpt.lblBetrag.Text = rpt.Fields.Item("betrag").Value - - ' Dim stPfl As Double = 0 - ' Dim stFrei As Double = 0 - - ' If IsNumeric(checkNull(rpt.Fields.Item("SteuerpflichtigerBetrag").Value)) Then stPfl = CDbl(rpt.Fields.Item("SteuerpflichtigerBetrag").Value()) - ' rpt.lblSteuerpflichtig.Text = If(stPfl <> 0, CDbl(stPfl).ToString("N2", Globalization.CultureInfo.CurrentCulture), "") - ' If IsNumeric(checkNull(rpt.Fields.Item("SteuerfreierBetrag").Value)) Then stFrei = CDbl(rpt.Fields.Item("SteuerfreierBetrag").Value()) - ' rpt.lblSteuerfrei.Text = If(stFrei <> 0, CDbl(stFrei).ToString("N2", Globalization.CultureInfo.CurrentCulture), "") - - - ' sumSteuerpflichtig += stPfl - ' sumSteuerfrei += stFrei - - ' ' Anz += 1 - ' ' gesAnz += 1 - - ' ' If Anz Mod 2 = 0 Then - ' ' rpt.Detail.BackColor = Color.FromArgb(240, 240, 240) - ' 'Else - ' ' rpt.Detail.BackColor = Color.White - ' ' End If - ' 'rpt.Line10.Height = rpt.Detail.Height - ' End Sub - - 'AddHandler rpt.ReportFooter1.Format, Sub() - ' rpt.lblSteuerpflichtigGes.Text = If(sumSteuerpflichtig <> 0, (sumSteuerpflichtig).ToString("N2", CultureInfo.CurrentCulture), "") - ' rpt.lblSteuerfreiGes.Text = If(sumSteuerfrei <> 0, (sumSteuerfrei).ToString("N2", CultureInfo.CurrentCulture), "") - - - ' Dim steuerProz As Double = 0 - ' Dim steuerBez As String = "" - - ' Dim dt2 As DataTable = SQL.loadDgvBySql("SELECT TOP 1 isnull([Steuersatz %],0),isnull([Steuerbezeichnung],'') FROM [Steuertabelle] WHERE [Steuerschlüssel]='" & ROW("Steuerschlüssel") & "'", "FMZOLL") - ' If dt2 IsNot Nothing AndAlso dt2.Rows.Count > 0 Then - ' steuerProz = dt2.Rows(0)(0) - ' steuerBez = dt2.Rows(0)(1) - ' End If - - ' rpt.lblSteuersatz.Text = steuerBez - ' rpt.lblSteuerbetrag.Text = If((sumSteuerpflichtig * steuerProz) <> 0, (sumSteuerpflichtig * steuerProz).ToString("N2", CultureInfo.CurrentCulture), "") - ' rpt.lblZWSumme.Text = (sumSteuerpflichtig + sumSteuerfrei).ToString("N2", CultureInfo.CurrentCulture) - ' rpt.lblSumme.Text = (sumSteuerpflichtig + sumSteuerfrei + (sumSteuerpflichtig * steuerProz)).ToString("N2", CultureInfo.CurrentCulture) - ' rpt.Label46.Text = If(ROW("Währungscode") IsNot DBNull.Value, ROW("Währungscode"), "EUR") - - ' If sumSteuerfrei = 0 Or sumSteuerpflichtig = 0 Then - ' rpt.lblZwText.Visible = False - ' rpt.lblZWSumme.Visible = False - ' End If + Dim tradeLineItemNew As TradeLineItem = desc.AddTradeLineItem( + name:=checkNull(pos.Item("LeistungsBez")), + billedQuantity:=Convert.ToDecimal(checkNull(pos.Item("Anzahl"))), + unitCode:=QuantityCodes.C62, ' immer in Stück + netUnitPrice:=Convert.ToDecimal(einzelpreis), + grossUnitPrice:=Convert.ToDecimal(einzelpreis), + categoryCode:=IIf(pos.Item("SteuerpflichtigerBetrag") > 0, TaxCategoryCodes.S, TaxCategoryCodes.Z), + taxPercent:=IIf(pos.Item("SteuerpflichtigerBetrag") > 0, Convert.ToDecimal(steuerProzent * 100), 0), + taxType:=IIf(pos.Item("SteuerpflichtigerBetrag") > 0, TaxTypes.VAT, TaxTypes.VAT) + ) + Dim netUnitPrice = Convert.ToDecimal(einzelpreis) + Dim netPricePos = netUnitPrice * Convert.ToDecimal(checkNull(pos.Item("Anzahl"))) + sumNetto += netPricePos + 'For Each search As GrapeCity.ActiveReports.SectionReportModel.ARControl In rpt.Detail.Controls + ' If search.Name = "lblAnzahl" Then + ' anzahl = IIf(DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text] <> "", DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text], 0) + ' End If + ' If search.Name = "lblSteuerpflichtig" Then + ' SteuerpflichtigerBetrag = IIf(DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text] <> "", DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text], 0) + ' End If - ' End Sub + ' If search.Name = "lblSteuerfrei" Then + ' SteuerfreierBetrag = IIf(DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text] <> "", DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.Label).[Text], 0) + ' End If + ' If search.Name = "txtLeistung" Then + ' bez = IIf(DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.TextBox).[Text] <> "", DirectCast(search, GrapeCity.ActiveReports.SectionReportModel.TextBox).[Text], 0) + ' End If - AddHandler rpt.Detail.Format, Sub() + 'If bez <> "" Then - Dim einzelpreis As Double = IIf(rpt.Fields.Item("SteuerpflichtigerBetrag").Value > 0, rpt.Fields.Item("SteuerpflichtigerBetrag").Value / checkNull(rpt.Fields.Item("Anzahl").Value), rpt.Fields.Item("SteuerfreierBetrag").Value / checkNull(rpt.Fields.Item("Anzahl").Value)) + ' einzelpreis = IIf(SteuerpflichtigerBetrag > 0, SteuerpflichtigerBetrag / checkNull(anzahl), SteuerfreierBetrag / checkNull(anzahl)) - Dim tradeLineItemNew As TradeLineItem = desc.AddTradeLineItem( - name:=checkNull(rpt.Fields.Item("LeistungsBez").Value), - billedQuantity:=Convert.ToDecimal(checkNull(rpt.Fields.Item("Anzahl").Value)), - unitCode:=QuantityCodes.C62, ' immer in Stück - netUnitPrice:=Convert.ToDecimal(einzelpreis), - grossUnitPrice:=Convert.ToDecimal(einzelpreis), - categoryCode:=IIf(rpt.Fields.Item("SteuerpflichtigerBetrag").Value > 0, TaxCategoryCodes.S, TaxCategoryCodes.Z), - taxPercent:=IIf(rpt.Fields.Item("SteuerpflichtigerBetrag").Value > 0, Convert.ToDecimal(steuerProzent * 100), 0), - taxType:=IIf(rpt.Fields.Item("SteuerpflichtigerBetrag").Value > 0, TaxTypes.VAT, TaxTypes.VAT) - ) - Dim netUnitPrice = Convert.ToDecimal(einzelpreis) - Dim netPricePos = netUnitPrice * Convert.ToDecimal(checkNull(rpt.Fields.Item("Anzahl").Value)) - sumNetto += netPricePos + ' Dim tradeLineItemNew As TradeLineItem = desc.AddTradeLineItem( + ' name:=checkNull(bez), + ' billedQuantity:=Convert.ToDecimal(checkNull(anzahl)), + ' unitCode:=QuantityCodes.C62, ' immer in Stück + ' netUnitPrice:=Convert.ToDecimal(einzelpreis), + ' grossUnitPrice:=Convert.ToDecimal(einzelpreis), + ' categoryCode:=IIf(SteuerpflichtigerBetrag > 0, TaxCategoryCodes.S, TaxCategoryCodes.Z), + ' taxPercent:=IIf(SteuerpflichtigerBetrag > 0, Convert.ToDecimal(steuerProzent * 100), 0), + ' taxType:=IIf(SteuerpflichtigerBetrag > 0, TaxTypes.VAT, TaxTypes.VAT) + ' ) + ' Dim netUnitPrice = Convert.ToDecimal(einzelpreis) + ' Dim netPricePos = netUnitPrice * Convert.ToDecimal(checkNull(anzahl)) + ' sumNetto += netPricePos - End Sub + ' bez = "" + + ' End If + + 'Next + + Next 'Summe aller Rechnungspositions-Nettobeträge der Rechnung @@ -3850,6 +3824,7 @@ Public Class cFakturierung sumSteuerpflichtig += stPfl sumSteuerfrei += stFrei + ' Anz += 1 ' gesAnz += 1 diff --git a/VERAG_PROG_ALLGEMEIN/Classes/cFirmen.vb b/VERAG_PROG_ALLGEMEIN/Classes/cFirmen.vb index 6b5d8b5d..5b73dafb 100644 --- a/VERAG_PROG_ALLGEMEIN/Classes/cFirmen.vb +++ b/VERAG_PROG_ALLGEMEIN/Classes/cFirmen.vb @@ -28,6 +28,7 @@ Public Class cFirmen Property Firma_E_Mail_Mahnungen As Object = Nothing Property Firma_Webadresse As Object = Nothing ' NVARCHAR (40) NULL, Property Firma_LandKz As Object = Nothing ' NVARCHAR (40) NULL, + Property Firma_Steuernummer As Object = Nothing Property Firmengruppe As Object = Nothing @@ -72,6 +73,7 @@ Public Class cFirmen list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Firma_Webadresse", Firma_Webadresse)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Firma_LandKz", Firma_LandKz)) list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Firmengruppe", Firmengruppe)) + list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Firma_Steuernummer", Firma_Steuernummer)) Return list From 1f35a9814b433c598de59c12407e3c75b6e03670 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Mon, 30 Dec 2024 13:23:03 +0100 Subject: [PATCH 3/3] bugfix cam --- SDL/kunden/usrCntlCBAM.vb | 2 +- VERAG_PROG_ALLGEMEIN/cProgramFunktions.vb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/SDL/kunden/usrCntlCBAM.vb b/SDL/kunden/usrCntlCBAM.vb index 1f06ef2c..933ddb4b 100644 --- a/SDL/kunden/usrCntlCBAM.vb +++ b/SDL/kunden/usrCntlCBAM.vb @@ -1092,7 +1092,7 @@ Public Class usrCntlCBAM Dim dt = SQL.loadDgvBySql(SQLSTR, "FMZOLL", 600) If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then - Dim path = VERAG_PROG_ALLGEMEIN.cProgramFunctions.genExcelFromDT_NEW(dt,,,,, False, EORI & "_Detailbericht_" & txtVon._value & "-" & txtBis._value) + Dim path = VERAG_PROG_ALLGEMEIN.cProgramFunctions.genExcelFromDT_NEW(dt,,,,, False, EORI & "_Detailbericht_" & txtVon._value & "-" & txtBis._value,, False) btnCBAM_DS_DAKOSY_Deteil.Tag = path btnCBAM_DS_DAKOSY_Deteil.Enabled = True btnCBAM_DS_DAKOSY_Copy.Enabled = True diff --git a/VERAG_PROG_ALLGEMEIN/cProgramFunktions.vb b/VERAG_PROG_ALLGEMEIN/cProgramFunktions.vb index a0348488..da3a24ad 100644 --- a/VERAG_PROG_ALLGEMEIN/cProgramFunktions.vb +++ b/VERAG_PROG_ALLGEMEIN/cProgramFunktions.vb @@ -270,11 +270,11 @@ BindingFlags.Instance Or BindingFlags.NonPublic, Nothing, [Control], New Object( If autoAdjust Then 'Spaltenbreite auto: - wb.Worksheets(0).Columns().AdjustToContents() + If wb.Worksheets(0).ColumnCount > 0 Then wb.Worksheets(0).Columns().AdjustToContents() End If - Dim filename As String = "" + Dim filename As String = "" If optFileName <> "" Then filename = sPath & optFileName & endung '".xlsx" While System.IO.File.Exists(filename)