From 2d52113aaac4e6ea6f0639496a81f30c5e3019a9 Mon Sep 17 00:00:00 2001 From: Andreas Luxbauer Date: Mon, 29 Jun 2026 09:56:10 +0200 Subject: [PATCH] cbam --- .../frmRechnungenSuche.Designer.vb | 43 +++++---- SDL/Fakturierung/frmRechnungenSuche.vb | 89 ++++++++++++++++++ SDL/Resources/VERAG_CBAM_Report_Template.xlsx | Bin 65888 -> 67137 bytes .../usrCntlSpeditionsBuchSuche.vb | 20 ++-- SDL/cProgramFunctions.vb | 53 ++++++++++- SDL/kunden/usrCntlCBAM.vb | 31 +++--- 6 files changed, 193 insertions(+), 43 deletions(-) diff --git a/SDL/Fakturierung/frmRechnungenSuche.Designer.vb b/SDL/Fakturierung/frmRechnungenSuche.Designer.vb index f9cf363b..9275bf63 100644 --- a/SDL/Fakturierung/frmRechnungenSuche.Designer.vb +++ b/SDL/Fakturierung/frmRechnungenSuche.Designer.vb @@ -108,6 +108,7 @@ Partial Class frmRechnungenSuche Me.Label17 = New System.Windows.Forms.Label() Me.txtMaxSrch = New VERAG_PROG_ALLGEMEIN.MyTextBox() Me.pnlBerichte = New System.Windows.Forms.Panel() + Me.PictureBox1 = New System.Windows.Forms.PictureBox() Me.Button8 = New System.Windows.Forms.Button() Me.MenuStrip2 = New System.Windows.Forms.MenuStrip() Me.ToolStripMenuItem2 = New System.Windows.Forms.ToolStripMenuItem() @@ -141,7 +142,7 @@ Partial Class frmRechnungenSuche Me.pnlTop = New System.Windows.Forms.Panel() Me.PictureBox5 = New System.Windows.Forms.PictureBox() Me.TestToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() - Me.PictureBox1 = New System.Windows.Forms.PictureBox() + Me.RechnungsReportgEinschränkungenImFilterToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() CType(Me.SplitContainer, System.ComponentModel.ISupportInitialize).BeginInit() Me.SplitContainer.Panel1.SuspendLayout() Me.SplitContainer.Panel2.SuspendLayout() @@ -157,13 +158,13 @@ Partial Class frmRechnungenSuche Me.cntxtCntxtSpeditionsbuch.SuspendLayout() Me.pnlOpt.SuspendLayout() Me.pnlBerichte.SuspendLayout() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit() Me.MenuStrip2.SuspendLayout() Me.MenuStrip1.SuspendLayout() Me.pnl.SuspendLayout() Me.ctxtRg.SuspendLayout() Me.pnlTop.SuspendLayout() CType(Me.PictureBox5, System.ComponentModel.ISupportInitialize).BeginInit() - CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' 'SplitContainer @@ -1560,6 +1561,17 @@ Partial Class frmRechnungenSuche Me.pnlBerichte.Size = New System.Drawing.Size(921, 68) Me.pnlBerichte.TabIndex = 6 ' + 'PictureBox1 + ' + Me.PictureBox1.BackgroundImage = Global.SDL.My.Resources.Resources.fragezeichen + Me.PictureBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom + Me.PictureBox1.Location = New System.Drawing.Point(900, 20) + Me.PictureBox1.Name = "PictureBox1" + Me.PictureBox1.Size = New System.Drawing.Size(18, 19) + Me.PictureBox1.TabIndex = 132 + Me.PictureBox1.TabStop = False + Me.PictureBox1.Visible = False + ' 'Button8 ' Me.Button8.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) @@ -1706,14 +1718,14 @@ Partial Class frmRechnungenSuche Me.MenuStrip1.Location = New System.Drawing.Point(343, 23) Me.MenuStrip1.Name = "MenuStrip1" Me.MenuStrip1.Padding = New System.Windows.Forms.Padding(5, 2, 0, 2) - Me.MenuStrip1.Size = New System.Drawing.Size(182, 28) + Me.MenuStrip1.Size = New System.Drawing.Size(302, 28) Me.MenuStrip1.TabIndex = 43 Me.MenuStrip1.Text = "Kundenauswertungen" ' 'KundenauswertungenToolStripMenuItem1 ' Me.KundenauswertungenToolStripMenuItem1.BackColor = System.Drawing.Color.FromArgb(CType(CType(0, Byte), Integer), CType(CType(54, Byte), Integer), CType(CType(128, Byte), Integer)) - Me.KundenauswertungenToolStripMenuItem1.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripMenuItem1, Me.EVOLOGSammelrechnungAuswählenToolStripMenuItem, Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem}) + Me.KundenauswertungenToolStripMenuItem1.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripMenuItem1, Me.EVOLOGSammelrechnungAuswählenToolStripMenuItem, Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem, Me.RechnungsReportgEinschränkungenImFilterToolStripMenuItem}) Me.KundenauswertungenToolStripMenuItem1.Font = New System.Drawing.Font("Segoe UI", 10.0!) Me.KundenauswertungenToolStripMenuItem1.ForeColor = System.Drawing.Color.White Me.KundenauswertungenToolStripMenuItem1.Image = Global.SDL.My.Resources.Resources.statistik_small @@ -1725,21 +1737,21 @@ Partial Class frmRechnungenSuche ' Me.ToolStripMenuItem1.Image = CType(resources.GetObject("ToolStripMenuItem1.Image"), System.Drawing.Image) Me.ToolStripMenuItem1.Name = "ToolStripMenuItem1" - Me.ToolStripMenuItem1.Size = New System.Drawing.Size(372, 24) + Me.ToolStripMenuItem1.Size = New System.Drawing.Size(376, 26) Me.ToolStripMenuItem1.Text = "TRANSFERRY/360 (Sammelrechnung auswählen)" ' 'EVOLOGSammelrechnungAuswählenToolStripMenuItem ' Me.EVOLOGSammelrechnungAuswählenToolStripMenuItem.Image = CType(resources.GetObject("EVOLOGSammelrechnungAuswählenToolStripMenuItem.Image"), System.Drawing.Image) Me.EVOLOGSammelrechnungAuswählenToolStripMenuItem.Name = "EVOLOGSammelrechnungAuswählenToolStripMenuItem" - Me.EVOLOGSammelrechnungAuswählenToolStripMenuItem.Size = New System.Drawing.Size(372, 24) + Me.EVOLOGSammelrechnungAuswählenToolStripMenuItem.Size = New System.Drawing.Size(376, 26) Me.EVOLOGSammelrechnungAuswählenToolStripMenuItem.Text = "EVOLOG (Sammelrechnung auswählen)" ' 'ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem ' Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Image = CType(resources.GetObject("ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Image"), System.Drawing.Image) Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Name = "ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem" - Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Size = New System.Drawing.Size(372, 24) + Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Size = New System.Drawing.Size(376, 26) Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Text = "ZF Friedrichshafen AG (Zeitraum auswählen)" Me.ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Visible = False ' @@ -1891,16 +1903,12 @@ Partial Class frmRechnungenSuche Me.TestToolStripMenuItem.Size = New System.Drawing.Size(150, 19) Me.TestToolStripMenuItem.Text = "test" ' - 'PictureBox1 + 'RechnungsReportgEinschränkungenImFilterToolStripMenuItem ' - Me.PictureBox1.BackgroundImage = Global.SDL.My.Resources.Resources.fragezeichen - Me.PictureBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom - Me.PictureBox1.Location = New System.Drawing.Point(900, 20) - Me.PictureBox1.Name = "PictureBox1" - Me.PictureBox1.Size = New System.Drawing.Size(18, 19) - Me.PictureBox1.TabIndex = 132 - Me.PictureBox1.TabStop = False - Me.PictureBox1.Visible = False + Me.RechnungsReportgEinschränkungenImFilterToolStripMenuItem.Image = Global.SDL.My.Resources.Resources.Excel_logo + Me.RechnungsReportgEinschränkungenImFilterToolStripMenuItem.Name = "RechnungsReportgEinschränkungenImFilterToolStripMenuItem" + Me.RechnungsReportgEinschränkungenImFilterToolStripMenuItem.Size = New System.Drawing.Size(376, 26) + Me.RechnungsReportgEinschränkungenImFilterToolStripMenuItem.Text = "Rechnungs-Report (Einschränkungen im Filter)" ' 'frmRechnungenSuche ' @@ -1934,6 +1942,7 @@ Partial Class frmRechnungenSuche Me.pnlOpt.PerformLayout() Me.pnlBerichte.ResumeLayout(False) Me.pnlBerichte.PerformLayout() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit() Me.MenuStrip2.ResumeLayout(False) Me.MenuStrip2.PerformLayout() Me.MenuStrip1.ResumeLayout(False) @@ -1943,7 +1952,6 @@ Partial Class frmRechnungenSuche Me.pnlTop.ResumeLayout(False) Me.pnlTop.PerformLayout() CType(Me.PictureBox5, System.ComponentModel.ISupportInitialize).EndInit() - CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) End Sub @@ -2065,4 +2073,5 @@ Partial Class frmRechnungenSuche Friend WithEvents Button8 As Button Friend WithEvents RechnungenOhnePositionenToolStripMenuItem As ToolStripMenuItem Friend WithEvents PictureBox1 As PictureBox + Friend WithEvents RechnungsReportgEinschränkungenImFilterToolStripMenuItem As ToolStripMenuItem End Class diff --git a/SDL/Fakturierung/frmRechnungenSuche.vb b/SDL/Fakturierung/frmRechnungenSuche.vb index ddad3a9d..204051cb 100644 --- a/SDL/Fakturierung/frmRechnungenSuche.vb +++ b/SDL/Fakturierung/frmRechnungenSuche.vb @@ -1038,4 +1038,93 @@ Public Class frmRechnungenSuche Dim webAddress As String = "https://wiki.verag.ag/de/abteilungen/verrechnung/xxxx#provisionsverg%C3%BCtung" Process.Start(webAddress) End Sub + + Private Sub RechnungsReportgEinschränkungenImFilterToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RechnungsReportgEinschränkungenImFilterToolStripMenuItem.Click + Me.Cursor = Cursors.WaitCursor + Try + + Dim dt As DataTable = SQL.loadDgvBySql_Param("SELECT + CAST(RechnungsDatum AS DATE) AS InvoiceDate, + RechnungsNr AS InvoiceNumber, + FilialenNr AS BranchNo, + AbfertigungsNr AS CustomsDeclarationNo, + Abfertigungsdatum AS CustomsDeclarationDate, + AvisoID AS TruckID, + CASE + WHEN RechnungsKundenNr = 770931 + AND CHARINDEX('/', KdAuftragsNr) > 0 + THEN LTRIM(RTRIM( + LEFT( + KdAuftragsNr, + CHARINDEX('/', KdAuftragsNr) - 1 + ))) + ELSE KdAuftragsNr + END AS CustomerOrderNo, + RechnungsKundenNr AS CustomerNo, + [RechnungsName 1] AS CustomerName, + RechnungsLandKz AS CountryCode, + RechnungsUstIdNr AS CustomerVATNo, + LeistungsNr AS ServiceCode, + LeistungsBez AS ServiceDescription, + RechnungsausgangPositionen.Anzahl AS Quantity, + RechnungsausgangPositionen.Preis AS UnitPrice, + RechnungsausgangPositionen.SteuerfreierBetrag AS NetAmountTaxFree, + RechnungsausgangPositionen.SteuerpflichtigerBetrag AS NetAmountTaxable, + -- Umsatzsteuerbetrag + RechnungsausgangPositionen.SteuerpflichtigerBetrag * + ([Steuersatz %] - 1) AS VATAmount, + -- Bruttobetrag steuerpflichtiger Teil + RechnungsausgangPositionen.SteuerpflichtigerBetrag * + [Steuersatz %] AS GrossAmountTaxable, + -- Gesamtbetrag + RechnungsausgangPositionen.SteuerfreierBetrag + + (RechnungsausgangPositionen.SteuerpflichtigerBetrag * + [Steuersatz %]) AS GrossAmountTotal, + [Steuersatz %] AS VATRate, + Währungscode AS CurrencyCode, + CASE + WHEN ROW_NUMBER() OVER ( + PARTITION BY Rechnungsausgang.RK_ID + ORDER BY RechnungsausgangPositionen.LeistungsNr + ) = 1 + THEN Wert + END AS GoodsValue, + RechnungsausgangPositionen.AufschubkontoNr AS DefermentAccountNo, + RechnungsausgangPositionen.Weitere_Reg_Nr AS AdditionalReferenceNo, + [LKW Kennzeichen] AS VehicleRegistrationNo, + Grenze AS BorderCrossing + FROM [VERAG].[dbo].[Rechnungsausgang] + inner join Adressen on RechnungsKundenNr=AdressenNr + inner join RechnungsausgangPositionen on Rechnungsausgang.RK_ID= RechnungsausgangPositionen.rk_id + where 1=1 " & getRechnungsAusgangWhere() & " order by rechnungsdatum,RechnungsNr,CustomerNo, LeistungsNr ", "FMZOLL",, getSpedbuchList()) + + Dim Path = "" + If dt IsNot Nothing And dt.Rows.Count > 0 Then + Dim lastRow As Integer = dt.Rows.Count + 1 + + Dim fileName As String = cProgramFunctions.genExcelFromDT_NEW(dt, + rangeAsWaehrung:={ + "N2:N" & lastRow, ' UnitPrice + "O2:O" & lastRow, ' NetAmountTaxFree + "P2:P" & lastRow, ' NetAmountTaxable + "Q2:Q" & lastRow, ' VATAmount + "R2:R" & lastRow, ' GrossAmountTaxable + "S2:S" & lastRow, ' GrossAmountTotal + "V2:V" & lastRow ' GoodsValue + }, + ShowAutoFilter:=True, + HeaderTxt:="", + waehrungsZeichen:="", + fitCellsToContent:=True, + Landscape:=True, + fitWideToOnePage:=True, + openFile:=True) + + End If + + Catch ex As Exception + MsgBox(ex.Message & ex.StackTrace) + End Try + Me.Cursor = Cursors.Default + End Sub End Class \ No newline at end of file diff --git a/SDL/Resources/VERAG_CBAM_Report_Template.xlsx b/SDL/Resources/VERAG_CBAM_Report_Template.xlsx index dd6f3fa1cc4fdb4ba0d3a0f03e6b4609f6b1a909..84ba5e85bc355c5bd19dd3ba86bb0a2fc8d7c19c 100644 GIT binary patch delta 39989 zcmce;cRbbo|37|^jxr7r3Wri6E26Rqkun=7AtWPvovfEpc2-K+Bcp-rm6biS_uj`o z+57iAM|IWpzOL`*^ZDMspWi<@%XvLLUXSN}J)YM!>~^Tk@6hLGM+i+~5pzQ?y^qjC z56pTmP&q|s?FXuV@u+xq*o%mgQBu6)Akk^SJkLhoV?+2t`w?3;rb3DRh+WY*9)6(h< z=-hbuJuf&hEbpjtoDK4dzt6ESiViA)32mr{=q&~5{d}9-Tx{NVuD)+lNt!4qeo0ZK z{G7aIUE8bCL)!Xu-064?Ri@xXDFUZgpEWuR)K`#sel?z_bD4uCVCnj7ZHi}EGcs7; znB)iQMPBW8aC|g>cE=HwPAvIx?NB1I>IvU>N;>i3u=(5XxJRo~-7)G%*FptQj4FLW z&`QwTlSuXJ`|h81m|yQ7^%zi$e;9c8{VQ1TxGhmN&GFNZgh*!d%jN$rj)OCGY;%^-Fp1! zj!pn2-sv1u^pM;2qeTSA+|0GlD2sO*DOl@3$9YLx&Zv<+B{7MAZN-)otall%-p$0eTVXNN~SbV6mXWaNj=tJIUdR;oO7Zn@5(v7 zItNPGSDBSJQUYYk!#g+|pSPRe2=~oy;K|U_)}XId_p3kIx&H#~VR1728s58?19)cH zicdQ=4KQqW+@d?}WmbF(cmvlVht7{}mV_<%Dl$T*73{azK-!<}Lc#RMT$`Ym? z^5XOn{OhjqvMFR1hk90HX>=MHg51sRdIl1nOtjlg)2&?>tY>5&3Fg$MU30uBBo+~E zwue!to+GM?yX!k`By=%Y)_Pf)!&mye5if#cbhc;CghSwiS3-e`DMe9QY?uP)h6;j3M{ zuLoufwM0+$-rYLw`j94ir1az0B6RqmYg}(o{i;=buWGlX&sn$c4^y%--mnn`qj#Pq z#Lku6P5tEd;Z<*3JoSy+N~SHh3$78`xn3rKUub`MK|B0zr{NKnr^++cdM@|Asa*YH zJFM_%xYWYkQ}U`j#3+7L<0_}gOEdNTkp_d{0GD2E51%Odx#O-m<6Mn07N5!PP%hO_ zCi|asx_*9>mQ2!<>{VuY-b&eO=1g-IZ}FtWHuU=mze5yl`PgOrRd_`*tbuVS3d*|y|;QWne}?xKuD#I z)WhkT=cs5rvupJ6YbCVv7PI1K5?a{2>JH(x-b5;^+G`tw~Y8WMqE~3 z9U92QFAvyw1kq_ghrGwNK4J*>y*)04_B+z4_AIrdV_?Sj1gujfntO94jOJ@G?0gzq zD#sp}pDUoX6L`JnyK0lum~-^z?xTR794_v@P5t-vLhtOJiWE9KY>FS6c-)TiS^7LU zv{UDN=IA<8y<6);n%OBTpEdH}jQyS#?(Im1rxJcs=Y2w#Z$mV_7i4yxvnp`%(8RA_!HBIEl%oX^()Pbd^eYK~t6O8HRLaNMg~4E`C)`%nPoF%p;zF4`nWL}wkH5Br zWZQR9WAkJs3E=6D>b|HR05?pK&!}rUFW{H;^-_*deL3D2W3!MO#b>K`r1#Ef1<#mX z&@MH-;C!LZk5AX!PWjG*wA8qdcDWgx3-Rd98k?;zj%P6uXup9YkfpxU-atH;HL3|g z@>oYLRd;PO8@+6otL5CX?4JFoI5J$n6pyHSae0|Zt=}t7EGj%_L@S@T&DAV1^)Vfu zhW*7BEmR^826LwG*zxPFQhnlNil_R!b*Y(hMx4~Ro~0Xe`@voWK6m4Ht+ZO(nCxh< z5Yg4c`@o+6$S?oZC+O+X-0yLofrW3Ux((*?i-ky2VX4y!Nd`~!TjqTpw9r-u!Yuh^ zGtSG&`K-NCrBJ!C(hxwz%?R~bz0NU(i(a-3RcM~-Xyo*FUN&l-y3ZLE?`yfJ;3B{H zJT0GQ=nLx9gX^u7>m6n{E^n+2iR~vc4iXQE&Tk^WCAkxBEiOP@hz5s|!gYM^Ygbsv zgR?pPI+vEubg#X<@Rq7Usg3W~QTuPV4b;qKs=m<|zMi$fOD5qU%par8xh~UBM}6`s z5hDELrHsy%95*v^PKda=he!`OM1`iD)_NwB5LJ0tfKczY5V_lK?3=6_OCFx{(oG(W zhe|Oh$e(}V?)Y_E?|?Fz3=&Zy-i%K#oPy7OI&MCd1J4n@AR^;Q%(b(Vr|F__W!N_P z$x91|Yu|)*IoZ!|9~#PTKBUW2crI+Z@tTunmuI=B>mZBvu{RGPQr)sRSaRy{P=V`A zfit9axw%t(L8FT_D+OU)WE)f7RIl(rTvCW+k5#46n;8hUSDy#F6N-EAGRR z%?~4BUNWeQO)*jnN$D;^{9=!2@^btkZ$2JNULN-sKqmS{+-%UE(Bpa$e&KPvCTDZ1 z!pDK&Ud}r$$tL|Wm+3-8zGxF<1c*IRGMen+zmO8o7M7Tuum)xKviNIpe9LyclCb$2 zktjU%eT2TEFtXG8UTJ1{#P=#~vC(rK=6w+{2}Sc1-{-qucL@YP;B;4BcD((};=ygr zoc-=NUSsq1d*w4h3iIDYUwly=ZpmzM3p0e8(mTj5s|a4v=@xw_IZN=hTuM)QG#xJd zc|kT~M)RZfipJn~NZR){aW2`Q22ySb?>4<|x!R)s$dwy5maij4_VhpB7`ZfRpltKT z)OD`0JL^;KmB#P&d z%qzO-pF8vPB(&SuX-{gA$~v6mN3 zQJA8kn}{V(Y|Gr4$_o)n5iv(XO=6BpULT)K^%NzrGT%JBnEO;ifV7!b%l-ao_3)0Y zI!lw}SlTn{vOZTQ2wk3w$u&e9NBLI5Y14hhu3QiBy+hR{ds@!IjO3W^RryPkTGmr9 zA9ElZj}tMS(&(@Jb_m*2B7cJ1JF-d`>4)*G>>d>ps$M?ib;qNeAJ!N2NT@U6Q%BE> zHN*`EJ$u2Y1WeR#j*Z^(cyl$V?wlue<-ySf1S18Slz1CSn zNBr%2f6YgV6K=x`WJ0zo?n-j~v~C~#?hK+g6^uRcc3YpMk?z`aKxXl>HM!Z3&&D2} z?WN!GoimJo#yaGdc)G{0(J+hfc?Vl>_H%AL{hcGv@X{Z;`&w%_s+c}m+_06dKVqkn zRa-|cnLE&O>4S&--9{pJZRAtc?kmsgpBC@XGM^n$M@BGEA&H*o_&Fw4wT_>U+>K2yC!2- zBrg|yWcrfppF_$)GTL+x&M|z=8GlO~zwVt?{iD(E#0;D2F;zi9maNY+@*l_!jx?6N zlkp)s_j0VA+-r#~m@+@%!;Ut=ny|MI-*QzHXYh4`Z>A;0e3?hhCyOkO4}bP}LbrId z^zHhSJLKOM3}$unEpIlwg68TO_;sT0lz%U^NLW$Qx?kp|C!M}P%6i>wA(M&5bokhG z*}dw+3*YlXuP$Egm!w!9CoV(WOcK#`_t! z^M^wnGgHXqGW_%38(W?pvv5S$2`(gZ)nYELol|)kq5UD&7%Z6oRWL-EU${kuG;1w? z!*^UYLU!ci;TNIDRH=#xV)=?@;`y>>URG}3zQahtc-VD}(Yu`MeLPoq=4pDR^sk zAE$H9y)vnk`(NWFn_G2Np;@{dN*3i^UY9lsv3xwfl5)=NQv6ESvl>#TcpZ0a&~SqS zXOoRG<7eUPWg^hRsj2e#kIeQJ@XO=wnvmFNDh~>#cCz68Se)~PMQS}AYk_A``Wx3Y zg-%py9_}dgm#UVA)o*Z+UGk@TY`~l?;83ByutBiUNbpfihO+zeGicmf?`dr`Z^&z5 z+mf>B{pz69tA^8}xFz09*a zE^q(7E;vT(Mn-e1pMP^p>KzHyM~{-T4LXls7qk^1NvF2)9q=P($#`O6E8Oi*7iolJ1zV%L))*Q#x5 z^~Z87h9uQr*@DQAP6_#(&o+?vIT`Gfk?pkpLMrcE|Jd>?pA;UyMm_{^o*sMiSDedb(J`;I~JYXo9I}694%V1x0=+o zD7v$?F|Z7YIYah)T0{Gb`>XR}Vvaj~Nm@uoF|iwDCC*z5o7~Z2`)iH9G|_`Q-#5Uo zrHSsWZ5VHvIqxlDc4xn#_jfnCXri6BH#WACbX&LWxVf~7zc^v`R{OM~AA6dKidK%5 ze-kTlTJGLonp|9Dgmxq3MMaApb_F{2(V@8|PAa+UkXe+@`rc}F$?k4$$(PNgy<9!a zSf8Dl*#5S`)=tm%gNoLZ`ORxS;YHJ(MSVK7sRQFdI#=qFs}B)}f9}v_vE9P`4YYj0;w>kw2T1O+aKvIO@Lr-0`#GDir0uoUlJEY|_p6~a zS`Uf~^7HcLG3b{&i<9~aLa60+#b~iFT{>YVSx9t=i2XaQeYVO$M;oj4?=z#d)bEF6 zd{;i+>vxK+%vO7+)iH{q5_w2q7+>AdmKNNr(S2@y_pVA?TER@0mfA)n_(WevN%Luw zl|0v#k9RFrI|eH2)6y2AdMnbP%G0|asL^tw=#zZ8`o-R@W_xX`+`U5So94A9*4qiW zqt6F@(eXQsm&dP~B}`t{vghV!EOz8ku)8(3oW=e=x9xd;v}uXGjg^(t_DpTcmu8_4 zn~jh&+iGIL1-m;1LQy#sMUh+z>uoQ^ZpmwlDuG86x41_V24xz}inE?Vq4Uc6O&LiG zn<|KO?AQDAZPz=94p`}btHrF7X%|g}E#F=5-)XN+T4y{nD`IE(?ei_mjGdx{Rn5Yz z>Mk~+r+bTU1LO##eJ!^}Pwa^bbcdqrVt~@DfO#Rw7H-qTx+@7l& ze0*gk&3V69D_e}eoNfUMFlrWBIA1)rrwzBS=jT71+s~*sE7H}T+_g9Jakf6ZP?h@R z-ZcJnqunFZ;=(kpRIPic&G^}v_2F0faPH!EDYHs;tHA-xu&L4J#Jr-Ii2lk}WI$E+ zU{s@-f`$ttq1JG6?p*fnky+6XiX8HbgR^Y|4o?}Z7t!GzLYuu%e{B-wKJi+&N=*KH z0-p_hnWC1o#uv`(mANz7gP2A$A~nc7Ky&uR;LfD4m`Rtt=jD=--WOAg177n1-}^qQ zPJXy|)wKBD1UGdxx8iPBv=-Pj)rft^*Tr#(;qz@~Y2n;EG(&uZ?}oC(0>9fu>fT(g zOxO&HWH&6Sdp4v8rMB9oTz+Af#IwJ!`GEH(Iy!hKU{T9?dz4XL;8?4PWLO%9yb3~& zu?|*8UgvbzRFk2EgujWIb?lP{G*ET(%;ckwH)9)OZYxbH8L<*8bMi%$gfKq zDfcB!$_!C%Q9`a1|7a^Q7Zcr(!XL0flh=Rt)rJCeRQfWy9avR zD$v%SX}ga`ZY^({-E4J=pf+5rt{-&{32ft^A-t|C`aa;D#N9B;ya(v7=SbZH`-B*+ zxT}&1Ee<`3INm3zd=v58TAm;t>CQb|W*$=LY&jU*$mxMmvukZ1x~ zM+DVfVP9+Y)!`Be`Lztx|b`M>$@gqGqa;(%%|S_UmCCSTyYER z8(pS)MiuQRLH_;2h6~{-t?fVyvi#bB!LVowN@Y{UDY3u4uP#zxKZAF-2%T`g-Dtz+I^P_ zp>&e}triMYT|Ihi)7tKN&=yle#1k0%n!dSpB)L_g%boRu7Z0`y!iiTf6M zR>Ml7!~ywWW-@#*dN=EKqw(9xG0R@mz2*IFhK#4X-}Ss?8JD@AdByMAeKVU6jp`fy zsIpFFz4bM^WFOjHPFKu_|ZiOj@se~zikdjlpWi4j) zLM}z%)g2d$#(56bU2($`CR=gPhR$~BRn?HrkW0$*G}8BTKN-mwDx#TMBSjjxeLQRg zIX<=xUY{IXB(#_>(i`m!uQiw-&?^}X(dcZUYv}(Jx#r9py|d=Q8#btHnwDD`kf31x z(#EauQ+#euN{^&N^of+B6u-_v)oaFP9P#MLM_mSHXY3+<9P--+@9Xc+LyZ#(vfCqe zijHA+6^bG$3J3#ezvbO#omG~iOy+Lly&dz#!#p(7CHBfU%P4kP6V;5#E2+-#guI!& zGmOT&i|H8Abf2R@sWY{+s?BFy;i*!-iOG+a;;BrsJ6TD!UeD35Zt zma$d7X_2!2P`a{GR90#EYqrV!9gFO?0KBJJ28`mzRfTpnh}?WW4tR@ZcU4X-NHO-! zj@sL;Sj~#Q?3zGa*c~s}eGuxI=xjaz*80JoqnBtwS0(@A^y4noJCMeTzq7s5oryaE zq9vCn?sOqO3n|opOl8!jxvgol3oDHI{y~OuIQ)B@Of>j6Y*wb5Q&n?$jrj>;5WG11 zIPYn#qhNF$dqT91gV#Vvmxfr?!aH{EBxk?0f%vSp)fF-MaG7#NrI)cK-O;mr%etUi6b z`JAAvzH3H(CW8w`C2f~iY;T#AH{OTMqrx~1$Fio-bP690yHXNO6qm^-*xM(IN(BO3 zcDR^#uXMTJveW$-F78SfKIRES{ogcy!YEoiJ6Otr>oSml*J|y&>(?f&5_5F%XPDUC?@WK zhL*tNzHs$)l#)Jan8e)5&hm;f(r0vu2`(U96I|)8^0w6B=%cER^Fa$7$QYMX*^&T@uT$JvAE zkuhHPiWD3)lJzi5=fX%i&(=MecC|@iO;Ml0mKpj{XHU3+vLHqBDt-#1L9b;1+|q;r zY5qca`10hX)^zcb7z|ot_++nr0Nl?wd~r#96s*d4dvS@W`l)cBh9|sz1?jaE^ArtT z6Anx#aK{!9TgOM8F`Jpngh;*05sBCINWI!oiTAi(rmXyQ*L!>kMhLYZdxXIjw^Z|W z@YGVwm&5Gs`TCJ`f+j(^?iopK5|Q-C5b1<+m`Z?3bnvB~F;@*0Pq>=4R4&iuz$Uzc z^d2;ADSoesC)}&mR7g0`wlE3a-s>SGTw{Smoaq|D<2P}525)SyIT7F@{BCqf{ERRB zw7RhPXw2p<|FcLvs1~;}*|cWAiIgr|tH?CWwT-eif z-W$Izi0yjqEhOh)&(K~!f_L=BIs9zRm{kJ#`wJNHRB%^Pd5-Q>^7N zXKT0QE~ct^>tS4^+xy3^f{$crwa()D3jJ!&G>ZA*Ti?t_qyDW?n();OR4LfP(xu>dyT}sCZ{tkvd##2wl8tCk^^cmjfB1POw2DZGj4G`@PAqfLSq$cQpBIov;Ww zXu+mTZkjW7q9WpV*jbG`^JCknpF%>c4uTBrpbL6FSksEnD9_w#WpNM=ykQiLynrj+ zJ1ZB{C$=(RZ^FXEtmNl&%H1QTF)qC-H>^;BW5P(;RB&T^*N70s+HcmOQKFiQE^BCs zCr7A)_MkS$J4ZKiC8Jw^x{O^#kR@-*u}>vU1&S?sO2=*64Hegddw) z0_&UoZGH9#DU|tOOU2lb_Cz#tJe~UhS0UAJ?KTE4g1L;B01P@;c zlQmSh4r(XfYof&^n;0(A+)9re*9d@*f;EQah(KT6m;G6g`=f26XjeZabz$<_QM|)t zhgVMej4!#wdxsfdU~N9QotdX|Hn^OCO8H}GB>~&lQ9OOj>)`1n7|r8Kl`ak&$uv$% zyO6aN!Q@b|h(#OpYyU%42RoCAR-VLC#`V%)P^R7Z6Uv}}!?L$Jf@Ag1Ege7h?VJjm zOye<5qOb=Wk2Uk~F{>?W1ZXyc-4eDq^!2{Lf8Ns{Pd*bi`($VJ`e%zhIGioy}3?=qD*scVIxeoT?DJFS< z9;YzkmJA1k+DyV8i6MeYBktyIvMkMPUIo5QA^z?hg<}vC|vTh7Si#>9AbjY2wo}V_PMkwVJWqzhd`bW zC2n|in=Rpl>L&nurKgP+EMmc@db!c7r3H6GI#+uCs?sBj%UiS*(KU#Y0H-)S;bjHu z5(})&IQDdFsbEqSTD(T-p7%5+yD=9PV?m9;Pnj>NB=ELE#pHu0@{6uSh%mOqWhWbh zy+ls2FjmlE^tzashLfd_S$)b0ZXWhOQ#UF>#>-9fQ$7Dl1{WRF=^32tM4C zP|s}ojY`Q77c#n@t0w(WZ7$`{)^B!*hDX=ynleQaSnFmAVKqnhRKz2!bTcQxz-z5D z;rGJI-L?6YtpJI|dmp12k+}HDx{4WQb#Gu&%ZEJ*2}Bsoo8SenB6cH!2Af1ft}OS2 z$sLw0U4Kw25Jd-+>I)ZWd1An(jD9D^a5(P@`|ASz_jL9qZ}Z}_lDZ^{=#l0eY4f=P zSL`)n+Yo#v`PBsZIe>Tqg^p(NceR8dM1KRG2aA4WRiw;c6VA}>(x?5(m z-3`Zq90rDSAyl4l0q~`tkV+j#>%weIrFdh~r3cCCq7>jZ0BP7n=RZ5;!?vxdn3S>7 zH`P7zpzG*lr(gr!bJip=(53mDp7sc3Y&Cf=8DKf0nt%K<=_M0woM6;fH+7;HLQja^S|_2JDNKyd!vAO+E>!2a@-f;$`I!5rKYg zR1suNwhgM3|C;O2o4-ia__pgMMAp9*?^o?M0EXBhj{c5ve&qxwgfo95)tgj84l#7; zC>MMq?+itRo_|9Fve^k@3wE$q(tLG%Mx)J8GKurMtSU;eDo0p z*7^*>wjFQ@dfc9H*0{Ss7pOd|BmjK}q>8!4T@IT@mCGx=ycQsoNOQLby7(bl>iv#(7+SMTEFTP?U#0yz#xc*Rs?01($a1+ARlOZBl)3J@)*THx7R;+)>p*s_h{ zt!0dB{%pDFtiKvgN%PBp)XX5d@!Q1jUg3Cxz*!*T04rbxIaL0eBF_=|>aMSb_LG54 zW)(D+T)Q>uDho9A6)cMi)Qz~_3ayiGG7P*24%X9+b-`ypUMdH8ggKQoJY_jz&+Yezayjj8GGQ(a0&4 z&P_92{H_BBZhtgaCBYfn0$ePX1=W%v-1ryY3dZqG9v1AKSutH&F-ybJfpeX4?tDEV zi%~8oQZ|H6o+K-0gc@;%Yu9q?u_|BJs6>omAAzv!xjOX#7*KHROYz?4PY5fa+dttY z#NyT@CNJ|}x&;WG{hOs4#k<(%P435X7^geH%4`Qf zb=c=4KhhMy2N3o(oIAk1TdeV$H~6L1WGF{E&_A33(KX70Vzml@_3+*S+7`&vo1fS? zrM{y|Eh-aUPc8w$d0PxHnn7HJGzzOT7SUz=llcYb-A(xsmeiFYSmHAqSvZXS}U1$vAv+=#@}J9m?<8U-)^l|BJ& zMip(_y<YYhK_ukH}rJ`oXd2=^l}U1Hl(!VE8-Gn)@k zN|%@jIjCQI);tB0uUzi2F#d&a9rDtz4gkHv_1asUodPhnY$*W*n^#dK!KW(|K3Gfo z2Y-&>eL<>q`Lu>50BTB3|7l1qQKguooS{j{{xRq%`lfa&&Ql?&wc|MBmrYE6DiSEbdl7OFUr&%FL(~bXCR_bs=D}-mt?^Q_B63c0y?P*#xz2#p zcBL4o>K7M;Paniaw?igFviisn?*_1tLHe75>|L|Y2-#2EwmDEB%Nhf^gq8J#;ErPL z=sn>YWio_bYr`nyic%ML!G&@+&j>j%{cu=sv4#}yQdS7a2>#JwQT@%2{t~$VJ$oPv zr)~1UmJY(zuBge!DgPia`mJ~vrW@41>;YIVGc`i#cM=E@_JmK|QIBonpY3lp^!>sR zA`(e9GrknVah~CDAU5^Sss-L97^rl7=7JabuGVDDAnmM%Q75xDvKa#1CR+#rH(*S+ z@K=!aN6!^e*A{DF9qB(&=l>Jtg#P<#1BNhd5(-0UG`(Q)(OD7)VNuOV@e@A4Go29% zV+BH+mGb9CumJ^j{Bk-&4g zx#ezQi&UafZlmJU`5dSGQmOeIpt&tG;jW#R`bS+W1caM4eBrK%CWxisNr17{6FXwH z@33Bg1bM+i+>kZ6k|1c#AdcmvaLli$S6x_}f`2_v38Y!`p)2;de8b*kIveaq=(mIj zXlB<=tds>JdSIK$j>%~TjeBVl?aF%aCbWje`v>uVC5$Ld;YZ>q zaUrY*SDe5mS8cwa_gJY)FR!N~Z+I%W8Y}lf5Co{;13(7wWb`!7m9MW1AI`l0;1%$S zA%JelrunIAu>#_45>|wX&nf=M(4ZfPHS_4e9b{VFz^cO^poJ?Du0jB^lmTSfuDP&V zZ@DINu7l@a|Eke1%y*tDE5Kqt){!*wvo@~{jezwhgTTP8MatWEDdv|eH_On$FtLNb zU*au)AO`?aAm#yLX&xjRdisdJxu#Lqh9H2u)>m?vSQTJUeHDZqSaXJ9BSIRRv2`Fm*B4FTbpM3aD}m=kve z$0%H$rY^j|Dv1NoI>^vU&kV`_6Xef4!ie9^0y+`w1)yD(X8u|4|E^uLxoO-Wth`vF zwW33-#b`BeSaX>(_S$0=#(@%BK;va6bWQIQj@<6@nRgU6H z2sC2Vh$~4HP_My12L&uXks{46)P%+HvZX+rEWqmv@2*$*4l-@kN6!VjK3PHkE1G}( z8rGBl$}?EOoi)^t{=+6^!f`1#^tYJ%eN zv-^O!uWS6L;HM9p(1tD_=zD>_f)GEGS**Ix2kPE|{6Ez_n4L6c1F8Qr#=h?dC=dgS_r@{c zC{}@kF%o$GD}}}2UW!5jC5w9mQd#Vn^iQDx-hq~8R#>sa5)o`v+v2=z|pMEL~UcpLJz%N?@*e7SXaKZJUC7&`7^neaVu|XJ?7}|kZq?dp9W6CKY zJZunW4^aQSI`)xNPZIo-v9#eYR}CH5YVeK!5?KEzO8~gEPT+lb?^S+q5mgN%Cmf=$ z;;2VX1B|$++BTy&249cef1r$&pW7?HlCTrP7qNo{Y!>!=g+PRJ>=A?!pR55AzkplX z67^3x1VO`;p=Tqa3ppqBQ-}VE>I>KaOgq{t_5FaYB2c1h6K;A1EmGL1x@lDram6F~ zLCJ-hm_JZG1&8X2z*prt_fi3XMZ3b za5>n-)xYOpu_<=(-V$Iuvc7_wsouv{&@uvo>~U%OUycZChz9imrvC^g1f4=W4}vf- zGXX;W{4bUDBg;X7q?#I$p|_Ute<4VrABwaY7g!&RFoi&Re5wD3TLTPqFv9%YdLjVU zU}a+_4bpp{vd)kJ>nP!m%Mt$wszDU{W9<812h|A>rRzQJ<^x5+)YUnH*F{U{jFVm1 zoVtlHRhh6CtGa&ppWeOSCaXnopmh@8G@&kqNNNuBeNy|c@~^PupZV88%|3@FK;r_! ztZ8*eZBqX}G*?DnZ~+4Kr-K~9qo!^7ZL;)PT>9r^2{>?&Rs-MIH0C-k_;&?y&})CQ zJ-=KJ)Or&%Uk@1OV&`z9u2c^(FuHqkapeRW5yx*l$ZRJq%DLIE+}k!AqX|@n+J8AC zzY~MYCdzT)B}lCQu#2Vcg*Ys=iuVR_K6&LZ9+Yud$pg%luwd$=w*;#@GeNSHDh z5O>gHDF_=d02{H3djduXWlv=&7cXF^8w7qVr;TBcu(J(+7CGQ5{8+vooJAS%s{HX1 zn7%r(0T1uT64&&{nIJ3=o&M6Q?vjif)q+a|y=RuwHHE-516!bMkRn_OtEmWUy?Q19 z5X=*-Cq9U==vCXn`4e1>HSv`J8)E?_3vwwi$*?B{tbv_lOt@jk7~6lH?)g0z)dRi# zZ#xRQQrxxHM^7)3+Km1++x|0$vCCRUBJzfwem2E{H+Fva6TJTuyN6~5A7Qb3uKqc8 z+^D}Meqd|#fw;jEAY_U6bA#c|??7=J$Qt^$Z^7J51pvW8obdZ$svo09Y@8*^Kq%XO za5&&G;teh_{Taq5%NLql;(rXntRjs-+rA!xT5HHs0vN+UtKE9Szs)f~7_*|AwJ9^e z&4Gk)hj_s345!C`3+8_x2VuR9&u8FmJmE_R?)h~AMQu#gZ%0uIUTbpwHm|h@yW?bh zsab=`J6%_2iLti)QvR&f1x2nyxWg!3(LWPG=;t{3Zv==d;?HD0P?sKAGyJyFokLxi z^%d?sN?dn~6t?ZClx~1de9N4PasdaRK*ab@fgr1|oG0G9pQi-!-;p6cmwK7vCTS2D zrM2<65MobbVvTjHDaif)^Zd?F@>>L6@c&GHKq0sC?2T@l4GC|9|HL6*cCy+$MUxuw zjtE$<=3q_4AM#5PI+$v7wR(%E(BNb#IQ(%~=s&CXK^z>I)HA>ye)@-TH__5?2iT|q z_4zGQ$|OiHoh6t$0jnfXVqSVOl+ynk&u7A|wV>7++>tSK7WOpCkHi_|O+pXk4)6isqGQLwtb_nQeZgz56R5IS~gpxKq`~0x8#C5jd!pX{+409 zgkR@RMj#^qSakv z{)CLJ90OpFC_-S4%BKth z1waYEwjA&UKk^uycX<3yaSZtSR!)W^K$YVncr45PZF-HtojaKozn_eo2()kEAbkde z3AFMdc|-^h=4~8>{(FRnH4mo;LV;xmT=@4j~z1FLJX)wIEvf|J}!h0fpR0#UuLU=8ZDmORxV!5cRim=!9 zOmKSU4ywxC0Fuxe*lU^|6cRlohY|NgX%sb~$UU!&l}Sy_Nl-zFs2IkkmjPRI@x^&v z+%&}}i}Je`JJ>4;0%qpH@p8(d@@+-Z`-)Lx5<5@6anpqLhIF_uI9(OgHD);71s(hBWXoD_X*Y&&p(1AHAK26sUIJ2#U&ta~1Iv ztP(Ea*)8kp5(xI$&yT4LeK9Js-LgCtwH+biRmT^W=l>cSE&J4{#U)ijg=px^w8LnV zus>+Q=lixgqU8$eH0=jJzw_m2K##jP8?xeE&k00a*9pY4;)31CmLfYxqL5KnGEAO5 zSSFc8mAki!uu@vIXxGb@%z&+9)AaJzBOhDB9drsy&>Hy6wNyBSxo! zMqStQ456)`)ePW91+1Djl zk__LsmeQ^_p)S;(Kp1sQB@2#~X}lbjAc=~^XvbYd-u`~4Xi;jxJtE$F_Vi=nW;~>B z#|eav|C}GZpgth^1}0|jc9eC~i4>V843qOaP+WI9yTV^( z>>Vzf4sWrar$UV8gS*>@h#D=^2pyAXPef_wL>2kMb=A;5)G<#}5&K82tK7vO3oDIG zVY@K@e5LyvKA|y*6~QsrX4Tx1ivT z7rG`;*G>|z8*U29ZViz)Nh zO%b!FWrUaTkT&^?5>43l8@VfH^Wj|3V>^3`B&`n)$Ddjy4Sj4ofw;Y~=iVX{uXt@X z=$5d-+D>1>>{$_!^*_f@-_Ep3{z(U>a)=|RP*Om zXii>uW3~Voft>nyZ(;_Fb}Tb8Zz;1S6ci7;s?@K{NLnYGZJ~IF#SLsfidMugZa85- zwToEaLR*QP5Gm~Xy;4o6VLAHP6Y@{GlRQ$+DPm%J))y1k5+CLkAI@p^W4V+)JJA+O z+*n{n+7|#pRqojfesI#hMes;1bhPY)$e2X=>%#>o^MRI%5YZaZQ_Z3fv1THz1p| z(`E}R4mP;IW#%~z_}dIbEd9ZS;%=DvnL6P)#+;D1Mq~G!aM<)$nfOIlOJPv5t`-&S z4^;qMpiF9AmF_&Btc$p5_FCsUJ)Z;U`q-ohy0fPUTP7x!Mt^RayCVR;b_stq6Q~sf zG-|ObI3__q>IbKc%!Dhy8Fh8Oq9{580BlsVL}SBfWm2<5H4R++L+;Qvz5EKVUJnK2fmv0{hgI)VVkeeuFAm2nsA|A%}7vOsv-N4vCCZnMghl@ z&9SA#FpE4!XxQso&k_$4EKF8c9k$L{?X6BIe%fIV&4W!Tye{BC{>qTgf`PNrT|K-+ z!^;^UM#|&G(K6b*1#yH1QM2X$OLPGJjSv2>>7WbzKT6(!GG)(L-3Ba>dL09p6);50 z3B>u$57;_NG=W_ebP+iX3&7TwN5-~_U;vtsX-_~YLFW|(r~YHh&ct3Ihz+m!ryQy+)Pi$Gg;DJX*4LZ^?_shLBZzXir~Wam;>hjHi&CUY2s$# zF3%EtK#|Q@xO{p%3VaCHlAuY8pe7X4O2_=7-vU7-7(asBcM7SR2Eg)E6Do#y*X!#F z`d=E-`T~8~oNl@3&u#?b!=ayV7rTMWcEdcYX}(lTmKXCs5p(u|w{Qdc+}*==q5x9L z#0Rc_gFs#wwH`1FHL*19wwjM#mAR@m?M1}3^JL{w?8UPjw*IVKw&RE5(*}o|ri*)) z9}c03h#LivPA!YXk>x~<)M8<_Von9;;-?b(ZnVvZ-T=T7W?EvGdr=^7ZP(Mo35&k- zQ;L|_zRktNEr7m_cLvQU-fdPU+RqN}kj1I5r#!q5e+&hx&9<(SGklR9X*g#5=qP33 z&P_^&em8^f6@`$7-5ZOA(4-TWg-%!M%On~YQTSgQyWn5jq?X<-(3WQ$pxtuecD%?E z8IM%F6Hh>GlXXi3VT)7=v(^*aLw>+=Q;yk%Hav5fcI@_~-HW}*OtV@pcH7t0YlLaW z(_O0Mq7ffdS$?%0BZAcN@}@QAdH1Dd-rqNmo{pzN#yWO{xmfv}_xgQG^bKEA=1&!c zT6z{N0Y%^akPKf~$4D5BAIUKm?)Wh>^v@U&)Yv334(&>g1rR5|;_zf?;v##A8C&|9 zzGBG7b=X`CNLuM)-V~g(Z;3+H=rxPv;ux-6cea4wKFmudNZL7H&BCaRf0>g(L|NMLDO(G4U_kugl*ObJ<^sAY*KK z?h%mp_?-8{Gon+}(p#GE?mrEZCS!tHF2c#neR(ZmZ`p6ayuZ_nljI8a!Yl_i>+JTM zT_&!A(p9uRH%MChD#KD2?P5?zF>v!WzO1xCqN$6{`K#Q$l=(Mb6L>Ybs?A8J2h#fA zz>~VqM3r5Bbp~x7=yQSGM)LHGhikjaPW>QEx>tPuBG}lWd9yj#--|Gqe&k8EUHEQ{!g8a8?F62uq<9n%U>ID(Vermw0Sc>zb z7oV&bOXsr66xhm^Tkpq^qKvasy9~ zOX!+F5uVR`hd7#fZ;ep}@V7(~q__L(oZ@i~#rMh)XEpMC-rhFCbo?RHjE7V^DZ%@M z4H@Zf&w_`HEu8ScdqVw^B+KOGLKSPvp|H`&bh0~R^g6Vjsl0yW40I<*hLozYEtzFH z%LEV1Pdx-~Iu*F-(677B)C=SFC{0D5I2j^&rA!5O1hgC2@U&Gt>SRnjHKF*j?TN6{ z9!6R4I0{L=UYZu%ZFe)U*6L?gJId5cP@BxS5WD=4QD?(*>(t+NI=%R9VU7xN1W$z& zNiMA%46~5uRi92F=?F>DoD?06iag^Hln46q2$LqREz^1bsVjM_YEunaZ2HLv$dtZai1NTDrK7>x%uyY4z-sb{j3TRvBd%ZcCKxL|j1Kn2!f zHGAT$@0A*-!O&&^uQe zws){&?BL@QY%YA}#Bsz-5z_@xvC2ZvD8X8MBk}aoeUaq;TMy~O=yn{^`JNRReS_)z z(TMo6pT{`7ShgZ1lfmaJ9GKqHdJB6hIf>3mKCTk8)*p{^-taWyA?Kl&+BFZH2K&j^ z^La9}WHKpKA@#-5_Y^!(f1T4)n4op#FXA~sN;0O#I$sVIm^%9{nBlPW2~edvdhxqY zk1~RoPz>oBj8vlhLP;4VEhyVqs<%aB zY?Jk-keHN8B*c{EUZ!jjEr>B9%T&zRLe~HH9V)ri?cTcQ-#K*VZ8~1h`#hiR`Kr

*EFINgsP+ELvd5bO~sJm?OI~dF{%(w<+xk#!2YP?q{3d&R8<{lKjkIzioUs z02iT;>)HAUEWakOo$n&RegBHh^?VP_e8x))=-*}O?_Q=#`{IY^{4H)me*w^-2wu{ObcVEh{mQZcsOJ%##O#s#4qdB3hpSP>&a9e=T8Sb9`nZpkI!A2 zA<|*ybKcCyQ9)O2LBfD3!vDrOb^`kOHpI>w0tse5#&1!_&igs{B}N!tMQ78{Ni=jc z4Sm%Vk!y;$XNpM1R(91vI?33VADrBCNF6FcwNA$!6v_K39p=jP0^C|<9U(lbOK|u8 zfpa)@u1>oyN@}K1TE+d_r=xML_d{_)nZlzNT?(x%oeAM>Oq;Ct6|GdPwfmM^6+Ung zoe6isac~hk1wj$XN6sWLWhT`SuL_qCdZ+=e$H6ru!SDk3Z&D4Tamy6xcp%Y*xP^0d4q*^g1D%b9WcPq;q0$Pov~HLcwDbsqY?&j1+d?g7(KKyF`Nwih)oiMMe?}Q}&q{%=Lg6dO-$& zKVW+vmBDpy%nT!y|WE*|AxSe z&7c(e@<2;o@Hg3{Z=Zk;--ghg9Or( z9;$qK*tK_*H$Bu-awNSc(V+L1fcql@JtlT38`g^)f#02dVZC@#hJ1t(yan_g!zAbs z0v=ahs|f*-vu?a4-C*e->5Bv|0I~u~2MaUDMWr@su@T3l>y8Lsiy^WA%OuLv3m%Z1 zk?KvCzmPb_3k!^3i4%<@?k`7?cS*>R9!G%N@`PWY95~4BcGaq3ns&ZtmKo7) zWNL2+NZ$~sH}g3JF452nw+mKo(oal4r$gHiMmGdvp5vO9ENEexDux*9dl2+32>R;? z`i3<0aT@vv4Q*u`&zl5VmGCo>f;EggLa8Hf5adV8C23+1b7HBU<>u&d!C9^q5|7RFT$9rQdC)%0B@w zZqdq6wps0$?6zHhXHo%X6Q0MFdN{F0j96ThzeyRmWadLWB;$2MAj8aOhl1`3vA8fV z0u%0~Lvo@w1h|O;?-C(_wnTx0WV?Qe>j`LMuohZFoVH z{Lzk+$Xg{m`(jeF@MK!G?P)}_CW9R3fn_%q#2qnzH@c*77P-5Gb_t<4{#{fZB{pG8|c+Jm1is0(hAR& z)1TI0TZChpe4|EGL9DLsg&o}Ad#LxGNeSv$RW#0(e{;cjDwpR~jw%D)W{YHfxJRFR zveNYkOZvf4&})(BsvYKCWv1!{w;DlGS#H6+=W82romu(EZQoU-PVPbLY6VqoVBuou zwyA4KO75fEuh|Wp>)W7CELsL=;_(z@n}KUH634mt9u5f{`~+>2kgbKfSA&!V%$w$F z^V$uY8H&dc4#pgNcWyH@KB@go|00)!EuPosjLvwL)Nb}?1I=N_$p)1cYDV{|T@o6+ zsomjOf`UzlOCfUAgC=R>sO6N_i;MQJ*rK0k2Ov*D7n>m>_+{&vtv3A&H9+6thAGrg zgyPg>j}@Wb*2wQ|7QS64Sp@p5G?t`y?6Tr+!e*BQet;*JVaC@^r`rZncRw4iVFGh} z7#CxQb;p}-yyws`r9u-^TY2Ibb?*vN;-YtOgz@(<7p%jjM6_{Y7Lz}Eimo6{o&o;I z4!xd*J1@Gx$_UY>_3C$nVwCA+7vIJmgecsjqc7FUt{PXzUGamqaU$hgs5>d{3i$*D z-L+zIm;API5(OSU*X`YgICMkcwwcd11>NQEsab^p(4HGTrlDtSLsXd}%1seZ69pO) z1?mz7sw3qAd5H{-637h?+#?M-){Z8je@MtdAC+858_H$>#64Ew!9B8T)NboOa}ii> zQG((TKt7^CnGqa>ybGkAFY>18%1^`!)JeT~8;^iP0+B3Uwzh;=q%SlkQm}z>G`JW* zL*O38>u0~n515VhI1NZh>e$xflR}sS%l&QS;1GtVMF9K;c6&~qSs*d3+_$W`@yt!$ z9`qSZr{i(fm#vp$=Ce~lS5Yi3+`nRD4u*sMYwPhk5Bj<+nbLY+RV8wu(@>Lz=09k= zPhAI1v|aIMNiu0}f0-gF*bgg`-G5aiz(h@zB>%M{;a`rL+2+s0PhCZNwbfiLOlPQt{&d3uj(}^cu-M6y%X=TP zooG?#%9)6qa{9K6JeL%2+H9JW!FjKVL|uRiRkC{=T*QXs-_&I5xC6&OO+_%JPSTKW>$kKlLjCAF zAWAHX#~j9LcD~ZN_MmY`!JNz`_nD`MtN=wkm_!lf5tkapYp3&A^#Dg@ii}&(9<8_= z7>ZI zzzU^#%y^Ao{dSIp_WZ0DmAo;1sKXfcj!A|MD-&y4g5nug=PytWnhJ9b;y)wl=mo%j zNxR2^GLkJpOuC^Q11Sh1+N_p01a?IS_hDz;bPL?I`KFLOwGfCJ%|CzFzBJ9Fl3irv8p4Zw)5So00{MdDq!a9(U+!0O5E<%HO zxCj#|VAM~HHHB4woK&H4R+Zg`V3~fMRgE}_83n40P9dxk{z#rzF^Wa^{9uE8OWDI# zC{SjmdXCwM!;&QOT$RJTW+t{e0tihvlSxAJ{i(FB;Ec9LD|4S(Ly9^8c8j9V`891-_Bx3ZX@{@>J znl1$3B@#P(aB<28kW{^rYb%xQRvvM4B*wd5N*j4%jh7WWS}_Q#~{VPNf7AO17&o)_#di|*Q>X0FX+3~#;j~-W^0ifW1OOHy%OI7tbQuUNfw^6 z^Z*c7g4#6WU~>9tkZn$q>0WH-LMYJlu3{@yXQ)e~^r0cb_;LEUpU7I&XfHXRH?h#K z@e`RyXP%w-`zGp~jH1pM1@u1yK*a0`Ft>hYW|sXH78Nq!`Yzt?m> zU?+auO^i#rW=I&uJ7?dC*=>1(i(mI7A{ldy{`8Ba$)FHUnlArD()4v%2mMge^kZJ) z$5HRIl>qtESG~l)M7{M~UaG?jb>M*RZ_5UKJ)zqN4mtca-Q-c&Up>UnSP1ABc!=); z+~43E^b0)1cLDBi@D2L3xc%r`znN-&(?k4>g@6?4|0>m-#Qi_zR-td$)hPi}C@vf9 zZEP?cKi<}6d};Hy@e*|`yW8r`cf%#Oq(fdnq@T_=J$EqiG9!KbKxUMN9SXk(PW5X1J3?{V-KVmrSt;$BvlCg=`14J zn*I=ET4|Fjw(RkEywqwG6%nHlsrWHnf>xK2l3cERpq|no!F=%3bkLJH9&G-Y{LO~G zl)t|?UHWA6zZot;|0YBSYmf}ErvW)IrW`Ebd?xQ6{^68DlXef-^Z!0a|9Xr*IlAF( z2mfO8q3^E;Kl}V&C3s=I+sw5j(#GR`2tFc33T(U!uU4lx)laKc=C@X>oNumHLEHou zBc_La4^kQ>h!*6UlkWkBfIVS>%5y|s#sA2AvTS=s3synTQ%(O+5u8Xf6+y87?#iT; z|6LqN`CZ#D?TCA$0nV5KlMZK;jg&@lVi8EtVe=*QB5~2D{UF#tZ~|O-p3Kld=qsbj z+ll!4`<_EK$&e!{jnE=Ia5R%WDjc07{k+}dkvp0q#4X3ymMYAW$*KNC1`KxkZ#2P9 zzXSygzA5k6iJ?CG8rp0PxFi-Axszh8pu18mF2di$NS}R`h3JQK%AJ0C3i&vNd`*RX z4FyP7Qmj!*%tlJAQ4%b`;LS*edn6foS>}i0%a7^h#5U>2b;n290rB<@pEiTPSa(cb zBY`w&xH_WEXsrE0o6+?vQTmrPV^6<*4mShhFDB@?na(6vmE}SiK=0 z;8^fNqIH*MGA6=a_g3LGQ}$bbf-MMGSU2vJrJejr5(4iP%TcSAEQ+T-j!+j_&{eXM z4AL%;_I^@ot8FeTI+WnHs6gZP!0KRH_YipnDJkM$u5HYkGSZC4^ofPYkB+B>A#b7j zF};ir^>YT}8A<@b?p5vwS`wUm^hoN=K74)V-#Hu#Hba{^(~n1 zJ9`z)xn(_cLt9mCMM6nGjvA3cO6sb`RkbDM*ygiQhqL>H3mgb_xJNB_UC0|*$pu&Z zjJT1Bz0}2w7`0Jip^850F}L<;)3`bpN}9zRQ~>zj zX)PHDj54FbK*(W{Vh&#DuxfxR(GWu(|D>s0oC@A|NnZkc7a!Oug3)GF=tF_SBA5*f z!{B1xefg3JKFClRvJa*4cNs6=Sk@aABEvfrqghde;J#deJ;U&J-xes}Rf1c2h-;yE zn5)9Hd){!sa=t$+^%4BaJw3cz|viVVZ7Hdr3p!`&p z&F+#z+>_0Z(2ImZ1-5nvUMEsNuyR5Qnc!)R)gix4O>9)3i2mmG#e$K*H>w|k)q6gd< zjrUN6GUq#Rk>-Wv5@PqYeb<3njhA9EgzeT9a$r>0r9Q z2FDPXk9~?4+RZ4MkDaC$IOAecAGJ81WbdIzk&z%8Qjm@k@uYz_F~S&w?ByEq(}Naw zU5*jO7-k<>{*VGkRk7*$jA`0_ET7m z*GZaz5VGrXGeua{88ntr;8IYug&1(S#5e#9Vo5D%dWlMK6yeh}R^vvGw|XaJKDpIz zB(B+k5{&5+o|ijf!bZ_ZK`dOwL9T^&3`_AvpR`BH{Gj!#2W!}2)4_$^Ta|L~u}y27 z`j~7NnsQ*S>R<``FwIFAGV>}NOv)g!`FzMPqvm5_RqU3X42VY?-I=t$;!h57t+w5MzCDQj zc?~`a(kQeCr<%_pYbkMMMDTjbP(lIV?zC$Tayyku>~%iR<)^VU;#ws23C}+-P)P+} zbg4{J#4d6z?h;(PkEPp}@0F4+!Hs@peK75A+8OVJvXZT9m2zHNSaL{RWzm|VA&dP?FbH}GrN&V25P-VEeU&(8cONqHqKv^lN=N3BoPw>6 ztYHD64nu3UJVrSia4~@kHyjNxi90A8J^5sw?YwI5ghGg*1fC@5y1t~J0yQ~JMv*W! zA0OB&f)~ej;{*8+nBSJ&;z5Vx5(LqZj1&bYO~`E2Nw4b#6a;r8mAwH&$c7GFX9$RL zUv9+4GZeY$@(tW|JF0jyU=f?vN1gK#K2QKYE|iu_Ec1LId=?C;Etpkj5t3*K#;$|0`F=7(uv-e65TP#POOz5{E}zri&||L2+LzypSQk?LY_ z&hd#%Iha!35F!YH*&=u;Y`SGquP`>LQt8u}BA>FeWyhy^KPVaWFKYH>$r5vHZ^O?n z$`p#-uPr}8Pj!_)25iuOhHO6uY|wv(Y#*od`@jbMyv~R>MBl|ADnlsEhCY&hML~KD z1N1gqFtGq}L((v+j3OZ{8mw;KgWh-UX(jBnCv@u)Bs?3zs!#`N(gna4c&Fli$A%8D zE9@06==g0CL;WI|@d?hRsto9dWyWMONA2bglwRaUu-2ylY-gvFlw50ZssnxaI8q=> z&5OI?dX8;}n^%fi9rP+^z3N~Q+m^Of*wrh=RXep;_=NwH?3XUICqcO?gV0m9A}u8- zSHt8D>RnnDD{i`oq@9y``)zVZrnNVrr@6Ik0rF&bTC04sej30rKS6E{a)X5jfU#aG z{)}@<`suo}<6K4UdJ5v36Kt=-J&)$m*Yr{A+8*XSJsZ&#^KAdD#f{%(hrM@UmX&+C3RGO@hExTr3|6vd zv%)BgH~OsgyJH97P1I(yu&9jR9XUj@Y<{?&N9X}YC{V9O8}l)Ummw6kp`Np>ZjfHH z0h)+G+<>7jOrKly5+O<4M@ELo+-vaa71jYficv|&c*fBJvpcC}L((~TxZhZDZgre_{wmm@f2`Oh<66Vt3*5iaw-D?aezCwEIr01ZE1x9W_YD;EJqPtu$o6Bv z2K}so`X;jd7_dRWKz)I1|6XVKp?|<{PPLoR_x$E0>HY5~auF;uzNs>xZ%eap$PC0J zm*TFP^ZI>txp#`|`V^+3cEv{SI`Gl?s?LCm%sJf4I&JLbTRF63_zyOoc0O>u`XJ-L za4#T-g0NT#?X`nUwje}P4$56USj&!@4g+-rtMTP^$f0J!30z=RY6Aq@+J8&uL&T`1 zOZfGnj@Ziyo?~03_%Ex^(sEenaUZp=166o^MGoz3-PxxgMMxmEcRgcO{@Hqo zn8CO`+(_83ti`=SMaA?|?G_z#6%U?}XHff9lIj#s5D>#utcS0Eg9>mRsM(4+G>IjM zcvS3!S&!?bawfaai+7lc9glF!4MGQgixIf-ijy(0qaeVs^Vt3KmJqM{BJWc|q=_>q z$T_PmdGu7#NfE)XW(131nXC1(Cf9xp)cygcL0?UUeiGCGrcJge z-wV;8ze~~nV-A3RMTqtj<$@+cwEr&-fc`FX{Es;RVxzui&wqpiTyxIud0j5KY-%WU zzXE5#mCPYsc?Qyj`*^N*=XBbqOsGDl>)CXmeIWeF*0Re|CmegvRbDXIBXPo^x9l{? zTw*i&gi)s|RJ_w{oYa7K0+9=d954UT85XNXkWsz_ywg@IkHSZM`S~EBO&}$?Wq_Y+ z^9EVkP9Phx)?VNz$mZ|nzFJU^JHX94VGY;`ggonbK~EFA3FRq6Rwvr0)j$WiDqjX^ zASLQIn(q#@e!%M5^IwV5p5hkW$|)$o=%!=(jid}I9xcDe^-){DM1Pi|13>>Qc)O4U z=RyGftJ;)uXs7D}C%csnXxs=q8uRmv{B8s(t2;U3rpWz#1j&j+Nlk|gxD(bBr4u5p zEudDtKRoQVAslMfCASzL6oXA~yRX`OyYvHt*oYR;rK|nh`97 zl?DGSf>0%HxYyVhfnkL$t~_l(1x(lPq*mjZ zcXS_hcHXFmr)N*q!?K5Ag*tnz$BuqzZ7IEw#~SK;o4Lnv01EW&-`bh;u9Ukm&-Xlw zUY4J8ysK^g9ti5~-9(Itew>n{liO!Grk2}lJQP9tP~zKRKI(R)-+f4KNjE#7Pw{v< zp&@@K>^}~g?O4oAoj(5E)8}Sxb-eWy7T75x0Zsh3gz4z9b7*8VQ`@CFbTrt_BCjA4&8be3we8Xbrz2}t%61h3eEeab!ymM zX9tgsN=u*DIZ}QgN@x41Q*4kb;~?6yv`WPyHBSNei%rRR#wh^&|KYJJzBIi zoSTyDNFCe2O6B&HMm1R1d%JbL?H>FPFxITrHBxZvo%n@3CNsARe6#oO=hAaM{=79* z*z&$Cz)9IU_x;<4QvGA9qZS=!PEPNFrbnB#1uH^i0F5CHTxYTq$zS)9dTl*G6 zrH)N13(5VMGMpaky59nUnQCSgi{>1x)vvp_(s{w`q(|=ia4YSflVZaJ(|s0NhRqb8 zo$FHk0UCPiRqE0fq)>L1g2?R*!Rw>9FRQ{1j$|KI4x!CMtSC;nf~_?TO1`cGSxIz< zZl686(lt>1(ZU5!o)wdw=NTN?sA*frewOU^syD+<1oud zqF$kxB_95{sW;VP6FYS*D^Jh#OkL9(a($zaW5|8~)Wr){_RB*ORIqcW32fV{>+(A7PG|aR=7u_?SpO*}#Rt%Fw%*Otzr9$Yxb*S= z!kh$^uG-C7(qL4y{-~Oa`>Q+CjSq${n28r?4@W|^1Zj(Bvr(E_iZ?fqd!w>_tD0?m zqr+a5xKHhWdsYr%AT+s3kk@nYGt@sJ?lFZ#K{mh=!fCBqw;rtKzG3RJS z^9%~;(vLZdMpf3;wC*f1OWAgF!9#zeEJDxg{(GgYrH;7wDqYKLwp#jy=9#!HRA_&{ z?p;-5a%*2)Zja0nC-DHMn@h7V-C!-UJS;>i^Nb~JgKn0zd(BqAvtv5vl6;oQTm!;y zVuX(QUZr<-sB#=hiaI`}{;-?5Hkz4GGK6&^P^F_Q22AMVCDG#*G_WDzx! zD+^P=xbo4a}JDHpo0{hQXs-NqNtVGi$~yf96+&c41vQA0q_sd?zk3WrP2 z3V}lJejew;;|V*YVlw$w2sE3Vx=Z#sX?QYyk*m$w*&Y>Q2v0FphPSUPfXIZV7i4J8Ku!fonKL zEeP}`MULrA8{ve#9MhY2yeC4MUu)W?zOX;LRz#5bMHYVs(W&=WKNxYBf7xPQ mrW^7Aj7mB$(C_WNMyvZ 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 diff --git a/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.vb b/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.vb index 79a72cf3..dc7c07c0 100644 --- a/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.vb +++ b/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.vb @@ -3660,13 +3660,13 @@ Public Class usrCntlSpeditionsBuchSuche If CheckBox4.Checked Then - RPT.RunReport_VERAG_ZA_DETAIL_FULL(770931, CDate(txtAbfertDat.Text), CDate(txtAbfertDatBis.Text)) + RPT.RunReport_VERAG_ZA_DETAIL_FULL(770931, CDate(txtAbfertDat.Text), CDate(txtAbfertDatBis.Text), getSpedBuchWhere,, getSpedbuchList) ElseIf cbxDetailbericht.Checked Then - RPT.RunReport_VERAG_ZA_DETAIL(770931, CDate(txtAbfertDat.Text), CDate(txtAbfertDatBis.Text)) + RPT.RunReport_VERAG_ZA_DETAIL(770931, CDate(txtAbfertDat.Text), CDate(txtAbfertDatBis.Text), getSpedBuchWhere, , getSpedbuchList) Else - RPT.RunReport_VERAG_ZA_GENERAL(770931, CDate(txtAbfertDat.Text), CDate(txtAbfertDatBis.Text),,, CheckBox5.Checked) + RPT.RunReport_VERAG_ZA_GENERAL(770931, CDate(txtAbfertDat.Text), CDate(txtAbfertDatBis.Text), getSpedBuchWhere,, CheckBox5.Checked, getSpedbuchList) End If @@ -3990,9 +3990,9 @@ Class cSpeditionsbuchReport AbfVon As Date, AbfBis As Date, Optional whereStr As String = "", - Optional Open As Boolean = True) As String + Optional Open As Boolean = True, Optional list As List(Of SQLVariable) = Nothing) As String Try - Dim dt As DataTable = LoadSpeditionsbuchData(KDNR, AbfVon, AbfBis, whereStr) + Dim dt As DataTable = LoadSpeditionsbuchData(KDNR, AbfVon, AbfBis, whereStr, list) If dt Is Nothing OrElse dt.Rows.Count = 0 Then Return "" End If @@ -4054,9 +4054,9 @@ Class cSpeditionsbuchReport AbfBis As Date, Optional whereStr As String = "", Optional Open As Boolean = True, - Optional DL_Kosten As Boolean = False) As String + Optional DL_Kosten As Boolean = False, Optional list As List(Of SQLVariable) = Nothing) As String Try - Dim dt As DataTable = LoadSpeditionsbuchData(KDNR, AbfVon, AbfBis, whereStr) + Dim dt As DataTable = LoadSpeditionsbuchData(KDNR, AbfVon, AbfBis, whereStr, list) If dt Is Nothing OrElse dt.Rows.Count = 0 Then Return "" End If @@ -4117,7 +4117,7 @@ Class cSpeditionsbuchReport Private Function LoadSpeditionsbuchData(KDNR As Integer, AbfVon As Date, AbfBis As Date, - Optional whereStr As String = "") As DataTable + Optional whereStr As String = "", Optional list As List(Of SQLVariable) = Nothing) As DataTable Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL Dim sqlText As String = @@ -4139,7 +4139,7 @@ Class cSpeditionsbuchReport " AND Abfertigungsdatum BETWEEN '" & AbfVon.ToShortDateString & "' AND '" & AbfBis.ToShortDateString & "' " & " AND isAbfertigung = 1 " - Return SQL.loadDgvBySql(sqlText & " " & whereStr, "FMZOLL") + Return SQL.loadDgvBySql_Param(sqlText & " " & whereStr, "FMZOLL",, list) End Function Private Function CreateTargetPath(AbfVon As Date, AbfBis As Date, prefix As String) As String @@ -4750,7 +4750,7 @@ Class cSpeditionsbuchReport AbfVon As Date, AbfBis As Date, Optional whereStr As String = "", - Optional Open As Boolean = True) As String + Optional Open As Boolean = True, Optional list As List(Of SQLVariable) = Nothing) As String Try Dim dt As DataTable = LoadSpeditionsbuchData(KDNR, AbfVon, AbfBis, whereStr) If dt Is Nothing OrElse dt.Rows.Count = 0 Then diff --git a/SDL/cProgramFunctions.vb b/SDL/cProgramFunctions.vb index cf69d2da..902baf7b 100644 --- a/SDL/cProgramFunctions.vb +++ b/SDL/cProgramFunctions.vb @@ -1248,11 +1248,60 @@ Public Class cProgramFunctions End If + 'If fitCellsToContent Then + ' wb.Worksheets(0).Columns().AdjustToContents() + ' ' wb.Worksheets(0).Rows().AdjustToContents() ' weglassen + 'End If If fitCellsToContent Then - wb.Worksheets(0).Columns().AdjustToContents() - wb.Worksheets(0).Rows().AdjustToContents() + Dim ws = wb.Worksheets(0) + For i As Integer = 0 To dt.Columns.Count - 1 + + Dim maxLen As Integer = dt.Columns(i).ColumnName.Length + + For Each dr As DataRow In dt.Rows + + If Not IsDBNull(dr(i)) Then + maxLen = Math.max(maxLen, dr(i).ToString.Length) + End If + + Next + + ws.Column(i + 1).Width = Math.min(Math.max(maxLen * 1.1, 8), 60) + + Next End If + 'If fitCellsToContent Then + + ' Dim ws = wb.Worksheets(0) + + ' For Each col In ws.ColumnsUsed() + + ' 'Header berücksichtigen + ' Dim width As Double = col.FirstCell().GetString().Length + 2 + + ' 'zusätzlich einige Stichproben aus den Daten + ' Dim lastRow As Integer = Math.min(ws.LastRowUsed().RowNumber(), 500) + + ' For r As Integer = 2 To lastRow Step 25 + ' Dim txt = col.Cell(r).GetFormattedString() + + ' If txt.Length + 2 > width Then + ' width = txt.Length + 2 + ' End If + ' Next + + ' 'Mindest- und Maximalbreite + ' width = Math.max(width, 8) + ' width = Math.min(width, 60) + + ' col.Width = width + + ' Next + + 'End If + + If Landscape Then wb.Worksheets(0).PageSetup.PageOrientation = XLPageOrientation.Landscape Else diff --git a/SDL/kunden/usrCntlCBAM.vb b/SDL/kunden/usrCntlCBAM.vb index a93bc3c5..4a8ed601 100644 --- a/SDL/kunden/usrCntlCBAM.vb +++ b/SDL/kunden/usrCntlCBAM.vb @@ -2254,8 +2254,8 @@ Public Class usrCntlCBAM doVERAG_SUM(LIST, EORI(0)) - doVERAG_DETAIL_OLD(LIST, EORI(0)) - 'doVERAG_DETAIL(LIST, EORI(0)) + ' doVERAG_DETAIL_OLD(LIST, EORI(0)) + doVERAG_DETAIL(LIST, EORI(0)) If cbxVERAG_GPXLS.Checked Then doVERAG_GREENPULSE_XLS(LIST, EORI(0)) @@ -2455,6 +2455,7 @@ Public Class usrCntlCBAM .Ursprungsland = If(it.zaItem_OriginCountry, ""), .VersendungsLand = If(za.za_CountryDispatch, ""), .BestimmungsLand = If(za.za_CountryDestination, ""), + .GoodsDescription = If(it.zaItem_Description, ""), .Rechnungspreis = If(it.zaItem_InvoiceValueEUR, it.zaItem_StatisticalValueEUR), .Rechnungswaehrung = If(it.zaItem_InvoiceCurrency, ""), .EmpfaengerEORI = If(importer IsNot Nothing, If(importer.zaParty_EORI, ""), ""), @@ -2488,9 +2489,10 @@ Public Class usrCntlCBAM dt.Columns.Add("gross_mass_kg") dt.Columns.Add("origin_country") dt.Columns.Add("dispatch_country") - dt.Columns.Add("destination_country") - dt.Columns.Add("invoice_number") - dt.Columns.Add("invoice_date") + dt.Columns.Add("destination_country") + dt.Columns.Add("goods_description") + dt.Columns.Add("invoice_number") + dt.Columns.Add("invoice_date") dt.Columns.Add("invoice_amount") dt.Columns.Add("invoice_currency") dt.Columns.Add("sender_eori") @@ -2591,14 +2593,14 @@ Public Class usrCntlCBAM ) End If - benchmark = If(benchmarkObj Is Nothing, "", Convert.ToString(benchmarkObj)) - emission = If(emissionObj Is Nothing, "", Convert.ToString(emissionObj)) - faktor = If(faktorObj Is Nothing, "", Convert.ToString(faktorObj)) + benchmark = If(benchmarkObj Is Nothing, "", Convert.ToDecimal(benchmarkObj).ToString("N2")) + emission = If(emissionObj Is Nothing, "", Convert.ToDecimal(emissionObj).ToString("N2")) + faktor = If(faktorObj Is Nothing, "", Convert.ToDecimal(faktorObj).ToString("N2")) - If IsNumeric(costObj) Then + If IsNumeric(costObj) Then If CDbl(costObj) >= 0 Then - cost = Convert.ToString(costObj) - Else + cost = Convert.ToDecimal(costObj).ToString("N2") + Else cost = "" End If Else @@ -2615,15 +2617,16 @@ Public Class usrCntlCBAM row("customer_reference") = If(KdAtrNr, "") row("representation_type") = If(r.VertretungsVerhaeltnis, "") row("tariff_code") = If(r.Tarifnummer, "") - row("net_mass_kg") = If(r.Eigenmasse Is Nothing, "", Convert.ToString(r.Eigenmasse)) - row("gross_mass_kg") = If(r.Rohmasse Is Nothing, "", Convert.ToString(r.Rohmasse)) + row("net_mass_kg") = If(r.Eigenmasse Is Nothing, "", Convert.ToDecimal(r.Eigenmasse).ToString("N2")) + row("gross_mass_kg") = If(r.Rohmasse Is Nothing, "", Convert.ToDecimal(r.Rohmasse).ToString("N2")) row("origin_country") = If(r.Ursprungsland, "") row("dispatch_country") = If(r.VersendungsLand, "") row("destination_country") = If(r.BestimmungsLand, "") + row("goods_description") = If(r.GoodsDescription, "") row("invoice_number") = If(r.Rechnungsnummer, "") row("invoice_date") = If(r.Rechnungsdatum Is Nothing, "", CDate(r.Rechnungsdatum).ToString("yyyy-MM-dd")) - row("invoice_amount") = If(r.Rechnungspreis Is Nothing, "", Convert.ToString(r.Rechnungspreis)) + row("invoice_amount") = If(r.Rechnungspreis Is Nothing, "", Convert.ToDecimal(r.Rechnungspreis).ToString("N2")) row("invoice_currency") = If(r.Rechnungswaehrung, "") row("sender_eori") = If(r.AbsenderEORI, "")