IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

MAXCC 2000 WHILE COPYING FROm VB FILE TO VB FILE


IBM Mainframe Forums -> PL/I & Assembler
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
Jonai

New User


Joined: 03 Jun 2008
Posts: 11
Location: Hyderabad

PostPosted: Wed Mar 18, 2009 12:52 pm
Reply with quote

Hi all,
Iam getting the following status while trying to copy from Vb file.

ONCODE'=8094 PROTECTION EXCEPTION

Sample code is like this.
FILES: PROCEDURE OPTIONS(MAIN);

DCL PTR1 POINTER;
DCL INFILE FILE RECORD INPUT;
DCL OUTFILE FILE RECORD OUTPUT;
DCL 1 INSTRING BASED (PTR1),
2 CERTNO CHAR(9),
2 COUNT FIXED DECIMAL (1,1),
2 VARPART(1:7 REFER (COUNT)) CHAR(10);


DCL EOF BIT(1) INITIAL('0'B);

PUT SKIP LIST('OPENING FILES');
OPEN FILE(INFILE) INPUT TITLE('TESTIN');
OPEN FILE(OUTFILE) OUTPUT TITLE('TESTOUT');
READ FILE(INFILE) INTO(INSTRING);
ON ENDFILE(INFILE) EOF='1'B;
PUT SKIP LIST('COUNT', COUNT);
DO WHILE(¬EOF='1'B);
CALL LOOP;
END;
CLOSE FILE(INFILE);
CLOSE FILE(OUTFILE);
RETURN;
LOOP:PROCEDURE;
WRITE FILE(OUTFILE) FROM(INSTRING);
READ FILE(INFILE) INTO(INSTRING);
END LOOP;
END FILES;

Variable count is occupying 1 byte in inputfile.....so i kept dec(1,1) to allocate 1 byte( assumed p(1/2)+1/2 bytes....correct me if iam wrong)

Can you plz help me out in resolving this.


Thanks,
Jonai.
Back to top
View user's profile Send private message
senthilnathanj

New User


Joined: 31 Jul 2007
Posts: 47
Location: chennai

PostPosted: Wed Mar 18, 2009 7:02 pm
Reply with quote

Hi,

Code:
FILES: PROCEDURE OPTIONS(MAIN);

DCL PTR1 POINTER;
DCL INFILE FILE RECORD INPUT ENV(VB);
DCL OUTFILE FILE RECORD OUTPUT ENV(VB);
DCL 1 INSTRING BASED (PTR1),
2 CERTNO CHAR(9),
2 COUNT FIXED DECIMAL (1,1),
2 VARPART(1:7 REFER (COUNT)) CHAR(10);


DCL EOF BIT(1) INITIAL('0'B);
ALLOCATE PTR1;
PUT SKIP LIST('OPENING FILES');
OPEN FILE(INFILE) INPUT TITLE('TESTIN');
OPEN FILE(OUTFILE) OUTPUT TITLE('TESTOUT');
READ FILE(INFILE) SET (PTR1);
ON ENDFILE(INFILE) EOF='1'B;
PUT SKIP LIST('COUNT', COUNT);
DO WHILE(¬EOF);
CALL LOOP;
END;
CLOSE FILE(INFILE);
CLOSE FILE(OUTFILE);
RETURN;
LOOP:PROCEDURE;
WRITE FILE(OUTFILE) FROM(INSTRING);
READ FILE(INFILE) SET (INSTRING);
END LOOP;
END FILES;


above code is working fine...
i'm using the input and output file both as VB format.
let me know if i you have any concerns...
Back to top
View user's profile Send private message
Jonai

New User


Joined: 03 Jun 2008
Posts: 11
Location: Hyderabad

PostPosted: Fri Mar 20, 2009 9:54 am
Reply with quote

Thanks for the reply senthilnathanj,

Eventhough i am using both VB files, iam getting the problem mentioned.May be files or records problem...I'll look into it.


Regards,
Jonai.
Back to top
View user's profile Send private message
Garry Carroll

Senior Member


Joined: 08 May 2006
Posts: 1193
Location: Dublin, Ireland

PostPosted: Fri Mar 20, 2009 8:51 pm
Reply with quote

Have you considered the difference between your code

Code:
DO WHILE(¬EOF='1'B);


and that quoted by senthilnathanj
Code:
DO WHILE(¬EOF);


The meaning of ¬EOF is '0'B, so your code effectively is
Code:
Do while('0'B = '1'B);   


That would suggest you never CALL LOOP; ??

Garry.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> PL/I & Assembler

 


Similar Topics
Topic Forum Replies
No new posts Binary File format getting change whi... All Other Mainframe Topics 7
No new posts Compare 2 files and retrive records f... DFSORT/ICETOOL 3
No new posts FTP VB File from Mainframe retaining ... JCL & VSAM 8
No new posts Extract the file name from another fi... DFSORT/ICETOOL 6
No new posts How to split large record length file... DFSORT/ICETOOL 10
Search our Forums:

Back to Top