String lastchanged = created;
String lastchangedby = createdby;
Cell txt256Cell = ObjectUtil.findNewCell(mainRow, "T", "TXT256");
String txt256 = (String)txt256Cell.getColumnValue();
DAO dao = DAO.getInstance();
dao.update(Resources.INSERT_R_SQL);
dao.setObject(1, r);
dao.setObject(2, at);
dao.setObject(3, rdate);
dao.setObject(4, created);
dao.setObject(5, createdby);
dao.setObject(6, lastchanged);
dao.setObject(7, lastchangedby);
dao.setObject(8, txt256);
dao.executeUpdate();
int currentRi = 0;
double amt = 0.0;
Iterator rowsIter = mainRow.getRowSet().getRows().iterator();
while (rowsIter.hasNext()) {
Row childRow = (Row)rowsIter.next();
if ( (childRow != null) && (childRow != mainRow) ) {
currentRi++;
txt256Cell = ObjectUtil.findNewCell(childRow, "TI", "TXT256");
txt256 = (String)txt256Cell.getColumnValue();
Cell tcCell = ObjectUtil.findNewCell(childRow, "TI", "TC");
String tc = (String)tcCell.getColumnValue();
Cell tamtCell = ObjectUtil.findNewCell(childRow, "TI", "TAMT");
double tamt = 0.0;
if (tamtCell.getColumnValue() != null) {
tamt = ((Number)tamtCell.getColumnValue()).doubleValue();
}
String lc = FamilyClass.getLocalCurrency();
double xr = XRClass.getExchangeRate(lc, tc, rdate);
double lamt = tamt * xr;
amt+= lamt;
Cell nsCell = ObjectUtil.findNewCell(mainRow, "T", "NS");
String ns = (String)nsCell.getColumnValue();
Cell pCell = ObjectUtil.findNewCell(mainRow, "T", "P");
String p = (String)pCell.getColumnValue();
Cell paCell = ObjectUtil.findNewCell(mainRow, "T", "PA");
String pa = (String)paCell.getColumnValue();
Cell mCell = ObjectUtil.findNewCell(childRow, "TI", "M");
String m = (String)mCell.getColumnValue();
Cell muomCell = ObjectUtil.findNewCell(childRow, "TI", "MUOM");
String muom = (String)muomCell.getColumnValue();
Cell mquanCell = ObjectUtil.findNewCell(childRow, "TI", "MQUAN");
double mquan = 0.0;
if (mquanCell.getColumnValue() != null) {
mquan = ((Number)mquanCell.getColumnValue()).doubleValue();
}
Cell mpriceCell = ObjectUtil.findNewCell(childRow, "TI", "MPRICE");
double mprice = 0.0;
if (mpriceCell.getColumnValue() != null) {
mprice = ((Number)mpriceCell.getColumnValue()).doubleValue();
}
Cell imCell = ObjectUtil.findNewCell(childRow, "TI", "IM");
String im = (String)imCell.getColumnValue();
Cell ipCell = ObjectUtil.findNewCell(childRow, "TI", "IP");
String ip = (String)ipCell.getColumnValue();
Cell ipuomCell = ObjectUtil.findNewCell(childRow, "TI", "IPUOM");
String ipuom = (String)ipuomCell.getColumnValue();
Cell ipquanCell = ObjectUtil.findNewCell(childRow, "TI", "IPQUAN");
double ipquan = 0.0;
if (ipquanCell.getColumnValue() != null) {
ipquan = ((Number)ipquanCell.getColumnValue()).doubleValue();
}
Cell ippriceCell = ObjectUtil.findNewCell(childRow, "TI", "IPPRICE");
double ipprice = 0.0;
if (ippriceCell.getColumnValue() != null) {
ipprice = ((Number)ippriceCell.getColumnValue()).doubleValue();
}
dao.update(Resources.INSERT_RI_SQL);
dao.setObject(1, r);
dao.setObject(2, currentRi);
dao.setObject(3, txt256);
dao.setObject(4, ld);
dao.setObject(5, tc);
dao.setObject(6, -tamt);
dao.setObject(7, lc);
dao.setObject(8, xr);
dao.setObject(9, -lamt);
dao.setObject(10, ns);
dao.setObject(11, p);
dao.setObject(12, pa);
dao.setObject(13, m);
dao.setObject(14, muom);
dao.setObject(15, mquan);
dao.setObject(16, mprice);
dao.setObject(17, null);
dao.setObject(18, im);
dao.setObject(19, ip);
dao.setObject(20, ipuom);
dao.setObject(21, ipquan);
dao.setObject(22, ipprice);
dao.executeUpdate();
}
}
//At this point, setld zhanghu to add ouy.
txt256Cell = ObjectUtil.findNewCell(mainRow, "TI", "TXT256");
txt256 = (String)txt256Cell.getColumnValue();
Cell tcCell = ObjectUtil.findNewCell(mainRow, "TI", "TC");
String tc = (String)tcCell.getColumnValue();
Cell tamtCell = ObjectUtil.findNewCell(mainRow, "TI", "TAMT");
double tamt = 0.0;
if (tamtCell.getColumnValue() != null) {
tamt = amt;
}
String lc = FamilyClass.getLocalCurrency();
double xr = XRClass.getExchangeRate(lc, tc, rdate);
double lamt = tamt * xr;
amt+= lamt;
Cell nsCell = ObjectUtil.findNewCell(mainRow, "T", "NS");
String ns = (String)nsCell.getColumnValue();
Cell pCell = ObjectUtil.findNewCell(mainRow, "T", "P");
String p = (String)pCell.getColumnValue();
Cell paCell = ObjectUtil.findNewCell(mainRow, "T", "PA");
String pa = (String)paCell.getColumnValue();
Cell mCell = ObjectUtil.findNewCell(mainRow, "TI", "M");
String m = (String)mCell.getColumnValue();
Cell muomCell = ObjectUtil.findNewCell(mainRow, "TI", "MUOM");
String muom = (String)muomCell.getColumnValue();
Cell mquanCell = ObjectUtil.findNewCell(mainRow, "TI", "MQUAN");
double mquan = 0.0;
if (mquanCell.getColumnValue() != null) {
mquan = ((Number)mquanCell.getColumnValue()).doubleValue();
}
Cell mpriceCell = ObjectUtil.findNewCell(mainRow, "TI", "MPRICE");
double mprice = 0.0;
if (mpriceCell.getColumnValue() != null) {
mprice = ((Number)mpriceCell.getColumnValue()).doubleValue();
}
Cell imCell = ObjectUtil.findNewCell(mainRow, "TI", "IM");
String im = (String)imCell.getColumnValue();
Cell ipCell = ObjectUtil.findNewCell(mainRow, "TI", "IP");
String ip = (String)ipCell.getColumnValue();
Cell ipuomCell = ObjectUtil.findNewCell(mainRow, "TI", "IPUOM");
String ipuom = (String)ipuomCell.getColumnValue();
Cell ipquanCell = ObjectUtil.findNewCell(mainRow, "TI", "IPQUAN");
double ipquan = 0.0;
if (ipquanCell.getColumnValue() != null) {
ipquan = ((Number)ipquanCell.getColumnValue()).doubleValue();
}
Cell ippriceCell = ObjectUtil.findNewCell(mainRow, "TI", "IPPRICE");
double ipprice = 0.0;
if (ippriceCell.getColumnValue() != null) {
ipprice = ((Number)ippriceCell.getColumnValue()).doubleValue();
}
currentRi++;
dao.update(Resources.INSERT_RI_SQL);
dao.setObject(1, r);
dao.setObject(2, currentRi);
dao.setObject(3, txt256);
dao.setObject(4, ld);
dao.setObject(5, tc);
dao.setObject(6, amt);
dao.setObject(7, lc);
dao.setObject(8, xr);
dao.setObject(9, amt);
dao.setObject(10, ns);
dao.setObject(11, p);
dao.setObject(12, pa);
dao.setObject(13, m);
dao.setObject(14, muom);
dao.setObject(15, mquan);
dao.setObject(16, mprice);
dao.setObject(17, null);
dao.setObject(18, im);
dao.setObject(19, ip);
dao.setObject(20, ipuom);
dao.setObject(21, ipquan);
dao.setObject(22, ipprice);
dao.executeUpdate();
return result;
}