Index: VerpakkingsDefinitie/Main.pas =================================================================== diff -u -r581 -r583 --- VerpakkingsDefinitie/Main.pas (.../Main.pas) (revision 581) +++ VerpakkingsDefinitie/Main.pas (.../Main.pas) (revision 583) @@ -91,7 +91,6 @@ NieuwScherm := NavGridPanelStandard; FProductsAgent.LaadUIInstellingen(FAppContext.UserContext, FAppContext.UiInstellingenContext); - // Gebruikersgegevens scherm bovenaan // Zoekscherm daaronder links // Resultaten scherm daaronder links @@ -104,6 +103,10 @@ NAVLOGIN: NieuwScherm := TFormLogin.Create(PanelMain, Self, FAppContext, FUserAgent); + else + Exception.Create('SchermID: ' + IntToStr(schermId) + ' is onbekend'); + NavigeerNaar(NAVHOME); + exit; end; NieuwScherm.Parent := PanelMain; Index: VerpakkingsDefinitie/UI/GevondenProductenScherm.pas =================================================================== diff -u -r571 -r583 --- VerpakkingsDefinitie/UI/GevondenProductenScherm.pas (.../GevondenProductenScherm.pas) (revision 571) +++ VerpakkingsDefinitie/UI/GevondenProductenScherm.pas (.../GevondenProductenScherm.pas) (revision 583) @@ -44,8 +44,6 @@ end; procedure TFormGevondenProducten.FormCreate(Sender: TObject); -var - ColNaam: string; begin FProductSubject.RegisterObserver(FSubjectObserver); end; @@ -56,15 +54,30 @@ end; procedure TFormGevondenProducten.ListViewProductenSelectItem(Sender: TObject; Item: TListItem; Selected: Boolean); +var + ErrorMessage: string; begin if Item = nil then exit; if Item.Data = nil then exit; ApplicationContext.ProductDetailContext.GeselecteerdProduct := Item.Data; - ApplicationContext.ProductDetailContext.NotifyChanged(); + // ApplicationContext.ProductDetailContext.NotifyChanged(); FProductsAgent.ZoekProductDataMetProductNr(TProductInformatie(Item.Data).ProductNr, self.ApplicationContext.UserContext, self.ApplicationContext.ProductDetailContext); + + if self.ApplicationContext.ProductDetailContext.IsOK = false then + begin + // Opzoeking gefaald + ErrorMessage := self.ApplicationContext.ProductDetailContext.ErrorMessage; + if self.ApplicationContext.ProductDetailContext.InternalErrorMessage <> '' then + begin + ErrorMessage := ErrorMessage + sLineBreak + self.ApplicationContext.ProductDetailContext.InternalErrorMessage; + end; + + MessageDlg(ErrorMessage, TMsgDlgType.mtInformation, [mbOK], 0, mbCancel) + end; + self.ApplicationContext.ProductDetailContext.Reset(); end; procedure TFormGevondenProducten.UpdateGui(Sender: TObject); Index: VerpakkingsDefinitie/UI/ObserverPattern.pas =================================================================== diff -u -r555 -r583 --- VerpakkingsDefinitie/UI/ObserverPattern.pas (.../ObserverPattern.pas) (revision 555) +++ VerpakkingsDefinitie/UI/ObserverPattern.pas (.../ObserverPattern.pas) (revision 583) @@ -14,7 +14,7 @@ protected procedure Change; public - constructor Create(AOwner: TComponent); + constructor Create(AOwner: TComponent);override; published property Enabled: Boolean read FEnabled write FEnabled; property OnChange: TNotifyEvent read FOnChange write FOnChange; Index: VerpakkingsDefinitie/UI/Util.pas =================================================================== diff -u -r569 -r583 --- VerpakkingsDefinitie/UI/Util.pas (.../Util.pas) (revision 569) +++ VerpakkingsDefinitie/UI/Util.pas (.../Util.pas) (revision 583) @@ -39,7 +39,6 @@ // Gebaseerd op: https://stackoverflow.com/questions/414928/is-there-any-way-to-get-all-the-controls-on-a-container-control class procedure TUtil.FreeControlChildrenRec(AControl: TControl); var - item: TControl; i: Integer; begin if AControl = nil then Index: VerpakkingsDefinitie/UI/Subscherm.pas =================================================================== diff -u -r558 -r583 --- VerpakkingsDefinitie/UI/Subscherm.pas (.../Subscherm.pas) (revision 558) +++ VerpakkingsDefinitie/UI/Subscherm.pas (.../Subscherm.pas) (revision 583) @@ -19,7 +19,7 @@ property Navigator: INavigator Read FNavigator write FNavigator; property ApplicationContext: TApplicationContext Read FApplicationContext write FApplicationContext; public - Constructor Create(AOwner: TComponent; Navigator: INavigator; ApplicationContext: TApplicationContext); + Constructor Create(AOwner: TComponent; Navigator: INavigator; ApplicationContext: TApplicationContext); reintroduce; end; implementation