Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Gordio
    Registrato dal
    Mar 2006
    Messaggi
    37

    Una Funzione può produrre 2 valori in uscita?

    Ciao a tutti
    devo estrapolare un nuovo dato (il Prezzo) da un DB.
    Nel mio codice ho già una Funzione che mi punta il record che mi interessa, basta che aggiunga nella SELECT il nuovo campo ed il gioco è fatto.... ma come lo faccio uscire dalla funzione???

    o meglio la funzione ha in uscita il suo campo originale (il codice), come faccio a far uscire anche questo? che dovro assegnare ad una variabile per poi essere scritta su un altro DB!!


    nella SELECT ho aggiunto questo campo S§PPOE
    Grazie

    Codice PHP:
    '==============================FUNZIONE CHE PRENDE L'ULTIMO CODICE FORNITORE==========================
    Function 
    PrendiForn(Acodicex)
    '-------------Comandi da eseguire sul sistema AS/400------

    CommandText = "SELECT S§COCF,S§PPOE FROM " & Session("Library") & "." & Session("FileName1") & " WHERE S§NREG=(SELECT MAX(S§NREG) FROM " & Session("Library") & "." & Session("FileName1") & " WHERE S§COAR = '"& Acodicex &"' AND (S§CCAU='
    AC' OR S§CCAU='R1'))"
    CommandType = adCmdText
    AS400Command.CommandText = CommandText
    AS400Command.CommandType = CommandType

    '
    Response.Write (CommandText)
    Set AS400File_rs AS400Command.Execute

    If (Err.Number Then
       
    While NOT AS400File_rs.EOF
                
    If isNull(AS400File_rs(0)) Then 
                PrendiForn
    "SELECT S§COCF FROM " Session("Library") & "." Session("FileName1") & " WHERE S§COAR = '"Acodicex &"' AND (S§CCAU='AC' OR S§CCAU='R1')"
             
    else
    '               Response.Write ("Codice Fornitore DA AS----= ") & AS400File_rs(0) & "</br>"
    '              
    Response.Write ("Codice x nella funzione----= ") & Acodicex "</br>"
                  
    Response.Write ("Prezzo----= ") & AS400File_rs(1) & "</br>"
                  
    PrendiForn=AS400File_rs(0)
             
    End if
             
    AS400File_rs.movenext
        Wend
        AS400File_rs
    .Close
        Set AS400File_rs 
    Nothing
    Else
        
    DisplayError AS400ConnectionErr.NumberErr.DescriptionErr.Source"Main"
    End If
    End Function 

  2. #2
    non puoi farne uscire due...o li concateni in una stringa, oppure li metti in un array e fai restituire alla funzione l'array (se non ricordo male si puete)


  3. #3
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    oppure aggiungi un parametro alla funzione e lo usi per avere l'altro valore di ritorno
    te faccio un esempio
    codice:
    Function PrendiForn(Acodicex, ValoreDiRitorno)
      ValoreDiRitorno = "altro valore"
      PrendiForn = "tuo risultato"
    End Function
    
    Response.Write PrendiForn("xxx",erValore) & "
    " & erValore

  4. #4
    oppure valorediritorno lo setti a "variabile globale" e lo modifichi dentro la funzione...

  5. #5
    Utente di HTML.it L'avatar di Gordio
    Registrato dal
    Mar 2006
    Messaggi
    37
    Perfetto, ho provato sia con una var Session che con una var globale dichiarata nel Main e modificata nella Function, funzionano entrambi!!
    Usero la globale per non appesantire con troppe var session.
    Ciao e grazie

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.