Ver Mensaje Individual
  #10  
Antiguo 19-07-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Reputación: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
EDITO:
Bueno, entendi cualquier cosa mejor borro lo que puse que nada que ver

En fin, creo que lo mejor es usar un TClientDataSet. En tu ClientDataSet deberias tener un campo numerico de orden como menciona gatosoft, y luego lo que haces es permitirle aumentar o decrementar ese numero. Luego reordenas el dataset. Es decir, te tendria que quedar algo como esto

Código Delphi [-]
procedure TForm1.BtnMoveUpClick(Sender: TObject);
begin
  if cds.First then
    Exit;

  try
    cds.Edit;
    cds.FieldByName('Order').AsInteger := cds.FieldByName('Order').AsInteger - 1;
  finally
    cds.Post;
    // ordenar dataset
  end;
end;

Otra forma de verlo es utilizar cursores. Hay un pdf excelente de Cary Jensen (si mal no recuerdo, y espero haber escrito bien su nombre) en el FTP del club que no tiene desperdicio

Última edición por AgustinOrtu fecha: 19-07-2015 a las 07:27:06.
Responder Con Cita