Index: VerpakkingsDefinitie/UI/VerpakkingDetailScherm.pas =================================================================== diff -u -r594 -r597 --- VerpakkingsDefinitie/UI/VerpakkingDetailScherm.pas (.../VerpakkingDetailScherm.pas) (revision 594) +++ VerpakkingsDefinitie/UI/VerpakkingDetailScherm.pas (.../VerpakkingDetailScherm.pas) (revision 597) @@ -197,17 +197,17 @@ // Breedte, Diepte, Hoogte. // Default waarde altijd als placeholder instellen - EditBreedte.TextHint := ProductVerpakking.DefaultBreedte; // Default - if ProductVerpakking.Breedte <> '' then - EditBreedte.Text := ProductVerpakking.Breedte; + EditBreedte.TextHint := IntToStr(ProductVerpakking.DefaultBreedte); // Default + if ProductVerpakking.Breedte <> ProductVerpakking.DefaultBreedte then + EditBreedte.Text := IntToStr(ProductVerpakking.Breedte); - EditDiepte.TextHint := ProductVerpakking.DefaultDiepte; // Default - if ProductVerpakking.Diepte <> '' then - EditDiepte.Text := ProductVerpakking.Diepte; + EditDiepte.TextHint := IntToStr(ProductVerpakking.DefaultDiepte); // Default + if ProductVerpakking.Diepte <> ProductVerpakking.DefaultDiepte then + EditDiepte.Text := IntToStr(ProductVerpakking.Diepte); - EditHoogte.TextHint := ProductVerpakking.DefaultHoogte; // Default - if ProductVerpakking.Hoogte <> '' then - EditHoogte.Text := ProductVerpakking.Hoogte; + EditHoogte.TextHint := IntToStr(ProductVerpakking.DefaultHoogte); // Default + if ProductVerpakking.Hoogte <> ProductVerpakking.DefaultHoogte then + EditHoogte.Text := IntToStr(ProductVerpakking.Hoogte); // Max.Comb.Aantal, Aantal EditMaxCombAantal.Text := ProductVerpakking.MaxCombinAantal; Index: VerpakkingsDefinitie/ApplicationContext.pas =================================================================== diff -u -r596 -r597 --- VerpakkingsDefinitie/ApplicationContext.pas (.../ApplicationContext.pas) (revision 596) +++ VerpakkingsDefinitie/ApplicationContext.pas (.../ApplicationContext.pas) (revision 597) @@ -135,12 +135,12 @@ FCutOrder: Integer; FVolumeVanCaption: string; - FBreedte: string; - FDefaultBreedte: string; - FDiepte: string; - FDefaultDiepte: string; - FHoogte: string; - FDefaultHoogte: string; + FBreedte: Integer; + FDefaultBreedte: Integer; + FDiepte: Integer; + FDefaultDiepte: Integer; + FHoogte: Integer; + FDefaultHoogte: Integer; FAantal: string; FMaxCombinAantal: string; FPlaatsing: string; @@ -169,12 +169,12 @@ property CutOrder: Integer read FCutOrder write FCutOrder; property VolumeVanCaption: string read FVolumeVanCaption write FVolumeVanCaption; - property Breedte: string read FBreedte write FBreedte; - property DefaultBreedte: string read FDefaultBreedte write FDefaultBreedte; - property Diepte: string read FDiepte write FDiepte; - property DefaultDiepte: string read FDefaultDiepte write FDefaultDiepte; - property Hoogte: string read FHoogte write FHoogte; - property DefaultHoogte: string read FDefaultHoogte write FDefaultHoogte; + property Breedte: Integer read FBreedte write FBreedte; + property DefaultBreedte: Integer read FDefaultBreedte write FDefaultBreedte; + property Diepte: Integer read FDiepte write FDiepte; + property DefaultDiepte: Integer read FDefaultDiepte write FDefaultDiepte; + property Hoogte: Integer read FHoogte write FHoogte; + property DefaultHoogte: Integer read FDefaultHoogte write FDefaultHoogte; property Aantal: string read FAantal write FAantal; property MaxCombinAantal: string read FMaxCombinAantal write FMaxCombinAantal; property Plaatsing: string read FPlaatsing write FPlaatsing; @@ -219,6 +219,7 @@ property ProductVerpakkingen: TReadOnlyList read GetProductVerpakkingenLijst; procedure SetProductVerpakkingen(Collection: TEnumerable); + procedure AddProductVerpakking(ProductVerpakking: TProductVerpakking); function GetDeelVanOpties(ProductVerpakking: TProductVerpakking): TList; property GeselecteerdeVerpakking: TProductVerpakking read FGeselecteerdeVerpakking write SetGeselecteerdeVerpakking; @@ -382,6 +383,16 @@ self.NotifyChanged(); end; +procedure TProductVerpakkingenContext.AddProductVerpakking(ProductVerpakking: TProductVerpakking); +begin + if ProductVerpakking = nil then + exit; + + FProductVerpakkingen.Add(ProductVerpakking); + FGeselecteerdeVerpakking := ProductVerpakking; + self.NotifyChanged(); +end; + procedure TProductVerpakkingenContext.SetGeselecteerdeVerpakking(ProductVerpakking: TProductVerpakking); begin FGeselecteerdeVerpakking := ProductVerpakking; Index: VerpakkingsDefinitie/UI/ProductDetailScherm.pas =================================================================== diff -u -r596 -r597 --- VerpakkingsDefinitie/UI/ProductDetailScherm.pas (.../ProductDetailScherm.pas) (revision 596) +++ VerpakkingsDefinitie/UI/ProductDetailScherm.pas (.../ProductDetailScherm.pas) (revision 597) @@ -163,7 +163,8 @@ // Caption := IntToStr(Product.ProductNr); // Deze casting geeft geen access violation Caption := intToStr(ProductVerpakking.CutOrder); SubItems.Add(ProductVerpakking.MetaCaptionDisplay); - SubItems.Add(ProductVerpakking.Breedte + ' x ' + ProductVerpakking.Diepte + ' x ' + ProductVerpakking.Hoogte); + SubItems.Add(intToStr(ProductVerpakking.Breedte) + ' x ' + intToStr(ProductVerpakking.Diepte) + ' x ' + + intToStr(ProductVerpakking.Hoogte)); SubItems.Add(ProductVerpakking.Aantal); SubItems.Add(ProductVerpakking.MaxCombinAantal); SubItems.Add(ProductVerpakking.DeelVanCaption); Index: VerpakkingsDefinitie/WS/ProductsAgent.pas =================================================================== diff -u -r596 -r597 --- VerpakkingsDefinitie/WS/ProductsAgent.pas (.../ProductsAgent.pas) (revision 596) +++ VerpakkingsDefinitie/WS/ProductsAgent.pas (.../ProductsAgent.pas) (revision 597) @@ -513,9 +513,9 @@ VolumeVanCaption := pxBoxDataObj.VolumeVanCaption; ID := pxBoxDataObj.ID; CutOrder := pxBoxDataObj.CutOrder; - Breedte := pxBoxDataObj.Breedte; - Diepte := pxBoxDataObj.Diepte; - Hoogte := pxBoxDataObj.Hoogte; + Breedte := StrToInt(ifthen(pxBoxDataObj.Breedte <> '', pxBoxDataObj.Breedte, '0')); + Diepte := StrToInt(ifthen(pxBoxDataObj.Diepte <> '', pxBoxDataObj.Diepte, '0')); + Hoogte := StrToInt(ifthen(pxBoxDataObj.Hoogte <> '', pxBoxDataObj.Hoogte, '0')); Aantal := pxBoxDataObj.Aantal; MaxCombinAantal := pxBoxDataObj.MaxCombinAantal; Plaatsing := pxBoxDataObj.Plaatsing; @@ -527,9 +527,9 @@ // Default data instellen als deze aanwezig is. if pxBoxDataObj.DefaultData <> nil then begin - DefaultBreedte := pxBoxDataObj.DefaultData.Breedte; - DefaultDiepte := pxBoxDataObj.DefaultData.Diepte; - DefaultHoogte := pxBoxDataObj.DefaultData.Hoogte; + 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')); DefaultPlaatsing := pxBoxDataObj.DefaultData.Plaatsing; DefaultOptiType := pxBoxDataObj.DefaultData.OptiType;