%@ page language="java" session="true" import="wt.fc.*, wt.part.*,com.infoengine.object.factory.*,java.io.*,java.util.*"%>
<%@taglib uri="http://www.ptc.com/infoengine/taglib/core" prefix="ie"%>
<%@ include file="/netmarkets/jsp/util/begin.jsp"%>
<%!
public String pad(String sValue, int length, boolean leftpad) {
StringBuffer sbValue = new StringBuffer(sValue);
while(sbValue.length() < length) {
if(leftpad){
sbValue.insert(0,'0');
}
else {
sbValue.append('0');
}
}
return sbValue.toString();
}
//Pads left side of "." to four characters and right side to 4 characters
public String formatQty(float qty) {
StringBuffer sbValue = new StringBuffer(String.valueOf(qty));
//Get left and rigt part, separated by "."
String left=sbValue.substring(0,sbValue.indexOf("."));
String right=sbValue.substring(sbValue.indexOf(".")+1);
return pad(left,4,true)+","+pad(right,4,false);
}
%>
<%
//Get the group from the VDB
Group obj = ieServ.getGroup("obj");
//Retrieve attributes of first element
Element e1 = obj.getElementAt(0);
String oObid = (String)e1.getValue("obid");
String oName = (String)e1.getValue("name");
String oNumber = (String)e1.getValue("number");
String oItemGroup = (String)e1.getValue("ITEMGROUP");
if(oItemGroup==null)oItemGroup="-";
%>
Strukturlista för <%=oNumber%>
Namn: <%=oName%>
Artikelgrupp: <%=oItemGroup%>
NAMN
NUMMER
ARTIKELGRUPP
KVANTITET
DIMENSION
ARTNO
<%
//Create Hashtable to hold quantity for each number
Hashtable ht = new Hashtable();
//int totalQuantity = 0;
float totalQuantity = 0;
String errorMessage="";
//Get the group from the VDB and loop through the resultset
Group temp = ieServ.getGroup("tree");
int count = temp.getElementCount();
for(int i=0;i
<%=name%>
<%=number%>
<%=ItemGroup%>
<%=quantityString%>
<%=dimensionString%>
<%=artNo%>
<% } %>
<%
//Following section creates the export file
//Sort numbers
Vector artVector = new Vector(ht.keySet());
Collections.sort(artVector);
Collections.reverse(artVector);
//Line 1
if(oNumber.length()==8)oNumber="60"+oNumber;
if(oNumber.length()!=10)errorMessage="Articlenumber incorrect for Structure: "+oNumber +" Name: "+oName;
String text=pad(oNumber,14,false);
//Step to line 36
for(int j=0;j<35;j++){
text=text+"\r\n";
}
//Create Line 36 and down
//Every line consists of article number, padded by zeroes and quantity(4 characters+ "." + 4 decimals)
for (Enumeration eArt = artVector.elements(); eArt.hasMoreElements();) {
String artIndex = (String)eArt.nextElement();
float artQuantity = ((Float)ht.get(artIndex)).floatValue();
text=text+pad(artIndex,14,false)+formatQty(artQuantity)+"\r\n";
System.out.println("Listing: "+artIndex+" "+ artQuantity );
}
String thePath = "c:\\dataaxapta\\BOM.txt";
File file = new File(thePath);
Writer writer = new BufferedWriter(new FileWriter(file));
writer.write(text);
writer.flush();
writer.close();
%>
<%@ include file="/netmarkets/jsp/util/end.jsp"%>