DevExpressXtraReport—製做雷達圖

存儲過程:前端

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO


-- =============================================
-- Author:        <Author,,Name>
-- Create date: 
-- Description:    評吸質量雷達圖分析
-- 調用示例:EXEC [dbo].[usp_Tqc_Raw_SmokingTest] '2013-08-26','2013-08-27'
-- =============================================
ALTER PROCEDURE [dbo].[usp_Tqc_Raw_SmokingTest]
    @StartDate VARCHAR(20) , --取樣起時間
    @EndDate VARCHAR(20)  --取樣止時間
AS 
    BEGIN
        SET NOCOUNT ON ;
        -- 勁頭加減計算
        SELECT TOP 3
                SampleNo ,
                Aroma1 ,
                Aroma2 ,
                Aroma3 ,
                Chroma ,
                ( CASE WHEN VigourAS = '+' THEN ( 20 - Vigour ) / 2
                       WHEN VigourAS = '-' THEN Vigour / 2
                  END ) AS Vigour ,
                AromaQuality / 2.5 AS AromaQuality ,
                AromaContent / 2.5 AS AromaContent ,
                Miscellaneous / 1.5 AS Miscellaneous ,
                Stimulate / 1.5 AS Stimulate ,
                Aftertaste / 2 AS Aftertaste
        INTO    #TMP_Tqc_Raw_SmokingTest
        FROM    Tqc_Raw_SmokingTest
        WHERE   CheckTime BETWEEN @StartDate AND @EndDate
    
        DECLARE @t TABLE
            (
              [樣品號] VARCHAR(50) ,
              [清香] NUMERIC(18, 2) ,
              [甜香] NUMERIC(18, 2) ,
              [焦香] NUMERIC(18, 2) ,
              [濃度] NUMERIC(18, 2) ,
              [勁頭] NUMERIC(18, 2) ,
              [香氣質] NUMERIC(18, 2) ,
              [香氣量] NUMERIC(18, 2) ,
              [雜氣] NUMERIC(18, 2) ,
              [刺激] NUMERIC(18, 2) ,
              [餘味] NUMERIC(18, 2)
            )
        -- 計算平均值
        INSERT  INTO @t
                SELECT  SampleNo ,
                        AVG(Aroma1) ,
                        AVG(Aroma2) ,
                        AVG(Aroma3) ,
                        AVG(Chroma) ,
                        AVG(Vigour) ,
                        AVG(AromaQuality) ,
                        AVG(AromaContent) ,
                        AVG(Miscellaneous) ,
                        AVG(Stimulate) ,
                        AVG(Aftertaste)
                FROM    #TMP_Tqc_Raw_SmokingTest
                GROUP BY SampleNo
        
             
        -- 列轉行處理
        SELECT  [樣品號] ,
                [檢測項] = attribute ,
                [檢測值] = value
        FROM    @t UNPIVOT
  ( value FOR attribute IN ( [清香], [甜香], [焦香], [濃度], [勁頭], [香氣質], [香氣量], [雜氣],
                             [刺激], [餘味] ) ) AS UPV
                
        DROP TABLE #TMP_Tqc_Raw_SmokingTest

    END


GO

前端代碼:this

/// <summary>
        /// 評吸質量雷達圖分析
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button16_Click(object sender, EventArgs e)
        {
            XtraSmokingTestRadar report = new XtraSmokingTestRadar("2013-08-26","2013-08-27");
            report.ShowPreview();
        }

 

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using DevExpress.XtraReports.UI;
using SQLServerDAL;
using System.Data;

namespace XtraReportsTest
{
    public partial class XtraSmokingTestRadar : DevExpress.XtraReports.UI.XtraReport
    {
        public XtraSmokingTestRadar(string startDate, string endDate)
        {
            InitializeComponent();
            string strSQL = @"EXECUTE usp_Tqc_Raw_SmokingTest " + "'" + startDate + "'" + "," + "'" + endDate + "'";
            SqlHelper.FillDataset(ControlSql.GetConStr(), CommandType.Text, strSQL, dsTestRadarGraph1, new string[] { "usp_Tqc_Raw_SmokingTest" });
            this.xrTableCell75.Text = startDate;
            this.xrTableCell77.Text = endDate;
        }

    }
}

效果圖:spa

相關文章
相關標籤/搜索