Pagina 3 di 5 primaprima 1 2 3 4 5 ultimoultimo
Visualizzazione dei risultati da 21 a 30 su 47
  1. #21
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da Elena78
    scusa se sono tarda ma xchè due exception??


    ma tu vuoi controllare il risultato di una delle due select a prescindere se entrambe o nessuna o una delle due non restituisce alcun valore?

  2. #22
    Utente di HTML.it L'avatar di Elena78
    Registrato dal
    Oct 2001
    Messaggi
    535
    Originariamente inviato da darkblOOd
    ma tu vuoi controllare il risultato di una delle due select a prescindere se entrambe o nessuna o una delle due non restituisce alcun valore?

    No dunque.
    ho dei record in una tabella
    Devo controllare che questi record esistano nella tabella di storico.
    La prima select mi trova l'ultimo stato di quel record nello storico.
    Se non trova niente è logico che non debba effettuare nemmeno la prima select, ma uscire direttamente dal loop.
    Viceversa. Se c'è qualcosa nello storico passa alla seconda select, che recupera dei campi. e da li effettua dei controlli
    con le condizioni IF.
    Se alcune condizioni danno errore traccia l'output delle schede "ANOMALE"

    Uff, che fatica

  3. #23
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da Elena78
    codice:
    BEGIN
      SELECT MAX(ID_STORICO) as Max into num from Recall45_debug_storico where colonna5= rc.colonna5;
      SELECT record_type_new, record_status_new, call_result_new,col_esito_new INTO rc_type_storico,rc_status_storico,c_result_storico, es_storico FROM Recall45_debug_storico WHERE colonna5= rc.colonna5 and id_storico=num;
    
    EXCEPTION WHEN NO_DATA_FOUND THEN
      dbms_output.put_line(sqlerrm);
      IF rc.COL_ESITO = es_storico  then /* verifica l esito applicativo, se congruente  */
        IF rc.record_type = rc_type_storico and rc.record_status= rc_status_storico and rc.call_result= c_result_storico then
           EXIT;
        END IF;
      ELSE
        DBMS_OUTPUT.PUT_LINE(err ||' ' || rc.COLONNA5 || ' L esito telefonico/applicativo della tabella RECALL_STORICO non coincide con l esito della scheda ON LINE (scheda non in Stale)');
      END IF;
    END;
    ok, quindi soffermiamoci su questa parte di codice:

    se la prima select non restituisce un valore allora deve scattare l'eccezione e uscire dal loop altrimenti effettua la seconda select e verifichi i risultati con gli if (che tu hai messo dentro la exception giusto? :master:

  4. #24
    Utente di HTML.it L'avatar di Elena78
    Registrato dal
    Oct 2001
    Messaggi
    535
    Originariamente inviato da darkblOOd
    ok, quindi soffermiamoci su questa parte di codice:

    se la prima select non restituisce un valore allora deve scattare l'eccezione e uscire dal loop altrimenti effettua la seconda select e verifichi i risultati con gli if (che tu hai messo dentro la exception giusto? :master:
    esatto.

    L'ho messa dentro la exception perchè se la metto fuori quando esce dall'exception mi entra nelle condizioni.. invece di ricominciare il loop..

  5. #25
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    se vuoi che il loop finisca
    BEGIN
    FOR
    SELECT
    SELECT
    IF
    EXCEPTION
    END

  6. #26
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    se il loop deve continuare
    FOR
    BEGIN
    SELECT
    SELECT
    IF
    EXCEPTION
    END
    END LOOP

  7. #27
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da Elena78
    esatto.

    L'ho messa dentro la exception perchè se la metto fuori quando esce dall'exception mi entra nelle condizioni.. invece di ricominciare il loop..
    ma allora perchè non controllare il valore di num dopo la select ed effettuare la seconda con i relativi if solo se il valore esiste?

    altrimenti credo che si debbe riscrivere la sequenza della exception

  8. #28
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    anche perchè adesso che ci penso la funzione max ti restituisce anche i valori null? (cioè farebbe scattare il NO_DATA_FOUND?)

  9. #29
    Utente di HTML.it L'avatar di Elena78
    Registrato dal
    Oct 2001
    Messaggi
    535
    Originariamente inviato da darkblOOd
    anche perchè adesso che ci penso la funzione max ti restituisce anche i valori null? (cioè farebbe scattare il NO_DATA_FOUND?)
    Beh.. dovrebbe comunque rientrare nelle exception others... no??

    Eppoi si.. ritorna null

  10. #30
    Utente di HTML.it L'avatar di Elena78
    Registrato dal
    Oct 2001
    Messaggi
    535
    Originariamente inviato da darkblOOd
    ma allora perchè non controllare il valore di num dopo la select ed effettuare la seconda con i relativi if solo se il valore esiste?

    altrimenti credo che si debbe riscrivere la sequenza della exception
    ma è già così---

    o forse non ho capito cosa vuoi dire :master:

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 © 2026 vBulletin Solutions, Inc. All rights reserved.