Files
HJGL_DS/DataBase/版本日志/HJGLDB_DS_2025-03-03_bwj.sql
T

527 lines
32 KiB
Transact-SQL
Raw Normal View History

2025-03-12 10:04:13 +08:00
ALTER PROCEDURE [dbo].[HJGL_sp_rpt_TestingReportPrint]
(
@TestingReportPrintId NVARCHAR(50),
--@RowNum INT,
--@Flag CHAR(1),
@STE_ID nvarchar(50),
@STE_ID2 nvarchar(50),
@WME_ID nvarchar(50)
)
AS
/***************检测报告打印报表******************/
SELECT Report.TestingReportPrintId,
Report.ISO_ID,
Report.Specifications, --检件规格
Report.NDT_ID,
Report.BatchId,
SUBSTRING(Report.ReportCode,CHARINDEX('-',Report.ReportCode,1)+1,LEN(Report.ReportCode)) AS ReportCode, --报告编号
Report.ContractUnitId, --承包单位
Project.ProjectName, --工程名称
'管道' AS InstallationName, --单元名称
Unit.UnitName, --委托单位
Report.JotyName, --检件名称
IsoInfo.ISO_IsoNo, --检件编号
IsoInfo.TestCategoryNum,--检测类别号
(CASE WHEN Steel.STE_Code IS NOT NULL AND Steel2.STE_Code IS NOT NULL and Steel.STE_Code!=Steel2.STE_Code
THEN Steel.STE_Code + '/' + Steel2.STE_Code
WHEN Steel.STE_Code IS NOT NULL THEN Steel.STE_Code
ELSE ISNULL(Steel2.STE_Code,'') END) AS STE_Code, --检件材质
WeldMethod.WME_Name, --焊接方法
(SELECT TOP 1 CH_NDTCriteria FROM dbo.HJGL_CH_Trust trust
WHERE trust.BatchId = Report.BatchId AND trust.CH_NDTMethod=Report.NDT_ID ) AS CH_NDTCriteria, --检测标准
NDTRate.NDTR_Name, --检测比例
(CASE WHEN (NDT.NDT_Code='MT' OR NDT.NDT_Code='PT') AND
(SELECT TOP 1 joty.JOTY_Group FROM dbo.HJGL_CH_TrustItem trustItem
LEFT JOIN HJGL_PW_JointInfo jot ON jot.JOT_ID=trustItem.JOT_ID
LEFT JOIN dbo.HJGL_BS_JointType joty ON joty.JOTY_ID = jot.JOTY_ID
LEFT join dbo.HJGL_CH_Trust trust on trust.CH_TrustID=trustItem.CH_TrustID
WHERE trust.BatchId = Report.BatchId AND trust.CH_NDTMethod=Report.NDT_ID)='1' THEN ''
ELSE (SELECT TOP 1 jot.JOT_QualifiedLevel FROM dbo.HJGL_CH_TrustItem trustItem
LEFT JOIN HJGL_PW_JointInfo jot ON jot.JOT_ID=trustItem.JOT_ID
left join dbo.HJGL_CH_Trust trust on trust.CH_TrustID=trustItem.CH_TrustID
WHERE trust.BatchId = Report.BatchId AND trust.CH_NDTMethod=Report.NDT_ID)
END) AS CH_AcceptGrade,--合格级别
--(select top 1 jot.JOT_QualifiedLevel
-- FROM dbo.HJGL_CH_TrustItem trustItem
--left join HJGL_PW_JointInfo jot on jot.JOT_ID=trustItem.JOT_ID
--left join dbo.HJGL_CH_Trust trust on trust.CH_TrustID=trustItem.CH_TrustID
--WHERE trust.BatchId = Report.BatchId AND trust.CH_NDTMethod=Report.NDT_ID) as CH_AcceptGrade, --合格级别
Report.TestingTime, -- 检测时机
Report.HotProessState, --热处理状态
Report.TransilluminationMode, --透照方式
Report.EquipmentCode, --设备型号
Equipmnet.EquipmentName AS EquipmentName, --设备名称
Report.FilmModel, --胶片牌号
Report.IntensifyingWay, --增感屏
Report.TubeVoltage, --管电压
Report.SourceActivity, --γ源活度
Report.ImageQualityModel, --像质计型号
Report.WireDiameterCode, --线径编号
Report.FocalLength, --焦距
Report.ExposureTime, --曝光时间
Report.EffectiveLength, --有效片长
NDT.NDT_Code,--MT磁化方法
'ⅡC-d' AS PTNDTCode, --PT检测方法
(SELECT slope.JST_Code FROM dbo.HJGL_BS_SlopeType AS slope
WHERE slope.JST_ID=(SELECT TOP 1 jot.JST_ID FROM dbo.HJGL_PW_JointInfo jot
LEFT JOIN dbo.HJGL_BO_BatchDetail d ON d.JOT_ID = jot.JOT_ID
WHERE d.BatchId=Report.BatchId AND jot.ISO_ID=Report.ISO_ID AND jot.JOT_JointDesc=Report.Specifications))
AS JST_Name, --坡口类型
----------------RT------------------------
Report.RT_TechnicalGrade, --RT 技术等级
Report.RT_FocalSize,--RT 焦点尺寸
(CASE WHEN Report.RT_TubeCurrent IS NULL
THEN ISNULL(Report.SourceActivity,'')
ELSE (CASE WHEN Report.SourceActivity IS NULL
THEN ISNULL(Report.RT_TubeCurrent,'')
ELSE (ISNULL(Report.RT_TubeCurrent,'') +'/'+ ISNULL(Report.SourceActivity,'')) END)
END) AS RT_TubeCurrent,--RT 管电流/源活度
Report.RT_SourceType,--RT γ源种类
Report.RT_FilmDensity,--RT 底片黑度
Report.RT_DeveloperTemperature,--RT 显影温度
Report.RT_DeveloperTime,--RT 显影时间
(CASE WHEN Report.TubeVoltage IS NULL
THEN ISNULL(Equipmnet.LineEnergy,'')
ELSE (CASE WHEN Equipmnet.LineEnergy IS NULL
THEN ISNULL(Report.TubeVoltage,'')
ELSE (ISNULL(Report.TubeVoltage,'') +'/'+ ISNULL(Equipmnet.LineEnergy,'')) END)
END) AS TubeVoltageLineEnergy,--RT 管电压/源能量
(CASE WHEN Equipmnet.EquipmentName IS NULL
THEN ISNULL(Report.RT_SourceType,'')
ELSE (CASE WHEN Report.RT_SourceType IS NULL
THEN ISNULL(Equipmnet.EquipmentName,'')
ELSE (ISNULL(Equipmnet.EquipmentName,'') +'/'+ ISNULL(Report.RT_SourceType,'')) END)
END) AS EquipmentSourceType,--RT 设备型号/射源种类
------------------PT-------------------------
Report.PT_SurfaceState, --PT 表面状态
Report.PT_PenetrantGrade, --PT 渗透剂牌号
Report.PT_CleaningGrade, --PT 清洗剂牌号
Report.PT_ImagingGrade, --PT 显像剂牌号
Report.PT_OsmoticTemperature, --PT 渗透温度
Report.PT_ImposingMethod, --PT 施加方法
Report.PT_ObservationMethod, --PT 观察方法
Report.PT_SensitivityTestBlock, --PT 灵敏度试块
Report.PT_PermeationTime, --PT 渗透时间
Report.PT_ImagingTime, --PT 显像时间
---------------------MT-------------------------
Report.MT_SurfaceState, --MT 表面状态
Report.MT_SensitivityTestBlock, --MT 灵敏度试片
Report.MT_CurrentType, --MT 电流类型
Report.MT_LiftingPower, --MT 提升力/电流
Report.MT_MagnetizationTime, --MT 磁化时间
Report.MT_MagneticPowderType, --MT 磁粉种类
Report.MT_Concentration, --MT 磁悬液浓度
Report.MT_ImposingMethod, --MT 施加方法
Report.MT_TestMethod, --MT 磁化方法
Report.PoleSpacing, --MT 电/磁极间距
----------------------UT--------------------------------
Report.UT_TechnicalGrade, --UT 技术等级
Report.UT_DetectionSurface, --UT 检测面
Report.UT_SurfaceState, --UT 表面状态
Report.UT_StandardTestBlock, --UT 标准试块1
Report.UT_StandardTestBlock2,--UT 标准试块2
Report.UT_ProbeType, --UT 探头型号
Report.UT_SurfaceCompensation, --UT 表面补偿
Report.UT_ScanningRate, --UT 扫描比例
Report.UT_DetectionSensitivity, --UT 检测灵敏度
Report.UT_CouplingAgent, --UT 耦合剂
--------------------------------------------------------
Report.Type,
Report.Printer,
Report.PrintTime,
Report.TestBlock,
(select top 1 InstallationCode from Project_Installation where ProjectId=IsoInfo.ProjectId) as WorkAreaCode --区号
FROM dbo.HJGL_CH_TestingReportPrint AS Report
LEFT JOIN DBO.HJGL_PW_IsoInfo AS IsoInfo ON IsoInfo.ISO_ID = Report.ISO_ID
LEFT JOIN DBO.Base_Project AS Project ON Project.ProjectId = IsoInfo.ProjectId
LEFT JOIN DBO.HJGL_BO_Batch AS Batch ON Batch.BatchId=Report.BatchId
LEFT JOIN DBO.Base_Unit AS Unit ON Unit.UnitId = IsoInfo.BSU_ID
LEFT JOIN HJGL_BS_Steel AS Steel ON Steel.STE_ID=@STE_ID
LEFT JOIN HJGL_BS_Steel AS Steel2 ON Steel2.STE_ID=@STE_ID2
left join HJGL_BS_WeldMethod AS WeldMethod on WeldMethod.WME_ID=@WME_ID
LEFT JOIN DBO.HJGL_BS_NDTRate AS NDTRate ON NDTRate.NDTR_ID = Batch.NDTR_ID
LEFT JOIN dbo.HJGL_BS_NDTType AS NDT ON NDT.NDT_ID = Report.NDT_ID
LEFT JOIN dbo.HJGL_BS_Equipment AS Equipmnet ON Equipmnet.EquipmentId= Report.EquipmentName
WHERE Report.TestingReportPrintId=@TestingReportPrintId
GO
ALTER PROCEDURE [dbo].[HJGL_sp_rpt_TestingReportPrintItem]
(
@TestingReportPrintId nvarchar(50),
--@RowNum INT,
--@Flag CHAR(1),
@STE_ID nvarchar(50),
@STE_ID2 nvarchar(50),
@WME_ID nvarchar(50)
)
AS
/***************检测报告打印报表明细表 佘春生修改于2018.2.8******************/
create table #SIS(
Number int null,
QualityRatingId nvarchar(50),
JOT_JointDesc nvarchar(50),
JOT_JointNo nvarchar(50),
FilmNum nvarchar(50),
WED_Code nvarchar(50),
DefectNature nvarchar(50),
DefectSize nvarchar(50),
DefectResult nvarchar(50),
DefectRation nvarchar(50),
BatchCode nvarchar(50),
ISO_IsoNo nvarchar(50),
Remark nvarchar(50),
Defect nvarchar(100),
PeakAmplitude nvarchar(100),
DefectLocation nvarchar(100),
IndicatingLength nvarchar(100),
DepthDefect nvarchar(100),
)
--IF(@Flag='1')
--BEGIN
--insert into #SIS
--SELECT v.* FROM
--(SELECT ROW_NUMBER() OVER(ORDER BY report.JOT_JointNo,report.FilmNum) AS Number,report.*
-- FROM
--(SELECT v1.*
--FROM
--(SELECT QualityRating.QualityRatingId,
-- JointInfo.JOT_JointDesc,
-- JointInfo.JOT_JointNo+(case batchDetail.PointType when '2' then 'K' else '' end) as JOT_JointNo,
-- QualityRating.FilmNum,
-- (CASE WHEN JointInfo.JOT_CellWelder!=JointInfo.JOT_FloorWelder THEN Welder1.WED_Code+'/'+Welder2.WED_Code ELSE Welder1.WED_Code END) AS WED_Code,
-- dbo.GetDefectNature(QualityRating.QualityRatingId,QualityRating.CH_TrustItemID) as DefectNature,--缺陷性质
-- QualityRating.DefectSize,--缺陷定量
-- Replace(QualityRating.DefectResult,' ','') AS DefectResult,--评定级别
-- QualityRating.DefectRation,
-- batch.BatchCode, --检测批号
-- isoInfo.ISO_IsoNo,
-- Equipment.EquipmentName as Remark,
-- case when ndtType.NDT_Code='MT'
-- then ((case when QualityRating.DefectNature is not null and QualityRating.DefectNature!='' then '性质:'+QualityRating.DefectNature+'' else '' end)
-- +(case when QualityRating.DefectLocation is not null and QualityRating.DefectLocation!='' then '位置:'+QualityRating.DefectLocation+'' else '' end)
-- +(case when QualityRating.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(QualityRating.DefectSize as real)) else '' end))
-- when ndtType.NDT_Code='PT'
-- then ((case when QualityRating.DefectNature is not null and QualityRating.DefectNature!='' then '性质:'+QualityRating.DefectNature+'' else '' end)
-- +(case when QualityRating.DefectLocation is not null and QualityRating.DefectLocation!='' then '位置:'+QualityRating.DefectLocation+'' else '' end)
-- +(case when QualityRating.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(QualityRating.DefectSize as real)) else '' end))
-- when ndtType.NDT_Code='UT'
-- then ((case when QualityRating.PeakAmplitude is not null and QualityRating.PeakAmplitude!='' then '波幅:'+QualityRating.PeakAmplitude+'' else '' end)
-- +(case when QualityRating.DefectLocation is not null and QualityRating.DefectLocation!='' then '位置:'+QualityRating.DefectLocation+'' else '' end)
-- +(case when QualityRating.DepthDefect is not null then '深度:'+convert(nvarchar(10),cast(QualityRating.DepthDefect as real))+'' else '' end)
-- +(case when QualityRating.IndicatingLength is not null then '长度:'+convert(nvarchar(10),cast(QualityRating.IndicatingLength as real)) else '' end))
-- else '' end
-- AS Defect --缺陷情况或缺陷示意图编号
--FROM dbo.HJGL_BO_QualityRating AS QualityRating
--LEFT JOIN DBO.HJGL_CH_TrustItem AS TrustItem ON TrustItem.CH_TrustItemID = QualityRating.CH_TrustItemID
--LEFT JOIN HJGL_BS_Equipment AS Equipment ON Equipment.EquipmentId=TrustItem.EquipmentId
--LEFT JOIN dbo.HJGL_CH_Trust trust ON trust.CH_TrustID = TrustItem.CH_TrustID
--LEFT JOIN dbo.HJGL_BS_NDTType ndtType on ndtType.NDT_ID=trust.CH_NDTMethod
--LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.JOT_ID = QualityRating.JOT_ID
--LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId=batchDetail.BatchId
--LEFT JOIN DBO.HJGL_PW_JointInfo AS JointInfo ON JointInfo.JOT_ID=QualityRating.JOT_ID
--LEFT JOIN dbo.HJGL_PW_IsoInfo AS isoInfo ON isoInfo.ISO_ID=JointInfo.ISO_ID
--LEFT JOIN DBO.HJGL_BS_Welder AS Welder1 ON Welder1.WED_ID = JointInfo.JOT_CellWelder
--LEFT JOIN DBO.HJGL_BS_Welder AS Welder2 ON Welder2.WED_ID = JointInfo.JOT_FloorWelder
--LEFT JOIN DBO.HJGL_CH_TestingReportPrint AS TestingReportPrint ON TestingReportPrint.ISO_ID = QualityRating.ISO_ID
--WHERE TestingReportPrint.ISO_ID=QualityRating.ISO_ID and JointInfo.STE_ID=@STE_ID AND (JointInfo.STE_ID2=@STE_ID2 or @STE_ID2='') AND JointInfo.WME_ID=@WME_ID
--AND TestingReportPrint.Specifications=JointInfo.JOT_JointDesc
--AND TestingReportPrint.BatchId = trust.BatchId
--AND TestingReportPrint.NDT_ID = trust.CH_NDTMethod
--AND TestingReportPrint.TestingReportPrintId=@TestingReportPrintId) v1
--UNION all
--SELECT v2.*
--from
--(SELECT qualityRatingRepair.QualityRatingRepairId AS QualityRatingId,
-- JointInfo.JOT_JointDesc,
-- JointInfo.JOT_JointNo+(case repair.NDT_ID when '20d2cbca-8b3d-434b-b1c1-181796986fa5' then '' else record.RepairMark end)+(case batchDetail.PointType when '2' then 'K' else '' end) as JOT_JointNo,
-- (qualityRatingRepair.FilmNum+record.RepairMark) AS FilmNum,
-- Welder.WED_Code,
-- dbo.GetRepairDefectNature(qualityRatingRepair.QualityRatingRepairId,qualityRatingRepair.CH_RepairItemId) as DefectNature,
-- qualityRatingRepair.DefectSize,
-- Replace(qualityRatingRepair.DefectResult,' ','') AS DefectResult,
-- qualityRatingRepair.DefectRation,
-- batch.BatchCode, --检测批号
-- isoInfo.ISO_IsoNo,
-- Equipment.EquipmentName as Remark,
-- case when ndtType.NDT_Code='MT'
-- then ((case when qualityRatingRepair.DefectNature is not null and qualityRatingRepair.DefectNature!='' then '性质:'+qualityRatingRepair.DefectNature else '' end)
-- +(case when qualityRatingRepair.DefectLocation is not null and qualityRatingRepair.DefectLocation!='' then '位置:'+qualityRatingRepair.DefectLocation else '' end)
-- +(case when qualityRatingRepair.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(qualityRatingRepair.DefectSize as real)) else '' end))
-- when ndtType.NDT_Code='PT'
-- then ((case when qualityRatingRepair.DefectNature is not null and qualityRatingRepair.DefectNature!='' then '性质:'+qualityRatingRepair.DefectNature else '' end)
-- +(case when qualityRatingRepair.DefectLocation is not null and qualityRatingRepair.DefectLocation!='' then '位置:'+qualityRatingRepair.DefectLocation else '' end)
-- +(case when qualityRatingRepair.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(qualityRatingRepair.DefectSize as real)) else '' end))
-- when ndtType.NDT_Code='UT'
-- then ((case when qualityRatingRepair.PeakAmplitude is not null and qualityRatingRepair.PeakAmplitude!='' then '波幅:'+qualityRatingRepair.PeakAmplitude else '' end)
-- +(case when qualityRatingRepair.DefectLocation is not null and qualityRatingRepair.DefectLocation!='' then '位置:'+qualityRatingRepair.DefectLocation else '' end)
-- +(case when qualityRatingRepair.DepthDefect is not null then '深度:'+convert(nvarchar(10),cast(qualityRatingRepair.DepthDefect as real)) else '' end)
-- +(case when qualityRatingRepair.IndicatingLength is not null then '长度:'+convert(nvarchar(10),cast(qualityRatingRepair.IndicatingLength as real)) else '' end))
-- else '' end
-- AS Defect --缺陷情况或缺陷示意图编号
--FROM dbo.HJGL_BO_QualityRatingRepair AS qualityRatingRepair
--LEFT JOIN dbo.HJGL_CH_RepairItem AS repairItem ON repairItem.CH_RepairItemId = qualityRatingRepair.CH_RepairItemId
--LEFT JOIN HJGL_BS_Equipment AS Equipment ON Equipment.EquipmentId=repairItem.EquipmentId
--LEFT JOIN dbo.HJGL_CH_Repair repair ON repair.CH_RepairID = repairItem.CH_RepairID
--LEFT JOIN dbo.HJGL_BS_NDTType ndtType on ndtType.NDT_ID=repair.NDT_ID
--LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.JOT_ID = qualityRatingRepair.JOT_ID
--LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId=batchDetail.BatchId
--LEFT JOIN DBO.HJGL_PW_JointInfo AS JointInfo ON JointInfo.JOT_ID=qualityRatingRepair.JOT_ID
--LEFT JOIN dbo.HJGL_PW_IsoInfo AS isoInfo ON isoInfo.ISO_ID=JointInfo.ISO_ID
--LEFT JOIN dbo.HJGL_CH_RepairItemRecord record ON record.RepairItemRecordId = repairItem.RepairItemRecordId
--LEFT JOIN DBO.HJGL_BS_Welder AS Welder ON Welder.WED_ID =record.JOT_CellWelder
--LEFT JOIN DBO.HJGL_CH_TestingReportPrint AS TestingReportPrint ON TestingReportPrint.ISO_ID = qualityRatingRepair.ISO_ID
--WHERE TestingReportPrint.ISO_ID=qualityRatingRepair.ISO_ID and JointInfo.STE_ID=@STE_ID AND (JointInfo.STE_ID2=@STE_ID2 or @STE_ID2='') AND JointInfo.WME_ID=@WME_ID
--AND TestingReportPrint.Specifications=JointInfo.JOT_JointDesc
--AND TestingReportPrint.BatchId = repair.BatchId
--AND TestingReportPrint.NDT_ID = repair.NDT_ID
--AND TestingReportPrint.TestingReportPrintId=@TestingReportPrintId) v2)
--report) v
--WHERE v.Number<=@RowNum
--END
--ELSE IF(@Flag='2')
--BEGIN
--insert into #SIS
--SELECT v.* FROM
--(SELECT ROW_NUMBER() OVER(ORDER BY report.JOT_JointNo,report.FilmNum) AS Number,report.*
-- FROM
--(SELECT v1.*
--FROM
--(SELECT QualityRating.QualityRatingId,
-- JointInfo.JOT_JointDesc,JointInfo.JOT_JointNo+(case batchDetail.PointType when '2' then 'K' else '' end) as JOT_JointNo,
-- QualityRating.FilmNum,
-- (CASE WHEN JointInfo.JOT_CellWelder!=JointInfo.JOT_FloorWelder THEN Welder1.WED_Code+'/'+Welder2.WED_Code ELSE Welder1.WED_Code END) AS WED_Code,
-- dbo.GetDefectNature(QualityRating.QualityRatingId,QualityRating.CH_TrustItemID) as DefectNature,QualityRating.DefectSize,
-- Replace(QualityRating.DefectResult,' ','') AS DefectResult,
-- QualityRating.DefectRation,
-- batch.BatchCode, --检测批号
-- isoInfo.ISO_IsoNo,
-- Equipment.EquipmentName as Remark,
-- case when ndtType.NDT_Code='MT'
-- then ((case when QualityRating.DefectNature is not null and QualityRating.DefectNature!='' then '性质:'+QualityRating.DefectNature else '' end)
-- +(case when QualityRating.DefectLocation is not null and QualityRating.DefectLocation!='' then '位置:'+QualityRating.DefectLocation else '' end)
-- +(case when QualityRating.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(QualityRating.DefectSize as real)) else '' end))
-- when ndtType.NDT_Code='PT'
-- then ((case when QualityRating.DefectNature is not null and QualityRating.DefectNature!='' then '性质:'+QualityRating.DefectNature else '' end)
-- +(case when QualityRating.DefectLocation is not null and QualityRating.DefectLocation!='' then '位置:'+QualityRating.DefectLocation else '' end)
-- +(case when QualityRating.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(QualityRating.DefectSize as real)) else '' end))
-- when ndtType.NDT_Code='UT'
-- then ((case when QualityRating.PeakAmplitude is not null and QualityRating.PeakAmplitude!='' then '波幅:'+QualityRating.PeakAmplitude else '' end)
-- +(case when QualityRating.DefectLocation is not null and QualityRating.DefectLocation!='' then '位置:'+QualityRating.DefectLocation else '' end)
-- +(case when QualityRating.DepthDefect is not null then '深度:'+convert(nvarchar(10),cast(QualityRating.DepthDefect as real)) else '' end)
-- +(case when QualityRating.IndicatingLength is not null then '长度:'+convert(nvarchar(10),cast(QualityRating.IndicatingLength as real)) else '' end))
-- else '' end
-- AS Defect --缺陷情况或缺陷示意图编号
--FROM dbo.HJGL_BO_QualityRating AS QualityRating
--LEFT JOIN DBO.HJGL_CH_TrustItem AS TrustItem ON TrustItem.CH_TrustItemID = QualityRating.CH_TrustItemID
--LEFT JOIN HJGL_BS_Equipment AS Equipment ON Equipment.EquipmentId=TrustItem.EquipmentId
--LEFT JOIN dbo.HJGL_CH_Trust trust ON trust.CH_TrustID = TrustItem.CH_TrustID
--LEFT JOIN dbo.HJGL_BS_NDTType ndtType on ndtType.NDT_ID=trust.CH_NDTMethod
--LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.JOT_ID = QualityRating.JOT_ID
--LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId=batchDetail.BatchId
--LEFT JOIN DBO.HJGL_PW_JointInfo AS JointInfo ON JointInfo.JOT_ID=QualityRating.JOT_ID
--LEFT JOIN dbo.HJGL_PW_IsoInfo AS isoInfo ON isoInfo.ISO_ID=JointInfo.ISO_ID
--LEFT JOIN DBO.HJGL_BS_Welder AS Welder1 ON Welder1.WED_ID = JointInfo.JOT_CellWelder
--LEFT JOIN DBO.HJGL_BS_Welder AS Welder2 ON Welder2.WED_ID = JointInfo.JOT_FloorWelder
--LEFT JOIN DBO.HJGL_CH_TestingReportPrint AS TestingReportPrint ON TestingReportPrint.ISO_ID = QualityRating.ISO_ID
--WHERE TestingReportPrint.ISO_ID=QualityRating.ISO_ID and JointInfo.STE_ID=@STE_ID AND (JointInfo.STE_ID2=@STE_ID2 or @STE_ID2='') AND JointInfo.WME_ID=@WME_ID
--AND TestingReportPrint.Specifications=JointInfo.JOT_JointDesc
--AND TestingReportPrint.BatchId = trust.BatchId
--AND TestingReportPrint.NDT_ID = trust.CH_NDTMethod
--AND TestingReportPrint.TestingReportPrintId=@TestingReportPrintId) v1
--UNION all
--SELECT v2.*
--from
--(SELECT qualityRatingRepair.QualityRatingRepairId AS QualityRatingId,
-- JointInfo.JOT_JointDesc,JointInfo.JOT_JointNo+(case repair.NDT_ID when '20d2cbca-8b3d-434b-b1c1-181796986fa5' then '' else record.RepairMark end)+(case batchDetail.PointType when '2' then 'K' else '' end) as JOT_JointNo,
-- (qualityRatingRepair.FilmNum+record.RepairMark) AS FilmNum,
-- Welder.WED_Code,
-- dbo.GetRepairDefectNature(qualityRatingRepair.QualityRatingRepairId,qualityRatingRepair.CH_RepairItemId) as DefectNature,
-- qualityRatingRepair.DefectSize,
-- Replace(qualityRatingRepair.DefectResult,' ','') AS DefectResult,
-- qualityRatingRepair.DefectRation,
-- batch.BatchCode, --检测批号
-- isoInfo.ISO_IsoNo,
-- Equipment.EquipmentName as Remark,
-- case when ndtType.NDT_Code='MT'
-- then ((case when qualityRatingRepair.DefectNature is not null and qualityRatingRepair.DefectNature!='' then '性质:'+qualityRatingRepair.DefectNature else '' end)
-- +(case when qualityRatingRepair.DefectLocation is not null and qualityRatingRepair.DefectLocation!='' then '位置:'+qualityRatingRepair.DefectLocation else '' end)
-- +(case when qualityRatingRepair.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(qualityRatingRepair.DefectSize as real)) else '' end))
-- when ndtType.NDT_Code='PT'
-- then ((case when qualityRatingRepair.DefectNature is not null and qualityRatingRepair.DefectNature!='' then '性质:'+qualityRatingRepair.DefectNature else '' end)
-- +(case when qualityRatingRepair.DefectLocation is not null and qualityRatingRepair.DefectLocation!='' then '位置:'+qualityRatingRepair.DefectLocation else '' end)
-- +(case when qualityRatingRepair.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(qualityRatingRepair.DefectSize as real)) else '' end))
-- when ndtType.NDT_Code='UT'
-- then ((case when qualityRatingRepair.PeakAmplitude is not null and qualityRatingRepair.PeakAmplitude!='' then '波幅:'+qualityRatingRepair.PeakAmplitude else '' end)
-- +(case when qualityRatingRepair.DefectLocation is not null and qualityRatingRepair.DefectLocation!='' then '位置:'+qualityRatingRepair.DefectLocation else '' end)
-- +(case when qualityRatingRepair.DepthDefect is not null then '深度:'+convert(nvarchar(10),cast(qualityRatingRepair.DepthDefect as real)) else '' end)
-- +(case when qualityRatingRepair.IndicatingLength is not null then '长度:'+convert(nvarchar(10),cast(qualityRatingRepair.IndicatingLength as real)) else '' end))
-- else '' end
-- AS Defect --缺陷情况或缺陷示意图编号
--FROM dbo.HJGL_BO_QualityRatingRepair AS qualityRatingRepair
--LEFT JOIN dbo.HJGL_CH_RepairItem AS repairItem ON repairItem.CH_RepairItemId = qualityRatingRepair.CH_RepairItemId
--LEFT JOIN HJGL_BS_Equipment AS Equipment ON Equipment.EquipmentId=repairItem.EquipmentId
--LEFT JOIN dbo.HJGL_CH_Repair repair ON repair.CH_RepairID = repairItem.CH_RepairID
--LEFT JOIN dbo.HJGL_BS_NDTType ndtType on ndtType.NDT_ID=repair.NDT_ID
--LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.JOT_ID = qualityRatingRepair.JOT_ID
--LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId=batchDetail.BatchId
--LEFT JOIN DBO.HJGL_PW_JointInfo AS JointInfo ON JointInfo.JOT_ID=qualityRatingRepair.JOT_ID
--LEFT JOIN dbo.HJGL_PW_IsoInfo AS isoInfo ON isoInfo.ISO_ID=JointInfo.ISO_ID
--LEFT JOIN dbo.HJGL_CH_RepairItemRecord record ON record.RepairItemRecordId = repairItem.RepairItemRecordId
--LEFT JOIN DBO.HJGL_BS_Welder AS Welder ON Welder.WED_ID =record.JOT_CellWelder
--LEFT JOIN DBO.HJGL_CH_TestingReportPrint AS TestingReportPrint ON TestingReportPrint.ISO_ID = qualityRatingRepair.ISO_ID
--WHERE TestingReportPrint.ISO_ID=qualityRatingRepair.ISO_ID and JointInfo.STE_ID=@STE_ID AND (JointInfo.STE_ID2=@STE_ID2 or @STE_ID2='') AND JointInfo.WME_ID=@WME_ID
--AND TestingReportPrint.Specifications=JointInfo.JOT_JointDesc
--AND TestingReportPrint.BatchId = repair.BatchId
--AND TestingReportPrint.NDT_ID = repair.NDT_ID
--AND TestingReportPrint.TestingReportPrintId=@TestingReportPrintId) v2)
--report) v
--WHERE v.Number>@RowNum
--END
--ELSE
BEGIN
insert into #SIS
SELECT v.* FROM
(SELECT ROW_NUMBER() OVER(ORDER BY report.JOT_JointNo,report.FilmNum) AS Number,report.*
FROM
(SELECT v1.*
FROM
(SELECT QualityRating.QualityRatingId,
JointInfo.JOT_JointDesc,JointInfo.JOT_JointNo+(case batchDetail.PointType when '2' then 'K' else '' end) as JOT_JointNo,
QualityRating.FilmNum,
(CASE WHEN JointInfo.JOT_CellWelder!=JointInfo.JOT_FloorWelder THEN Welder1.WED_Code+'/'+Welder2.WED_Code ELSE Welder1.WED_Code END) AS WED_Code,
dbo.GetDefectNature(QualityRating.QualityRatingId,QualityRating.CH_TrustItemID) as DefectNature,QualityRating.DefectSize,
Replace(QualityRating.DefectResult,' ','') AS DefectResult,
QualityRating.DefectRation,
batch.BatchCode, --检测批号
isoInfo.ISO_IsoNo,
Equipment.EquipmentName as Remark,
case when ndtType.NDT_Code='MT'
then ((case when QualityRating.DefectNature is not null and QualityRating.DefectNature!='' then '性质:'+QualityRating.DefectNature else '' end)
+(case when QualityRating.DefectLocation is not null and QualityRating.DefectLocation!='' then '位置:'+QualityRating.DefectLocation else '' end)
+(case when QualityRating.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(QualityRating.DefectSize as real)) else '' end))
when ndtType.NDT_Code='PT'
then ((case when QualityRating.DefectNature is not null and QualityRating.DefectNature!='' then '性质:'+QualityRating.DefectNature else '' end)
+(case when QualityRating.DefectLocation is not null and QualityRating.DefectLocation!='' then '位置:'+QualityRating.DefectLocation else '' end)
+(case when QualityRating.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(QualityRating.DefectSize as real)) else '' end))
when ndtType.NDT_Code='UT'
then ((case when QualityRating.PeakAmplitude is not null and QualityRating.PeakAmplitude!='' then '波幅:'+QualityRating.PeakAmplitude else '' end)
+(case when QualityRating.DefectLocation is not null and QualityRating.DefectLocation!='' then '位置:'+QualityRating.DefectLocation else '' end)
+(case when QualityRating.DepthDefect is not null then '深度:'+convert(nvarchar(10),cast(QualityRating.DepthDefect as real)) else '' end)
+(case when QualityRating.IndicatingLength is not null then '长度:'+convert(nvarchar(10),cast(QualityRating.IndicatingLength as real)) else '' end))
else '' end
AS Defect, --缺陷情况或缺陷示意图编号
QualityRating.PeakAmplitude,--SL偏差dB
QualityRating.DefectLocation, --区域
QualityRating.IndicatingLength, --缺陷指示长度mm
QualityRating.DepthDefect --缺陷埋藏深度mm
FROM dbo.HJGL_BO_QualityRating AS QualityRating
LEFT JOIN DBO.HJGL_CH_TrustItem AS TrustItem ON TrustItem.CH_TrustItemID = QualityRating.CH_TrustItemID
LEFT JOIN HJGL_BS_Equipment AS Equipment ON Equipment.EquipmentId=TrustItem.EquipmentId
LEFT JOIN dbo.HJGL_CH_Trust trust ON trust.CH_TrustID = TrustItem.CH_TrustID
LEFT JOIN dbo.HJGL_BS_NDTType ndtType on ndtType.NDT_ID=trust.CH_NDTMethod
LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.JOT_ID = QualityRating.JOT_ID
LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId=batchDetail.BatchId
LEFT JOIN DBO.HJGL_PW_JointInfo AS JointInfo ON JointInfo.JOT_ID=QualityRating.JOT_ID
LEFT JOIN dbo.HJGL_PW_IsoInfo AS isoInfo ON isoInfo.ISO_ID=JointInfo.ISO_ID
LEFT JOIN DBO.HJGL_BS_Welder AS Welder1 ON Welder1.WED_ID = JointInfo.JOT_CellWelder
LEFT JOIN DBO.HJGL_BS_Welder AS Welder2 ON Welder2.WED_ID = JointInfo.JOT_FloorWelder
LEFT JOIN DBO.HJGL_CH_TestingReportPrint AS TestingReportPrint ON TestingReportPrint.ISO_ID = QualityRating.ISO_ID
WHERE TestingReportPrint.ISO_ID=QualityRating.ISO_ID and JointInfo.STE_ID=@STE_ID AND (JointInfo.STE_ID2=@STE_ID2 or @STE_ID2='') AND JointInfo.WME_ID=@WME_ID
AND TestingReportPrint.Specifications=JointInfo.JOT_JointDesc
AND TestingReportPrint.BatchId = trust.BatchId
AND TestingReportPrint.NDT_ID = trust.CH_NDTMethod
AND TestingReportPrint.TestingReportPrintId=@TestingReportPrintId) v1
UNION all
SELECT v2.*
from
(SELECT qualityRatingRepair.QualityRatingRepairId AS QualityRatingId,
JointInfo.JOT_JointDesc,JointInfo.JOT_JointNo+(case repair.NDT_ID when '20d2cbca-8b3d-434b-b1c1-181796986fa5' then '' else record.RepairMark end)+(case batchDetail.PointType when '2' then 'K' else '' end) as JOT_JointNo,
(qualityRatingRepair.FilmNum+record.RepairMark) AS FilmNum,
Welder.WED_Code,
dbo.GetRepairDefectNature(qualityRatingRepair.QualityRatingRepairId,qualityRatingRepair.CH_RepairItemId) as DefectNature,
qualityRatingRepair.DefectSize,
Replace(qualityRatingRepair.DefectResult,' ','') AS DefectResult,
qualityRatingRepair.DefectRation,
batch.BatchCode, --检测批号
isoInfo.ISO_IsoNo,
Equipment.EquipmentName as Remark,
case when ndtType.NDT_Code='MT'
then ((case when qualityRatingRepair.DefectNature is not null and qualityRatingRepair.DefectNature!='' then '性质:'+qualityRatingRepair.DefectNature else '' end)
+(case when qualityRatingRepair.DefectLocation is not null and qualityRatingRepair.DefectLocation!='' then '位置:'+qualityRatingRepair.DefectLocation else '' end)
+(case when qualityRatingRepair.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(qualityRatingRepair.DefectSize as real)) else '' end))
when ndtType.NDT_Code='PT'
then ((case when qualityRatingRepair.DefectNature is not null and qualityRatingRepair.DefectNature!='' then '性质:'+qualityRatingRepair.DefectNature else '' end)
+(case when qualityRatingRepair.DefectLocation is not null and qualityRatingRepair.DefectLocation!='' then '位置:'+qualityRatingRepair.DefectLocation else '' end)
+(case when qualityRatingRepair.DefectSize is not null then '尺寸:'+convert(nvarchar(10),cast(qualityRatingRepair.DefectSize as real)) else '' end))
when ndtType.NDT_Code='UT'
then ((case when qualityRatingRepair.PeakAmplitude is not null and qualityRatingRepair.PeakAmplitude!='' then '波幅:'+qualityRatingRepair.PeakAmplitude else '' end)
+(case when qualityRatingRepair.DefectLocation is not null and qualityRatingRepair.DefectLocation!='' then '位置:'+qualityRatingRepair.DefectLocation else '' end)
+(case when qualityRatingRepair.DepthDefect is not null then '深度:'+convert(nvarchar(10),cast(qualityRatingRepair.DepthDefect as real)) else '' end)
+(case when qualityRatingRepair.IndicatingLength is not null then '长度:'+convert(nvarchar(10),cast(qualityRatingRepair.IndicatingLength as real)) else '' end))
else '' end
AS Defect, --缺陷情况或缺陷示意图编号
qualityRatingRepair.PeakAmplitude,--SL偏差dB
qualityRatingRepair.DefectLocation, --区域
qualityRatingRepair.IndicatingLength, --缺陷指示长度mm
qualityRatingRepair.DepthDefect --缺陷埋藏深度mm
FROM dbo.HJGL_BO_QualityRatingRepair AS qualityRatingRepair
LEFT JOIN dbo.HJGL_CH_RepairItem AS repairItem ON repairItem.CH_RepairItemId = qualityRatingRepair.CH_RepairItemId
LEFT JOIN HJGL_BS_Equipment AS Equipment ON Equipment.EquipmentId=repairItem.EquipmentId
LEFT JOIN dbo.HJGL_CH_Repair repair ON repair.CH_RepairID = repairItem.CH_RepairID
LEFT JOIN dbo.HJGL_BS_NDTType ndtType on ndtType.NDT_ID=repair.NDT_ID
LEFT JOIN dbo.HJGL_BO_BatchDetail batchDetail ON batchDetail.JOT_ID = qualityRatingRepair.JOT_ID
LEFT JOIN dbo.HJGL_BO_Batch batch ON batch.BatchId=batchDetail.BatchId
LEFT JOIN DBO.HJGL_PW_JointInfo AS JointInfo ON JointInfo.JOT_ID=qualityRatingRepair.JOT_ID
LEFT JOIN dbo.HJGL_PW_IsoInfo AS isoInfo ON isoInfo.ISO_ID=JointInfo.ISO_ID
LEFT JOIN dbo.HJGL_CH_RepairItemRecord record ON record.RepairItemRecordId = repairItem.RepairItemRecordId
LEFT JOIN DBO.HJGL_BS_Welder AS Welder ON Welder.WED_ID =record.JOT_CellWelder
LEFT JOIN DBO.HJGL_CH_TestingReportPrint AS TestingReportPrint ON TestingReportPrint.ISO_ID = qualityRatingRepair.ISO_ID
WHERE TestingReportPrint.ISO_ID=qualityRatingRepair.ISO_ID and JointInfo.STE_ID=@STE_ID AND (JointInfo.STE_ID2=@STE_ID2 or @STE_ID2='') AND JointInfo.WME_ID=@WME_ID
AND TestingReportPrint.Specifications=JointInfo.JOT_JointDesc
AND TestingReportPrint.BatchId = repair.BatchId
AND TestingReportPrint.NDT_ID = repair.NDT_ID
AND TestingReportPrint.TestingReportPrintId=@TestingReportPrintId) v2)
report) v
END
--if((select COUNT(*) from #SIS)=@RowNum and @Flag='1')
--begin
--select * from #SIS
--end
--else
begin
--insert into #SIS values(10000,newid(),null,null,null,null,null,null,null,null,null,'以下空白',null,null,null,null,null,null)
select * from #SIS
end
drop table #SIS
GO