SoftwareMining - Business Rule Extraction and Documentation
| Business Rule |
COMP_SCL.CBL |
||
| COBOL Documentation |
|
||
| Persistent Records: | |||
| Signature (From Linkage Section) | |||
| Working Storage Section |
| Analyst's Description/Comments |
Data Filters Applied to this rule:
|
| Business Rule Code |
/**
* main_M1080
*/
public void main_M1080 (){
company.open(ACMBasePersistence.OPEN_MODE_INPUT);
perform("initializeCompany_M1090");
while ( true ){
// termination condition
if(ACMUtil.ACMCheck88Vars(iData.getWsAnswer(), iData.wsAnswerWsTerminate))
break;
if (ACMUtil.ACMCheck88Vars(iData.getWsAnswer(), iData.wsAnswerWsNext)) {
if (iData.getWsRestartFlag().getAsInt() == 1) {
perform("initializeCompany_M1090");
}
if (iData.getWsBreakFlag().getAsInt() == 0) {
perform("readNextCompany_M1100");
}
} else if (ACMUtil.ACMCheck88Vars(iData.getWsAnswer(), iData.wsAnswerWsTerminate)) {
iData.getWsErrMess().fill(" ");
} else {
iData.setWsErrMess("Invalid choice");
}
}
company.close();
goBack();
}
/**
* initializeCompany_M1090
*/
public void initializeCompany_M1090 (){
company.setCoRecType(1);
company.setCoId(0);
iData.setWsRestartFlag(0);
iData.setWsBreakFlag(0);
iData.setWsAnswer("N");
// START statement
try {
company.seek(company.getKey1(), ACMBasePersistence.CONDITION_TYPE_GREATER);
} catch (InvalidKeyException e){
iData.setWsBreakFlag(1);
iData.setWsErrMess("Company file empty");
}
}
/**
* readNextCompany_M1100
*/
public void readNextCompany_M1100 (){
// INITIALIZE
ACMInitialize.initialize(iData.getWsCompTable());
iData.setWsEndFlag(0);
iData.setWsN(0);
while ( true ){
// termination condition
if(iData.getWsN().getAsInt() > 10)
break;
iData.setWsN(iData.getWsN().getAsInt() + 1);
// READ statement
try {
company.next();
} catch (AtEndException e){
iData.setWsEndFlag(1);
}
if (iData.getWsEndFlag().getAsInt() == 1) {
iData.setWsRestartFlag(1);
iData.setWsN(12);
} else {
iData.getWsCompId(iData.getWsN().getAsInt() - 1).setValue(company.getCoId());
iData.getWsCompName(iData.getWsN().getAsInt() - 1).setValue(company.getCompanyNameValue());
}
}
if (iData.getWsRestartFlag().getAsInt() == 1) {
iData.setWsErrMess("Last record reached, restarting");
}
}
|