📄 mininvsupport.java
字号:
package com.power.pipeengine.Report;
import java.util.*;
import java.io.*;
import com.power.pipeengine.Variable.*;
import com.power.pipeengine.Constraint.*;
import com.power.pipeengine.InputData.*;
import com.power.pipeengine.LPModel.*;
import com.power.pipeengine.Entity.*;
import com.power.pipeengine.*;
import com.power.pipe.*;
public class MinInvSupport extends Report
{
private static final MinInvSupport INSTANCE =
new MinInvSupport();
// Private constructor supresses
// default public constructor
private MinInvSupport( ) {
_fileName = "MinInvSupport";
//initFileWriter();
}
public static MinInvSupport getInstance( ) {
return INSTANCE;
}
private StringBuffer content = new StringBuffer();
public void createReport()
throws IOException
{
PIPECalendar cal = DataModel.getInstance().getCalendar();
Inventories inventories = DataModel.getInstance().getInventories();
MinInventories minInvs = DataModel.getInstance().getMinInventories();
InventoryGroups invGroups = DataModel.getInstance().getInventoryGroups();
MinInvSlackVariable minSlackVar = MinInvSlackVariable.getInstance();
int numBuckets = cal.getTotalNumOfBuckets();
Solution sol = Solution.getInstance();
String separator = GlobalConfig.getInstance().getSeparator();
Enumeration allMinInvs = minInvs.getMinInventories().elements();
while( allMinInvs.hasMoreElements() ) {
MinInventory minInv = (MinInventory) allMinInvs.nextElement();
for( int t=1; t<=numBuckets; t++ ) {
if( minInv.getQuantity( t ) == 0 ) continue;
int grpID = minInv.getGroupID();
InventoryGroup invGrp = invGroups.getInventoryGroup( grpID );
Enumeration products = invGrp.getProducts().elements();
Bucket b = cal.getBucket( t );
int qty = (int) minInv.getQuantity( t );
//slack variable in case constrained
String var = minSlackVar.getVariable( grpID, b );
int value = (int) ( sol.getValue( var ) + EngineConfig.getInstance().PRECISION );
String lineOut = grpID + separator +
b.getBucketID() + separator +
b.getFormatedDate() + separator +
qty + separator +
( qty - value ) + "\n";
content.append( lineOut );
}
}
//_myFileWriter.close();
super.flush( content.toString() );
content = null;
System.gc();
}
public void reset() {
content = new StringBuffer();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -