Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Tornare al primo record dopo ciclo while...

    Buongiorno...... problema spero piccolo per voi esperti......

    ho questo recordset:

    codice:
    <%
    Dim rs_ordinetemp
    Dim rs_ordinetemp_cmd
    Dim rs_ordinetemp_numRows
    Set rs_ordinetemp_cmd = Server.CreateObject ("ADODB.Command")
    rs_ordinetemp_cmd.ActiveConnection = MM_con_rimorinservice_STRING
    rs_ordinetemp_cmd.CommandText = "SELECT * FROM dbo.MASTER WHERE dbo.MASTER.CODCLI = ?" 
    rs_ordinetemp_cmd.Prepared = true
    rs_ordinetemp_cmd.Parameters.Append rs_ordinetemp_cmd.CreateParameter("param1", 5, 1, -1, rs_ordinetemp__MMColParam) ' adDouble
    Set rs_ordinetemp = rs_ordinetemp_cmd.Execute
    rs_ordinetemp_numRows = 0
    %>
    scorro il record set e faccio vedere i risultati con un ciclo while così....

    codice:
    <% 
    <%
    Dim Repeat1__numRows
    Dim Repeat1__index
    Repeat1__numRows = -1
    Repeat1__index = 0
    rs_ordinetemp_numRows = rs_ordinetemp_numRows + Repeat1__numRows
    %>
    While ((Repeat1__numRows <> 0) AND (NOT rs_ordinetemp.EOF)) 
    %>
    ... faccio vedere tutti i risultati del recordset uno per uno e finisco il ciclo ...
    <% 
    Repeat1__index=Repeat1__index+1 
    Repeat1__numRows=Repeat1__numRows-1 
    rs_ordinetemp.MoveNext()
    Wend
    %>
    ora ho la necessità di far vedere solo il primissimo record del recordset...... come posso fare?
    ho impostato dopo il ciclo while questo comando:
    codice:
    rs_ordinetemp.movefirst
    pensando che mi riportava al primo record ma mi dà questo errore:

    Microsoft OLE DB Provider for SQL Server error '80040e18'
    Impossibile ritornare alla posizione nel set di righe.

    come posso tornare e far visualizzare il primo record del recordset ?

    grazie a tutti per l'aiuto

  2. #2
    navigando ore sul web ho capito o almeno credo di aver capito che devo creare un recordset con Connection.Execute e non Command.Execute perchè quest'ultimo è forward-only e non mi fa "navigare" liberamente dentro al recordset....
    ecco il perchè dell'errore sul movefirst.....

    ma come si crea un recordset con connection.execute specificando i parametri che mi permettono di spostarmi al primo record una volta terminato quel ciclo while???

    nessuno sa aiutarmi ?

  3. #3
    Usi dreamweaver !

    Che senso ha scorrere tutti i record quando ti server solo il primo ?

    Hai un Id nel tuo db ?

    Ordini il recordset per id discendente o ascendente, dipende da cosa intendi per primo e stampi i dati senza ciclo.

    O un top 1, bho, quello che preferisci.

  4. #4
    si uso dreamweaver ma ho questa 2 necessità (so che sembra strano ma ci metterei troppo a spiegare)

    1) prima faccio vedere e scorro tutto il recordset

    2) poi torno al primo record e faccio vedere solo quello

    ........

  5. #5
    visto che NON puoi tornare indietro, accendi lo switch della fantasia

    1. metti subito da parte il primo
    2. stampi il recordset completo
    3. stampi quello che ti eri messa da parte

    that easy!


  6. #6
    Lo vendono su ebay questo "switch della fantasia" ?

    Grazie optime non mi sarebbe mai venuto in mente!!!

    Adesso funziona!!!

  7. #7

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.