View previous topic :: View next topic
|
Author |
Message |
dmithunibm
New User
Joined: 23 May 2007 Posts: 18 Location: Bangalore
|
|
|
|
Hi ,
What happens when 'EXEC CICS DELETE' command is executed only with the DATSET name (without specifying the RIDFLD).
Does it delete all the records from the DATASET mentioned in the command?? |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
Was there a READ with UPDATE done before, or is there a browse active? If not, no records will be deleted.
If the only option is DATASET, then you cannot delete all records from the file with the command -- you must use the GENERIC option (which in turn has other requirements) in order to delete all records from a file in CICS. |
|
Back to top |
|
|
dmithunibm
New User
Joined: 23 May 2007 Posts: 18 Location: Bangalore
|
|
|
|
Yeah thanks..
Anyway I got it. If no RIDFLD is specified, the last READ (from the dataset mentioned) is Deleted.... |
|
Back to top |
|
|
Bill O'Boyle
CICS Moderator
Joined: 14 Jan 2008 Posts: 2501 Location: Atlanta, Georgia, USA
|
|
|
|
If you're Browsing and you need to Delete a record which you've just Browsed/Read, you need to save the RIDFLD, issue an ENDBR, issue a Read for Update, issue a DELETE, then restart the Browse, using the saved RIDFLD, using a RESETBR or a STARTBR (increased overhead). If you're using RLS, then you don't need to do this.
You can really be in trouble if the file is NSR (not defined to any LSR Pool) and you could cause a deadly embrace.
Remember, very long NSR Browses don't return control to the QR TCB until an ENDBR is hit or task termination. You DON'T want to cause the QR TCB to go into a wait state.
Otherwise, you're taking a chance of corrupting the data-integrity of the file.
Bill |
|
Back to top |
|
|
|