麦德龙IVR满意度调研PCR(默认为不满意)

 
USE [Metro]
GO
/****** 对象:  StoredProcedure [dbo].[sp_Get_Dissatis_Detail]    脚本日期: 02/08/2012 10:03:48 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =======================================================================================
-- Author:  Summit.Lau
-- Create date: 2012.1.13
-- Description: 麦德龙IVR满意度调研PCR(默认为不满意)
/* Example: 
exec sp_Get_Dissatis_Detail @DateBegin=20111207,@DateEnd=20111220,@phone = '58605910',@handler = '73545'
exec sp_Get_Dissatis_Detail @DateBegin=20120101,@DateEnd=20121220,@Satis=1
exec sp_Get_Dissatis_Detail @DateBegin=20120101,@DateEnd=20121220
exec sp_Get_Dissatis_Detail @DateBegin=20111207,@DateEnd=20111220,@phone = '58605910'
exec sp_Get_Dissatis_Detail @DateBegin=20111207,@DateEnd=20121220,@Agent = '77103',@Satis=1
exec sp_Get_Dissatis_Detail @time_begin = '20110120' ,@time_end = '20121207',@Satis=1,@Agent = '77103',@phone = '057185193547'
@Time_begin = '20120201', @Time_end = '20120206'
*/
-- ===================================================================================================
ALTER PROCEDURE [dbo].[sp_Get_Dissatis_Detail]
(
 --@DateBegin BIGINT = NULL, ---- 开始日期
 --@DateEnd BIGINT = NULL, ---- 结束日期
 @Time_Begin VARCHAR(8) = null,  -- 起始时间
 @Time_End VARCHAR(8) = null,  -- 截止时间
 --@DateBegin BIGINT = '',   ---- 开始日期
 --@DateEnd BIGINT = '',   ---- 结束日期
 @phone  varchar(20) = '', ---客户信息(来电号码)
 @Agent varchar(20) = NULL, --- 座席工号 
 @Satis   int = 3     --- 满意度 1、满意 2、一般 3、不满意
)
AS 
begin
TRY

  DECLARE @DateBegin BIGINT, ---- 开始日期
          @DateEnd BIGINT, ---- 结束日期
          @Beg_Date INT,
          @End_Date INT,
          --@Agent   varchar(20),
          @CallIn  VARCHAR(20),
          @Error    INT
   DECLARE  @Temp_Table TABLE
    (
      Sdate BIGINT,      
      Calling VARCHAR(20),
      Agent VARCHAR(20)
    )   
       
   SELECT @DateBegin = CAST(CONVERT(VARCHAR(10),ISNULL(@Time_Begin,GETDATE()),112) AS INT)
   SELECT @DateEnd =  CAST(CONVERT(VARCHAR(10),ISNULL(@time_end,GETDATE()),112) AS INT) 
   --SET @Agent = ISNULL(@handler,'')   
   SET @CallIn = ISNULL(@Phone,'')
   INSERT INTO @Temp_Table
    SELECT REPLACE(sdate,'.',''),Calling,Agentid FROM dbo.Metro_Survey WHERE LEN(Agentid)>0 AND Satisfied = @Satis 
     ORDER BY Sdate DESC 
  SELECT @Beg_Date = DateBeg,@End_Date = DateEnd FROM Defin_Data(NULL,@DateBegin,@DateEnd) 
--  SELECT * FROM @Temp_Table
--    SELECT C.* ,
--    
--    ISNULL(
--(SELECT 
--DISTINCT A.RecordId
--FROM 
--[Link_MetrLog].[VisionLog].dbo.[records] A
--WHERE 
--    A.Calling = C.Calling COLLATE chinese_prc_ci_as
--    AND  A.Master = C.Agent COLLATE chinese_prc_ci_as
--    AND  A.StartDate = C.Sdate 
--    AND  A.inbound = 1
--) ,0) RecordId
--FROM @Temp_Table C 
--WHERE 
--C.Calling = CASE WHEN ISNULL(@CallIn,'')= ''  THEN Calling
--           ELSE @CallIn
--END
--AND
--C.Agent = CASE WHEN ISNULL(@Agent,'')= ''  THEN Agent
--           ELSE @Agent
--END
--AND 
--c.Sdate BETWEEN @Beg_Date AND @End_Date 
 SELECT 
DISTINCT A.StartDate Sdate,c.Calling,c.Agent Agent,A.RecordId

FROM 
[Link_MetrLog].[VisionLog].dbo.[records] A,@Temp_Table C 
WHERE A.Calling = C.Calling COLLATE chinese_prc_ci_as
    AND  A.Master = C.Agent  COLLATE chinese_prc_ci_as
    AND  A.StartDate = C.Sdate
    AND  A.inbound = 1
    AND C.Calling = CASE WHEN ISNULL(@CallIn,'')= ''  THEN C.Calling
           ELSE @CallIn
END
AND
C.Agent = CASE WHEN ISNULL(@Agent,'')= ''  THEN C.Agent
           ELSE @Agent
END
AND 
c.Sdate BETWEEN @Beg_Date AND @End_Date 
    ORDER BY A.StartDate DESC 

END TRY
begin catch
 --if @@trancount != 0 rollback tran a
 set @Error = -1
 print '[dbo.sp_Get_Dissatis_Derail](应用失败!)'
 print Error_Message()
end CATCH


SELECT * FROM dbo.Metro_Survey


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值