Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    [VB6] Errore in inserimento dei dati su campo numerico

    Ho una maschera in cui l'utente deve inserire i suoi dati personali

    Ho una tabella composta da campi con proprietà NUMERICA, ed ho un problema, se una casella non viene compilata, nel momento del salvataggio va in errore.

    In campi codice DL1 - DL2 - DL3 - DL4 - DL5 - DL6, contenono numeri

    Il problema sta proprio in questi, se lascio vuoto "" uno di questi mi da errore, come posso risolvere il problema????

    Private Sub Command1_Click()
    rsRecordSet.Update
    rsRecordSet![Codice DL 1] = Text1.Text & ""
    rsRecordSet![Codice DL 2] = Text2.Text & ""
    rsRecordSet![Codice DL 3] = Text3.Text & ""
    rsRecordSet![Codice DL 4] = Text4.Text & ""
    rsRecordSet![Codice DL 5] = Text5.Text & ""
    rsRecordSet![Codice DL 6] = Text6.Text & ""
    rsRecordSet![Divisione] = Text7.Text & ""
    rsRecordSet![Località] = Text8.Text & ""
    rsRecordSet![Codice Agente 1] = Text9.Text & ""
    rsRecordSet![Codice Agente 2] = Text10.Text & ""
    rsRecordSet![Codice Agente 3] = Text11.Text & ""
    rsRecordSet![Codice Agente 4] = Text12.Text & ""
    rsRecordSet![Codice Agente 5] = Text13.Text & ""
    rsRecordSet![Codice Agente 6] = Text14.Text & ""
    rsRecordSet![Cognome e Nome] = Text15.Text & ""
    rsRecordSet.Update
    MsgBox "Dati modificati correttamente!", vbInformation
    Unload Form10
    End Sub

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    117
    Ciao,

    se le cifre sono prive di decimali, é sufficiente Val(text1.text)

    Se hanno decimali, devi prima convertirle

  3. #3

    Niente

    sono cifre intere, il problema non sta quando ci sono i numeri, per problema sta quando non ci sono i numeri e quindi lo spazio è VUOTO "", in quel caso mi da errore

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    117
    Allora va bene Val(text1.Text), perché la stringa vuota ritorna zero

    Ciao !

  5. #5

    Si siamo quasi

    Mettendo Val(text1.Text) non mi da più errore se lascio la casella VUOTA "", però adesso ho un altro problema......che appunto, lasciando la casella vuota quando salvo i dati al posto del VUOTO mi mette lo zero (0) e quindi non va bene.....

    Cmq ci siamo quasi, in pratica ora che abbiamo risolto il problema dell'errore ora bisogna risolvere questo, in pratica quando salvo i dati se nella casella non c'è nessu valore inserito lui nel database non lo deve archiviare quel campo, e quindi non deve mettere lo zero come fa adesso

    C'è una soluzione????

    Ciao e grazieeeeeeee

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    117
    Ora è sufficiente che visualizzi i campi con un semplice format, per esempio:

    text1.text = format(campo,"###,###")


    Ciao !

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    117
    Scusa, dimenticavo, se proprio vuoi vuoi lasciare vuoti i campi definiti numerici, basta che togli nella struttura della tabella il valore predefinito zero.

    (mi sembra più corretto, però, lasciarlo, essendo numerico, per poi formattarlo, come suddetto)

    Riciao !

  8. #8

    Niente da fare

    Scrivendo cosi

    rsRecordSet![Codice DL 1] = Val(Text1.Text) & ""
    rsRecordSet![Codice DL 2] = Val(Text2.Text) & ""

    o cosi

    rsRecordSet![Codice DL 1] = Val(Text1.Text)
    rsRecordSet![Codice DL 2] = Val(Text2.Text)

    Lasciando vuoto il campo quando salvo e riapro mi visualizza lo ZERO, e non va bene

    Con questa:
    text1.text = format(campo,"###,###")

    Non va bene perchè se mi serve in un caso scrivere veramento uno ZERO lui non me lo visualizza

    Con questo:
    Scusa, dimenticavo, se proprio vuoi vuoi lasciare vuoti i campi definiti numerici, basta che togli nella struttura della tabella il valore predefinito zero.

    Togliendo lo zero nelle impostazione della tabella, lui quando salvo da VB se la casella è VUOTA lui automaticamente ci mette lo zero

    Porca miseria, ci sarà una soluzione a sta roba



    Ciao e grazieeeeee

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    117

    Re: Niente da fare

    Originariamente inviato da marco.santilli
    Lasciando vuoto il campo quando salvo e riapro mi visualizza lo ZERO, e non va bene
    Avevi chiesto di evitare l'errore di registrazione, quindi ti avevo proposto Val(Text1.Text): ovviamente scrive uno zero, se é stringa vuota.

    Con questa:
    text1.text = format(campo,"###,###")

    Non va bene perchè se mi serve in un caso scrivere veramento uno ZERO lui non me lo visualizza
    Scusa, ma non capisco: lo vuoi o non lo vuoi lo zero ? che significa "scrivere veramente uno zero" ?
    Se hai questi casi misteriosi, non ti conviene definire il campo del DB come testo e decidere tu cosa scrivere ? (se però devi ordinare queste cifre, non puoi farlo su un campo testo)

    Con questo:
    Scusa, dimenticavo, se proprio vuoi vuoi lasciare vuoti i campi definiti numerici, basta che togli nella struttura della tabella il valore predefinito zero.

    Togliendo lo zero nelle impostazione della tabella, lui quando salvo da VB se la casella è VUOTA lui automaticamente ci mette lo zero
    Se hai tolto il valore predefinito nella struttura, lo zero viene scritto dal suddetto Val(Text1.Text)


    Ciao

  10. #10

    E' semplice

    Se ina casella la lascio vuota e salvo, deve rimanere vuota, non si deve inventare gli zeri

    Se ho 6 caselle

    La prima la lascio vuota
    La seconda la lascio vuota
    Sulla terza scrivo: 1
    Sulla quarta scrivo : 2
    Sulla quinta scrivo: 3
    Sulla sesta scrivo : 4

    E poi salvo quando lo riapro in visualizzazione rivoglio vedere le stesse cose:

    La prima: vuota
    La seconda: vuota
    La terza: 1
    La quarta: 2
    La quinta: 3
    La sesta: 4

    E non voglio vedere come adesso

    La prima: 0
    La seconda: 0
    La terza: 1
    La quarta: 2
    La quinta: 3
    La sesta: 4

    Cosi intendevo, scusa se non ci siamo capiti

    Il concetto è facile deve rimanere tutto come io scrivo nel momento del salvataggio, non si deve inventare gli zero che non inserisco

    Ciao e grazieeeeeeeeee

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.