🙂 İNSANLARIN EN HAYIRLISI INSANLARA FAYDALI OLANDIR 🙂

Ramazan HABER / C# RMOS / dinamik xtrareport

1-) C# RMOS - dinamik xtrareport

 

FisCikti fiscikti = new FisCikti();

                fiscikti.txtToplam.Text = txttoplam.Text;

                fiscikti.txtAdet.Text = "[adet]";

                fiscikti.DataSource = sabitler.getFisRapor(gridView1);

                fiscikti.Print();

 

 

 

 

using System.Drawing;

using DevExpress.XtraPrinting;

using DevExpress.XtraReports.UI;

using System;

 

namespace Rmosbordro.Perkon_Rapor

{

    public partial class DynamicReport : DevExpress.XtraReports.UI.XtraReport

    {

        DevExpress.XtraGrid.Views.Grid.GridView dgv;

        int genislik;

        int baslikYukseklik;

        int detayYukseklik;

        private string p;

        private string p_2;

        private DevExpress.XtraGrid.Views.Base.BaseView baseView;

 

        public DynamicReport(string Baslik, string OtelAdi, DevExpress.XtraGrid.Views.Grid.GridView grid)

        {

            InitializeComponent();

            dgv = grid;

            xr_Baslik.Text = Baslik;

            txt_OtelAdi.Text = OtelAdi;

        }

 

        public DynamicReport(string p, string p_2, DevExpress.XtraGrid.Views.Base.BaseView baseView)

        {

            this.p = p;

            this.p_2 = p_2;

            this.baseView = baseView;

        }

 

        private void BasliklariOlustur()

        {

            Point pnt = new Point(0, 80);

            genislik = 1130 / dgv.VisibleColumns.Count;

            baslikYukseklik = 23;

 

            for (int column = 0; column < dgv.VisibleColumns.Count; column++)

            {

                XRLabel label = new XRLabel();

 

                label.BackColor = Color.Transparent;

                label.Font = new Font("Verdana", 7, FontStyle.Bold);

                label.ForeColor = Color.Red;

                label.TextAlignment = TextAlignment.MiddleCenter;

                label.Borders = BorderSide.None;

 

                label.SizeF = new SizeF(genislik, baslikYukseklik);

                label.Text = dgv.VisibleColumns[column].Caption.Replace("col","");

                label.LocationF = pnt;

                label.WordWrap = false;

                label.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);

 

                pnt.X += genislik;

 

                PageHeader.Controls.Add(label);

            }

 

        }

 

        private void satirlariOlustur()

        {

            Point pnt = new Point(0, 20);

            detayYukseklik = 20;

 

            for (int row = 0; row < dgv.DataRowCount; row++)

            {

                for (int column = 0; column < dgv.VisibleColumns.Count; column++)

                {

                    XRLabel label = new XRLabel();

 

                    label.Font = new Font("Verdana", 7, FontStyle.Bold);

                    label.Borders = BorderSide.None;

                    label.ForeColor = Color.Black;

                    label.SizeF = new SizeF(genislik, detayYukseklik);

                    label.TextAlignment = TextAlignment.MiddleCenter;

 

 

                    if (Convert.ToString(dgv.VisibleColumns[column].FieldName) != "")

                    {

                        label.Text = Convert.ToString(dgv.GetRowCellDisplayText(row, dgv.VisibleColumns[column].FieldName));

                    }

 

                    label.LocationF = pnt;

                    label.WordWrap = false;

                    label.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 0, 0, 0, 100F);

 

                    pnt.X += genislik;

 

                    Detail.Controls.Add(label);

                }

                pnt.X = 0;

                pnt.Y += detayYukseklik;

            }

        }    

 

        private void DynamicReport_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e)

        {

            BasliklariOlustur();

            satirlariOlustur();

        }

    }

}

 

 

-------kullanımı----------

 private void simpleButton1_Click(object sender, EventArgs e)

        {

            MyLookDurum();

 

            XtraReport1 rapor = new XtraReport1("Otel",gridView1);

            ReportPrintTool printTool = new ReportPrintTool(rapor);

            printTool.Report.CreateDocument(false);

            printTool.PreviewForm.Load += new EventHandler(PreviewForm_Load);

            printTool.ShowPreviewDialog();

        }

        void PreviewForm_Load(object sender, EventArgs e)

        {

            PrintPreviewFormEx frm = (PrintPreviewFormEx)sender;

            frm.PrintingSystem.ExecCommand(PrintingSystemCommand.Scale, new object[] { 0.7f });

        }

 2021 Ocak 18 Pazartesi
 465