+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 7 su 7

Discussione: bindingsource e tutto quello che crea in automatico ma..

  1. #1
    Post
    3

    bindingsource e tutto quello che crea in automatico ma..

    Buongiorno.
    Sto cercando di usare gli automatismi del visual studio, in vb.
    Fatto il database, per gestione prodotti, tutto bene, creo il tableadapter, creo la formz, tutto ok trascino i campi, tutto o tranne un paio di cose.

    Il database semplice è questo

    AZIENDA = integer
    CODICE = String
    DESCRIZIONE = String

    1) il campo AZIENDA non deve essere a video ma preso da parametri fissi, sempre 1.
    2) Il campo CODICE deve essere letto da una tabella. (Valori progressivi per ora)

    L'ho risolto cosi
    codice:
    Public Class frmProdotti
        Dim A As String = ""
        Dim NewRecord As DataRowView
    [...]
        Private Sub BindingNavigatorAddNewItem_Click(sender As Object, e As EventArgs) Handles BindingNavigatorAddNewItem.Click
            ProdottiBindingSource.AllowNew = True
            A = Trim$(CType(UltimoDocumento("PRPRODOTTI", "1", "L"), String)) (Legge dallla tabella e incrementa. Tutto ok)
            NewRecord = CType(ProdottiBindingSource.AddNew, DataRowView)
            NewRecord("Azienda") = Amb.CodiceAziendas
            If IsDBNull(NewRecord("CodiceSecondario")) = True Then
                NewRecord("CodiceSecondario") = ""
            End If
            NewRecord("Codice") = A
            CodiceTextBox.Text = A  (Va in, codiceTextBox_TextChanged, 2 volte. Una volta col valore ... Handles CodiceTextBox.TextChanged, riempito e la seconda volta a nullo, arrivato su End Sub)
        End Sub
    (Mi crea un record con progressivo giusto e senza altri campi, si posiziona su un record senza neanche il progressivo visibile)
    [...]
    End class
    Ecco che fa mi crea un nuovo record mi mette i valori in AZIENDA come si deve, mi legge il valore da mettere in A il progressivo giusto ma
    Si posiziona non sul record di ADDNEW ma è come se ne facesse un altro record nuovo e si posiziona sul secondo record, il campo codice a video è vuoto.
    Se torno quindi con la freccetta indietro(ho implementato lo scorrimento), e scrivo sul record precedente, trovo il campo codice da solo riempito e se salvo, la cosa va senza errori. ovviamente non deve fare così.
    In ultimo, ma questa è sicuramente scritto in qualche parte del manuale on line che non trovo, ogni volta che riparto col debug mi azzera i db Sto cercando di evitare togliendo la funzione ma non so dove trovala.
    Grazie anticipatamente e spero che mi aiutate a proseguire.

    P.s. ho lavorato in Cobol e vb6(poco) per quasi 30 anni e mi sono perso il meglio. Se potete portate pazienza.
    Ultima modifica di sspintux; 13-05-2020 07:06  Motivo: tag code

  2. #2
    Luogo
    Lazio
    Post
    1,655
    Blogs
    21
    Buongiorno Stefano,

    cortesemente, quando inserisci codice usa il tag
    [code] .... codice .... [/code]
    in modo che diventi facilmente leggibile (per questa volta ho fatto io)

    Ti raccomando anche la lettura del regolamento

    Buon proseguimento
    Ciao sspintux
    ------------------------------------------------------------

    O Santo Protettore dell'informatico quadratico medio, se puoi allontana da me questo cetriolo amaro!
    Azz! ... questo è un grande porck-around; potremmo addirittura farlo passare per una funzionalità avanzata

  3. #3
    patel45 ora è in linea Scolaretto Ultimo blog: recupero dati da pagina html
    Post
    416
    Blogs
    1
    Quote Originariamente inviato da Stefano De Crescenzo Visualizza il messaggio
    Buongiorno.
    Sto cercando di usare gli automatismi del visual studio, in vb.
    Ti consiglio di non farlo, cerca di imparare a gestire il db con codice scritto da te in modo da averne sempre il controllo.

  4. #4
    Post
    3
    Grazie, lo terrò a mente le prossime volte

  5. #5
    Post
    3
    Quote Originariamente inviato da patel45 Visualizza il messaggio
    Ti consiglio di non farlo, cerca di imparare a gestire il db con codice scritto da te in modo da averne sempre il controllo.
    Si è vero. Sicuramente sarebbe la strada più facile, ma se si fa così si perde quello che già si ha.
    Ho sempre cercato di usare per prima cosa gli strumenti che avevo già con poche modifiche anche per salvaguardare eventuali aggiornamenti che vengono fatti dalla casa produttrice e che quasi sicuramente stanno attenti alle cose che loro hanno inserito in precedenza.
    Quindi cerco aiuto di qualche "cocciuto" che ha usato lo strumento in maniera più pura possibile.

  6. #6
    L'avatar di sistemista
    sistemista non è in linea Topo di biblioteca
    Luogo
    Prato
    Post
    2,763
    Gli automatismi non vanno bene per tanti motivi,invece,dovresti studiare come gestire un db con i comandi che sono nelle istruzioni che vb.net mette a disposizione,iniziando dal come si apre una connessione con il database(access) per esempio,insomma bisogna avere delle basi di informatica e non lasciarsi trascinare dai wizard,che poi se hai esigenze che il wizard non risolve ti trovi incasinato e non sai dove sbattere la testa al muro
    Sono stato nella terra del terrore e dei Vampiri...la transilvania? No!..in Banca.
    A Lupara?Min***a...Tecnologia Sicula è!

  7. #7
    patel45 ora è in linea Scolaretto Ultimo blog: recupero dati da pagina html
    Post
    416
    Blogs
    1
    Inoltre trovi difficilmente aiuto perché gli esperti non usano il wizard e quindi non ne conoscono o non ricordano i trucchi

+ Rispondi al Thread

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi