Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: iif function

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    667

    iif function

    Ciao a tutti,

    non mi uccidete vi prego.
    Sto utilizzando la funzione iif

    ' iif function
    Function iif(psdStr, trueStr, falseStr)
    If psdStr then
    iif = trueStr
    Else
    iif = falseStr
    End If
    End function.

    Passando alla funzione l'oggetto recordset es

    iif(not objRs.EOF,objRs("campo"),"----")

    nel caso di EOF, la prima stringa (objRs("campo")) viene sempre valutata riportandomi l'errore

    ADODB.Recordset error '800a0cc1'

    Impossibile trovare l'oggetto nell'insieme corrispondente al nome o al numero richiesto.

    Posso convertire in stringa objRs("campo") per non farlo valutare in caso di objRs.EOF???

    Grazie mille

  2. #2
    Utente bannato
    Registrato dal
    Mar 2005
    Messaggi
    136

    Re: iif function

    Originariamente inviato da mrcanoa
    Ciao a tutti,

    non mi uccidete vi prego.
    Sto utilizzando la funzione iif

    ' iif function
    Function iif(psdStr, trueStr, falseStr)
    If psdStr then
    iif = trueStr
    Else
    iif = falseStr
    End If
    End function.

    Passando alla funzione l'oggetto recordset es

    iif(not objRs.EOF,objRs("campo"),"----")

    nel caso di EOF, la prima stringa (objRs("campo")) viene sempre valutata riportandomi l'errore

    ADODB.Recordset error '800a0cc1'

    Impossibile trovare l'oggetto nell'insieme corrispondente al nome o al numero richiesto.

    Posso convertire in stringa objRs("campo") per non farlo valutare in caso di objRs.EOF???

    Grazie mille
    Questo non e' un errore dell'IIF, ma del recordset
    Se objRs.EOF è normale che ti dia errore se chiami l'istruzione objRs("campo").
    Posta la parte di codice in cui lavori sul recorset.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    667
    mea culpa....

    sbagliavo il puntamento della query.

    comunque funziona. se objRs.EOF, visualizzo ---- altrimenti objRs("nomecampo")...non da errore....fortuna...????

  4. #4
    Utente bannato
    Registrato dal
    Mar 2005
    Messaggi
    136
    Originariamente inviato da mrcanoa
    mea culpa....

    sbagliavo il puntamento della query.

    comunque funziona. se objRs.EOF, visualizzo ---- altrimenti objRs("nomecampo")...non da errore....fortuna...????
    no ho sbagliato io. ho letto male la tuaisctuzione IIF

    che fava che sono

    :lol:

  5. #5
    Originariamente inviato da mrcanoa
    mea culpa....

    sbagliavo il puntamento della query.

    comunque funziona. se objRs.EOF, visualizzo ---- altrimenti objRs("nomecampo")...non da errore....fortuna...????
    ...mi sono perso...

    l'unica cosa di cui sono ancora certo è che quella funzione IIF è una sforbiciata
    subito sotto la cintola perchè objRs("nomecampo") viene sempre valutato
    indipendentemente dal fatto che oRs contenga record oppure no...
    ...e se non ci sono è inevitabile che vada in errore

  6. #6
    Originariamente inviato da sspintux
    ...mi sono perso...

    l'unica cosa di cui sono ancora certo è che quella funzione IIF - richiamata come hai fatto -è
    una sforbiciata subito sotto la cintola perchè objRs("nomecampo") viene sempre valutato
    indipendentemente dal fatto che oRs contenga record oppure no...
    ...e se non ci sono è inevitabile che vada in errore

  7. #7
    Originariamente inviato da sspintux
    ...mi sono perso...

    l'unica cosa di cui sono ancora certo è che quella funzione IIF è una sforbiciata
    subito sotto la cintola perchè objRs("nomecampo") viene sempre valutato
    indipendentemente dal fatto che oRs contenga record oppure no...
    ...e se non ci sono è inevitabile che vada in errore

    hai ragione ... sei confuso
    prude il dito, lui sdraiato
    ha giocato a guardie e ladri col ladro sbagliato

  8. #8
    Originariamente inviato da GudFella
    hai ragione ... sei confuso
    mi spieghi perchè ( aparte il post doppio )

  9. #9
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Il motivo e' ovvio... ad una funzione i parametri sono passati per valore e quindi ciascuno di essi viene valutato prima di essere passato.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  10. #10
    Originariamente inviato da br1
    Il motivo e' ovvio... ad una funzione i parametri sono passati per valore e quindi ciascuno di essi viene valutato prima di essere passato.

    ciao
    ... e non è la stessa cosa che avevo scritto io ?
    ...o intendi un'altra cosa che non conosco e non ho capito ?

    Originariamente inviato da sspintux
    ..............
    l'unica cosa di cui sono ancora certo è che quella funzione IIF - richiamata come hai fatto -è
    una sforbiciata subito sotto la cintola perchè objRs("nomecampo") viene sempre valutato
    indipendentemente dal fatto che oRs contenga record oppure no...
    ...e se non ci sono è inevitabile che vada in errore

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.