Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- unit u_ABMProductos;
- {$mode objfpc}{$H+}
- interface
- uses
- Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, u_Global, utiles;
- type
- { TfrmABM }
- TfrmABM = class(TForm)
- btnSalir: TButton;
- btnABM: TButton;
- edtStock: TEdit;
- edtPrecio: TEdit;
- edtDescripcion: TEdit;
- edtCodigo: TEdit;
- Label1: TLabel;
- Label2: TLabel;
- Label3: TLabel;
- Label4: TLabel;
- lblTitulo: TLabel;
- procedure btnABMClick(Sender: TObject);
- procedure btnSalirClick(Sender: TObject);
- procedure FormClick(Sender: TObject);
- private
- public
- procedure inicializarComponentes();
- procedure leerRegistro(var P:TProducto);
- end;
- var
- frmABM: TfrmABM;
- implementation
- {$R *.lfm}
- { TfrmABM }
- procedure TfrmABM.inicializarComponentes();
- begin
- edtCodigo.Text := '';
- edtDescripcion.Text := '';
- edtPrecio.Text := '';
- edtStock.Text := '';
- end;
- procedure TfrmABM.leerRegistro(var P: TProducto);
- begin
- try
- p.codigo:= StrToInt(edtCodigo.Text);
- p.precio:= StringToFloat(edtPrecio.Text);
- p.stock := StrToInt(edtStock.Text);
- if edtDescripcion.Text = '' then
- Raise EConvertError.Create('Debe ingresar la descripción');
- P.descripcion := edtDescripcion.Text;
- except
- on e: EConvertError do
- Raise EConvertError.Create('Datos incorrectos ' + e.Message);
- on e: Exception do
- Raise Exception.Create('Error inesperado ' + e.Message);
- end;
- end;
- procedure TfrmABM.btnABMClick(Sender: TObject);
- var
- producto : TProducto;
- posicion : longInt;
- begin
- try
- leerRegistro(producto);
- posicion := buscarProducto(f,producto.codigo);
- if btnABM.Caption='Alta' then
- if (posicion = NO_ENCONTRADO) then
- begin
- altaProducto(f,producto);
- end
- else
- ShowMessage('El producto ya existe…')
- else
- if btnABM.Caption='Modificar' then
- begin
- modificarProducto(f,producto,posicion);
- close;
- end
- else
- ShowMessage('Operación inválida...');
- inicializarComponentes();
- except
- on e: EConvertError do
- showMessage(e.Message);
- on e: Exception do
- showMessage('Error inesperado: ' + E.ClassName + #13#10 + e.Message);
- end;
- end;
- procedure TfrmABM.btnSalirClick(Sender: TObject);
- begin
- close;
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement