Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    66

    [DELPHI] copiare record selezionati in DBgrid dentro ADO Table

    perdonate, probabilmente è semplice ma mi stò incasinando con la SelectedRows ...
    io metto in una DBGrid alcuni campi ottenuti con una ADOquery, permetto all'utente di selezionare alcuni record e di cancellarli. Per fare questo ho sempre fatto semplicemente
    [DbGrid_master.SelectedRows.delete;]
    volendo però perfezionare il codice, vorrei permettere all'utente la funziona UnDo, e per fare questo bisogna che non cancelli fisicamente i record selezionati, ma (ad esempio) potrei usare un campo dove metto un flag per capire se il record è 'valido' oppure cancellato ..
    Per migliorare la comprensione, pensavo di creare una tabella con la stessa struttura della tabella da cui prelevo i record da usare per metterci i file cancellati (per non mescolarli nella stessa tabella di origine).
    Il mio problema è fare un ciclo sugli n record selezionati nella DBgrid dentro al quale (non ho trovato idee migliori) mettere un altro ciclo sui campi dei singoli record per crearne dei nuovi nella tabella di destinazione (con i record cancellati): in sintesi:

    tabella cancellati.open
    for i:= 1 to DBgrid_master.SelectedRows.Count
    .... codice per prendere i valori dei campi dell' i-esimo record selezionato e creare un nuovo record nella tabella cancellati .....
    tabella cancellati.post
    tabella cancellati.close

    ... mi date una dritta per favore
    eK

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    ciao,
    ti rispondo anche se non so nulla riguardo i componenti ADO.

    un problema del genere io lo risolverei utilizzando solo l'apposito flag 'cancellato' e dando la possibilita di visualizzare i record con o senza flag Attivo.

    in questo caso, per effettuare la UNDO basterebbe modificare il flag.

    lo stesso problema, l'ho risolto, appunto, aggiungendo un field alla mia tabella

    codice:
    ...
    cancellato  string varchar(1)
    ...
    dove assegnavo 1 per record valido, e 0 per record cancellato.

    ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.