Demo video Club generos
unit UGeneros; | |
interface | |
uses | |
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, | |
Dialogs, Grids, DBGrids, Mask, DBCtrls, ComCtrls, StdCtrls, Buttons, ExtCtrls, | |
DB; | |
type | |
TFGeneros = class(TForm) | |
Botonera1: TPanel; | |
SBNuevo: TSpeedButton; | |
SBEditar: TSpeedButton; | |
SBBorrar: TSpeedButton; | |
SBSalir: TSpeedButton; | |
SBBuscar: TSpeedButton; | |
DBNavigator1: TDBNavigator; | |
Botonera2: TPanel; | |
Label9: TLabel; | |
SpeedButton16: TSpeedButton; | |
SBBuscarnormal: TSpeedButton; | |
Edit1: TEdit; | |
StatusBar1: TStatusBar; | |
Panelcontenedor: TPanel; | |
PanelDatos: TPanel; | |
Label10: TLabel; | |
PanelOculto: TPanel; | |
SpeedButton8: TSpeedButton; | |
SpeedButton9: TSpeedButton; | |
DBGrid1: TDBGrid; | |
Label1: TLabel; | |
DbeCodigo: TDBEdit; | |
DsPrincipal: TDataSource; | |
Label2: TLabel; | |
DBEGenero: TDBEdit; | |
procedure SBSalirClick(Sender: TObject); | |
procedure SBNuevoClick(Sender: TObject); | |
procedure SBEditarClick(Sender: TObject); | |
procedure SBBorrarClick(Sender: TObject); | |
procedure SBBuscarClick(Sender: TObject); | |
procedure SpeedButton9Click(Sender: TObject); | |
procedure SpeedButton8Click(Sender: TObject); | |
procedure SBBuscarnormalClick(Sender: TObject); | |
procedure SpeedButton16Click(Sender: TObject); | |
procedure FormKeyPress(Sender: TObject; var Key: Char); | |
private | |
{ Private declarations } | |
public | |
{ Public declarations } | |
end; | |
var | |
FGeneros: TFGeneros; | |
implementation | |
{$R *.dfm} | |
uses UDM; | |
procedure TFGeneros.FormKeyPress(Sender: TObject; var Key: Char); | |
//------------------------------------------------------------------------------ | |
//************************************************[ Al pulsar una tecla ]****** | |
// Al pulsar la tecla salta al foco del siguiente componente, si esta admitido | |
//------------------------------------------------------------------------------ | |
begin | |
if (Key = #13) then {Si se ha pulsado enter } | |
if (ActiveControl is TEdit) | |
or (ActiveControl is TDBEdit) | |
or (ActiveControl is TDBComboBox) then | |
begin | |
Key := #0; { anula la puulsación } | |
Perform(WM_NEXTDLGCTL, 0, 0); { mueve al próximo control } | |
end | |
end; | |
procedure TFGeneros.SBBorrarClick(Sender: TObject); | |
//------------------------------------------------------------------------------ | |
//*******************************************[ Borrar el Actual Registro ]****** | |
//------------------------------------------------------------------------------ | |
begin //Cambiar por el mensaje elegido | |
if (MessageBox(0, '¿Esta seguro de eliminar el registro actual?', //Aqui no se porque me manda la última comilla simple y la coma a la linea de abajo, por favor subir al final de la linea anterior | |
'Eliminar Registro', MB_ICONSTOP or MB_YESNO or MB_DEFBUTTON2) = ID_No) then abort | |
else begin | |
DSPrincipal.DataSet.Delete; | |
DM.IBT.CommitRetaining; | |
ShowMessage('El registro ha sido eliminado'); | |
end; | |
end; | |
procedure TFGeneros.SBBuscarClick(Sender: TObject); | |
//------------------------------------------------------------------------------ | |
//******************************************************[ Abrir Búsqueda ]****** | |
//------------------------------------------------------------------------------ | |
begin | |
Botonera2.Visible:=True; | |
Edit1.SetFocus; | |
end; | |
procedure TFGeneros.SBBuscarnormalClick(Sender: TObject); | |
//------------------------------------------------------------------------------ | |
//***********************************************[ ejecutamos la búsqueda ]***** | |
//------------------------------------------------------------------------------ | |
begin | |
DSPrincipal.DataSet.Locate('GENERO',Edit1.Text,[loCaseInsensitive,loPartialKey]); | |
end; | |
procedure TFGeneros.SBEditarClick(Sender: TObject); | |
//------------------------------------------------------------------------------ | |
//*******************************************[ Editar el actual registro ]****** | |
//------------------------------------------------------------------------------ | |
begin | |
if DsPrincipal.DataSet.IsEmpty<>true then | |
begin | |
DSPrincipal.DataSet.Edit; | |
PanelDatos.Enabled:=True; | |
PanelOculto.Visible:=True; | |
Botonera1.Enabled:=false; | |
DBEGenero.SetFocus; | |
end else ShowMessage('No hay tregistros disponibles para editar') | |
end; | |
procedure TFGeneros.SBNuevoClick(Sender: TObject); | |
//------------------------------------------------------------------------------ | |
//**************************************************************[ SBnuevo ]***** | |
//------------------------------------------------------------------------------ | |
var VarIRegistro:Integer; | |
begin | |
DsPrincipal.DataSet.Insert; | |
VarIRegistro:=DM.IBDConfiguracionNUMERADOR_GENERO.Value; | |
VarIRegistro:=VarIRegistro+1; | |
DBECodigo.Field.Value:=IntToStr(VarIRegistro); | |
PanelDatos.Enabled:=True; | |
PanelOculto.Visible:=True; | |
Botonera1.Enabled:=false; | |
VarIModoApertura:=0; | |
DBEGenero.SetFocus; | |
end; | |
procedure TFGeneros.SBSalirClick(Sender: TObject); | |
//------------------------------------------------------------------------------ | |
//**************************************************************[ SBSalir ]***** | |
//------------------------------------------------------------------------------ | |
begin | |
Close; | |
end; | |
procedure TFGeneros.SpeedButton16Click(Sender: TObject); | |
//------------------------------------------------------------------------------ | |
//****************************************************[ Salir de búsqueda ]***** | |
//------------------------------------------------------------------------------ | |
begin | |
Edit1.Text:=''; | |
Botonera2.Visible:=False; | |
end; | |
procedure TFGeneros.SpeedButton8Click(Sender: TObject); | |
//------------------------------------------------------------------------------ | |
//*****************************************************[ Cancelar Proceso]****** | |
//------------------------------------------------------------------------------ | |
begin | |
if DsPrincipal.DataSet.State in [dsEdit,dsInsert] then DSPrincipal.DataSet.Cancel; | |
DM.IBT.RollbackRetaining; //Donde IBT es el nombre de su Ibtrasaction, con ruta | |
PanelOculto.Visible:=False; | |
Botonera1.Enabled:=True; | |
PanelDatos.Enabled:=False; | |
end; | |
procedure TFGeneros.SpeedButton9Click(Sender: TObject); | |
//------------------------------------------------------------------------------ | |
//********************************************************[ Grabar datos ]****** | |
//------------------------------------------------------------------------------ | |
var VarIFase:Integer; | |
begin | |
try | |
VarIFase:=1; | |
if DsPrincipal.DataSet.State in [dsInsert] then VarBGrabarNumerador:=True else VarBGrabarNumerador:=False; | |
if DsPrincipal.DataSet.State in [dsEdit,dsInsert] then DSPrincipal.DataSet.Post; | |
if VarBGrabarNumerador=true then | |
begin | |
VarIFase:=2; | |
DM.IBDConfiguracion.Edit; | |
DM.IBDConfiguracionNUMERADOR_GENERO.Value:=StrToInt(DBECodigo.Field.Value); | |
DM.IBDConfiguracion.Post; | |
VarBGrabarNumerador:=False; | |
end; | |
DM.IBT.CommitRetaining; //Donde IBT es el nombre de su Ibtrasaction, con ruta | |
except | |
on E: Exception do | |
begin | |
MessageBeep(1000); | |
ShowMessage('Se ha producido un error y el proceso no se ha podido terminar Unidad:[ UGeneros ] Modulo:[ Grabar ]' + Chr(13) + Chr(13) | |
+ 'Fase del error [ '+IntToStr(VarIFase)+' ]'+ Chr(13) + Chr(13) | |
+ 'Clase de error: ' + E.ClassName + Chr(13) + Chr(13) | |
+ 'Mensaje del error:' + E.Message+Chr(13) + Chr(13) | |
+ ' '+Chr(13) + Chr(13) | |
+ 'El proceso ha quedado interrumpido'); | |
if DsPrincipal.DataSet.State in [dsEdit,dsInsert] then DSPrincipal.DataSet.Cancel; | |
DM.IBT.RollbackRetaining; //Donde IBT es el nombre de su Ibtrasaction, con ruta | |
end; | |
end; | |
PanelOculto.Visible:=False; | |
PanelDatos.Enabled:=False; | |
Botonera1.Enabled:=True; | |
end; | |
end. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment