Frage : für Schleife im Orakel

für serv_prc_rec im serv_prc_cur (get_ship_interface_rec.item_id
, get_ship_interface_rec.price_code) Schleife
v_price: = serv_prc_rec.price;
dbms_output.put_line ('serv_prc_rec Preis = '||serv_prc_rec.price);
-- Wenn die oben genannte Schleife geholte Null oder keine Aufzeichnungen dann das below
for serve_ar_interface_rec im serve_ar_interface_cur (get_ship_interface_rec.item_id) Schleife v_price: = serve_ar_interface_rec.std_price;
dbms_output.put_line ('interface Preis = '||get_ship_interface_rec.std_price) ;      
------------------
My Anforderung ist, wenn die ist Rückkehrnull schlingen, oder keine Aufzeichnungen dann zur 2. Schleife gehen. Wie ich tue, das tun. Hier in diesem Fall hat 1. Schleife keinen Preis, also muss ich den Preis vom 2. Schleife
But erhalten, das ich nicht in der Lage bin, dorthin zu kommen. Wie man this
behandelt

Antwort : für Schleife im Orakel

einfachste Weise, verursachen eine Boolesche Variable einstellte sie auf falsches vor der ersten Schleife, einstellte sie, um innerhalb der Schleife auszurichten

wenn die erste Variable nach der ersten Schleife noch falsch ist, dann fand die Schleife nichts und tut die 2. Schleife

v_loop_check: = FALSCH
für serv_prc_rec im serv_prc_cur (get_ship_interface_rec.item_id
                                          , get_ship_interface_rec.price_code) Schleife      
v_loop_check: = AUSRICHTEN;
v_price: = serv_prc_rec.price;
dbms_output.put_line ('serv_prc_rec Preis = '||serv_prc_rec.price);
Endenschleife;

wenn nicht v_loop_check dann
-- Wenn die oben genannte Schleife geholte Null oder keine Aufzeichnungen dann below
für serve_ar_interface_rec im serve_ar_interface_cur (get_ship_interface_rec.item_id) Schleife v_price: = serve_ar_interface_rec.std_price;
 dbms_output.put_line ('Schnittstellenpreis = '||get_ship_interface_rec.std_price);      
beenden wenn;
Weitere Lösungen  
 
programming4us programming4us