/**********************************************************************/
JRN_MAIN:
/* return command in upper case */
command=word(1,'u');
/* look at first 3 chars */
command=substr(command,1,3);
if lastcode='AD' then addflag=1;
lastcode=' ';
select(command);
/* user deleted record */
when('DEL')
code='D';
/* update the JOURNAL data set */
link WRITEJRN;
/* more program lines */
return;
JRN_TERM:
/* more program lines */
WRITEJRN:
/* create the JOURNAL observation if necessary */
datetime=datetime();
if code='D' then do;
rc=delobs(dsid_chg);
/* set changes obs to all missing */
rc=append(dsid_chg,'noset');
end;
else
/* update with current screen values */
rc=update(dsid_chg);
/* more program lines */
return;
/**********************************************************************/
JRN_TERM:
if _status_='C' then do; /* cancel command entered: */
addflag=0; /* reset add flag */
return; /* stop processing section. */
end;
if addflag then do; /* indicates add in progress */
addflag=0; /* reset add flag */
if command='DEL' /* similar to cancel. */
then return;
else code='AD'; /* else ready to process add */
end;
WRITEJRN:
/* more program lines */
return;
/**********************************************************************/