2014年10月13日 星期一

iDempiere Callout ERP 規則引擎實作 groovy:來料加工單項次取回重量

import org.compiere.model.MTable
import org.compiere.util.DB
import org.compiere.util.Msg
import java.math.BigDecimal
import java.sql.PreparedStatement
import java.sql.ResultSet


// A_WindowNo    A_Tab    A_Field    A_Value    A_OldValue    A_Ctx   BOMQty
if (A_Value!=null)   // A_OldValue!=A_Value)
{
        Integer  ID= (Integer)A_Value;
        String sql = "SELECT 重量kg, 單重g, 桶型_id, 桶號, 批號, 備註 FROM 來料加工單項次 WHERE 來料加工單項次_ID=?";
        PreparedStatement pstmt = DB.prepareStatement(sql, null);
        pstmt.setInt(1, ID.intValue());
        ResultSet rs = pstmt.executeQuery();
        while (rs.next()) {
           BigDecimal ug1 = rs.getBigDecimal("單重g");
           BigDecimal kg1 = rs.getBigDecimal("重量kg");
           int tu1 = rs.getInt("桶型_id");
           String tn1 = rs.getString ("桶號");
           String lo1 = rs.getString ("批號");
           String re1 = rs.getString ("備註");
           kg1= kg1.negate();
           A_Tab.setValue("單重g",  ug1 );
           A_Tab.setValue("重量kg", kg1 );
           A_Tab.setValue("桶型_id", new Integer(tu1) );
           A_Tab.setValue("桶號",  tn1 );
           A_Tab.setValue("批號",  lo1 );
           A_Tab.setValue("備註",  re1 );
       }
}
result=""

沒有留言:

張貼留言