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

527 lines
32 KiB
Transact-SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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