Index: VerpakkingsDefinitie/WS/ProductsAgent.pas =================================================================== diff -u -r597 -r598 --- VerpakkingsDefinitie/WS/ProductsAgent.pas (.../ProductsAgent.pas) (revision 597) +++ VerpakkingsDefinitie/WS/ProductsAgent.pas (.../ProductsAgent.pas) (revision 598) @@ -467,6 +467,7 @@ ZoekData: OptiServerService.GetBoxDataViaId; GetBoxDataViaIDResponseObj: GetBoxDataViaIDResponse; TempProductVerpakkingen: TList; + TempNieuweVerpakkingParameters: TList; pxBoxDataObj: OptiServerService.pxBoxData; Verpakking: TProductVerpakking; @@ -475,6 +476,7 @@ begin try TempProductVerpakkingen := TList.Create(); + TempNieuweVerpakkingParameters := TList.Create(); for BoxDataID in VerpakkingIDs do begin @@ -513,9 +515,9 @@ VolumeVanCaption := pxBoxDataObj.VolumeVanCaption; ID := pxBoxDataObj.ID; CutOrder := pxBoxDataObj.CutOrder; - Breedte := StrToInt(ifthen(pxBoxDataObj.Breedte <> '', pxBoxDataObj.Breedte, '0')); - Diepte := StrToInt(ifthen(pxBoxDataObj.Diepte <> '', pxBoxDataObj.Diepte, '0')); - Hoogte := StrToInt(ifthen(pxBoxDataObj.Hoogte <> '', pxBoxDataObj.Hoogte, '0')); + Breedte := pxBoxDataObj.Breedte; + Diepte := pxBoxDataObj.Diepte; + Hoogte := pxBoxDataObj.Hoogte; Aantal := pxBoxDataObj.Aantal; MaxCombinAantal := pxBoxDataObj.MaxCombinAantal; Plaatsing := pxBoxDataObj.Plaatsing; @@ -527,9 +529,9 @@ // Default data instellen als deze aanwezig is. if pxBoxDataObj.DefaultData <> nil then begin - DefaultBreedte := StrToInt(ifthen(pxBoxDataObj.DefaultData.Breedte <> '', pxBoxDataObj.DefaultData.Breedte, '0')); - DefaultDiepte := StrToInt(ifthen(pxBoxDataObj.DefaultData.Diepte <> '', pxBoxDataObj.DefaultData.Diepte, '0')); - DefaultHoogte := StrToInt(ifthen(pxBoxDataObj.DefaultData.Hoogte <> '', pxBoxDataObj.DefaultData.Hoogte, '0')); + DefaultBreedte := pxBoxDataObj.DefaultData.Breedte; + DefaultDiepte := pxBoxDataObj.DefaultData.Diepte; + DefaultHoogte := pxBoxDataObj.DefaultData.Hoogte; DefaultPlaatsing := pxBoxDataObj.DefaultData.Plaatsing; DefaultOptiType := pxBoxDataObj.DefaultData.OptiType; @@ -543,7 +545,6 @@ MetaCaption := pxBoxDataObj.MetaCaption; // Verpakking parameters. Haal waarden uit gewone data en default data. - Parameters.Clear(); for I := 0 to High(pxBoxDataObj.Params) do begin NieuweVerpakkingParameter := TProductVerpakkingParameter.Create(); @@ -554,8 +555,10 @@ // Kijken of aantal parameters in default data overeenkomt met die in gewone data. if (pxBoxDataObj.DefaultData <> nil) and (High(pxBoxDataObj.Params) = High(pxBoxDataObj.DefaultData.Params)) then NieuweVerpakkingParameter.DefaultWaarde := pxBoxDataObj.DefaultData.Params[I].Waarde; - Parameters.Add(NieuweVerpakkingParameter); + TempNieuweVerpakkingParameters.Add(NieuweVerpakkingParameter); end; + SetParameters(TempNieuweVerpakkingParameters); + TempNieuweVerpakkingParameters.Clear(); end; // Toevoegen aan temp lijst met productverpakkingen @@ -565,6 +568,7 @@ Result := TempProductVerpakkingen; finally FreeAndNil(ZoekData); + FreeAndNil(TempNieuweVerpakkingParameters); end; end;