137 lines
7.7 KiB
Transact-SQL
137 lines
7.7 KiB
Transact-SQL
drop view View_HJGL_InstallData
|
||
go
|
||
Create VIEW View_HJGL_InstallData
|
||
AS
|
||
WITH PackagingManage AS (SELECT p.PackagingManageId,
|
||
p.ProjectId,
|
||
p.PackagingCode,
|
||
p.TrainNumberId,
|
||
s.Value as SplitPipelineComponentId
|
||
FROM HJGL_PackagingManage p
|
||
CROSS APPLY dbo.SplitString(p.PipelineComponentId, ',', 1) s
|
||
WHERE p.PipelineComponentId IS NOT NULL
|
||
AND p.PipelineComponentId != '' -- 添加空字符串检查
|
||
),
|
||
TwOutPutData as (select distinct twRelation.PipelineId,
|
||
outdetail.Id as TwOutputDetailId,
|
||
twRelation.MaterialCode,
|
||
master.Id as OutputMasterId
|
||
from Tw_OutputMaster master
|
||
join Tw_OutputDetail outdetail on outdetail.OutputMasterId = master.Id
|
||
join Tw_InOutPlanMaster planmaster on planmaster.Id = master.InOutPlanMasterId
|
||
join Tw_InOutPlanDetail_Relation twRelation
|
||
on twRelation.InOutPlanMasterId = planmaster.Id and
|
||
outdetail.MaterialCode = twRelation.MaterialCode),
|
||
PrefabricatedData AS (SELECT pipe.PipeLineMatId as Id,
|
||
line.PipelineCode,
|
||
pipe.PrefabricatedComponents as Code,
|
||
'预制组件' as TypeStr,
|
||
'' as Matdef,
|
||
CAST(NULL AS DECIMAL(18, 2)) as Number, -- 明确指定数据类型
|
||
pack.PackagingCode,
|
||
trainnumber.TrainNumber,
|
||
line.FlowingSection,
|
||
line.UnitWorkId,
|
||
line.ProjectId
|
||
FROM dbo.HJGL_PipeLineMat pipe
|
||
INNER JOIN dbo.HJGL_Pipeline line -- 改为INNER JOIN,如果管道必须存在
|
||
ON pipe.PipelineId = line.PipelineId
|
||
LEFT JOIN dbo.HJGL_MaterialCodeLib lib
|
||
ON lib.MaterialCode = pipe.MaterialCode
|
||
LEFT JOIN HJGL_Pipeline_Component comonent
|
||
ON comonent.PipelineComponentCode = pipe.PrefabricatedComponents
|
||
LEFT JOIN PackagingManage pack
|
||
ON pack.SplitPipelineComponentId = comonent.PipelineComponentId
|
||
AND pack.ProjectId = line.ProjectId -- 添加项目关联条件
|
||
LEFT JOIN HJGL_TrainNumberManage trainnumber
|
||
ON pack.TrainNumberId = trainnumber.Id
|
||
WHERE line.PipeArea = '1'
|
||
and (pipe.PrefabricatedComponents != ''
|
||
AND pipe.PrefabricatedComponents IS NOT NULL)),
|
||
LooseComponentsData AS (SELECT distinct pipe.PipeLineMatId as Id,
|
||
line.PipelineCode,
|
||
pipe.MaterialCode as Code,
|
||
'预制散件' as TypeStr,
|
||
lib.MaterialDef as Matdef,
|
||
cast( packdetail.Number as DECIMAL(18, 2)) as Number,
|
||
pack.PackagingCode,
|
||
trainnumber.TrainNumber,
|
||
line.FlowingSection,
|
||
line.UnitWorkId,
|
||
line.ProjectId
|
||
FROM dbo.HJGL_PipeLineMat pipe
|
||
INNER JOIN HJGL_Pipeline line -- 改为INNER JOIN
|
||
ON pipe.PipelineId = line.PipelineId
|
||
LEFT JOIN dbo.HJGL_MaterialCodeLib lib
|
||
ON lib.MaterialCode = pipe.MaterialCode
|
||
LEFT JOIN HJGL_PackagingManageDetail packdetail
|
||
ON packdetail.MaterialCode = pipe.MaterialCode
|
||
LEFT JOIN TwOutPutData twOutPutData
|
||
ON twOutPutData.PipelineId = pipe.PipelineId and
|
||
twOutPutData.MaterialCode = packdetail.MaterialCode
|
||
LEFT JOIN HJGL_PackagingManage pack
|
||
ON packdetail.PackagingManageId = pack.PackagingManageId
|
||
AND pack.ProjectId = line.ProjectId -- 添加项目关联条件
|
||
LEFT JOIN HJGL_TrainNumberManage trainnumber
|
||
ON pack.TrainNumberId = trainnumber.Id
|
||
where line.PipeArea = '1'
|
||
and (pipe.PrefabricatedComponents is null or pipe.PrefabricatedComponents = ''))
|
||
|
||
-- 合并结果
|
||
SELECT *
|
||
FROM PrefabricatedData
|
||
UNION ALL
|
||
SELECT *
|
||
FROM LooseComponentsData
|
||
|
||
go
|
||
alter table dbo.HJGL_PackagingManage
|
||
add CategoryInt int
|
||
go
|
||
|
||
exec sp_addextendedproperty 'MS_Description', N'包装类别', 'SCHEMA', 'dbo', 'TABLE', 'HJGL_PackagingManage', 'COLUMN',
|
||
'CategoryInt'
|
||
go
|
||
|
||
drop table Base_MaterialColor
|
||
CREATE TABLE [dbo].[Base_MaterialColor]
|
||
(
|
||
[MaterialColorId] nvarchar(50) NOT NULL DEFAULT (NEWID()) PRIMARY KEY,
|
||
[UnitId] nvarchar(50),
|
||
[MaterialId] nvarchar(50),
|
||
[ColorName] NVARCHAR(50),
|
||
[ColorCardNo] NVARCHAR(50),
|
||
[RGB] NVARCHAR(20),
|
||
[Remark] NVARCHAR(200)
|
||
);
|
||
|
||
go
|
||
exec sp_addextendedproperty 'MS_Description', N'单位id', 'SCHEMA', 'dbo', 'TABLE', 'Base_MaterialColor', 'COLUMN',
|
||
'UnitId'
|
||
go
|
||
|
||
exec sp_addextendedproperty 'MS_Description', N'材质id', 'SCHEMA', 'dbo', 'TABLE', 'Base_MaterialColor', 'COLUMN',
|
||
'MaterialId'
|
||
go
|
||
|
||
|
||
exec sp_addextendedproperty 'MS_Description', N'颜色名称', 'SCHEMA', 'dbo', 'TABLE', 'Base_MaterialColor', 'COLUMN',
|
||
'ColorName'
|
||
go
|
||
|
||
exec sp_addextendedproperty 'MS_Description', N'色卡号', 'SCHEMA', 'dbo', 'TABLE', 'Base_MaterialColor', 'COLUMN',
|
||
'ColorCardNo'
|
||
go
|
||
|
||
exec sp_addextendedproperty 'MS_Description', N'备注', 'SCHEMA', 'dbo', 'TABLE', 'Base_MaterialColor', 'COLUMN',
|
||
'Remark'
|
||
go
|
||
|
||
alter table dbo.HJGL_PackagingManageDetail
|
||
add TwOutputDetailId nvarchar(50)
|
||
go
|
||
|
||
exec sp_addextendedproperty 'MS_Description', N'出库明细表主键', 'SCHEMA', 'dbo', 'TABLE', 'HJGL_PackagingManageDetail',
|
||
'COLUMN', 'TwOutputDetailId'
|
||
go
|