package cobolprogramclasses;
/************************************************************************
**This file automatically generated from Cobol program ACME99
**Generated at time 12:49:37.77 on Monday, 11/30/09
************************************************************************/
import java.math.BigDecimal;
import coboldataclasses.CallItemsWa;
import coboldataclasses.FileDataWb;
import coboldataclasses.ManfRecFc;
import coboldataclasses.OrderRecFa;
import coboldataclasses.PostageDataWd;
import coboldataclasses.StockRecFb;
import coboldataclasses.UnstringDataWc;
import com.res.javabean.lib.CobolMethod;
import com.res.javabean.lib.Paragraph;
import com.res.javabean.lib.Program;
public class Acme99 extends Program {
//* CS431399R-EXAM.
//@CobolSourceFile("Acme99.cbl",32,1)
//01 ORDER-REC-FA.
private OrderRecFa orderRecFa = new OrderRecFa();
//@CobolSourceFile("Acme99.cbl",40,1)
//01 STOCK-REC-FB.
private StockRecFb stockRecFb = new StockRecFb();
//@CobolSourceFile("Acme99.cbl",54,1)
//01 MANF-REC-FC.
private ManfRecFc manfRecFc = new ManfRecFc();
//@CobolSourceFile("Acme99.cbl",63,1)
//01 CALL-ITEMS-WA.
private CallItemsWa callItemsWa = new CallItemsWa();
//@CobolSourceFile("Acme99.cbl",67,1)
//01 FILE-DATA-WB.
private FileDataWb fileDataWb = new FileDataWb();
//@CobolSourceFile("Acme99.cbl",74,1)
//01 UNSTRING-DATA-WC.
private UnstringDataWc unstringDataWc = new UnstringDataWc();
//@CobolSourceFile("Acme99.cbl",94,1)
//01 POSTAGE-DATA-WD.
private PostageDataWd postageDataWd = new PostageDataWd();
public static void main(String[] args) {
Acme99 instance_ = new Acme99();
instance_.initialize();
instance_.doCobolGotoStart();
System.exit(0);
}
Paragraph createReorderFile=new Paragraph(this) {
public CobolMethod run() {
//@CobolSourceFile("Acme99.cbl",102,4)
//OPEN I-O STOCK-FILE
//@CobolSourceFile("Acme99.cbl",103,4)
//OPEN INPUT MANF-FILE
//@CobolSourceFile("Acme99.cbl",104,4)
//OPEN OUTPUT ORDER-FILE
//@CobolSourceFile("Acme99.cbl",108,4)
//PERFORM UNTIL END-OF-FILE
//...END-PERFORM
while(!fileDataWb.getEndOfFile()) {
//@CobolSourceFile("Acme99.cbl",109,7)
//IF (QTY-IN-STOCK-FB NOT GREATER THAN REORDER-LEVEL-FB)
// AND (NOT-ON-ORDER)
//...END-IF
if((stockRecFb.getQtyInStockFb() <= stockRecFb.getReorderLevelFb()) && (stockRecFb.getNotOnOrder())) {
//@CobolSourceFile("Acme99.cbl",111,14)
//PERFORM CREATE-REORDER-RECORD
doCobolPerform(createReorderRecord,null);
};
//@CobolSourceFile("Acme99.cbl",112,14)
//PERFORM UPDATE-STOCK-RECORD
doCobolPerform(updateStockRecord,null);
}
//@CobolSourceFile("Acme99.cbl",118,4)
//CLOSE STOCK-FILE MANF-FILE ORDER-FILE
//@CobolSourceFile("Acme99.cbl",119,4)
//STOP RUN
System.exit(0);
return doCobolExit();
}
};
Paragraph createReorderRecord=new Paragraph(this) {
public CobolMethod run() {
//@CobolSourceFile("Acme99.cbl",122,4)
//MOVE MANF-CODE-FB TO MANF-CODE-FC
manfRecFc.setManfCodeFc(stockRecFb.getManfCodeFb());
//@CobolSourceFile("Acme99.cbl",128,4)
//PERFORM EXTRACT-ADDRESS-ITEMS
doCobolPerform(extractAddressItems,null);
//@CobolSourceFile("Acme99.cbl",130,4)
//MOVE ZEROS TO POSTAGE-FA COST-OF-ITEMS-FA
orderRecFa.setPostageFa(new BigDecimal(0));
orderRecFa.setCostOfItemsFa(new BigDecimal(0));
//@CobolSourceFile("Acme99.cbl",131,4)
//IF EEC-COUNTRY
//...END-IF
if(unstringDataWc.getEecCountry()) {
//@CobolSourceFile("Acme99.cbl",132,7)
//PERFORM GET-POSTAGE
doCobolPerform(getPostage,null);
//@CobolSourceFile("Acme99.cbl",133,7)
//MULTIPLY ITEM-COST-FB BY REORDER-QTY-FB
// GIVING COST-OF-ITEMS-FA
orderRecFa.setCostOfItemsFa(new BigDecimal(stockRecFb.getItemCostFb()*stockRecFb.getReorderQtyFb()));
//@CobolSourceFile("Acme99.cbl",135,7)
//MOVE POST-CHARGE-WA TO POSTAGE-FA
orderRecFa.setPostageFa(callItemsWa.getPostChargeWa());
}
//@CobolSourceFile("Acme99.cbl",138,4)
//MOVE ITEM-DESC-FB TO ITEM-DESC-FA
orderRecFa.setItemDescFa(stockRecFb.getItemDescFb());
//@CobolSourceFile("Acme99.cbl",139,4)
//MOVE MANF-NAME-FC TO MANF-NAME-FA
orderRecFa.setManfNameFa(manfRecFc.getManfNameFc());
//@CobolSourceFile("Acme99.cbl",140,4)
//MOVE REORDER-QTY-FB TO QTY-REQUIRED-FA
orderRecFa.setQtyRequiredFa(stockRecFb.getReorderQtyFb());
//@CobolSourceFile("Acme99.cbl",141,4)
//WRITE ORDER-REC-FA
return doCobolExit();
}
};
Paragraph getPostage=new Paragraph(this) {
public CobolMethod run() {
//@CobolSourceFile("Acme99.cbl",144,4)
//IF IRELAND AND NOT NORTHERN-COUNTY
// ELSE
//END-IF
if(unstringDataWc.getIreland() && !unstringDataWc.getNorthernCounty()) {
//@CobolSourceFile("Acme99.cbl",145,18)
//SET REPUBLIC TO TRUE
} else {
//@CobolSourceFile("Acme99.cbl",147,18)
//SET OTHER-EEC TO TRUE
}
//@CobolSourceFile("Acme99.cbl",149,4)
//MULTIPLY ITEM-WEIGHT-FB BY REORDER-QTY-FB
// GIVING TOTAL-WEIGHT-WD
// ON SIZE ERROR
try {
postageDataWd.setTotalWeightWd(stockRecFb.getItemWeightFb()*stockRecFb.getReorderQtyFb());
} catch(ArithmeticException e) {
//@CobolSourceFile("Acme99.cbl",151,28)
//MOVE 99999 TO TOTAL-WEIGHT-WD
postageDataWd.setTotalWeightWd(99999);
}
//@CobolSourceFile("Acme99.cbl",153,4)
//EVALUATE TOTAL-WEIGHT-WD ALSO REPUBLIC ALSO OTHER-EEC
// WHEN 1 THRU 500 ALSO TRUE ALSO FALSE
// WHEN 1 THRU 500 ALSO FALSE ALSO TRUE
// WHEN 501 THRU 1000 ALSO TRUE ALSO FALSE
// WHEN 501 THRU 1000 ALSO FALSE ALSO TRUE
// WHEN 1001 THRU 3000 ALSO TRUE ALSO FALSE
// WHEN 1001 THRU 3000 ALSO FALSE ALSO TRUE
// WHEN 3001 THRU 5000 ALSO TRUE ALSO FALSE
// WHEN 3001 THRU 5000 ALSO FALSE ALSO TRUE
// WHEN 5001 THRU 10000 ALSO TRUE ALSO FALSE
// WHEN 5001 THRU 10000 ALSO FALSE ALSO TRUE
// WHEN 10001 THRU 50000 ALSO TRUE ALSO FALSE
// WHEN 10001 THRU 50000 ALSO FALSE ALSO TRUE
// WHEN 50001 THRU 99999 ALSO ANY ALSO ANY
// WHEN OTHER
//END-EVALUATE
//@CobolSourceFile("Acme99.cbl",154,54)
//MOVE 1 TO POST-NUM-WA
callItemsWa.setPostNumWa(1);
//@CobolSourceFile("Acme99.cbl",155,54)
//MOVE 2 TO POST-NUM-WA
callItemsWa.setPostNumWa(2);
//@CobolSourceFile("Acme99.cbl",156,54)
//MOVE 3 TO POST-NUM-WA
callItemsWa.setPostNumWa(3);
//@CobolSourceFile("Acme99.cbl",157,54)
//MOVE 4 TO POST-NUM-WA
callItemsWa.setPostNumWa(4);
//@CobolSourceFile("Acme99.cbl",158,54)
//MOVE 5 TO POST-NUM-WA
callItemsWa.setPostNumWa(5);
//@CobolSourceFile("Acme99.cbl",159,54)
//MOVE 6 TO POST-NUM-WA
callItemsWa.setPostNumWa(6);
//@CobolSourceFile("Acme99.cbl",160,54)
//MOVE 7 TO POST-NUM-WA
callItemsWa.setPostNumWa(7);
//@CobolSourceFile("Acme99.cbl",161,54)
//MOVE 8 TO POST-NUM-WA
callItemsWa.setPostNumWa(8);
//@CobolSourceFile("Acme99.cbl",162,54)
//MOVE 9 TO POST-NUM-WA
callItemsWa.setPostNumWa(9);
//@CobolSourceFile("Acme99.cbl",163,54)
//MOVE 10 TO POST-NUM-WA
callItemsWa.setPostNumWa(10);
//@CobolSourceFile("Acme99.cbl",164,54)
//MOVE 11 TO POST-NUM-WA
callItemsWa.setPostNumWa(11);
//@CobolSourceFile("Acme99.cbl",165,54)
//MOVE 12 TO POST-NUM-WA
callItemsWa.setPostNumWa(12);
//@CobolSourceFile("Acme99.cbl",166,54)
//MOVE ZEROS
//TO POST-CHARGE-WA
callItemsWa.setPostChargeWa(new BigDecimal(0));
//@CobolSourceFile("Acme99.cbl",168,17)
//DISPLAY "EVALUATE WRONG:- WEIGHT = " TOTAL-WEIGHT-WD
// " COUNTRY FLAG = " COUNTRY-FLAGS-WC
System.out.println("EVALUATE WRONG:- WEIGHT = "+PostageDataWd.totalWeightWdFmt_.format(postageDataWd.getTotalWeightWd())+" COUNTRY FLAG = "+UnstringDataWc.countryFlagsWcFmt_.format(unstringDataWc.getCountryFlagsWc()));
//@CobolSourceFile("Acme99.cbl",171,4)
//IF NOT OVER-WEIGHT
//...END-IF
if(!postageDataWd.getOverWeight()) {
//@CobolSourceFile("Acme99.cbl",172,7)
//CALL "POSTAGE-RATE"
// USING BY CONTENT POST-NUM-WA
// BY REFERENCE POST-CHARGE-WA
}
return doCobolExit();
}
};
Paragraph updateStockRecord=new Paragraph(this) {
public CobolMethod run() {
//@CobolSourceFile("Acme99.cbl",180,4)
//MOVE "Y" TO ON-ORDER-FB
stockRecFb.setOnOrderFb("Y");
//@CobolSourceFile("Acme99.cbl",181,4)
//REWRITE STOCK-REC-FB
// INVALID KEY
//END-REWRITE
//@CobolSourceFile("Acme99.cbl",182,24)
//DISPLAY "STOCK REWRITE STATUS = " STOCK-STATUS-WB
System.out.println("STOCK REWRITE STATUS = "+fileDataWb.getStockStatusWb());
return doCobolExit();
}
};
Paragraph extractAddressItems=new Paragraph(this) {
public CobolMethod run() {
//@CobolSourceFile("Acme99.cbl",188,4)
//MOVE 1 TO UNSTRING-POINTER-WC
unstringDataWc.setUnstringPointerWc(1);
//@CobolSourceFile("Acme99.cbl",189,4)
//PERFORM UNTIL END-OF-ADDRESS
//...END-PERFORM
while(!unstringDataWc.getEndOfAddress()) {
//@CobolSourceFile("Acme99.cbl",190,12)
//MOVE HOLD-STRING-WC TO COUNTY-WC
unstringDataWc.setCountyWc(unstringDataWc.getHoldStringWc());
//@CobolSourceFile("Acme99.cbl",191,12)
//UNSTRING MANF-ADDRESS-FC DELIMITED BY ","
// INTO HOLD-STRING-WC
// WITH POINTER UNSTRING-POINTER-WC
};
//@CobolSourceFile("Acme99.cbl",195,4)
//MOVE HOLD-STRING-WC TO COUNTRY-WC
unstringDataWc.setCountryWc(unstringDataWc.getHoldStringWc());
//* debugging displays
//@CobolSourceFile("Acme99.cbl",198,4)
//DISPLAY "COUNTY = " COUNTY-WC
System.out.println("COUNTY = "+unstringDataWc.getCountyWc());
//@CobolSourceFile("Acme99.cbl",199,4)
//DISPLAY "COUNTRY = " COUNTRY-WC
System.out.println("COUNTRY = "+unstringDataWc.getCountryWc());
return doCobolExit();
}
};
private Acme99() {
}
private void initialize() {
orderRecFa.initialize();
stockRecFb.initialize();
manfRecFc.initialize();
callItemsWa.initialize();
fileDataWb.initialize();
unstringDataWc.initialize();
postageDataWd.initialize();
}
}