Tredje gången gillt... Nya ProblemSQL fråga TRANSFORM
TRANSFORM Sum(([Kit].[PurchasePrice]*[Currency Purchase].[currency]*(1+[Currency Purchase].[Shippingcost])*(1+[Intercompany Pricing Per Parameter].[IntercompanyAddOn])*[Factor].[Factor])/[Currency Intercompany].[Currency]) AS CountryPurchasePrice
SELECT KitGroup.Name, KitParameter.Name, Kit.Name
FROM (((((Kit LEFT JOIN [Currency Purchase] ON Kit.CurrencyPurchaseId = [Currency Purchase].ID)
LEFT JOIN KitParameter ON Kit.ParameterID = KitParameter.ID)
LEFT JOIN [Intercompany Pricing Per Parameter] ON KitParameter.ID = [Intercompany Pricing Per Parameter].ParameterID)
LEFT JOIN [Currency Intercompany] ON [Intercompany Pricing Per Parameter].CurrencyIntercompany = [Currency Intercompany].ID)
LEFT JOIN KitGroup ON KitParameter.GroupId = KitGroup.ID)
LEFT JOIN ([Parameter Country Factor]
LEFT JOIN Factor ON [Parameter Country Factor].FactorID = Factor.ID) ON KitParameter.ID = [Parameter Country Factor].ParameterID
GROUP BY KitGroup.Name, KitParameter.Name, Kit.Name
PIVOT [Currency Intercompany].Country;
Problemet med denna är att den räknar fel... den summerar fel.
Vi tar de tabellerna först som gör att det blir fel.
Intercompany Pricing Per Parameter
----------------------------------------
ID
ParameterID
CurrencyIntercompanyID
IntercompanyAddOn
Parameter Country Factor I denna bestäms vilken faktor som går till vilket land krävs två
----------------------------- parameters för att få rätt: ParameterID & CurrencyIntercompanyID
ID för att jag skall kunna multiplicera med rätt Factor.factor
ParameterID
CurrencyIntercompanyID
FactorID
Factor
-------------------
ID
Name
Factor
Problemet är att den lägger ihop antingen alla faktorer för den parametern, eller summerar ihop alla factorer som finns för den valutan... Inte bara den specifika factorn för den parametern och landet som jag vill ha!
Ngn som har ett tips för detta problem
Mvh Anders