MAKNIGHT71
IS-IT--Management
I am adding a new SQL statement to a module in an Access database. Below is the statement I'm trying to add.
DoCmd.RunSQL "UPDATE [Total Cost Table] INNER JOIN [U Requirements] AS U ON [Total Cost Table].Item_No = U.Orig_Parent " & _
"SET [Total Cost Table]!LBR_Cost = Sum(U.Std_Cost*(U.Comp_Required_Qty*((U.Scrap_Factor/100)+1))) " & _
"WHERE Trim(U.Comp_Item_No) = 'LBR'; " ' & _
"GROUP BY [Total Cost Table]!Item_No " & _
"ORDER BY [Total Cost Table]!Item_No;", 0
As-is I get a missing semi-colon error. If I remove the GROUP BY and ORDER BY statements altogether, I get a run-time 3122 error (troublesome aggregate error). Ideas? Below is the entire code section... (the troublesome line is the third)
maknight
' Clear the table
DoCmd.RunSQL "DELETE FROM [Total Cost Table];", 0
' Fill table with BOM caculated cost w/scrap factor
DoCmd.RunSQL "INSERT INTO [Total Cost Table] " & _
"SELECT R.Parent_Item_No AS Item_No, Sum(U.Std_Cost*(U.Comp_Required_Qty*((U.Scrap_Factor/100)+1))) AS BOM_COST " & _
"FROM Requirements AS R INNER JOIN [U Requirements] AS U ON R.Parent_Item_No = U.Orig_Parent " & _
"WHERE Trim(U.Pur_or_Mfg) = 'P' OR Trim(U.Pur_or_Mfg) = 'I' OR " & _
"Trim(U.Comp_Item_No) = 'LBR' " & _
"GROUP BY R.Parent_Item_No " & _
"ORDER BY R.Parent_Item_No;", 0
' Update table with Item/Location standard cost
DoCmd.RunSQL "UPDATE [Total Cost Table] INNER JOIN IMINVLOC_SQL ON [Total Cost Table].Item_No = IMINVLOC_SQL.Item_No " & _
"Set [Total Cost Table]!Std_Cost = IMINVLOC_SQL.Std_Cost " & _
"WHERE IMINVLOC_SQL.Loc = '001';", 0
' Update table with extracted LBR cost
DoCmd.RunSQL "UPDATE [Total Cost Table] INNER JOIN [U Requirements] AS U ON [Total Cost Table].Item_No = U.Orig_Parent " & _
"SET [Total Cost Table]!LBR_Cost = Sum(U.Std_Cost*(U.Comp_Required_Qty*((U.Scrap_Factor/100)+1))) " & _
"WHERE Trim(U.Comp_Item_No) = 'LBR'; " ' & _
"GROUP BY [Total Cost Table]!Item_No " & _
"ORDER BY [Total Cost Table]!Item_No;", 0
' Update table with Item Master full item description (1 & 2)
DoCmd.RunSQL "UPDATE [Total Cost Table] INNER JOIN IMITMIDX_SQL ON [Total Cost Table].Item_No = IMITMIDX_SQL.Item_No " & _
"Set [Total Cost Table]!Description = (Trim(IMITMIDX_SQL.Item_Desc_1) & ', ' & Trim(IMITMIDX_SQL.Item_Desc_2));", 0
DoCmd.RunSQL "UPDATE [Total Cost Table] INNER JOIN [U Requirements] AS U ON [Total Cost Table].Item_No = U.Orig_Parent " & _
"SET [Total Cost Table]!LBR_Cost = Sum(U.Std_Cost*(U.Comp_Required_Qty*((U.Scrap_Factor/100)+1))) " & _
"WHERE Trim(U.Comp_Item_No) = 'LBR'; " ' & _
"GROUP BY [Total Cost Table]!Item_No " & _
"ORDER BY [Total Cost Table]!Item_No;", 0
As-is I get a missing semi-colon error. If I remove the GROUP BY and ORDER BY statements altogether, I get a run-time 3122 error (troublesome aggregate error). Ideas? Below is the entire code section... (the troublesome line is the third)
maknight
' Clear the table
DoCmd.RunSQL "DELETE FROM [Total Cost Table];", 0
' Fill table with BOM caculated cost w/scrap factor
DoCmd.RunSQL "INSERT INTO [Total Cost Table] " & _
"SELECT R.Parent_Item_No AS Item_No, Sum(U.Std_Cost*(U.Comp_Required_Qty*((U.Scrap_Factor/100)+1))) AS BOM_COST " & _
"FROM Requirements AS R INNER JOIN [U Requirements] AS U ON R.Parent_Item_No = U.Orig_Parent " & _
"WHERE Trim(U.Pur_or_Mfg) = 'P' OR Trim(U.Pur_or_Mfg) = 'I' OR " & _
"Trim(U.Comp_Item_No) = 'LBR' " & _
"GROUP BY R.Parent_Item_No " & _
"ORDER BY R.Parent_Item_No;", 0
' Update table with Item/Location standard cost
DoCmd.RunSQL "UPDATE [Total Cost Table] INNER JOIN IMINVLOC_SQL ON [Total Cost Table].Item_No = IMINVLOC_SQL.Item_No " & _
"Set [Total Cost Table]!Std_Cost = IMINVLOC_SQL.Std_Cost " & _
"WHERE IMINVLOC_SQL.Loc = '001';", 0
' Update table with extracted LBR cost
DoCmd.RunSQL "UPDATE [Total Cost Table] INNER JOIN [U Requirements] AS U ON [Total Cost Table].Item_No = U.Orig_Parent " & _
"SET [Total Cost Table]!LBR_Cost = Sum(U.Std_Cost*(U.Comp_Required_Qty*((U.Scrap_Factor/100)+1))) " & _
"WHERE Trim(U.Comp_Item_No) = 'LBR'; " ' & _
"GROUP BY [Total Cost Table]!Item_No " & _
"ORDER BY [Total Cost Table]!Item_No;", 0
' Update table with Item Master full item description (1 & 2)
DoCmd.RunSQL "UPDATE [Total Cost Table] INNER JOIN IMITMIDX_SQL ON [Total Cost Table].Item_No = IMITMIDX_SQL.Item_No " & _
"Set [Total Cost Table]!Description = (Trim(IMITMIDX_SQL.Item_Desc_1) & ', ' & Trim(IMITMIDX_SQL.Item_Desc_2));", 0