556: --dbms_output.put_line(substr(sql_str,1,255));
557: --dbms_output.put_line(substr(sql_str,256,255));
558: --dbms_output.put_line(substr(sql_str,513,255));
559:
560: cid := dbms_sql.open_cursor;
561:
562: dbms_sql.parse(cid, sql_str , dbms_sql.native);
563:
564: dbms_sql.define_column(cid,1,p_emp_record.employee_name,255);
558: --dbms_output.put_line(substr(sql_str,513,255));
559:
560: cid := dbms_sql.open_cursor;
561:
562: dbms_sql.parse(cid, sql_str , dbms_sql.native);
563:
564: dbms_sql.define_column(cid,1,p_emp_record.employee_name,255);
565: dbms_sql.define_column(cid,2,p_emp_record.employee_id);
566:
560: cid := dbms_sql.open_cursor;
561:
562: dbms_sql.parse(cid, sql_str , dbms_sql.native);
563:
564: dbms_sql.define_column(cid,1,p_emp_record.employee_name,255);
565: dbms_sql.define_column(cid,2,p_emp_record.employee_id);
566:
567: IF NOT emp_name_null THEN
568:
561:
562: dbms_sql.parse(cid, sql_str , dbms_sql.native);
563:
564: dbms_sql.define_column(cid,1,p_emp_record.employee_name,255);
565: dbms_sql.define_column(cid,2,p_emp_record.employee_id);
566:
567: IF NOT emp_name_null THEN
568:
569: dbms_sql.bind_variable(cid,'v_emp_name',p_emp_record.employee_name);
565: dbms_sql.define_column(cid,2,p_emp_record.employee_id);
566:
567: IF NOT emp_name_null THEN
568:
569: dbms_sql.bind_variable(cid,'v_emp_name',p_emp_record.employee_name);
570:
571: END IF;
572:
573: IF NOT emp_id_null THEN
571: END IF;
572:
573: IF NOT emp_id_null THEN
574:
575: dbms_sql.bind_variable(cid,'v_emp_id',p_emp_record.employee_id);
576:
577: END IF;
578:
579: rows_processed := dbms_sql.execute_and_fetch(cid);
575: dbms_sql.bind_variable(cid,'v_emp_id',p_emp_record.employee_id);
576:
577: END IF;
578:
579: rows_processed := dbms_sql.execute_and_fetch(cid);
580:
581: IF rows_processed = 1 THEN
582:
583: IF emp_name_null THEN
580:
581: IF rows_processed = 1 THEN
582:
583: IF emp_name_null THEN
584: dbms_sql.column_value(cid,1,p_emp_record.employee_name);
585: END IF;
586:
587: IF emp_id_null THEN
588: dbms_sql.column_value(cid,2,p_emp_record.employee_id);
584: dbms_sql.column_value(cid,1,p_emp_record.employee_name);
585: END IF;
586:
587: IF emp_id_null THEN
588: dbms_sql.column_value(cid,2,p_emp_record.employee_id);
589: END IF;
590:
591: p_emp_record.error_record.error_status := 'S';
592:
599: p_emp_record.error_record.error_status := 'W';
600:
601: END IF;
602:
603: IF dbms_sql.is_open(cid) THEN
604: dbms_sql.close_cursor(cid);
605: END IF;
606:
607: EXCEPTION
600:
601: END IF;
602:
603: IF dbms_sql.is_open(cid) THEN
604: dbms_sql.close_cursor(cid);
605: END IF;
606:
607: EXCEPTION
608: WHEN others THEN
606:
607: EXCEPTION
608: WHEN others THEN
609:
610: IF dbms_sql.is_open(cid) THEN
611: dbms_sql.close_cursor(cid);
612: END IF;
613:
614: p_emp_record.error_record.error_status := 'U';
607: EXCEPTION
608: WHEN others THEN
609:
610: IF dbms_sql.is_open(cid) THEN
611: dbms_sql.close_cursor(cid);
612: END IF;
613:
614: p_emp_record.error_record.error_status := 'U';
615: p_emp_record.error_record.error_message := sqlerrm;
670: --dbms_output.put_line(substr(X_sql_str,1,255));
671: --dbms_output.put_line(substr(X_sql_str,256,255));
672: --dbms_output.put_line(substr(X_sql_str,513,255));
673:
674: X_cid := dbms_sql.open_cursor;
675:
676: dbms_sql.parse(X_cid, X_sql_str , dbms_sql.native);
677:
678: dbms_sql.define_column(X_cid,1,p_emp_record.employee_name,255);
672: --dbms_output.put_line(substr(X_sql_str,513,255));
673:
674: X_cid := dbms_sql.open_cursor;
675:
676: dbms_sql.parse(X_cid, X_sql_str , dbms_sql.native);
677:
678: dbms_sql.define_column(X_cid,1,p_emp_record.employee_name,255);
679: dbms_sql.define_column(X_cid,2,p_emp_record.employee_id);
680:
674: X_cid := dbms_sql.open_cursor;
675:
676: dbms_sql.parse(X_cid, X_sql_str , dbms_sql.native);
677:
678: dbms_sql.define_column(X_cid,1,p_emp_record.employee_name,255);
679: dbms_sql.define_column(X_cid,2,p_emp_record.employee_id);
680:
681: IF NOT X_emp_name_null THEN
682:
675:
676: dbms_sql.parse(X_cid, X_sql_str , dbms_sql.native);
677:
678: dbms_sql.define_column(X_cid,1,p_emp_record.employee_name,255);
679: dbms_sql.define_column(X_cid,2,p_emp_record.employee_id);
680:
681: IF NOT X_emp_name_null THEN
682:
683: dbms_sql.bind_variable(X_cid,'v_emp_name',p_emp_record.employee_name);
679: dbms_sql.define_column(X_cid,2,p_emp_record.employee_id);
680:
681: IF NOT X_emp_name_null THEN
682:
683: dbms_sql.bind_variable(X_cid,'v_emp_name',p_emp_record.employee_name);
684:
685: END IF;
686:
687: IF NOT X_emp_id_null THEN
685: END IF;
686:
687: IF NOT X_emp_id_null THEN
688:
689: dbms_sql.bind_variable(X_cid,'v_emp_id',p_emp_record.employee_id);
690:
691: END IF;
692:
693: X_rows_processed := dbms_sql.execute_and_fetch(X_cid);
689: dbms_sql.bind_variable(X_cid,'v_emp_id',p_emp_record.employee_id);
690:
691: END IF;
692:
693: X_rows_processed := dbms_sql.execute_and_fetch(X_cid);
694:
695: IF X_rows_processed = 1 THEN
696:
697: dbms_sql.column_value(X_cid,1,p_emp_record.employee_name);
693: X_rows_processed := dbms_sql.execute_and_fetch(X_cid);
694:
695: IF X_rows_processed = 1 THEN
696:
697: dbms_sql.column_value(X_cid,1,p_emp_record.employee_name);
698: dbms_sql.column_value(X_cid,2,p_emp_record.employee_id);
699:
700: p_emp_record.error_record.error_status := 'S';
701: p_emp_record.error_record.error_message := NULL;
694:
695: IF X_rows_processed = 1 THEN
696:
697: dbms_sql.column_value(X_cid,1,p_emp_record.employee_name);
698: dbms_sql.column_value(X_cid,2,p_emp_record.employee_id);
699:
700: p_emp_record.error_record.error_status := 'S';
701: p_emp_record.error_record.error_message := NULL;
702:
704:
705: p_emp_record.error_record.error_status := 'E';
706: p_emp_record.error_record.error_message := 'RECEIVER_ID';
707:
708: IF dbms_sql.is_open(X_cid) THEN
709: dbms_sql.close_cursor(X_cid);
710: END IF;
711: RETURN;
712:
705: p_emp_record.error_record.error_status := 'E';
706: p_emp_record.error_record.error_message := 'RECEIVER_ID';
707:
708: IF dbms_sql.is_open(X_cid) THEN
709: dbms_sql.close_cursor(X_cid);
710: END IF;
711: RETURN;
712:
713: ELSE
714:
715: p_emp_record.error_record.error_status := 'E';
716: p_emp_record.error_record.error_message := 'TOOMANYROWS';
717:
718: IF dbms_sql.is_open(X_cid) THEN
719: dbms_sql.close_cursor(X_cid);
720: END IF;
721: RETURN;
722:
715: p_emp_record.error_record.error_status := 'E';
716: p_emp_record.error_record.error_message := 'TOOMANYROWS';
717:
718: IF dbms_sql.is_open(X_cid) THEN
719: dbms_sql.close_cursor(X_cid);
720: END IF;
721: RETURN;
722:
723: END IF;
721: RETURN;
722:
723: END IF;
724:
725: IF dbms_sql.is_open(X_cid) THEN
726: dbms_sql.close_cursor(X_cid);
727: END IF;
728:
729: EXCEPTION
722:
723: END IF;
724:
725: IF dbms_sql.is_open(X_cid) THEN
726: dbms_sql.close_cursor(X_cid);
727: END IF;
728:
729: EXCEPTION
730: WHEN others THEN
728:
729: EXCEPTION
730: WHEN others THEN
731:
732: IF dbms_sql.is_open(X_cid) THEN
733: dbms_sql.close_cursor(X_cid);
734: END IF;
735:
736: p_emp_record.error_record.error_status := 'U';
729: EXCEPTION
730: WHEN others THEN
731:
732: IF dbms_sql.is_open(X_cid) THEN
733: dbms_sql.close_cursor(X_cid);
734: END IF;
735:
736: p_emp_record.error_record.error_status := 'U';
737: p_emp_record.error_record.error_message := sqlerrm;