Tutorial vídeo club
#61
Escrito 07 marzo 2015 - 07:35
[DELPHI]//------------------------------------------------------------------------------
//***************************************************[ MiControlDeErrores ]*****
// Ds Es el datasource a conectar
// Unidad LA unidad desde el que la llamamos
// Apartado El apartado
// E La exception producida
//------------------------------------------------------------------------------
begin
MessageBeep(1000);
ShowMessage('Se ha producido un error y el proceso no se ha podido terminar Unidad:[ '+Unidad+'] Modulo:[ '+Apartado+' ]' + 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 Ds.DataSet.State in [dsEdit,dsInsert] then DS.DataSet.Cancel;
DM.IBT.RollbackRetaining; //Donde IBT es el nombre de su Ibtrasaction, con ruta
end;[/DELPHI]
Que ya vimos y también vimos como se usaba en Unidades en procedimientos como el de bajas siendo la linea de llamada del código
[DELPHI]DM.MiControlDeErrores(Dsprincipal,'UUnidades','Baja',E);[/DELPHI]
Lo bueno es que el mismo código, incluso podría substituir parte del código de todos los botones confirmar o en mucho de ellos
En clientes hay una parte que ha cambiado en el formulario y no se mostro, esta es en el panel botonera 2, os pongo una imagen
Como veis ahora podemos buscar por tres campos con el locate, no es el mejor método y de hecho suelo usar pantallas de búsqueda, pero para el tutorial creo que es suficiente, veamos dos trozos de código relacionados con este cambio
[DELPHI]//------------------------------------------------------------------------------
//***********************************************[ ejecutamos la búsqueda ]*****
//------------------------------------------------------------------------------
begin
case RadioGroup1.ItemIndex of
0:DSPrincipal.DataSet.Locate('NOMBRE',Edit1.Text,[loCaseInsensitive,loPartialKey]);
1:DSPrincipal.DataSet.Locate('DIRECCION',Edit1.Text,[loCaseInsensitive,loPartialKey]);
2:DSPrincipal.DataSet.Locate('DOCUMENTO',Edit1.Text,[loCaseInsensitive,loPartialKey]);
end;
end;
[/DELPHI]
El primero es cuando le damos a buscar, por lo que miramos que elemento del RadioGroup esta seleccionado para saber por que buscamos
[DELPHI]procedure TFClientes.RadioGroup1Click(Sender: TObject);
begin
case RadioGroup1.ItemIndex of
0:Label9.Caption:='Nombre';
1:Label9.Caption:='Dirección';
2:Label9.Caption:='Nº de documento';
end;
end;
[/DELPHI]
El segundo es para que cuando pulsamos en el Radiogroup nos identifique antes del edit por que campo buscamos
Creo que esto es todo por esta semana, si veis algo me dicen, seguro que hay fallos ya que estoy haciendo el tutorial según lo voy explicando. Buen fin de semana a todos
#62
Escrito 30 marzo 2015 - 07:04
Bueno pues aquí os pongo lo que he continuado haciendo mientras el club ha estado de mantenimiento, esta todo agrupado, con separadores, perdonad la vagancía
#63
Escrito 12 abril 2015 - 02:51
Primero pediros disculpas por la tardanza en continuar, no es que me haya olvidado, pero debo terminar algunas cosas así que en una o dos semanas espero volver a seguir con el tútorial
#64
Escrito 13 abril 2015 - 08:00
Primero pediros disculpas por la tardanza en continuar, no es que me haya olvidado, pero debo terminar algunas cosas así que en una o dos semanas espero volver a seguir con el tútorial
Estaremos pendientes amigo.
#65
Escrito 02 mayo 2015 - 08:01
#66
Escrito 02 mayo 2015 - 08:04
#67
Escrito 02 mayo 2015 - 08:06
#68
Escrito 02 mayo 2015 - 08:14