长园
This commit is contained in:
@@ -86,6 +86,7 @@
|
||||
<Content Include="SQLServer\月度生产计划表-预测单.sql" />
|
||||
<Content Include="SQLServer\月度计划数据保存.sql" />
|
||||
<Content Include="SQLServer\自动保存存储过程.sql" />
|
||||
<Content Include="SQLServer\自定义函数.sql" />
|
||||
<Content Include="SQLServer\计划生产订单入库数.sql" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -123,7 +123,7 @@ namespace MonthlyProductionSchedule
|
||||
// FID, FEntryId, 编号、状态、物料、数量、单位、单位精度、单价、价税合计
|
||||
object resa = 0;
|
||||
var startDate = date.ToString("yyyy-MM-dd");
|
||||
var endDate = date.AddMonths(1).AddDays(-1);
|
||||
var endDate = date.AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd");
|
||||
// string sql = $@"
|
||||
//EXEC PROC_ProductionSchedule '{tableName}','{startDate}','{endDate}', {base.Context.UserLocale.LCID} ,'{seqFld}';
|
||||
//";
|
||||
@@ -223,8 +223,7 @@ namespace MonthlyProductionSchedule
|
||||
result = new ReportTitles();
|
||||
}
|
||||
//数据保存状态
|
||||
object saveDataStauts;
|
||||
dyFilter.TryGetValue("DataBDStatu", out saveDataStauts);
|
||||
object saveDataStauts = dyFilter["DataBDStatu"];
|
||||
result.AddTitle("FDataBDStatu", saveDataStauts.ToString());
|
||||
result.AddTitle("FDataHoldYear", dyFilter["DataHoldYear"].ToString());
|
||||
result.AddTitle("FDataHoldMonth", dyFilter["DataHoldMonth"].ToString());
|
||||
|
||||
@@ -70,6 +70,7 @@ BEGIN
|
||||
--<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>end
|
||||
|
||||
|
||||
|
||||
--<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>start
|
||||
SELECT
|
||||
A.FID
|
||||
@@ -95,7 +96,7 @@ BEGIN
|
||||
END
|
||||
END) AS 'SHELFLIFE'
|
||||
--,'' AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,CS.FSAFESTOCK --<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,CS.FSAFESTOCK AS SAFESTOCK --<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,CS.FSTOREUNITID --<EFBFBD><EFBFBD><EFBFBD>浥λ
|
||||
,(CASE CP.FPACKUNITCONVERRATIO
|
||||
WHEN 0
|
||||
@@ -108,30 +109,16 @@ BEGIN
|
||||
,AE.S01
|
||||
,AE.S02
|
||||
,AE.S03
|
||||
,(CASE CP.FPACKUNITCONVERRATIO
|
||||
WHEN 0
|
||||
THEN D.FQTY - D.FFINISHQTY ELSE ((D.FQTY - D.FFINISHQTY)/CP.FPACKUNITCONVERRATIO)
|
||||
END) AS InProductionQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,(CASE CP.FPACKUNITCONVERRATIO
|
||||
WHEN 0
|
||||
THEN E.FBASEQTY ELSE (E.FBASEQTY/CP.FPACKUNITCONVERRATIO)
|
||||
END) AS InStockQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,(CASE CP.FPACKUNITCONVERRATIO
|
||||
WHEN 0
|
||||
THEN (D.FQTY + E.FBASEQTY) ELSE ((D.FQTY + E.FBASEQTY)/CP.FPACKUNITCONVERRATIO)
|
||||
END) AS TotalStockQty --<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,(CustomUnitNumConversion((D.FQTY + E.FBASEQTY - D.FFINISHQTY),CP.FPACKUNITCONVERRATIO)) AS InProductionQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,(CustomUnitNumConversion(E.FBASEQTY,CP.FPACKUNITCONVERRATIO)) AS InStockQty --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
--,(CASE CP.FPACKUNITCONVERRATIO
|
||||
-- WHEN 0
|
||||
-- THEN (D.FQTY + E.FBASEQTY) ELSE ((D.FQTY + E.FBASEQTY)/CP.FPACKUNITCONVERRATIO)
|
||||
--END) AS TotalStockQty --<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,(CASE CP.FPACKUNITCONVERRATIO
|
||||
WHEN 0
|
||||
THEN B.FOrderQty ELSE (B.FOrderQty/CP.FPACKUNITCONVERRATIO)
|
||||
END) AS OrderLotQty --<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,CS.FSTOREUNITID AS FPACKUNITID -- '<27><>λ'
|
||||
--, 140 as FLOTYIELD -- 'ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
--,150 as FPACKUNITCONVERRATIO -- '<27><>װ<EFBFBD><D7B0><EFBFBD><EFBFBD>'
|
||||
--,400 AS SAFESTOCKCOUNT --<EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
--,'' AS 'M01'
|
||||
--,'' AS 'S01'
|
||||
--,'' AS 'S02'
|
||||
--,'' AS 'S03'
|
||||
,B.FFirmQty
|
||||
,B.FOrderQty
|
||||
into #TMPMPS
|
||||
@@ -147,27 +134,31 @@ BEGIN
|
||||
LEFT JOIN (SELECT
|
||||
A.FMATERIALID
|
||||
,A.FSTOCKORGID
|
||||
,SUM(A.FBASEQTY) AS FBASEQTY
|
||||
,SUM(A1.FQTY) AS FQTY
|
||||
FROM T_STK_INVENTORY A
|
||||
group by A.FMATERIALID,A.FSTOCKORGID
|
||||
left join T_STK_INVINITDETAIL A1 on A.FMATERIALID = A1.FMATERIALID AND A.Fstockid = A1.ftockid
|
||||
GROUP BY A.FMATERIALID,A.FSTOCKORGID
|
||||
) E on E.FMATERIALID = C.FMASTERID AND E.FSTOCKORGID = A.FFOREORGID
|
||||
WHERE
|
||||
--A.FDATE BETWEEN '2023-12-01 00:00:00' AND '2023-12-31 23:59:59'
|
||||
A.FDATE BETWEEN @STARTDATE AND @ENDDATE
|
||||
|
||||
--<EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD>λ
|
||||
ALTER TABLE #TMPMPS ADD FSTOREUNITNAME VARCHAR(10)
|
||||
ALTER TABLE #TMPMPS ADD FSTOREUNITNAME VARCHAR(50)
|
||||
UPDATE #TMPMPS SET #TMPMPS.FSTOREUNITNAME = B_L.FNAME FROM T_BD_UNIT_L B_L WHERE B_L.FUNITID = #TMPMPS.FSTOREUNITID
|
||||
|
||||
ALTER TABLE #TMPMPS ADD FPACKUNITNAME VARCHAR(10)
|
||||
ALTER TABLE #TMPMPS ADD FPACKUNITNAME VARCHAR(50)
|
||||
UPDATE #TMPMPS SET #TMPMPS.FPACKUNITNAME = B_L.FNAME FROM T_BD_UNIT_L B_L WHERE B_L.FUNITID = #TMPMPS.FPACKUNITID
|
||||
|
||||
ALTER TABLE #TMPMPS ADD FPACKUNITCONVT VARCHAR(10)
|
||||
UPDATE T SET T.FPACKUNITCONVT = CONCAT(CONVERT(VARCHAR,T.FPACKUNITCONVERRATIO),T.STOREUNITNAME,'/',T.FPACKUNITNAME) FROM #TMPMPS T
|
||||
ALTER TABLE #TMPMPS ADD FPACKUNITCONVT VARCHAR(100)
|
||||
UPDATE T SET T.FPACKUNITCONVT = CONCAT(CONVERT(VARCHAR,T.FPACKUNITCONVERRATIO),T.FSTOREUNITNAME,'/',T.FPACKUNITNAME) FROM #TMPMPS T
|
||||
|
||||
ALTER TABLE #TMPMPS ADD TotalStockQty decimal(23,6)
|
||||
UPDATE T SET T.TotalStockQty = T.InProductionQty +T.InStockQty FROM #TMPMPS T
|
||||
--<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>end
|
||||
|
||||
DECLARE @SQL VARCHAR(2000)
|
||||
SET @sql = '
|
||||
SET @sql = N'
|
||||
select
|
||||
t0.*
|
||||
,'+@SeqFld+'
|
||||
|
||||
@@ -10,7 +10,10 @@ CREATE PROCEDURE PROC_PPL_SaveCurrentData
|
||||
,@FRECORDMONTH INT
|
||||
AS
|
||||
BEGIN
|
||||
DELETE FROM T_PLAN_PLANPLMRPT WHERE FRECORDDATE = @FRECORDYEAR AND FRECORDMONTH = @FRECORDMONTH
|
||||
IF EXISTS (SELECT * FROM sys.all_objects WHERE object_id = OBJECT_ID(N'[dbo].[T_PLAN_PLANPLMRPT]') AND type IN ('U'))
|
||||
BEGIN
|
||||
DELETE FROM T_PLAN_PLANPLMRPT WHERE FRECORDDATE = @FRECORDYEAR AND FRECORDMONTH = @FRECORDMONTH
|
||||
END
|
||||
|
||||
DECLARE @SQL VARCHAR(2000)
|
||||
SET @sql = '
|
||||
|
||||
@@ -13,7 +13,10 @@ AS
|
||||
BEGIN
|
||||
EXEC PROC_INQUIRPLMTMPRTP @TableName,@STARTDATE,@ENDDATE,2052,' ROW_NUMBER() OVER(ORDER BY t0.FID ) FIDENTITYID '
|
||||
|
||||
DELETE FROM T_PLAN_PLANPLMRPT WHERE FRECORDDATE = @FRECORDYEAR AND FRECORDMONTH = @FRECORDMONTH
|
||||
IF EXISTS (SELECT * FROM sys.all_objects WHERE object_id = OBJECT_ID(N'[dbo].[T_PLAN_PLANPLMRPT]') AND type IN ('U'))
|
||||
BEGIN
|
||||
DELETE FROM T_PLAN_PLANPLMRPT WHERE FRECORDDATE = @FRECORDYEAR AND FRECORDMONTH = @FRECORDMONTH
|
||||
END
|
||||
|
||||
DECLARE @SQL VARCHAR(2000)
|
||||
|
||||
|
||||
11
MonthlyProductionSchedule/SQLServer/自定义函数.sql
Normal file
11
MonthlyProductionSchedule/SQLServer/自定义函数.sql
Normal file
@@ -0,0 +1,11 @@
|
||||
CREATE FUNCTION dbo.CustomUnitNumConversion(@cnvNumber decimal(23,6) ,@coefficient int)
|
||||
RETURNS decimal(23,6) --<EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
as
|
||||
BEGIN
|
||||
declare @result decimal(23,6)
|
||||
select @result = (CASE @coefficient
|
||||
WHEN 0
|
||||
THEN @cnvNumber ELSE (@cnvNumber/@coefficient)
|
||||
END)
|
||||
RETURN @result
|
||||
END
|
||||
Reference in New Issue
Block a user