|
Ttable.index
Antes de nada buenas a todos.
os cuento
estoy haciendo un programa con tablas y a la hora de indexar me da un problema que he solucionado pero creo que no de la mejor manera.
mi programa tiene unos edit para insertar campos un dbgrid donde muestra la tabla y los tipicos botones: (alta,baja,modificar)
cuando activo el form tengo puesto para indexar lo siguiente:
tfactura.AddIndex('empresa','empresa;fecha',[ixCaseInsensitive, ixNonMaintained]);
tfactura.IndexName:='empresa';
esto lo he copiado de una pagina por que no tengo ni idea como funciona un index, pero hasta aqui todo bien, creo el indice, y despues lo llamo.
el problema es cuando introduzco un alta o modifico que me sale un error que me dice algo como que el indice esta corriendo, y lo he solucionado de la siguiente forma:
Al pulsar el boton alta
tfactura.IndexName:='';
tfactura.DeleteIndex('empresa');
TFactura.Append;
introduzco los datos
Tfactura.post;
tfactura.AddIndex('empresa','empresa;fecha',[ixCaseInsensitive, ixNonMaintained]);
tfactura.IndexName:='empresa';
esto no tiene que estar muy bien, no da error por algo mas limpio tiene que haber ya que borro el indice y despues lo creo de nuevo.
Yo lo que quiero es crear el indice y despues llamarlo, no tener que borrar,
Disculpen si me extendi mucho, lo que quise es explicarlo lo mejor posible.
Un saludo y muchas gracias.
|