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

    [ASP] Recordset - dinamico

    salve,

    dovrei creare una funzione che passatoil nome del recordset e la query mi crei il recordset.

    come devo fare?

    come fargli capire ad esempio che set nome=server.createobject("ecc..")

    deve riferirsi al contenuto di nome e nn crearmi un recordset d nome "nome"?


    Grazie

    VaneX

  2. #2
    scusate,
    ho risolto....

    passavo il parametro con le "" ovviamente lo vedeva come stringa..scusate...

    bastava togliere le "" tanto il passaggio per default è per riferimento.

    vaneX

    <%
    sub Crea_Recordset (Nome,Query)

    Set objConn = Server.CreateObject("ADODB.Connection")
    objConn.Open Application("str")

    Set Nome = Server.CreateObject("ADODB.Recordset")

    set Nome=objconn.execute(Query)

    end sub

    %>



    Crea_Recordset objRS,"Select * from Testata"
    do while not objRs.eof
    response.write objrs("ID_Testata")
    response.write "-"
    response.write objrs("descrizione")
    response.write "
    "
    objRs.movenext
    loop

  3. #3
    vorrei ottimizzare ilmio codice creando una funzione apertura_cn una chiusura_Cn e una per la creazione del redcordset..ma

    sebbene siano semplici nn riesco a creare il recordset passandogli la conessione appena aperta..una mano?

    VaneX

  4. #4
    se non erro invece i parametri vengono passati di default ByVal.
    puoi comunque testarlo aprendo un recordset, passandolo ad una sub e provare a riutilizzarlo dopo la chiamata alla sub (nella quale lo chiudi)
    quello che chiedi secondo me non è molto utile, l'apertura della connessione si fa su 3 righe (compresa la dichiarazione della variabile), ed è più comodo usarla all'interno di un include
    xxx

  5. #5
    Originariamente inviato da Alethesnake
    se non erro invece i parametri vengono passati di default ByVal.
    puoi comunque testarlo aprendo un recordset, passandolo ad una sub e provare a riutilizzarlo dopo la chiamata alla sub (nella quale lo chiudi)
    quello che chiedi secondo me non è molto utile, l'apertura della connessione si fa su 3 righe (compresa la dichiarazione della variabile), ed è più comodo usarla all'interno di un include
    infatti ho abbandonato il progetto!

    ho fato solo la sub per la creazione del recordset...e ho incluso il file dopo la connessione!

    Ciao

    VaneX

  6. #6
    a quanto sembra d default è per valore..allora nn capsico come faccia a funzionare...

    VaneX

  7. #7
    a quanto sembra d default è per valore (almeno in .net ora cerco) ..allora nn capsico come faccia a funzionare...

    VaneX

  8. #8
    ecco qua, come dicevo:

    da
    http://msdn.microsoft.com/library/it...terpassing.asp

    In Visual Basic 6.0 se non si specifica ByVal o ByRef per un argomento di routine, l'impostazione predefinita del meccanismo di passaggio sarà ByRef. La variabile passata alla routine potrà quindi essere modificata nel programma chiamante


    VaneX

  9. #9
    Originariamente inviato da VanessaInfo
    ecco qua, come dicevo:

    da
    http://msdn.microsoft.com/library/it...terpassing.asp

    In Visual Basic 6.0 se non si specifica ByVal o ByRef per un argomento di routine, l'impostazione predefinita del meccanismo di passaggio sarà ByRef. La variabile passata alla routine potrà quindi essere modificata nel programma chiamante


    VaneX
    cavolo, buono a sapersi. ero convinto del contrario

    xxx

  10. #10
    codice:
    'apro recordset
    sub oRs(Nome,sql,op1,op2)
    	
    	dim rsTemporaneo
    	set rsTemporaneo=server.CreateObject("adodb.recordset")
    	rsTemporaneo.open sql,conn,op1,op2
    	
    	ExecuteGlobal "Dim " & Nome
    	Execute "Set " & Nome & "=rsTemporaneo"
    	Set rsTemporaneo = Nothing
    
    end sub
    
    
    'chiudo il recordset
    sub cRs(ByRef nome)
    	nome.close : set nome=nothing
    end sub
    
    
    esempio
    
    oRs "pippo","select * from pippoTb",1,3
    
    while not pippo.eof
    ....
    pippo.movenext
    wend
    
    cRs pippo
    in oRs considero che la connessione (con variabile "globale" conn) sia già aperta


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.