Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente bannato
    Registrato dal
    Feb 2000
    Messaggi
    2,006

    [VB] Inserire dati da 2 tabelle diverse nello stesso DataReport

    Qualkuno sa dirmi come posso inserire nello stesso DataReport i dati di 2 tabelle diverse dello stesso DataBase Access???
    O in alternativa... è possibile inserire il dato di un solo record e non di tutto il recordset? spero di essere stato chiaro (ma non penso)



    Please help me.....è davvero importante...
    Ciauz e grazie anticipatamente

  2. #2
    da vb
    opendatabase
    openrecordset (from tabella1....)
    openrecordset (from tabella2....)

    apri due tabelle diverse


    o forse non ti sei spiegato bene
    "Non è la fame, ma l'ignoranza che uccide"

  3. #3
    Utente bannato
    Registrato dal
    Feb 2000
    Messaggi
    2,006
    non è questione di VB.... i dati vengono inseriti in un form DATAREPORT
    è li ke non so muovermi assolutamente....

  4. #4
    Tramite una query magari?
    you'll never walk alone ....

  5. #5
    Utente bannato
    Registrato dal
    Feb 2000
    Messaggi
    2,006
    come???guarda ke è la prima volta ke uso il DataReport...quindi non ho la + pallida idea di kome fare query

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    22
    Spero di esserti di aiuto, poichè quello che hai scritto è troppo generico . Credo di aver capito comunque che tu conosci i concetti basilari di Visual Basic 6.0. Presuppongo inoltre che hai una base dati Access, all'interno della quale ci sono due tabelle, i cui campi devono essere contenuti in un DataReport. Per realizzare ciò, nell'aprire il recordset associato alla base dati, devi necessariamente utilizzare una query di selezione; ora, decidendo appunto di visualizzare nel DataReport tutti i campi delle due tabelle, dovrai utilizzare le seguenti righe di codice.

    dim sql as string
    sql="SELECT * FROM tabella1, tabella2" 'questa è la query per associare le due tabelle al recordset selezionando tutti i campi
    Set Recordset = conn.Execute(sql, , adCmdText)

    Preciso che ho saltato la parte della connessione al database, poichè credo che tu conosca la procedura.
    Successivamente dovrai connettere il recordset al DataReport con le seguenti istruzioni:

    Set ReportData.DataSource = Recordset
    ReportData.WindowState = vbMaximized
    ReportData.Show vbModal

    A questo punto il gioco è fatto :adhone:, poichè in esecuzione verrà visualizzato il DataReport così come tu lo avrai progettato. E' ovvio qundi che in fase di progettazione del DataReport avrai inserito le opportune Label nella sezione Intestazione e le opportune Textbox nella sezione Dettaglio (l'associazione delle Textbox con i campi del recordset viene fatta inserendo nella proprietà DataField della Textbox del DataReport il nome del record della relativa tabella). Comunque spero che conosci in linea di massima la progettazione di un DataReport.

    Se volessi visualizzare un solo campo o determinati campi devi cambiare i parametri della query in base al risultato che vuoi raggiungere.

    Se riscontri problemi fammi sapere, se posso ti aiuto (cerca però di essere più dettagliato )
    Cordialmente

  7. #7
    Utente bannato
    Registrato dal
    Feb 2000
    Messaggi
    2,006
    ok...il problema dettagliatamente è questo....
    io ho un DB acces e in una tebella di questo ci sono dei campi necessari per la stampa di una fattura...ovvero il codice articolo,la descrizione e il costo..
    oltre a questi campi ke riesco ad inserire facilmente nel datareport devo ovviamente inserire i dati anagrafici del cliente ke sono contenuti in un'altra tabella.....cmq ora provo a seguire le tue istruzioni....spero di riuscirici....
    ciao e grazie 1000000000000000000000000000000000000

  8. #8
    Utente bannato
    Registrato dal
    Feb 2000
    Messaggi
    2,006
    Ok...ho capito il mio problema...sono assolutamente ignorante in materia di SQL
    cmq...non riesco ad usare il codice ke mi hai dato
    il problema è questo:
    Set recordset = conn.Execute(sql, , adCmdText)
    su questa stringa mi da errore : necessario oggetto

    ti preciso che io apro il DB in questo modo:
    Set DB = OpenDatabase(App.Path & "\" & "girardi.mdb", False, False)

    qual'è il problema????

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    22
    Per connetterti alla base dati che tecnologia usi? Io utilizzo ADO ed inserendo le seguenti righe di codice dovrebbe funzionare:

    Dim db_file As String
    Dim conn As ADODB.Connection
    Dim rs As ADODB.Recordset
    Dim sql As String

    db_file = App.Path
    If Right$(db_file, 1) <> "\" Then db_file = db_file & "\"
    db_file = db_file & "nomefile.mdb"

    Set conn = New ADODB.Connection
    conn.ConnectionString = _
    "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source=" & db_file & ";" & _
    "Persist Security Info=False"
    conn.Open

    sql = "SELECT * FROM tab1, tab2"
    Set rs = conn.Execute(sql, , adCmdText)

    Successivamente dovrai gestire il DataReport come ti ho già indicato.
    Fammi sapere se sono riuscito ad esserti di aiuto.
    Ti saluto cordialmente,

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.