Equivalent  for execute immediate command in maxdb

hi all,
like in oracle for executing the sql_query, we have execute immediate command.
for e.g.. in oracle
L_SQL ='SELECT * FROM EMP';
EXECUTE IMMEDIATE L_SQL;
what will be the command for execute immediate in MaxDB??
like in MaxDB
L_SQL = 'SELECT * FROM EMP';
Now How can i execute the above l_sql variable in MaxDB.
thanks, Bhupinder

Hi Bhupinder,
the following code snippet should do the job
[code]
CREATE DBPROC EXAMPLE
AS
VAR statement1 char(100);
SET statement1 = 'SELECT * from DBA.DUAL';
TRY
    EXECUTE statement1;
CATCH IF $rc <> 100
     THEN STOP ($rc, 'unexpected error');
[/code]
Best regards,
Marco

Similar Messages

  • How to create a password file for executing psadmin command to deploy portl

    how to create a password file for executing psadmin command to deploy portlet

    What you have done is perfectly right. The password file doesn't have anything else apart from the password
    for example in your case
    $echo password > /tmp/password.txt
    However I remember that in windows install, the Application server used to wait for a user's input when a deploy was to be done for the first time. So Can you read the Release notes or the Readme file which has come with windows.
    The solution was,
    manually use asadmin command of application server to deploy some war (any webapp will do), at this time, a question will be prompted to accept a certificate. once this is done, deploy portlet should work fine!!!
    HTH

  • Put the query result of "EXECUTE IMMEDIATE" command in a local table

    Hi all.
    Is it possible to put the output of the "EXECUTE IMMEDIATE" command in a local table so that the ouput can be accessed through other procedures.
    Regards,
    Andila

    Hi Andila, well you could just make your dynamic sql statement an insert statement based on your select. See example below
    create column table test_table_1
    "COL1" nvarchar(10),
    "COL2" nvarchar(10)
    CREATE PROCEDURE INSERT_P() 
    LANGUAGE SQLSCRIPT AS 
      sql_string NVARCHAR(2000) := '';
    BEGIN 
      sql_string := 'insert into test_table_1 (select ''val1'', ''val2'' from dummy) ';
      EXECUTE IMMEDIATE (:sql_string); 
    END; 
    call insert_p();
    select * from test_table_1;
    However you may want to investigate other options instead of using dynamic SQL as this is not a recommended approach. Less optimized compared to standard sql.
    Peter

  • Maximum execute immediate commands in a procedure

    Hi All,
    I have written a procedure and my database size is 2 million records. i want to check for all special characters, as shown in my procedure. Is it possible to check for all special charachers like &39 to &255 checked within one single procedure. In that situation maximum immediate commands will be about 500.
    I am sending my procedure just for one of the charachters.
    CREATE or REPLACE PROCEDURE SPECIAL_YPOL1 (TABLENAME IN VARCHAR2,fieldname IN VARCHAR2)
    AUTHID CURRENT_USER
    IS
    TYPE YPOLCurTyp IS REF CURSOR;
    YPOL_cur      YPOLCurTyp;
    sqlSt      LONG;
    THEFIELD      VARCHAR2(250);
    BEGIN
    -- CHR(38)||39,
    SQLST:= 'SELECT ' || UPPER(fieldname) ||' FROM '|| UPPER(TABLENAME) ;
              SQLST:=SQLST ||' WHERE ' || UPPER(fieldname) ||' LIKE ''%'' || CHR(38)|| ''39,%''';
                   BEGIN
                        EXECUTE IMMEDIATE SQLST;
                        EXCEPTION WHEN OTHERS THEN
                        NULL;
                   END;
         OPEN YPOL_CUR FOR SQLST;
         LOOP
              FETCH YPOL_CUR INTO THEFIELD;
                   EXIT WHEN YPOL_cur%NOTFOUND OR YPOL_cur%NOTFOUND IS NULL;
                        SQLST:='UPDATE '||upper(UPPER(TABLENAME)) || ' SET '||UPPER(UPPER(fieldname)) ||' =REPLACE(' ||UPPER(fieldname)||','''||CHR(38) ||'39,'',CHR(39))';
                        SQLST:=SQLST||' WHERE '||UPPER(fieldname) ||' LIKE ''%'' ||CHR(38) || ''39,%''';
                   BEGIN
                        EXECUTE IMMEDIATE SQLST;
                        EXCEPTION
                             WHEN OTHERS THEN
                             DBMS_OUTPUT.PUT_LINE('ERROR2');
                   END;
         END LOOP;
    COMMIT;
    END SPECIAL_YPOL1;
    /

    You can use one more loop for that and catch all the special characters.
    SQL> ;
      1  begin
      2      for i in 38..255 loop
      3         dbms_output.put_line(chr(i));
      4      end loop;
      5* end;
    SQL> /
    +
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <
    =
    >
    A
    B
    C
    D
    E
    F
    G
    H
    I
    J
    K
    L
    M
    N
    O
    P
    Q
    R
    S
    T
    U
    V
    W
    X
    Y
    Z
    ^
    `
    a
    b
    c
    d
    e
    f
    g
    h
    i
    j
    k
    l
    m
    n
    o
    p
    q
    r
    s
    t
    u
    v
    w
    x
    y
    z
    |
    ~
    PL/SQL procedure successfully completed.
    SQL> Cheers
    Sarma.

  • How to pass a sequence by 'using' for execute immediate

    how i can pass a sequence.nxlval as a parameter through using , here is my code looks like
    sql_string is -> insert into some_tab (col1,col2, ....) (select col1,:passed_seq,......) where .... (i want to insert sequence values for col2)
    and i am calling this as
    passed_seq := 'seq_'||some_dynamic_num||'.nextval' ( in my db there will be sequences with the formed string like seq_10.nextval)
    EXECUTE IMMEDIATE sql_string using passes_seq;
    if i am doing like this i am getting
    Error : -1722:ORA-01722: invalid number seq_10.nextval
    Edited by: DIVI on Jan 8, 2013 7:40 AM

    Hi,
    I hope you have created sequence as below
    SQL>
    SQL> CREATE SEQUENCE seq
      2  MINVALUE 1
      3  START WITH     1
      4  INCREMENT BY   1
      5  NOCACHE
      6  NOCYCLE;
    Sequence created.
    SQL>
    SQL> SELECT * FROM TEST1;
         EMPNO EMPTYPE              EMP_ADDRESS              SALARY     DEPTNO
             1 HR                   MUMBAI                    10000         10
             2 ADMIN                THANE                      6000         20
    SQL>
    SQL> INSERT INTO TEST1 (EMPNO)
      2  VALUES(SEQ.NEXTVAL);
    1 row created.
    SQL> COMMIT;
    Commit complete.
    SQL> SELECT * fROM TEST1;
         EMPNO EMPTYPE              EMP_ADDRESS              SALARY     DEPTNO
             1 HR                   MUMBAI                    10000         10
             2 ADMIN                THANE                      6000         20
             1
    SQL>Now if you need to add different numbe in differenct condition then create multiple sequence and use them accounding.

  • Report script command equivalent for @relative calculation command

    HI ,
    We have a calculation script which has a fix statement like below :
         FIX( Grade, "w/o LO", "Line Options", AtLaunch, @DESCENDANTS("470.92"), @DESCENDANTS("Price Item"), @RELATIVE("Total Region", 0) )
    We are trying to make a reportscript which gives us the format of the set of database being calculated.
    So we are tranforming the above calc script commands into equivalent report script commands. We are struck with the @Relative command.
    Can somebody tell us what is the equivalent report script command for @Relative calculation script function.
    Regards
    OKU

    There's no direct analogue, but you can use the <LINK command along with <DESCENDANTS and <LEV to get pretty close. See: http://download.oracle.com/docs/cd/E10530_01/doc/epm.931/html_esb_techref/rwriter/link.htm
    JExport (if pre 9.3) or DATAEXPORT (if 9.3 or greater) may also be options and will in fact allow @RELATIVE to be used.
    Regards,
    Cameron Lackpour

  • E4407B Spectrum Analyzer - Library VI for executing MaxHold command

    am using E4407B Spectrum Analyzer. I have downloaded the instrument library from the NI website. I am asking for vi in the library that enable me to set MaxHold command.Can anyone help me ???

    Hi mpmarquez,
    What communication protocal are you using with the analyzer?
    James K.
    National Instruments
    Applications Engineer

  • Execute immediate on DDL command

    Below sample SQL is 1 of the many code that is running OK in our database. And this code has causes a lot of latch contention to our database and it's being called so many times that cause hard parse.
    /* test code */
    CREATE OR REPLACE PROCEDURE dsal (p_client_id NUMBER) IS
    BEGIN
    EXECUTE IMMEDIATE
    'create table tmp_dsal_'||p_client_id
    ' (client_id number, '||
    ' trade_id number, '||
    ' ps_id number, '||
    ' ps_liquid varchar2(2), '||
    ' status_code varchar2(3) default ''NA'' not null, '||
    ' start_value_dte date, '||
    ' end_value_dte date)';
    EXECUTE IMMEDIATE 'drop table tmp_dsal_'||p_client_id;
    END;
    I want to improve it by using bind variable. The below program compile with no error.
    CREATE OR REPLACE PROCEDURE dsal (p_client_id NUMBER) IS
    BEGIN
    EXECUTE IMMEDIATE
    'create table tmp_dsal_:client_id'||
    ' (client_id number, '||
    ' trade_id number, '||
    ' ps_id number, '||
    ' ps_liquid varchar2(2), '||
    ' status_code varchar2(3) default ''NA'' not null, '||
    ' start_value_dte date, '||
    ' end_value_dte date)' using p_client_id;
    EXECUTE IMMEDIATE 'drop table tmp_dsal_:client_id' using p_client_id;
    END;
    When I execute it, I'm getting the below error. I understand DML statement using bind variable in execute immediate command but not sure on DDL. Is there a workaround on issue or this is limitation?
    SQL> exec dsal(223);
    BEGIN dsal(223); END;
    ERROR at line 1:
    ORA-00922: missing or invalid option
    ORA-06512: at "SYS.DSAL", line 3
    ORA-06512: at line 1
    Appreciate any comment/help. Thanks

    Assuming that all of the client load processes run in seperate session, then do this once in the database and use this global temporary table for the loads. A GTT is a permanent object in the database, but the data it contains is only visible to the session that inserts it. Multiple sessions can access the same GTT at the same time, and will never see each other's data.
    CREATE TEMPORARY TABLE tmp_dsal (
       client_id       NUMBER,
       trade_id        NUMBER,
       ps_id           NUMBER,
       ps_liquid       VARCHAR2(2),
       status_code     VARCHAR2(3) DEFAULT 'NA' NOT NULL,
       start_value_dte DATE,
       end_value_dte   DATE)
    ON COMMIT [PRESERVE|DELETE] ROWSThe on commit clause determines what happens to the data in the GTT when the session that created the data issues a commit. DELETE will automaticall delete all of that session's data while PRESERVE will keep the data until the session either explicitly deletes it or the session ends.
    John

  • EXECUTE IMMEDIATE problem with long SQL statement

    Hello Experts,
    I am having a BIG problem executing script inside the iSQLPlus. This script has 29 blocks. 27 of those blocks are working OK, but block #26 and #27 are giving me the error on the "EXECUTE IMMEDIATE" statement. The length of the SQL statements in those two blocks is more then 4000 characters and I can not use a string variable to keep the SQL statement. If I pass the entire SQL statement as a string to the "EXECUTE IMMEDIATE" command, I am getting the error inside the iSQLPlus:
    Error writing 26 Bad Value. -907: ORA-00907: missing right parenthesis
    Error writing 27 Bad Value. -907: ORA-00907: missing right parenthesis
    The script code is shown below:
    SET ECHO OFF;
    SET VERIFY OFF;
    SET PAGESIZE 78;
    SET LINESIZE 132;
    SET SERVEROUTPUT ON;
    SET FEEDBACK OFF;
    --PROMPT;
    --PROMPT REPORT BEING PROCESSED - PLEASE WAIT.
    --PROMPT;
    DECLARE
    l_count NUMBER;
    s_user VARCHAR2(50);
    s_command VARCHAR2(4000);
    CURSOR INREC (BATCH_PARAM NUMBER) IS
    SELECT BATCH,
    AK$DEALER,
    FK$TRIP_TICKET,
    INVOICE,
    CONTINUATION_IND,
    TRIP_DATE,
    SPL_NO,
    AK$MRIS_AREA,
    AK$MRIS_COUNTY,
    TIME_FISHED,
    TIME_UNITS,
    DEPTH,
    DEPTH_UNITS
    FROM T$TRIP_TICKET_WORK
    WHERE TO_NUMBER(BATCH) = BATCH_PARAM;
    DATEST DATE;
    BEGDATE DATE;
    ENDATE DATE;
    FLAGCNT NUMBER := 0;
    MSGNUM NUMBER;
    MAXLIC VARCHAR2(7);
    BEGIN
    select sys_context('USERENV','SESSION_USER') into s_user from dual;
    select count(*) into l_count from all_tables where table_name = 'BATCHERS_REPORT' and owner=s_user;
    --the table 'BATCHERS_REPORT' alwase exist for the MRIS user role,co we have to check if more then 1 record exist:
    IF l_count > 0 then
         --TRUNCATE TABLE BATCHERS_REPORT REUSE STORAGE;
         s_command := 'TRUNCATE TABLE BATCHERS_REPORT REUSE STORAGE';
         execute immediate s_command;
    ELSE
         --CREATE TABLE BATCHERS_REPORT AS (SELECT * FROM MRIS.BATCHERS_REPORT);
         --s_command := 'CREATE TABLE BATCHERS_REPORT AS SELECT * FROM MRIS.BATCHERS_REPORT WHERE 1=2';
    s_command := 'CREATE TABLE BATCHERS_REPORT
    (BATCH VARCHAR2(6),
    AK$DEALER VARCHAR2(9),
    FK$TRIP_TICKET NUMBER,
    INVOICE     VARCHAR2(13),
    CONTINUATION_IND VARCHAR2(1),
    TRIP_DATE     VARCHAR2(8),
    SPL_NO          VARCHAR2(9),
    AK$MRIS_AREA VARCHAR2(7),
    AK$MRIS_COUNTY VARCHAR2(3),
    TIME_FISHED VARCHAR2(3),
    TIME_UNITS VARCHAR2(1),
    DEPTH VARCHAR2(5),
    DEPTH_UNITS VARCHAR2(1),
    AK$MRIS_GEAR VARCHAR2(4),
    AK$SPECIES VARCHAR2(4),
    SPECIES_SIZE VARCHAR2(8),
    WEIGHT_IN_POUNDS NUMBER(10,2),
    UNIT_PRICE NUMBER(5,3),
    ERROR_NUM NUMBER)';
         execute immediate s_command;
         execute immediate 'commit';          
    END IF;
    DBMS_OUTPUT.PUT_LINE('.');
    DBMS_OUTPUT.PUT_LINE('. PROCEDURE NAME = BATCHERS');
    DBMS_OUTPUT.PUT_LINE('. STARTING TIME = '||TO_CHAR(SYSDATE,'MM/DD/YYYY HH:MI:SS'));
    SELECT MAX(DATE_B), MAX(DATE_E)
    INTO BEGDATE, ENDATE
    FROM T$BATCH_HEADER
    WHERE PK$BATCH = &BATCHNUM;
    SELECT LPAD(MAX(LIC_NUM),7,'0') INTO MAXLIC
    FROM T$SWP_LICENSE;
    BEGIN
    MSGNUM := 1;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    AK$MRIS_GEAR, ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    G.AK$MRIS_GEAR, '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_GEAR_WORK G,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||') AND (T.FK$TRIP_TICKET = G.AK$TRIP_TICKET)
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND (G.AK$MRIS_GEAR IS NULL
    OR G.AK$MRIS_GEAR NOT IN (SELECT TO_CHAR(PK$MRIS_GEAR) FROM MT$MRIS_GEAR))
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    G.AK$MRIS_GEAR, '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_GEAR_WORK G,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = G.AK$TRIP_TICKET)
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND (G.AK$MRIS_GEAR IN (110, 120, 130)
    AND NOT EXISTS (SELECT * FROM T$TRIP_TICKET_GEAR_WORK G2
    WHERE G2.AK$TRIP_TICKET = G.AK$TRIP_TICKET
    AND G2.AK$MRIS_GEAR = 40))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 2;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$MRIS_GEAR,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    NULL,
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.AK$MRIS_AREA != '||'''0'''||')
    AND (T.AK$MRIS_AREA NOT IN (SELECT TO_CHAR(PK$MRIS_AREA) FROM MT$MRIS_AREA))
    AND NOT (T.AK$DEALER IN ('||'''WD0004606'''||', '||'''WD0003877'''||', '||'''WD0000157'''||', '||'''WD0001326'''||', '||'''WD0000426'''||')
    AND
    T.AK$MRIS_AREA IN ('||'''161.2'''||', '||'''301.2'''||', '||'''720.2'''||', '||'''760.2'''||', '||'''771.2'''||', '||'''772.2'''||', '||'''773.2'''||', '||'''780.2'''||', '||'''800.1'''||', '||'''821.2'''||', '||'''882.2'''||'))
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    G.AK$MRIS_GEAR,
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_GEAR_WORK G
    WHERE ((TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'))
    AND ((T.FK$TRIP_TICKET = G.AK$TRIP_TICKET))
    AND ((INSTR(T.AK$MRIS_AREA,'||'''.'''||') = 0) OR
    (INSTR(T.AK$MRIS_AREA,'||'''.'''||') > 0 AND T.AK$MRIS_AREA NOT LIKE '||'''%.9%'''||'))
    AND ((G.AK$MRIS_GEAR IN ('||'''30'''||', '||'''6750'''||', '||'''6760'''||') OR
    G.AK$MRIS_GEAR = '||'''70'''||' OR
    G.AK$MRIS_GEAR BETWEEN '||'''4700'''||' AND '||'''4780'''||' or
    g.ak$mris_gear = '||'''80'''||' or
    g.ak$mris_gear between '||'''5300'''||' and '||'''5360'''||'))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    -- Error number 3 not in use - Logic moved to ctyarflg.sql
    BEGIN
    MSGNUM := 4;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS, '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.SPL_NO IS NULL
    OR NOT EXISTS (SELECT * FROM T$SWP_LICENSE L
    WHERE L.AK$LICENSE_TYPE = '||'''SP'''||'
    AND L.LIC_NUM = SUBSTR(T.SPL_NO,3,7)))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION
    WHEN INVALID_NUMBER THEN
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS, '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.SPL_NO = '||''' '''||'
    OR T.SPL_NO IS NULL
    OR SUBSTR(T.SPL_NO,3,7) NOT BETWEEN '||'''0000000'''||' AND '||'''9999999'''||'
    OR LPAD(RTRIM(LTRIM(SUBSTR(T.SPL_NO,3,7))),7,'||'''0'''||') > '|| MAXLIC ||')';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 5;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND S.WEIGHT_IN_POUNDS < 1';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 6;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T
    WHERE ((TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'))
    AND ((T.TIME_UNITS = '||'''D'''||' AND T.TIME_FISHED < 1) OR
    (T.TIME_UNITS = '||'''N'''||'))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 7;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (S.WEIGHT_IN_POUNDS > 5500)
    AND (S.AK$SPECIES BETWEEN 131 AND 150 OR
    S.AK$SPECIES BETWEEN 203 AND 217)';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 8;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE ((TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'))
    AND ((T.FK$TRIP_TICKET = S.AK$TRIP_TICKET))
    AND ((S.AK$SPECIES in (135, 163, 185, 223, 227, 315, 316, 490, 494, 795, 805)) OR
    (S.AK$SPECIES BETWEEN 169 AND 171) OR
    (S.AK$SPECIES IN (263, 265, 310, 311, 312)) OR
    (((S.AK$SPECIES BETWEEN 812 AND 825) OR (S.AK$SPECIES = 255)) AND S.AK$TRIP_TICKET IN (SELECT AK$TRIP_TICKET
    FROM T$TRIP_TICKET_GEAR_WORK
    WHERE AK$MRIS_GEAR != 9955)))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 9;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (S.AK$SPECIES = 0
    OR S.AK$SPECIES IS NULL
    OR S.AK$SPECIES NOT IN (SELECT TO_CHAR(PK$SPECIES)
    FROM MT$SPECIES))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 10;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE ((TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'))
    AND ((T.FK$TRIP_TICKET = S.AK$TRIP_TICKET))
    AND ((S.AK$SPECIES = 401 AND T.AK$DEALER != '||'''WD000573'''||') OR
    (S.AK$SPECIES = 405 AND T.AK$MRIS_COUNTY != 26) OR
    (S.AK$SPECIES in (187, 239, 307, 324, 341, 342, 363, 365,
    367, 383, 387, 427, 450, 457, 461)))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 11;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND S.AK$SPECIES = 251 AND (S.WEIGHT_IN_POUNDS > 49 OR S.UNIT_PRICE > .99)';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 12;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (S.WEIGHT_IN_POUNDS > 50)
    AND (S.AK$SPECIES BETWEEN 149 AND 150 OR
    S.AK$SPECIES BETWEEN 217 AND 218)';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 13;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND S.WEIGHT_IN_POUNDS > 1000
    AND S.AK$SPECIES IN (175, 176, 178)';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 14;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE ((TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'))
    AND ((T.FK$TRIP_TICKET = S.AK$TRIP_TICKET))
    AND ((S.AK$SPECIES = 302 AND S.UNIT_PRICE >= 4.00) OR
    (S.AK$SPECIES = 303 AND (S.UNIT_PRICE > 0 AND S.UNIT_PRICE < 4.00)))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 15;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND S.AK$SPECIES = 345
    AND S.UNIT_PRICE > .06';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 16;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE ((TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'))
    AND ((T.FK$TRIP_TICKET = S.AK$TRIP_TICKET))
    AND ((LTRIM(S.SPECIES_SIZE) IS NOT NULL))
    AND ((S.AK$SPECIES = 325 AND RTRIM(ltrim(S.SPECIES_SIZE,'||''' '''||'),'||''' '''||') != '||'''J'''||') OR
    (S.AK$SPECIES = 327 AND RTRIM(ltrim(S.SPECIES_SIZE,'||''' '''||'),'||''' '''||') != '||'''L'''||') OR
    (S.AK$SPECIES = 329 AND RTRIM(ltrim(S.SPECIES_SIZE,'||''' '''||'),'||''' '''||') != '||'''M'''||') OR
    (S.AK$SPECIES = 331 AND RTRIM(ltrim(S.SPECIES_SIZE,'||''' '''||'),'||''' '''||') != '||'''S'''||') OR
    (S.AK$SPECIES = 332 AND RTRIM(ltrim(S.SPECIES_SIZE,'||''' '''||'),'||''' '''||') != '||'''LT'''||'))
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (S.AK$SPECIES IN (325, 327, 329, 331, 332))
    AND (S.UNIT_PRICE BETWEEN .01 AND 1.50)
    AND NOT (S.AK$SPECIES = 332 AND RTRIM(LTRIM(S.SPECIES_SIZE,'||''' '''||'),'||''' '''||') = '||'''LT'''||')
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (S.UNIT_PRICE < .01 AND S.AK$SPECIES = 332)
    AND (RTRIM(LTRIM(SPECIES_SIZE,'||''' '''||'),'||''' '''||') != '||'''LT'''||' or species_size is null)';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 17;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (S.AK$SPECIES = 103 OR
    S.AK$SPECIES BETWEEN 414 AND 416 OR
    S.AK$SPECIES BETWEEN 471 AND 474)
    AND (SUBSTR(T.TRIP_DATE,5,2) BETWEEN '||'''03'''||' AND '||'''05'''||')
    AND (ROUND(TO_NUMBER(T.AK$MRIS_AREA) * 10, 1) NOT IN
    (19, 29, 39, 49, 59, 69, 79, 89, 99, 109, 119,
    7179, 7229, 7289, 7329, 7369, 7419, 7449, 7489))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 18;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (S.WEIGHT_IN_POUNDS > 50)
    AND (S.AK$SPECIES = 103)
    and substr(t.trip_date,5,2) = '||'''04'''||'
    AND (ROUND(TO_NUMBER(T.AK$MRIS_AREA) * 10, 1) IN
    (19, 7179, 7229, 7289, 7329, 7369, 7419, 7449, 7489))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 19;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND S.AK$SPECIES BETWEEN 325 AND 332
    AND SUBSTR(T.TRIP_DATE,5,4) BETWEEN '||'''0516'''||' AND '||'''1014'''||'
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = &BATCHNUM
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND S.AK$SPECIES BETWEEN 317 AND 318
    AND SUBSTR(T.TRIP_DATE,5,4) BETWEEN '||'''0401'''||' AND '||'''0805'''||'';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 20;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND S.AK$SPECIES = 141
    AND S.WEIGHT_IN_POUNDS > 300
    AND T.TRIP_DATE BETWEEN '||'''19971220'''||' AND '||'''19971231'''||'';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 21;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE ((TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'))
    AND ((T.FK$TRIP_TICKET = S.AK$TRIP_TICKET))
    AND ((S.AK$SPECIES = 209))
    AND ((T.AK$MRIS_AREA BETWEEN 0 AND 11))
    AND ((T.TRIP_DATE BETWEEN '||'''19981016'''||' AND '||'''19990131'''||') OR
    (T.TRIP_DATE BETWEEN '||'''19990315'''||' AND '||'''19990401'''||') OR
    (T.TRIP_DATE BETWEEN '||'''19990415'''||' AND '||'''19990901'''||'))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 22;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND S.AK$SPECIES = 193
    AND S.WEIGHT_IN_POUNDS > 250
    and substr(t.trip_date,1,4) > '||'''1996'''||'';
    -- AND TO_NUMBER(TO_CHAR(TO_DATE(T.TRIP_DATE,'YYYYMMDD'),'YY')) >= 96;
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 23;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (S.AK$SPECIES = 193)
    AND NOT (SUBSTR(T.TRIP_DATE,5,2) BETWEEN '||'''06'''||' AND '||'''08'''||')';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 24;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE ((TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'))
    AND ((T.FK$TRIP_TICKET = S.AK$TRIP_TICKET))
    AND ((S.AK$SPECIES = 458 AND S.WEIGHT_IN_POUNDS > 50) OR
    (S.AK$SPECIES = 449 AND S.WEIGHT_IN_POUNDS > 30) OR
    (S.AK$SPECIES = 113 AND S.WEIGHT_IN_POUNDS > 50))
    and substr(t.trip_date,1,4) >= '||'''1996'''||'';
    -- AND ((TO_NUMBER(TO_CHAR(TO_DATE(T.TRIP_DATE,'||'''YYYYMMDD'''||'),'||'''YY'''||')) >= 96))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 25;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$MRIS_GEAR,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    G.AK$MRIS_GEAR,
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_GEAR_WORK G
    WHERE ((TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'))
    AND ((T.FK$TRIP_TICKET = G.AK$TRIP_TICKET))
    AND ((G.AK$MRIS_GEAR IN (30, 70, 80)) OR
    (G.AK$MRIS_GEAR BETWEEN 4700 AND 4790) OR
    (G.AK$MRIS_GEAR BETWEEN 5300 AND 5390) OR
    (G.AK$MRIS_GEAR BETWEEN 6700 AND 6790))
    AND ((TO_NUMBER(T.AK$MRIS_AREA) - ROUND(TO_NUMBER(T.AK$MRIS_AREA)) NOT BETWEEN .85 AND .95))
    AND ((ROUND(TO_NUMBER(T.AK$MRIS_AREA)) <= 0))';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 26;
    execute immediate 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$MRIS_GEAR,AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    NULL, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND SUBSTR(T.TRIP_DATE,5,2) BETWEEN '||'''04'''||' AND '||'''10'''||'
    AND S.AK$SPECIES = 165
    AND S.WEIGHT_IN_POUNDS > 3500
    AND T.AK$MRIS_COUNTY IN ('||'''26'''||', '||'''28'''||', '||'''55'''||', '||'''65'''||', '||'''74'''||')
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    NULL,S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND SUBSTR(T.TRIP_DATE,5,2) BETWEEN '||'''04'''||' AND '||'''10'''||'
    AND S.AK$SPECIES = 165
    AND S.WEIGHT_IN_POUNDS > 500
    AND T.AK$MRIS_COUNTY IN ('||'''15'''||', '||'''16'''||', '||'''23'''||', '||'''41'''||', '||'''53'''||', '||'''60'''||', '||'''66'''||')
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    NULL, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (SUBSTR(T.TRIP_DATE,5,2) BETWEEN '||'''04'''||' AND '||'''10'''||')
    AND (S.AK$SPECIES = 165)
    AND ((S.WEIGHT_IN_POUNDS > 1250 AND T.AK$MRIS_COUNTY = '||'''54'''||')
    OR (T.AK$MRIS_AREA > 700 AND S.WEIGHT_IN_POUNDS > 500
    AND T.AK$MRIS_COUNTY != '||'''54'''||'))
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    G.AK$MRIS_GEAR, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S,
    T$TRIP_TICKET_GEAR_WORK G
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (T.FK$TRIP_TICKET = G.AK$TRIP_TICKET)
    and (substr(t.trip_date,5,2) in ('||'''01'''||','||'''02'''||','||'''03'''||','||'''11'''||','||'''12'''||'))
    and (S.AK$SPECIES = 165)
    AND (S.WEIGHT_IN_POUNDS > 0)
    AND (T.TRIP_DATE BETWEEN '||'''19990331'''||' AND '||'''19990701'''||')
    AND (T.AK$MRIS_COUNTY NOT IN ('||'''15'''||','||'''16'''||','||'''23'''||','||'''26'''||','||'''28'''||','||'''41'''||','||'''53'''||','||'''54'''||','||'''55'''||','||'''60'''||','||'''65'''||','||'''66'''||','||'''74'''||')
    AND ((G.AK$MRIS_GEAR IN (70, 80)) OR
    (G.AK$MRIS_GEAR BETWEEN 4700 AND 4900) OR
    (G.AK$MRIS_GEAR BETWEEN 5300 AND 5390)))
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    G.AK$MRIS_GEAR, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S,
    T$TRIP_TICKET_GEAR_WORK G
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (T.FK$TRIP_TICKET = G.AK$TRIP_TICKET)
    and (substr(t.trip_date,5,2) in ('||'''01'''||','||'''02'''||','||'''03'''||','||'''11'''||','||'''12'''||'))
    and (S.AK$SPECIES = 165)
    AND (S.WEIGHT_IN_POUNDS > 500)
    AND (T.TRIP_DATE > '||'''19990130'''||')
    AND (T.AK$MRIS_COUNTY NOT IN ('||'''15'''||','||'''16'''||','||'''23'''||','||'''26'''||','||'''28'''||','||'''41'''||','||'''53'''||','||'''54'''||','||'''55'''||','||'''60'''||','||'''65'''||','||'''66'''||','||'''74'''||'))
    AND ((G.AK$MRIS_GEAR = 40) OR
    G.AK$MRIS_GEAR BETWEEN 6100 AND 6190)';
    --execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value'||'. '||SQLCODE||': '||SQLERRM);
    END;
    BEGIN
    MSGNUM := 27;
    execute immediate 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$MRIS_GEAR, AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    NULL, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND S.AK$SPECIES = 165
    AND S.WEIGHT_IN_POUNDS > 500
    AND T.AK$MRIS_COUNTY IN (15, 16, 23, 41, 53, 54, 55, 60, 66, 74)
    AND SUBSTR(T.TRIP_DATE,5,2) IN ('||'''01'''||', '||'''02'''||', '||'''03'''||', '||'''11'''||', '||'''12'''||')
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    G.AK$MRIS_GEAR, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S,
    T$TRIP_TICKET_GEAR_WORK G
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (T.FK$TRIP_TICKET = G.AK$TRIP_TICKET)
    AND (S.AK$SPECIES = 165)
    AND (S.WEIGHT_IN_POUNDS > 1250)
    AND (T.TRIP_DATE > '||'''19990130'''||')
    AND (T.AK$MRIS_COUNTY in ( 15, 16, 23, 26, 28, 41, 53, 54, 55, 60, 65, 66, 74))
    AND (G.AK$MRIS_GEAR = 40 OR G.AK$MRIS_GEAR BETWEEN 6100 AND 6190)
    AND (SUBSTR(T.TRIP_DATE,5,2) IN ('||'''01'''||', '||'''02'''||', '||'''03'''||', '||'''11'''||', '||'''12'''||'))
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    G.AK$MRIS_GEAR, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S,
    T$TRIP_TICKET_GEAR_WORK G
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (T.FK$TRIP_TICKET = G.AK$TRIP_TICKET)
    AND (S.AK$SPECIES = 165)
    AND (S.WEIGHT_IN_POUNDS > 25000)
    AND (T.TRIP_DATE > '||'''19990119'''||')
    AND (T.AK$MRIS_COUNTY in ( 15, 16, 23, 26, 28, 41, 53, 54, 55, 60, 65, 66, 74))
    AND (G.AK$MRIS_GEAR IN (70, 80) OR
    G.AK$MRIS_GEAR BETWEEN 4700 AND 4790 OR
    G.AK$MRIS_GEAR BETWEEN 5300 AND 5390)
    AND (SUBSTR(T.TRIP_DATE,5,2) IN ('||'''01'''||', '||'''02'''||', '||'''03'''||', '||'''11'''||', '||'''12'''||'))
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    G.AK$MRIS_GEAR, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S,
    T$TRIP_TICKET_GEAR_WORK G
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (T.FK$TRIP_TICKET = G.AK$TRIP_TICKET)
    AND (S.AK$SPECIES = 165)
    AND (S.WEIGHT_IN_POUNDS > 500)
    AND (T.TRIP_DATE > '||'''19990103'''||')
    AND (T.AK$MRIS_COUNTY in ( 15, 16, 23, 26, 28, 41, 53, 54, 55, 60, 65, 66, 74))
    AND (G.AK$MRIS_GEAR = 40 OR G.AK$MRIS_GEAR BETWEEN 6100 AND 6190)
    AND (SUBSTR(T.TRIP_DATE,5,2) IN ('||'''01'''||', '||'''02'''||', '||'''03'''||', '||'''11'''||', '||'''12'''||'))
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    G.AK$MRIS_GEAR, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S,
    T$TRIP_TICKET_GEAR_WORK G
    WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
    AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
    AND (T.FK$TRIP_TICKET = G.AK$TRIP_TICKET)
    AND (S.AK$SPECIES = 165)
    AND (S.WEIGHT_IN_POUNDS > 0)
    AND (T.TRIP_DATE > '||'''19990119'''||')
    AND (T.AK$MRIS_COUNTY in ( 15, 16, 23, 26, 28, 41, 53, 54, 55, 60, 65, 66, 74))
    AND (G.AK$MRIS_GEAR IN (70, 80) OR
    G.AK$MRIS_GEAR BETWEEN 4700 AND 4790 OR
    G.AK$MRIS_GEAR BETWEEN 5300 AND 5390)
    AND (SUBSTR(T.TRIP_DATE,5,2) IN ('||'''01'''||', '||'''02'''||', '||'''03'''||', '||'''11'''||', '||'''12'''||'))';
    -- execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value'||'. '||SQLCODE||': '||SQLERRM);
    END;
    BEGIN
    MSGNUM := 28;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND T.AK$MRIS_AREA BETWEEN 0.0 AND 10.99
    AND SUBSTR(T.TRIP_DATE,5,2) IN ('||'''02'''||', '||'''03'''||', '||'''04'''||', '||'''09'''||', '||'''10'''||')
    AND S.AK$SPECIES = 209
    AND S.WEIGHT_IN_POUNDS > 2000';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    BEGIN
    MSGNUM := 29;
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    AK$MRIS_GEAR, AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,
    ERROR_NUM)
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    G.AK$MRIS_GEAR, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S,
    T$TRIP_TICKET_GEAR_WORK G
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND T.FK$TRIP_TICKET = G.AK$TRIP_TICKET
    AND S.AK$SPECIES IN (353, 355, 357, 359)
    AND T.AK$MRIS_COUNTY IN ('||'''23'''||', '||'''54'''||')
    AND G.AK$MRIS_GEAR != 9250
    UNION
    SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
    T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
    T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
    G.AK$MRIS_GEAR, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
    TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
    '||''''||MSGNUM||''''||'
    FROM T$TRIP_TICKET_WORK T,
    T$TRIP_TICKET_SPECIES_WORK S,
    T$TRIP_TICKET_GEAR_WORK G
    WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
    AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
    AND T.FK$TRIP_TICKET = G.AK$TRIP_TICKET
    AND S.AK$SPECIES IN (353, 355, 357, 359)
    AND G.AK$MRIS_GEAR NOT IN (9250, 9433)';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    EXCEPTION WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('. Error writing '||MSGNUM||' Bad Value');
    END;
    FOR I IN INREC (&BATCHNUM) LOOP
    BEGIN
    IF I.TRIP_DATE IS NULL THEN
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    ERROR_NUM)
    VALUES(I.BATCH, I.AK$DEALER, I.FK$TRIP_TICKET, I.INVOICE,
    I.CONTINUATION_IND, I.TRIP_DATE, I.SPL_NO, I.AK$MRIS_AREA,
    I.AK$MRIS_COUNTY, I.TIME_FISHED, I.TIME_UNITS, I.DEPTH, I.DEPTH_UNITS,
    30)';     
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    ELSE
    DATEST := TO_DATE(I.TRIP_DATE,'YYYYMMDD');
    END IF;
    -- IF DATEST NOT BETWEEN BEGDATE AND ENDATE THEN
    IF datest not between add_months(endate,-6) and endate then
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    ERROR_NUM)
    VALUES(I.BATCH, I.AK$DEALER, I.FK$TRIP_TICKET, I.INVOICE,
    I.CONTINUATION_IND, I.TRIP_DATE, I.SPL_NO, I.AK$MRIS_AREA,
    I.AK$MRIS_COUNTY, I.TIME_FISHED, I.TIME_UNITS, I.DEPTH, I.DEPTH_UNITS,
    30)';     
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    END IF;
    EXCEPTION WHEN OTHERS THEN
    s_command := 'INSERT INTO BATCHERS_REPORT
    (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
    CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
    AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
    ERROR_NUM)
    VALUES(I.BATCH, I.AK$DEALER, I.FK$TRIP_TICKET, I.INVOICE,
    I.CONTINUATION_IND, I.TRIP_DATE, I.SPL_NO, I.AK$MRIS_AREA,
    I.AK$MRIS_COUNTY, I.TIME_FISHED, I.TIME_UNITS, I.DEPTH, I.DEPTH_UNITS,
    30)';
    execute immediate s_command;
    FLAGCNT := FLAGCNT + SQL%ROWCOUNT;
    --COMMIT;
    execute immediate 'commit';
    END;
    END LOOP;
    DBMS_OUTPUT.PUT_LINE('. RECORDS WRITTEN = '||TO_CHAR(FLAGCNT));
    DBMS_OUTPUT.PUT_LINE('. ENDING TIME = '||TO_CHAR(SYSDATE,'MM/DD/YYYY HH:MI:SS'));
    DBMS_OUTPUT.PUT_LINE('.');
    END;
    --SET TERMOUT OFF;
    CLEAR BREAKS;
    BREAK ON BATCH ON AK$DEALER;
    CLEAR COLUMNS;
    --SPOOL BATCHERS.LST;
    --CLEAR COLUMNS;
    COLUMN BATCH NOPRINT;
    COLUMN AK$DEALER HEADING 'DEALER' FORMAT A9 JUSTIFY LEFT;
    COLUMN FK$TRIP_TICKET HEADING 'TTK#' FORMAT 9999999999;
    COLUMN INVOICE HEADING 'INVOICE' FORMAT A13 JUSTIFY LEFT;
    COLUMN CONTINUATION_IND HEADING 'CONT' FORMAT A4 JUSTIFY LEFT;
    COLUMN TRIP_DATE HEADING 'DATE' FORMAT A8 JUSTIFY LEFT;
    COLUMN SPL_NO HEADING 'SPL' FORMAT A9 JUSTIFY LEFT;
    COLUMN AK$MRIS_AREA HEADING 'AREA' FORMAT A7 JUSTIFY LEFT;
    COLUMN AK$MRIS_COUNTY HEADING 'CTY' FORMAT A3 JUSTIFY LEFT;
    COLUMN TIME_FISHED HEADING 'TIME' FORMAT A4 JUSTIFY LEFT;
    COLUMN TIME_UNITS HEADING 'UNIT' FORMAT A4 JUSTIFY LEFT;
    COLUMN DEPTH HEADING 'DEPTH' FORMAT A5 JUSTIFY LEFT;
    COLUMN DEPTH_UNITS HEADING 'UNIT' FORMAT A4 JUSTIFY LEFT;
    COLUMN AK$MRIS_GEAR HEADING 'GEAR' FORMAT A4 JUSTIFY LEFT;
    COLUMN AK$SPECIES HEADING 'SPEC' FORMAT A4 JUSTIFY LEFT;
    COLUMN SPECIES_SIZE HEADING 'SIZE' FORMAT A8 JUSTIFY LEFT;
    COLUMN WEIGHT_IN_POUNDS HEADING 'POUNDS' FORMAT 99999.99;
    COLUMN UNIT_PRICE HEADING 'PRICE' FORMAT 99999.999;
    COLUMN ERROR_NUM NOPRINT;
    --CLEAR BREAKS;
    --BREAK ON BATCH ON AK$DEALER;
    --SPOOL BATCHERS.LST;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Undefined gear codes.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 1
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Undefined or non-Florida area codes.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 2
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    -- Error number 3 not in use - Logic moved to ctyarflg.sql
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Incorrect or no SPL information.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 4
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Reported less than 1 pound weight.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 5
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Bad time fished or time units.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 6
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Weight over 5500 lbs for reef fish.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 7
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Landings in closed fisheries.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 8
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Invalid species codes.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 9
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Unlikely or unusual species codes.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 10
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Food fish > 50 lbs or too expensive.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 11
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Mixed or other grouper or snapper > 50 lbs.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 12
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Over 1000 lbs striped mullet.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 13
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Oysters improperly coded.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 14
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Too expensive bait shrimp.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 15
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Bad stone crab sizes, prices or unidentified lites.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 16
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Reported landings of greater amberjack,' SKIP -
    CENTER 'lesser amberjack, almaco jack and banded rudderfish ' SKIP -
    CENTER 'during the closed season (March-May) from state waters.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 17
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Over the bag limit (1 fish) landings of' SKIP -
    CENTER 'greater amberjack during April from South Atlantic federal waters.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 18
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Landings during closed seasons.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 19
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Snowy grouper > 300 lbs (South Atlantic trip limit from Dec. 20 thru Dec. 31, 1997).' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 20
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Out-of-season Gulf red snapper landings. Commercial harvest closed' SKIP -
    CENTER 'Oct. 16, 1998 - Jan. 31 1999, Mar. 15 - Apr. 1, 1999, and' SKIP -
    CENTER 'Apr. 15 - Sep. 1, 1999.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 21
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Too much spotted seatrout.' SKIP -
    CENTER 'Commercial harvest allows 75 fish daily vessel limit, flagged 250+ lbs.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 22
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Out-of-season spotted seatrout. Commercial harvest allowed June, July, and August only.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 23
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Too much tripletail, cobia, or african pompano.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 24
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Undefined or non-Florida area fished for gear codes.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 25
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'South Atlantic king mackerel fishery (April-October)' SKIP -
    CENTER '- > 3,500lbs in Nassau-Volusia or' SKIP -
    CENTER '- > 500 lbs in Brevard-Dade or' SKIP -
    CENTER '- > 500 lbs H and L in rest of Gulf (until 7/1/1999)' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 26
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Gulf-Atlantic king mackerel fishery (November - March)' SKIP -
    CENTER '- > 500 lbs Volusia-Dade or' SKIP -
    CENTER ' > 1250 lbs H and L (>500 after 1/30/99 or' SKIP -
    CENTER ' > 25,000 lbs gill net (zero after 1/19/99) Monroe Escambia';
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 27
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'More than 2,000 lbs mixed of Gulf red snapper.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 28
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Bad or unusual gears for sponges.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 29
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    TTITLE LEFT 'Page: ' FORMAT 999 SQL.PNO RIGHT 'Batch: ' &BATCHNUM SKIP -
    CENTER 'Date is blank, invalid, before begin date or after end date.' SKIP 2;
    SELECT * FROM BATCHERS_REPORT
    WHERE ERROR_NUM = 30
    ORDER BY AK$DEALER, FK$TRIP_TICKET;
    --SPOOL OFF;
    --SET TERMOUT ON;
    --PROMPT;
    --PROMPT REPORT WRITTEN TO BATCHERS.LST;
    --PROMPT;
    --TTITLE OFF;
    SET FEEDBACK ON;
    SET LINESIZE 72;
    SET PAGESIZE 32;
    --SET NEWPAGE 1;
    SET SERVEROUT OFF;
    SET VERIFY ON;
    SET ECHO ON;
    What is wrong with my syntax or what is I am doing wrong?
    Any help will be appreciated and thanks in advance,
    -Dmitriy

    a workaround was to split the string into 2 but this is not a long term solution:
    e.g.
    vString1 := 'INSERT INTO BATCHERS_REPORT
                  (BATCH, AK$DEALER, FK$TRIP_TICKET, INVOICE,
                  CONTINUATION_IND, TRIP_DATE, SPL_NO, AK$MRIS_AREA,
                  AK$MRIS_COUNTY, TIME_FISHED, TIME_UNITS, DEPTH, DEPTH_UNITS,
                  AK$MRIS_GEAR,AK$SPECIES, SPECIES_SIZE, WEIGHT_IN_POUNDS, UNIT_PRICE,ERROR_NUM)
                  SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
                  T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
                  T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
                  NULL, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
                  TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
                  '||''''||MSGNUM||''''||'
                  FROM T$TRIP_TICKET_WORK T,
                  T$TRIP_TICKET_SPECIES_WORK S
                  WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
                  AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
                  AND SUBSTR(T.TRIP_DATE,5,2) BETWEEN '||'''04'''||' AND '||'''10'''||'
                  AND S.AK$SPECIES = 165
                  AND S.WEIGHT_IN_POUNDS > 3500
                  AND T.AK$MRIS_COUNTY IN ('||'''26'''||', '||'''28'''||', '||'''55'''||', '||'''65'''||', '||'''74'''||')
                  UNION
                  SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
                  T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
                  T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
                  NULL,S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
                  TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
                  '||''''||MSGNUM||''''||'
                  FROM T$TRIP_TICKET_WORK T,
                  T$TRIP_TICKET_SPECIES_WORK S
                  WHERE TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
                  AND T.FK$TRIP_TICKET = S.AK$TRIP_TICKET
                  AND SUBSTR(T.TRIP_DATE,5,2) BETWEEN '||'''04'''||' AND '||'''10'''||'
                  AND S.AK$SPECIES = 165
                  AND S.WEIGHT_IN_POUNDS > 500
                  AND T.AK$MRIS_COUNTY IN ('||'''15'''||', '||'''16'''||', '||'''23'''||', '||'''41'''||', '||'''53'''||', '||'''60'''||', '||'''66'''||')
                  UNION
                  SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
                  T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
                  T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
                  NULL, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
                  TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
                  '||''''||MSGNUM||''''||'
                  FROM T$TRIP_TICKET_WORK T,
                  T$TRIP_TICKET_SPECIES_WORK S
                  WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||'
                  AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
                  AND (SUBSTR(T.TRIP_DATE,5,2) BETWEEN '||'''04'''||' AND '||'''10'''||')
                  AND (S.AK$SPECIES = 165)
                  AND ((S.WEIGHT_IN_POUNDS > 1250 AND T.AK$MRIS_COUNTY = '||'''54'''||')
                  OR (T.AK$MRIS_AREA > 700 AND S.WEIGHT_IN_POUNDS > 500
                  AND T.AK$MRIS_COUNTY != '||'''54'''||'))
                  UNION
                  SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
                  T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
                  T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
                  G.AK$MRIS_GEAR, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
                  TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
                  '||''''||MSGNUM||''''||'
                  FROM T$TRIP_TICKET_WORK T,
                  T$TRIP_TICKET_SPECIES_WORK S,
                  T$TRIP_TICKET_GEAR_WORK G
                  WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
                  AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
                  AND (T.FK$TRIP_TICKET = G.AK$TRIP_TICKET)
                  and (substr(t.trip_date,5,2) in ('||'''01'''||','||'''02'''||','||'''03'''||','||'''11'''||','||'''12'''||'))
                  and (S.AK$SPECIES = 165)
                  AND (S.WEIGHT_IN_POUNDS > 0)
                  AND (T.TRIP_DATE BETWEEN '||'''19990331'''||' AND '||'''19990701'''||')
                  AND (T.AK$MRIS_COUNTY NOT IN ('||'''15'''||','||'''16'''||','||'''23'''||','||'''26'''||','||'''28'''||','||'''41'''||','||'''53'''||','||'''54'''||','||'''55'''||','||'''60'''||','||'''65'''||','||'''66'''||','||'''74'''||')
                  AND ((G.AK$MRIS_GEAR IN (70, 80)) OR
                  (G.AK$MRIS_GEAR BETWEEN 4700 AND 4900) OR
                  (G.AK$MRIS_GEAR BETWEEN 5300 AND 5390)))';
    vString2 := 'UNION
                 SELECT T.BATCH, T.AK$DEALER, T.FK$TRIP_TICKET, T.INVOICE,
                 T.CONTINUATION_IND, T.TRIP_DATE, T.SPL_NO, T.AK$MRIS_AREA,
                 T.AK$MRIS_COUNTY, T.TIME_FISHED, T.TIME_UNITS, T.DEPTH, T.DEPTH_UNITS,
                 G.AK$MRIS_GEAR, S.AK$SPECIES, LTRIM(S.SPECIES_SIZE),
                 TO_NUMBER(S.WEIGHT_IN_POUNDS), TO_NUMBER(S.UNIT_PRICE),
                 '||''''||MSGNUM||''''||'
                 FROM T$TRIP_TICKET_WORK T,
                 T$TRIP_TICKET_SPECIES_WORK S,
                 T$TRIP_TICKET_GEAR_WORK G
                 WHERE (TO_NUMBER(T.BATCH) = '|| &BATCHNUM ||')
                 AND (T.FK$TRIP_TICKET = S.AK$TRIP_TICKET)
                 AND (T.FK$TRIP_TICKET = G.AK$TRIP_TICKET)
                 and (substr(t.trip_date,5,2) in ('||'''01'''||','||'''02'''||','||'''03'''||','||'''11'''||','||'''12'''||'))
                 and (S.AK$SPECIES = 165)
                 AND (S.WEIGHT_IN_POUNDS > 500)
                 AND (T.TRIP_DATE > '||'''19990130'''||')
                 AND (T.AK$MRIS_COUNTY NOT IN ('||'''15'''||','||'''16'''||','||'''23'''||','||'''26'''||','||'''28'''||','||'''41'''||','||'''53'''||','||'''54'''||','||'''55'''||','||'''60'''||','||'''65'''||','||'''66'''||','||'''74'''||'))
                 AND ((G.AK$MRIS_GEAR = 40) OR
                 G.AK$MRIS_GEAR BETWEEN 6100 AND 6190)';
    Execute Immediate vString1||vString2;

  • Cursor in EXECUTE IMMEDIATE

    How to use cursor in EXECUTE IMMEDIATE command.
    i.e. I have a dynamic SELECT query where I will get huge records while using EXECUTE IMEDIATE command, which I want that to be in a cursor.
    Can I do this ? If yes how ?

    Hi, it works perferctly fine with me. Oracle version 10.2.0.4
    SQL> --create table t as select * from user_objects; ----->>> My mistake, there is no owner column in the table user_objects
    SQL> create table t as select * from all_objects;
    Table created.
    SQL> CREATE OR REPLACE PROCEDURE dynamic_table (
      2    table_name IN VARCHAR2,
      condition IN VARCHAR2 DEFAULT NULL) AS
      3    4    where_clause VARCHAR2(100) := ' WHERE ' || condition;
      5    v_table varchar2(30);
      6    type v_typet  is table of t%rowtype index by pls_integer;
      7    v_tableT v_typeT;
      8  BEGIN
      -- first make sure that the table actually exists; if not, raise an exception
      SELECT OBJECT_NAME INTO v_table FROM USER_OBJECTS
      9   10   11    where object_name = upper(table_name) and object_type = 'TABLE';
      if condition is null then where_clause := ' order by object_type'; end if;
    12   13    execute immediate 'SELECT * from ' || v_table || where_clause  bulk collect into v_tablet;
    14    for indx in 1..v_tablet.count loop
        dbms_output.put_line(v_tablet(indx).owner || ' ' || v_tablet(indx).status);
    15   16    end loop;
    17    EXCEPTION
    18    when no_data_found then
    19      dbms_output.put_line ('Invalid table: ' || table_name);
    20  end;
    21  /
    Procedure created.
    begin
      dynamic_table('T', '');
      --Enter the table name you want for the 1st parameter and the condition for the second parameter.
      --I think you just want to switch from tables where you want to select.
    end;
    /Edited by: Spongebob on May 25, 2010 1:33 PM

  • Execute immediate ignoring hints

    Hi
    I'm looking for help about an unexpected behavior in oracle. I have a query that it is executed by a stored procedure, and this query has some hints to improve its performance. When I execute the procedure with sqlplus or any other tool, using "exec myprocedure;", the process took between 30 and 40 minutes to complete. But if I call this procedure inside another procedure with execute immediate command, it took more than 5 hours to complete.
    The procedure code is
    execute immediate 'begin '||proc||'; end;';
    proc is a variable that contain the procedure name to run
    It seems that oracle are ignoring my hints when it is executed by execute immediate command. In all tests that I've done I used the same user to connect.
    The version of oracle is 9.2.0
    Tks for any help

    > Why would you do this?
    Presumably he has a variable like "v_which_procedure" which could have the values 'RAISE_PAY()' or 'FIRE_ALL_EMPLOYEES()', and some logic that determines which to use.
    I would agree though that in general it would be better to structure things so that you are not in the position of slotting the name of a procedure dynamically into an EXECUTE IMMEDIATE call.
    I don't see how SQL inside a procedure would know that the procedure itself was called dynamically, so the fact that it seems to be performing differently is a bit of a mystery. I would want to be absolutely sure that that was actually what it was doing.

  • How can i pass multiple values by a single variable to EXECUTE IMMEDIATE

    Hi All,
    I want to pass multiple values for where condition for execute immediate. Something Like this:-
    bold
    Declare
    v_cond varchar(1000);
    Begin
    v_cond := '''INR','USD'''; --(OPTION 1)
    v_cond := 'INR,USD'; --(OPTION 2)
    EXECUTE IMMEDIATE 'Delete from table where colm in (:v_cond)' using v_cond;
    END;
    bold
    I am using this into a procedure
    Now option 1 gives an error ie a syntax error (; expected or something like that)(I am sorry, i can't tell the exact error here as i am not in the office right now)
    and option 2 makes the procedure execute but obviously doesn't delete the records, as it takes the whole as one.
    Please Help
    Regards
    Neeraj Bansal

    See the links containing examples under
    *7. List of values in an IN clause?*
    SQL and PL/SQL FAQ
    from the SQL and PL/SQL FAQ.

  • Developer 6.0 doesn't like EXECUTE IMMEDIATE

    I am trying to use the EXECUTE IMMEDIATE command in a WHEN-NEW-RECORD-INSTANCE trigger. However, no matter what I do, I get the following error when I try to compile the trigger:
    Encountered the symbol "IMMEDIATE" when expecting one of the following:
    := . ( @ % ;
    The symbol ":= was inserted before "IMMEDIATE" to continue.
    My syntax looks good--I don't know what the problem is

    EXECUTE IMMEDIATE , the native dynamic SQL is a feature available only from pl/sql version 8.1.5 . But forms6i is still using pl/sql engin 8.0.6. SO you can create stored procedures ( because Oracle 8i - pl/sql version -8.1.5) and call it in your forms.

  • Dynamic USING clause in execute immediate

    Hi All,
    Is it possible to build a dynamic using clause in execute immediate command.
    EXECUTE IMMEDIATE <dynamic query> USING <dynamic clause>;
    Rgrds,
    Nitin.

    Hi,
    The problem is I have a query in which in some scenarios I want just one column in where clause, in other scenario I need 2 columns in the where clause.
    So I would have to write 2 different queries.
    execute immediate 'SELECT 1 FROM DUAL WHERE 1 = :bind1' into a using 1;
    execute immediate 'SELECT 1 FROM DUAL WHERE 1 = :bind1 AND 2 = :bind2' into a using 1, 2;
    Is there any way I can achieve this in a single query like:
    dynamic_using_str varchar2(100);
    dynamic_using_str := '1';
    execute immediate 'SELECT 1 FROM DUAL WHERE 1 = :bind1' into a using dynamic_using_str;
    dynamic_using_str := '1, 2';
    execute immediate 'SELECT 1 FROM DUAL WHERE 1 = :bind1 AND 2 = :bind2' into a using dynamic_using_str;
    ~Nitin.
    Edited by: user13060845 on Apr 30, 2010 12:29 PM

  • Have problem when using EXECUTE IMMEDIATE.

    Hi, i'm new here... i having problem when trying to use execute immediate statement... :(
    procedure code as below:
    create procedure copy_row(
    p_table varchar2,
    p_key varchar2,
    p_keyval varchar2,
    p_user varchar2,
    p_frmto varchar2 default 'FROM')
    IS
    V_SQL VARCHAR2(500);
    BEGIN
    if upper(p_frmto)='FROM' then
    V_SQL:='INSERT INTO '||P_TABLE||
    ' SELECT * FROM '||P_USER||'.'||P_TABLE||' WHERE '||P_KEY||' = '''||P_KEYVAL||'''';
    elsif upper(p_frmto)='TO' then
    V_SQL:='INSERT INTO '||P_USER||'.'||P_TABLE||
    ' SELECT * FROM '||P_TABLE||' WHERE '||P_KEY||' = '''||P_KEYVAL||'''';
    end if;
    EXECUTE IMMEDIATE V_SQL;
    exception
    when others then
    raise_application_error(-20000,'PROCEDURE: COPY_ROW - UNABLE TO COPY ROWS! SQL='||V_SQL,TRUE);
    end;
    is there any limitation on using EXECUTE IMMEDIATE command? i need to use procedure because i'm using old form builder.... but the database server was 9i which able to use this command, so... i decide to use procedure....
    i've done some testing on this.... assume the structure of schema1.table1 and schema2.table1 are same....
    SQL> CREATE PROCEDURE TESTING IS
    2 BEGIN
    3 exeCute IMMEDIATE 'INSERT INTO schema1.table1 SELECT * FROM schema2.table1 WHERE column1 = ''abc''';
    4 END;
    5 /
    Procedure created.
    SQL> BEGIN
    2 TESTING;
    3 END;
    4 /
    BEGIN
    ERROR at line 1:
    ORA-00942: table or view does not exist
    ORA-06512: at "SCHEMA1.TESTING", line 3
    ORA-06512: at line 2
    any idea?? or have better solution other than this?
    database server:9i
    sqlplus:SQL*Plus: Release 8.0.6.0.0

    Do you have an access to tables you are going to insert into / select from ?
    Dynamic SQL checks the access permissions at runtime, not at the compilation stage:
    SQL> create user master identified by master default tablespace users temporary
      2  tablespace temp;
    User created.
    SQL> alter user master quota unlimited on users;
    User altered.
    SQL> grant create session to master;
    Grant succeeded.
    SQL> grant create table to master;
    Grant succeeded.
    SQL> grant create procedure to master;
    Grant succeeded.
    SQL> conn master/master
    Connected.
    SQL> create procedure wrong_prc
      2  is
      3  begin
      4   execute immediate 'insert into master.t select * from scott.t';
      5  end;
      6  /
    Procedure created.
    SQL> create table t (id number);
    Table created.
    SQL> exec wrong_prc;
    BEGIN wrong_prc; END;
    ERROR at line 1:
    ORA-00942: table or view does not exist
    ORA-06512: at "MASTER.WRONG_PRC", line 4
    ORA-06512: at line 1
    SQL> conn scott/tiger
    Connected.
    SQL> grant select on t to master;
    Grant succeeded.
    SQL> conn master/master
    Connected.
    SQL> exec wrong_prc;
    PL/SQL procedure successfully completed.
    SQL> select * from t;
            ID
             1And don't use literals in dynamic SQL - you should use binding variables instead.
    Rgds.

Maybe you are looking for

  • Browser is not working, please help.

    I have had my Blackberry for a about a month and a half.  For the first few weeks, the browser worked fine and everything was great.  But now, the browser does not work.  My email, facebook, twitter, etc. all still work fine, but can not access anyth

  • XML Validation with XSD in java mapping

    Hi experts, I have created an interface to send differents messages between bussines system, the bussiness system receiver is put in the message, to get this value I have a configuration file indicating the path of this field for each message type. I

  • Transactions in Weblogic 5.1

    Hi there,           I'm fiddling a bit with transactions in Weblogic 5.1, and I might have           misunderstood a few things, 'cause it seems like Weblogic is not doing           the right thing.           I have this entity bean that does not do

  • Payment File Download

    Hi, I am trying to download the payment file generated to my presentation server. This file is generated for Greece company code and has the vendor name in greek language. When downloading it gives me an error that "Individual characters could not be

  • How to use OMJX transaction? Need to add an additional field on MIGO item

    hi guys we need to add a new field on the MIGO screen at the item level. We are trying to explore OMJX to add custom fields. We have used append structutre to enhance the GOITEM structure but are not clear on how to use OMJX. ANy idea how to use the