Index: VerpakkingsDefinitie/UI/ZoekProductenScherm.pas =================================================================== diff -u -r571 -r573 --- VerpakkingsDefinitie/UI/ZoekProductenScherm.pas (.../ZoekProductenScherm.pas) (revision 571) +++ VerpakkingsDefinitie/UI/ZoekProductenScherm.pas (.../ZoekProductenScherm.pas) (revision 573) @@ -17,18 +17,45 @@ TabSheetIdentificatieNr: TTabSheet; TabSheetLeveranciersRef: TTabSheet; TabSheetTekst: TTabSheet; - TabSheetProductboom: TTabSheet; Label1: TLabel; - EditZoek: TEdit; + EditZoekKortTekst: TEdit; Label2: TLabel; - ComboBoxAt: TComboBox; - EditKlantNr: TEdit; + ComboBoxBeperkKortTekst: TComboBox; + EditBeperkKortTekst: TEdit; ButtonZoekViaKortTekst: TButton; + Label3: TLabel; + EditZoekIdentNr: TEdit; + ButtonZoekIdentNr: TButton; + Label4: TLabel; + Label5: TLabel; + EditZoekReferentie: TEdit; + EditKlantNrReferentie: TEdit; + Label6: TLabel; + ComboBoxStockTypeReferentie: TComboBox; + ButtonZoekLeveranciersReferentie: TButton; + Label7: TLabel; + Label8: TLabel; + EditZoekTekst: TEdit; + ComboBoxTaalTekst: TComboBox; + Label10: TLabel; + ComboBoxBeperkTekst: TComboBox; + EditBeperkTekst: TEdit; + ButtonZoekTekst: TButton; procedure FormCreate(Sender: TObject); procedure ButtonZoekViaKortTekstClick(Sender: TObject); - procedure EditZoekChange(Sender: TObject); + procedure EditZoekKortTekstChange(Sender: TObject); + procedure ComboBoxBeperkKortTekstChange(Sender: TObject); + procedure ButtonZoekIdentNrClick(Sender: TObject); + procedure ButtonZoekLeveranciersReferentieClick(Sender: TObject); + procedure ComboBoxBeperkTekstChange(Sender: TObject); + procedure EditZoekIdentNrChange(Sender: TObject); + procedure EditZoekReferentieChange(Sender: TObject); + procedure EditZoekTekstChange(Sender: TObject); + procedure ButtonZoekTekstClick(Sender: TObject); private FProductAgent: TProductsAgent; + procedure VerwerkOpzoeking(); + procedure ComboBoxBeperkUpdatet(ComboBox: TComboBox; EditText: TEdit); public Constructor Create(AOwner: TComponent; Navigator: TFormMain; ApplicationContext: TApplicationContext; ProductAgent: TProductsAgent); @@ -43,38 +70,96 @@ begin inherited Create(AOwner, Navigator, ApplicationContext); self.FProductAgent := ProductAgent; +end; - ButtonZoekViaKortTekst.Enabled := false; +procedure TFormZoekProducten.FormCreate(Sender: TObject); +begin + // Vorige opzoeking is ongeldig + self.ApplicationContext.ProductsContext.reset(); + + // UI configuratie + // Zoeken op kort tekst + ComboBoxBeperkKortTekst.ItemIndex := 0; // Default value + ComboBoxBeperkUpdatet(ComboBoxBeperkKortTekst, EditBeperkKortTekst); + // Zoeken op leveranciers referentie + ComboBoxStockTypeReferentie.ItemIndex := 0; // Default value + // Zoeken op tekst + ComboBoxTaalTekst.ItemIndex := 0; + ComboBoxBeperkTekst.ItemIndex := 0; + ComboBoxBeperkUpdatet(ComboBoxBeperkTekst, EditBeperkTekst); end; -procedure TFormZoekProducten.EditZoekChange(Sender: TObject); +procedure TFormZoekProducten.ComboBoxBeperkKortTekstChange(Sender: TObject); begin - // Opzoeken met lege tekst geeft problemen - ButtonZoekViaKortTekst.Enabled := (Sender as TEdit).Text <> EmptyStr; + ComboBoxBeperkUpdatet(ComboBoxBeperkKortTekst, EditBeperkKortTekst); end; -procedure TFormZoekProducten.FormCreate(Sender: TObject); +procedure TFormZoekProducten.ComboBoxBeperkTekstChange(Sender: TObject); begin - // COMBOBOXAT INSTELLEN - ComboBoxAt.Style := csDropDownList; // Typen in combobox uitzetten - // Waarden toevoegen aan combobox - ComboBoxAt.AddItem('K', nil); - ComboBoxAt.AddItem('L', nil); - ComboBoxAt.AddItem('', nil); - // Default value - ComboBoxAt.ItemIndex := 0; + ComboBoxBeperkUpdatet(ComboBoxBeperkTekst, EditBeperkTekst); +end; - // Vorige opzoeking is ongeldig - self.ApplicationContext.ProductsContext.reset() +procedure TFormZoekProducten.ComboBoxBeperkUpdatet(ComboBox: TComboBox; EditText: TEdit); +begin + if ComboBox.ItemIndex > -1 then + if ComboBox.Items[ComboBox.ItemIndex] = 'Klant nummer' then + EditText.Enabled := true + else if ComboBox.Items[ComboBox.ItemIndex] = 'Leveranciers nummer' then + EditText.Enabled := true + else if ComboBox.Items[ComboBox.ItemIndex] = '--Geen beperking--' then + EditText.Enabled := false + else + raise Exception.Create('Ongeldige waarde geselecteerd'); end; +procedure TFormZoekProducten.EditZoekKortTekstChange(Sender: TObject); +begin + ButtonZoekViaKortTekst.Enabled := (Sender as TEdit).text <> EmptyStr; +end; + +procedure TFormZoekProducten.EditZoekIdentNrChange(Sender: TObject); +begin + ButtonZoekIdentNr.Enabled := (Sender as TEdit).text <> EmptyStr; +end; + +procedure TFormZoekProducten.EditZoekReferentieChange(Sender: TObject); +begin + ButtonZoekLeveranciersReferentie.Enabled := (Sender as TEdit).text <> EmptyStr; +end; + +procedure TFormZoekProducten.EditZoekTekstChange(Sender: TObject); +begin + ButtonZoekTekst.Enabled := (Sender as TEdit).text <> EmptyStr; +end; + procedure TFormZoekProducten.ButtonZoekViaKortTekstClick(Sender: TObject); +begin + { TODO -cZoekProductenScherm : Opzoeken via korttekst } + VerwerkOpzoeking(); +end; + +procedure TFormZoekProducten.ButtonZoekIdentNrClick(Sender: TObject); +begin + { TODO -cZoekProductenScherm : Opzoeken via identnr } + VerwerkOpzoeking(); +end; + +procedure TFormZoekProducten.ButtonZoekLeveranciersReferentieClick(Sender: TObject); +begin + { TODO -cZoekProductenScherm : Opzoeken via leveranciers referentie } + VerwerkOpzoeking(); +end; + +procedure TFormZoekProducten.ButtonZoekTekstClick(Sender: TObject); +begin + { TODO -cZoekProductenScherm : Opzoeken via tekst } + VerwerkOpzoeking(); +end; + +procedure TFormZoekProducten.VerwerkOpzoeking(); var ErrorMessage: string; begin - FProductAgent.ZoekOpMetKortTekst(EditZoek.Text, EditKlantNr.Text, ComboBoxAt.Text, self.ApplicationContext.UserContext, - self.ApplicationContext.ProductsContext); - if ApplicationContext.ProductsContext.IsOK = false then begin // Opzoeking gefaald