|
发表于 2015-3-3 10:51:42
|
显示全部楼层
回帖奖励 +3 鱼币
USE [FangYuanRst]
GO
/****** Object: UserDefinedFunction [dbo].[f1000013] Script Date: 03/03/2015 10:52:33 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--select * from f1000013('','','','','','','','在职')
ALTER function [dbo].[f1000013](
@probatonCompanyname varchar(50),
@probatonCcName varchar(50),
@probationFCcName varchar(50),
@probationCrewName varchar(50),
@probationName varchar(50),
@temporaryHrcode varchar(50),
@trainingTimeStart datetime,
@jobstate varchar(6)
)
returns @fXXXX table(
DocStatusName varchar(50),
DocCode varchar(50),
Formid int,
DocDate datetime,
PXDoccode varchar(50),
refYPcode varchar(50),
probationName varchar(50),
temporaryHrcode varchar(50),
sex varchar(50),
age varchar(50),
YPStation varchar(50),
nativePlace varchar(50),
degree varchar(50),
phone varchar(50),
probationDate datetime,
probatonCompanyname varchar(50),
probatonCcName varchar(50),
probationFCcName varchar(50),
probationCrewName varchar(50),
trainingTimeStart datetime,
probationStation varchar(50),
examineTime datetime,
examineScore int,
PostName1 varchar(50),
PostDate1 datetime,
PostName2 varchar(50),
PostDate2 datetime,
jobstate varchar(8)
)
as
begin
insert into @fXXXX(
DocStatusName,
DocCode,
Formid,
DocDate,
PXDoccode,
refYPcode,
probationName,
temporaryHrcode,
sex,
age,
YPStation,
nativePlace,
degree,
phone,
probationDate,
probatonCompanyname,
probatonCcName,
probationFCcName,
probationCrewName,
trainingTimeStart,
probationStation,
examineTime,
examineScore,
PostName1,
PostDate1,
PostName2,
PostDate2,
jobstate
)
select
DocStatusName= case a.DocStatus when 0 then '起草' when 10 then '待行政部审核' when 20 then '待信息组审核' when 100 then '已结束' else '' end,
a.DocCode,
a.Formid,
a.DocDate,
b.doccode,
a.refYPcode,
a.probationName,
a.temporaryHrcode,
a.sex,
a.age,
a.YPStation,
a.nativePlace,
a.degree,
a.phone,
a.probationDate,
a.probatonCompanyname,
a.probatonCcName,
a.probationFCcName,
a.probationCrewName,
b.trainingTimeStart,
a.probationStation,
b.examineTime,
b.examineScore,
a.PostName1,
a.PostDate1,
a.PostName2,
a.PostDate2,
h.jobstate
from t1000012h a left join t1000014h b on a.probationName=b.probationName
left join hrgeneral h WITH(NOLOCK) on a.temporaryHrcode=h.hrcode and a.probationName=h.hrname
where (isnull(@probatonCompanyname,'')='' or a.probatonCompanyname=@probatonCompanyname)
and (isnull(@probatonCcName,'')='' or a.probatonCcName=@probatonCcName)
and (isnull(@probationFCcName,'')='' or a.probationFCcName=@probationFCcName)
and (isnull(@probationCrewName,'')='' or a.probationCrewName=@probationCrewName)
and (isnull(@probationName,'')='' or a.probationName=@probationName)
and (isnull(@temporaryHrcode,'')='' or a.temporaryHrcode=@temporaryHrcode)
and (isnull(@trainingTimeStart,'')='' or b.trainingTimeStart>=@trainingTimeStart)
and (isnull(@jobstate,'')='' or h.jobstate=@jobstate)
return
end
|
|