Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Record: Sovrascrivere

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    389

    Record: Sovrascrivere

    Questo codice che allego, prende dei valori da altri campi di altre tabelle e posiziona tali valori in un'altra tabella.
    (dopo espongo la mia domanda)

    Ecco il codice:

    codice:
    Private Sub cmdProcedi_Click()
    Dim dbP As Database
    Dim rsP As Recordset
    
    Dim movoce, SQL, SQL1, SQL2, SQL3, filiale, matricola, SQL4 As String
    SQL = "SELECT * FROM PSESPL1 WHERE ESP_AZIENDA = " & txtAzienda.Text & " AND ESP_ANNO=" & txtAnno.Text & " AND ESP_MESE_IRPEF=" & txtMese.Text & " AND ESP_MENSILITA=" & txtMese.Text
    SQL1 = "SELECT * FROM PSMOV WHERE MOV_AZIENDA = " & txtAzienda.Text & " AND MOV_ANNO = " & txtAnno.Text & " AND MOV_MESE = " & txtMese.Text
    
    dbP1.RecordSource = SQL
    dbP1.Refresh
    dbP2.RecordSource = SQL1
    dbP2.Refresh
    filiale = dbP1.Recordset("ESP_FILIALE")
    matricola = dbP1.Recordset("ESP_MATRICOLA")
    SQL3 = "SELECT * FROM PSDIP1 WHERE WAP_AZIENDA= " & txtAzienda.Text & " AND WAP_FILIALE=" & filiale & " AND WAP_MATRICOLA=" & matricola
    dbP3.RecordSource = SQL3
    dbP3.Refresh
    
    Set dbP = OpenDatabase("c:\GommaPlastica\db\GPlastica.mdb")
    Set rsP = dbP.OpenRecordset("Contribuzioni")
    If dbP1.Recordset.RecordCount > 0 Then
        If dbP2.Recordset.RecordCount > 0 Then
        MsgBox "OK, perfetto"
        Contr = dbP2.Recordset("MOV_VOCE")
            Select Case Contr
                Case 8000
                     SQL2 = "INSERT INTO Contribuzioni (ContrAd) VALUES (8000)"
                     dbP.Execute (SQL2)
                Case 8001
                     SQL2 = "INSERT INTO Contribuzioni (ContrAz) VALUES (8001)"
                     dbP.Execute (SQL2)
                Case 8002
                     SQL2 = "INSERT INTO Contribuzioni (ContrTFR) VALUES (8002)"
                     dbP.Execute (SQL2)
                Case 8003
                     SQL2 = "INSERT INTO Contribuzioni (ContrVol) VALUES (8003)"
                     dbP.Execute (SQL2)
                Case 8004
                     SQL2 = "INSERT INTO Contribuzioni (ContrIs) VALUES (8004)"
                     dbP.Execute (SQL2)
            End Select
    
                If dbP3.Recordset.RecordCount > 0 Then
                    MsgBox "Ok claudio"
                    SQL4 = "INSERT INTO Contribuzioni(CFiscale) VALUES ('" & dbP3.Recordset("WAP_COD_FISCALE") & "')"
                    dbP.Execute (SQL4)
                Else
                    MsgBox "scemo"
                    Exit Sub
                End If
                
        Else
            Exit Sub
        End If
    Else
        MsgBox "I Dati non sono corrispondenti", vbCritical, "AlphaTeam Srl"
        Exit Sub
    End If
    End Sub
    La domanda è: è possibile utilizzare un solo record e sovrascrivere su di esso ogni volta che premo procedi.

    Esempio:

    CLICCO SU PROCEDI e MI POSIZIONA I DATI IN TABELLA IN QUESTO MODO:

    campo1 ---- campo2 ---- campo3
    topolino------(vuoto)------(vuoto)
    (vuoto)------pippo---------(vuoto)
    (vuoto)-------(vuoto)-------pluto

    E' POSSIBILE INVECE FARE:

    campo1 ----- campo2 ----- campo3
    topolino------pippo--------pluto



    Cosa sbaglio (vedendo anche il codice)??

    (vi prego rispondetemi)

  2. #2
    Utente di HTML.it L'avatar di JamesD
    Registrato dal
    Oct 2001
    Messaggi
    415
    Premetto dicendo che non ho letto tutto il codice. Quando fai una insert con sql inserisci sempre un nuovo record quindi per inserire i dati su di uno stesso record dovresti inserirli con la stessa insert. Altrimenti per andare a modificare un record già inserito in una tabella devi usare l'update:

    codice:
    UPDATE nome_tabella SET campo1 = val1, SET cmapo2 = val2... WHERE ...

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.