我已针对Temp_Calc_1
检查了Temp_Calc_2
,并且它们都具有相同的列数据类型(float
,nvarchar(255)
),并且在读取表格时的顺序相同。当我尝试在空Temp_Calc_2
上运行时,我收到错误:
将nvarchar转换为float
时出错
在INSERT INTO dbo.Temp_Calc_2
USE MfgMetrics
INSERT INTO dbo.Temp_Calc_2
SELECT
zps.[Plant], [Work Center],
[Scheduled start Date], [SCHEDULE START TIME],
[SCHEDULED FINISHED DATE], [SCHEDULED FINISHED TIME],
[MATERIAL NUMBER], [MATERIAL DESCRIPTON],
[ORDER NUMBER], [ORDER TYPE],
[PLANNED QUANTITY], [PLANNED QTY - PROD UN],
[DELIVERED QTY], [DELIVERED QTY - PROD UN],
[RemainingQty(BUn)], [REMAINING QTY - Prod Un],
[COMMITED QTY], [COMMITED QTY - PROD UN], [UOM],
[STORAGE LOCATION], [COMMENTS],
[RATE QUANTITY], [RATE QUANTITY - PROD UN], [RATE HOUR],
[OPERATING EFFIECIENCY], [UNIT],
[STD UNITS / HR], [STD UNITS / HR - PROD UN], [UOM2],
[ORDER STATUS], [ACTUAL START DATE], [ACTUAL START TIME],
[MRP CONTROLLER], [CREATED ON], [TIME CREATED],
[CHANGED ON], [TIME CHANGE],
[ORDER TEXT LINES], [ORDER TEXT 2nd LINE], [FileDate],
scf.[OQ_RxnTime_(mins)], scf.[RunDurThreshold_(hrs)],
CASE
WHEN (zps.[MATERIAL NUMBER] LIKE '%.%')
THEN zps.[MATERIAL NUMBER]
WHEN ISNUMERIC(zps.[MATERIAL NUMBER]) = 1
THEN CAST(CAST(zps.[MATERIAL NUMBER] AS INT) AS NVARCHAR(255))
ELSE zps.[MATERIAL NUMBER]
END As [Material],
(CAST(CAST(zps.[ORDER NUMBER] AS INT) AS NVARCHAR(255)) + '_' + CAST(CAST(zps.[PLANNED QUANTITY] AS INT) AS NVARCHAR(255))) AS Order_Quantity,
scf.[OQ_RxnTime_(mins)] * zps.[STD UNITS / HR] / 60 AS OQWindow
FROM
Temp_Calc_1 zps
INNER JOIN
SAWorkCenters swc ON zps.Plant = swc.Plant
AND zps.[Work Center] = swc.WCGroup
INNER JOIN
SchedAttCalcFactors scf ON zps.Plant = scf.[Plant Code]
ORDER BY
zps.Plant, zps.[Work Center], zps.[ORDER NUMBER], zps.FileDate
GO