Esempio n. 1
0
        protected void PageViewerPopup_CustomJSProperties(object sender, DevExpress.Web.CustomJSPropertiesEventArgs e)
        {
            var reportTypes = Enum.GetValues(typeof(ReportType)).OfType <ReportType>();

            e.Properties["cpReportDisplayNames"] = reportTypes.ToDictionary(r => r.ToString(), r => HicomReportUtil.GetReportDisplayName(r));
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            XtraReport mainReport;
            var        query = Request.QueryString[LoadReportArgsKey];

            ArrayList paymentIds = new ArrayList();

            //  If sale order
            if (query.Contains("Sale_Order_Product"))
            {
                var     args = SPlanetUtil.DeserializeCallbackArgs(query);
                DataSet dsSaleOrderData;
                using (SqlConnection conn = new SqlConnection(SPlanetUtil.GetConnectionString()))
                {
                    //Create array of Parameters
                    List <SqlParameter> arrParm = new List <SqlParameter>
                    {
                        new SqlParameter("@sale_order_no", SqlDbType.VarChar, 20)
                        {
                            Value = args[1].ToString()
                        },
                    };
                    conn.Open();
                    dsSaleOrderData = SqlHelper.ExecuteDataset(conn, "sp_sale_order_list_data_by_no", arrParm.ToArray());
                    conn.Close();
                }
                if (dsSaleOrderData.Tables.Count > 0)
                {
                    #region SaleOrder Payment
                    // Quotation Notification
                    foreach (var row in dsSaleOrderData.Tables[3].AsEnumerable())
                    {
                        paymentIds.Add(Convert.IsDBNull(row["id"]) ? 0 : Convert.ToInt32(row["id"]));
                    }
                    #endregion SaleOrder Payment

                    if (paymentIds.Count == 0)
                    {
                        paymentIds.Add(0);
                    }
                }

                mainReport = new XtraReport();

                for (int i = 0; i < paymentIds.Count; i++)
                {
                    var report = HicomReportUtil.CreateReport(query + "|" + paymentIds[i] + "|" + (i + 1));
                    if (report != null)
                    {
                        //DocumentViewerControl.Report = report;
                        report.CreateDocument();

                        mainReport.Pages.AddRange(report.Pages);
                    }
                }
            }
            else
            {
                mainReport = HicomReportUtil.CreateReport(query);
            }

            DocumentViewerControl.Report = mainReport;

            var isTableLayout = true;
            if (query.Contains("Stock_Card") ||
                query.Contains("Stock_Inventory_Products")
                )
            {
                isTableLayout = false;
            }
            DocumentViewerControl.SettingsReportViewer.TableLayout = isTableLayout;

            DocumentViewerControl.Report.RequestParameters = false;
            //DocumentViewerControl.Report.par
            //DocumentViewerControl.Report.Parameters.
        }