Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di danz67
    Registrato dal
    May 2005
    Messaggi
    213

    Delphi 7 - Insert

    Salve a tutti,
    oggi ho un nuovo ostacolo.
    Ho necessità di aprire un nuovo form per l'inserimento di dati.
    Mi spiego meglio...nel form UClienti ho creato una dbgrid per la visualizzazione dei clienti e un serie di pulsanti per eseguire operazioni sui record, adesso dal pulsante Tnuovo vorrei aprire il form UNuovo_cliente in modalità insert, come posso fare?
    Grazie.

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,301
    E' sufficiente richiamare il metodo Insert del componente DataSet che stai utilizzando, la tabella o la query insomma, e successivamente visualizzare la finestra di dialogo che contiene "Data Control" associati a tale DataSet, attraverso il componente TDataSource, in cui puoi inserire i valori richiesti per il nuovo record.

    Con appositi pulsanti, puoi chiudere il form usando la proprietà ModalResult (in modo da restituire anche il responso "conferma" o "annulla" al form chiamante) preventivamente invocando il metodo Post sul DataSet per salvare il record oppure Cancel per annullare le modifiche apportate.

    Dal form chiamante, quello che contiene il controllo TDBGrid, puoi creare il form secondario per l'inserimento dati usando il costruttore Create e chiamando ShowModal per visualizzare il form modale (si attende la chiusura del form per proseguire); dal valore di ritorno di ShowModal, puoi comprendere se il record è stato confermato o annullato (eventualmente, per poter fare un refresh della griglia includendo il nuovo dato, chiudendo e riaprendo il DataSet con i metodi Close e Open).

    La trattazione è piuttosto ampia e non ho possibilità di dilungarmi così tanto, quindi verifica tutte queste informazioni e il loro funzionamento sulla Guida in linea di Delphi.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it L'avatar di danz67
    Registrato dal
    May 2005
    Messaggi
    213
    Mi spiace ma non sono riuscito a capire, potresti perfavore farmi un'esempio pratico?

    Es.

    form1 (pannello di controllo iniziale) con pulsante per aprire form2

    form2 (contiene i Tedit per inserire il nuovo record)

    Cosa devo scrivere nel pulsante per far si che apra il form2 in modalità inserimento nuovo record?

    Ti ringrazio anticipatamente.

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,301
    Originariamente inviato da danz67
    form2 (contiene i Tedit per inserire il nuovo record)
    Non usare controlli TEdit, ma usa i TDBEdit che sono associabili ai dati tanto quanto il controllo TDBGrid.

    Originariamente inviato da danz67
    Cosa devo scrivere nel pulsante per far si che apra il form2 in modalità inserimento nuovo record?
    Supponendo che la classe del form abbia nome TMyForm, qualcosa come
    codice:
    var
      Frm: TMyForm;
    begin
      Frm := TMyForm.Create(nil);
      try
        SomeDataSet.Append;
        Frm.ShowModal;
      finally
        Frm.Free;
      end;
    end;
    tenendo conto che SomeDataSet rappresenta il DataSet a cui è associata la griglia (la tabella, la query o qualsiasi altra sorgente dati) e i "data control" del form secondario (TDBEdit, ...) sono associati al componente TDataSource cui sono associati i controlli del form chiamante (come la TDBGrid).

    Aggiungo un'ultima cosa: si tratta di procedure abbastanza fondamentali, ovviamente non posso spiegare in questo spazio, per filo e per segno, tutto ciò che c'è da sapere sul "data binding" di Delphi, quindi dovresti almeno procurarti un po' di documentazione a riguardo, oppure leggere la Guida in linea che contiene informazioni procedurali.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it L'avatar di danz67
    Registrato dal
    May 2005
    Messaggi
    213
    Sei stato gentilissimo come sempre, adesso ho le idee piu' chiare e mi studiero' bene gli argomenti al riguardo, grazie di nuovo, a presto.

  6. #6
    Utente di HTML.it L'avatar di danz67
    Registrato dal
    May 2005
    Messaggi
    213
    Ci sono riuscito!
    Grazie di nuovo, alla prossima, 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 © 2024 vBulletin Solutions, Inc. All rights reserved.