Eliminazione riga non funzionante

di il
2 risposte

Eliminazione riga non funzionante

Salve,
ho un'applicazione Access con un pulsante di Eliminazione Riga che non funziona come deve (vedi freccia).


Quello che accade è che cliccando sul Elimina si resettano i campi.
Io però mi aspetterei che se completo i campi e se questo viene riscontrato come doppio (numero di telefono è univoco non nullo) cliccando su Elimina venga effettivamente eliminata la riga nel DB.

Chi ha scritto l'applicazione ha previsto quel pulsante di elimina solo in questa Maschera, mi sembra strano sia solo un reset del form.
Il pulsante Elimina ha legato questa sequenza di comandi, potreste aiutarmi a capire cosa effettivamente fa:


Grazie

2 Risposte

  • Re: Eliminazione riga non funzionante

    Mumble mumble...gestire tutti quei comandi con le macro, con tutte quelle "condizioni"...non so se sia il massimo.
    Per una gestione da principianti io mi giocherei innanzitutto la proprietà Indice Multicampo Univoco da impostare nella tabella sottostante, leggi qui per impostarla
    https://support.microsoft.com/it-it/office/creare-e-utilizzare-un-indice-per-migliorare-le-prestazioni-0a8e2aa6-735c-4c3a-9dda-38c6c4f1a0ce
    Poi (almeno teoricamente) al presentarsi della finestra messaggio di errore, si può decidere che il pulsante Elimina diventi attivo...ma piuttosto che eliminare il record, consiglio di digitare altri valori.
  • Re: Eliminazione riga non funzionante

    xiD ha scritto:


    ho un'applicazione Access con un pulsante di Eliminazione Riga che non funziona come deve (vedi freccia).
    Quello che accade è che cliccando sul Elimina si resettano i campi.
    L'indicazione della freccia non è d'aiuto. Quello che posso dire è che il programma fa quello che gli viene detto di fare e ha anche una sua logica nel sistema con cui lo fa.
    Elimina riga:
    - se non stai inserendo un nuovo record e premi il pulsante, cancella il record. Eliminazione Riga (record) in senso proprio.
    - se sei in fase di inserimento (NewRecord = Vero) ma non hai ancora iniziato a compilare i vari controlli (Dirty = Falso) emette un segnale acustico: non c'è niente da eliminare, la pressione del pulsante non ha effetto su niente, perché non c'è niente su cui agire.
    - se sei in fase di inserimento (NewRecord = Vero) e hai già iniziato a compilare qualcosa (Dirty = Vero) annulla quello che stavi facendo. E' un'eliminazione riga per modo di dire, non c'era ancora nulla di salvato in tabella ma il concetto ci può stare.
    (lasciamo stare gli errori nelle macro)
    Fa quello che diceva di fare: elimina la riga (in senso più o meno stretto del termine)
    Poi invece di macro lo si trasforma in codice vba ed è molto meglio.

    xiD ha scritto:


    mi aspetterei che se completo i campi e se questo viene riscontrato come doppio (numero di telefono è univoco non nullo) cliccando su Elimina venga effettivamente eliminata la riga nel DB.
    No, è un altro tipo di controllo che il (codice/macro associato al) pulsante non fa. Non è difficile da fare ma non è stato studiato per quello.
Devi accedere o registrarti per scrivere nel forum
2 risposte