From 619adc7a7fb551d82bf5392cc7dd31eb2b8130d5 Mon Sep 17 00:00:00 2001 From: animfalahuddin Date: Sat, 18 Aug 2018 12:11:46 +0700 Subject: [PATCH] Billing List Model & Form --- .../midsuit/form/BillingListGenerate.java | 315 ++++++++++++++ .../midsuit/form/WBillingListGenerate.java | 337 +++++++++++++++ .../midsuit/model/I_C_BillingList.java | 302 +++++++++++++ .../midsuit/model/I_C_BillingListLine.java | 262 ++++++++++++ .../midsuit/model/MID_MBillingList.java | 24 ++ .../midsuit/model/MID_MBillingListLine.java | 23 + .../midsuit/model/X_C_BillingList.java | 404 ++++++++++++++++++ .../midsuit/model/X_C_BillingListLine.java | 332 ++++++++++++++ .../midsuit/process/BillingListBuffer.java | 39 ++ 9 files changed, 2038 insertions(+) create mode 100644 andromeida.midsuit.project/src/andromedia/midsuit/form/BillingListGenerate.java create mode 100644 andromeida.midsuit.project/src/andromedia/midsuit/form/WBillingListGenerate.java create mode 100644 andromeida.midsuit.project/src/andromedia/midsuit/model/I_C_BillingList.java create mode 100644 andromeida.midsuit.project/src/andromedia/midsuit/model/I_C_BillingListLine.java create mode 100644 andromeida.midsuit.project/src/andromedia/midsuit/model/MID_MBillingList.java create mode 100644 andromeida.midsuit.project/src/andromedia/midsuit/model/MID_MBillingListLine.java create mode 100644 andromeida.midsuit.project/src/andromedia/midsuit/model/X_C_BillingList.java create mode 100644 andromeida.midsuit.project/src/andromedia/midsuit/model/X_C_BillingListLine.java create mode 100644 andromeida.midsuit.project/src/andromedia/midsuit/process/BillingListBuffer.java diff --git a/andromeida.midsuit.project/src/andromedia/midsuit/form/BillingListGenerate.java b/andromeida.midsuit.project/src/andromedia/midsuit/form/BillingListGenerate.java new file mode 100644 index 0000000..ca40b02 --- /dev/null +++ b/andromeida.midsuit.project/src/andromedia/midsuit/form/BillingListGenerate.java @@ -0,0 +1,315 @@ +package andromedia.midsuit.form; + +import java.math.BigDecimal; +import java.security.Timestamp; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.text.DecimalFormat; +import java.util.ArrayList; +import java.util.logging.Level; + +import org.adempiere.util.ProcessUtil; +import org.compiere.apps.IStatusBar; +import org.compiere.apps.form.GenForm; +import org.compiere.minigrid.IDColumn; +import org.compiere.minigrid.IMiniTable; +import org.compiere.model.MDocType; +import org.compiere.model.MInvoice; +import org.compiere.model.MPInstance; +import org.compiere.model.MPInstancePara; +import org.compiere.model.MProcess; +import org.compiere.process.ProcessInfo; +import org.compiere.process.ProcessInfoParameter; +import org.compiere.util.CLogger; +import org.compiere.util.DB; +import org.compiere.util.Env; +import org.compiere.util.KeyNamePair; +import org.compiere.util.Msg; +import org.compiere.util.Trx; + +import andromedia.midsuit.model.MID_MBillingList; +import andromedia.midsuit.model.MID_MBillingListLine; +import andromedia.midsuit.process.BillingListBuffer; + +public class BillingListGenerate extends GenForm { + + private static CLogger Log = CLogger.getCLogger(BillingListGenerate.class); + + public Object m_C_BPartner_ID = null; + public Object m_SalesRep_ID = null; + public Object m_DueDate = null; + public Object m_DocType = null; + public int m_C_DocType_ID = 0; + public BigDecimal grandtotal = Env.ZERO; + @Override + public void configureMiniTable(IMiniTable miniTable) { + // TODO Auto-generated method stub + miniTable.addColumn("Select"); + miniTable.addColumn("Partner"); + miniTable.addColumn("No. Invoice"); + miniTable.addColumn("Sales Rep"); + miniTable.addColumn("Doc Type"); + miniTable.addColumn("DateInvoiced"); + miniTable.addColumn("DueDate"); + miniTable.addColumn("GrandTotal"); + miniTable.addColumn("Open"); + miniTable.addColumn("Paid"); + + miniTable.setMultiSelection(true); + + miniTable.setColumnClass(0, IDColumn.class, false); + miniTable.setColumnClass(1, String.class, true); + miniTable.setColumnClass(2, String.class, true, Msg.translate(Env.getCtx(), "C_Invoice_ID")); + miniTable.setColumnClass(3, String.class, true); + miniTable.setColumnClass(4, String.class, true); + miniTable.setColumnClass(5, Timestamp.class, true); + miniTable.setColumnClass(6, Timestamp.class, false); + miniTable.setColumnClass(7, BigDecimal.class, true); + miniTable.setColumnClass(8, BigDecimal.class, true); + miniTable.setColumnClass(9, BigDecimal.class, true); + + miniTable.autoSize(); + } + + private String getInvoiceSQL() { + + StringBuilder sql = new StringBuilder("SELECT i.C_Invoice_ID, bp.Name, i.DocumentNo, dt.PrintName, i.DateInvoiced," // 1 2 3 4 5 + + " i.DateInvoiced + INTERVAL '1' day * pt.NetDays," // 6 + + " i.GrandTotal," // 7 + + " invoiceopen(i.C_Invoice_ID, null) as Open, au.Name as Sales" // 8 + + " FROM C_Invoice i, C_PaymentTerm pt, C_DocType dt, C_BPartner bp, AD_User au" + + " WHERE pt.C_PaymentTerm_ID = i.C_PaymentTerm_ID" + + " AND i.C_Doctype_ID = dt.C_DocType_ID" + + " AND i.C_BPartner_ID = bp.C_BPartner_ID" + + " AND au.AD_User_ID = i.SalesRep_ID" +// + " AND invoiceopen(i.C_Invoice_ID, null) != 0" + + " AND i.AD_Client_ID=?"); + + if (m_C_BPartner_ID != null) { + sql.append(" AND i.C_BPartner_ID=").append(m_C_BPartner_ID); + } + if (m_SalesRep_ID != null && Integer.valueOf(m_SalesRep_ID.toString()) > 0) { + sql.append(" AND i.SalesRep_ID=").append(m_SalesRep_ID); + } + if (m_DueDate != null) { + sql.append(" AND i.DateInvoiced + INTERVAL '1' day * pt.NetDays=").append(m_DueDate); + } + if (m_DocType != null) { + MDocType docType = new MDocType (Env.getCtx(), (Integer) m_DocType, null); + sql.append(" AND i.IsSOTrx ='").append(docType.isSOTrx()? "Y" : "N").append("'"); + + if(docType.getDocumentNote()!=null) sql.append(" AND ").append(docType.getDocumentNote()); + if(docType.getName().contains("Paid")) { + sql.append(" AND invoiceopen(i.C_Invoice_ID, null) = 0"); + } else { + sql.append(" AND invoiceopen(i.C_Invoice_ID, null) != 0"); + } + } + sql.append(" AND i.DocStatus='CO' "); + sql.append(" ORDER BY bp.Name, i.DocumentNo, i.DateInvoiced"); + + return sql.toString(); + } + + public void executeQuery(KeyNamePair docTypeKNPair, IMiniTable miniTable) { + + int AD_Client_ID = Env.getAD_Client_ID(Env.getCtx()); + + int dt = docTypeKNPair.getKey(); + if (dt != 0) { + m_DocType = dt; + } else { + m_DocType = null; + } + + String sql = getInvoiceSQL(); + + int row = 0; + miniTable.setRowCount(row); + PreparedStatement psm = null; + ResultSet rs = null; + try { + psm = DB.prepareStatement(sql.toString(), null); + psm.setInt(1, AD_Client_ID); + rs = psm.executeQuery(); + while (rs.next()) { + miniTable.setRowCount(row+1); + + BigDecimal grandtotal = rs.getBigDecimal(7); + BigDecimal openamt = rs.getBigDecimal(8); + BigDecimal paid = grandtotal.subtract(openamt); + + miniTable.setValueAt(new IDColumn(rs.getInt(1)), row, 0); + miniTable.setValueAt(rs.getString(2), row, 1); + miniTable.setValueAt(rs.getString(3), row, 2); + miniTable.setValueAt(rs.getString(9), row, 3); + miniTable.setValueAt(rs.getString(4), row, 4); + miniTable.setValueAt(rs.getTimestamp(5), row, 5); + miniTable.setValueAt(rs.getTimestamp(6), row, 6); + miniTable.setValueAt(grandtotal, row, 7); + miniTable.setValueAt(openamt, row, 8); + miniTable.setValueAt(paid, row, 9); + + row++; + } + } catch (Exception e) { + Log.log(Level.SEVERE, sql.toString(), e); + } + + finally { + DB.close(rs, psm); + rs = null; + psm = null; + } +// + miniTable.autoSize(); + } + + public BigDecimal calculateInvoice (ArrayList arr) { + + + DecimalFormat format = null; + BigDecimal nilai = Env.ZERO; + + + + for (Integer selection: arr) { + MInvoice inv = new MInvoice(Env.getCtx(), selection, null); + nilai = nilai.add(inv.getOpenAmt()); + } + + return nilai; + } + + @Override + public void saveSelection(IMiniTable miniTable) { + // TODO Auto-generated method stub + Log.info(""); + ArrayList results = new ArrayList(); + setSelection(null); + + int rows = miniTable.getRowCount(); + for (int i = 0; i < rows; i++) + { + IDColumn id = (IDColumn)miniTable.getValueAt(i, 0); // ID in column 0 + // log.fine( "Row=" + i + " - " + id); + if (id != null && id.isSelected()) + results.add(id.getRecord_ID()); + } + + if (results.size() == 0) + return; + if (Log.isLoggable(Level.CONFIG)) Log.config("Selected #" + results.size()); + setSelection(results); + } + + public String generate(IStatusBar statusBar) { + + String info = ""; + +// StringBuilder insert = new StringBuilder(); +// insert.append("INSERT INTO SMT_BillingList"); + + boolean IsMultipleBPartner = false; + Integer BPartner; + ArrayList selection = new ArrayList(); + selection = getSelection(); + MInvoice inv = new MInvoice(Env.getCtx(), selection.get(0), null); + BPartner = inv.getC_BPartner_ID(); + + setSelectionActive(false); + statusBar.setStatusLine(Msg.getMsg(Env.getCtx(), "BillingListGenerate")); + statusBar.setStatusDB(String.valueOf(getSelection().size())); + + MID_MBillingList objek = new MID_MBillingList(Env.getCtx(), 0, null); + objek.setAD_Org_ID(Env.getAD_Org_ID(Env.getCtx())); + if(m_C_DocType_ID>0){ + objek.set_ValueNoCheck("C_DocType_ID", m_C_DocType_ID); + } + String docNo = ""; + int counter = 0; + for (Integer selectedID: getSelection()) { + MInvoice invoice = new MInvoice(Env.getCtx(), selectedID, null); + if (counter == 0) + BPartner = invoice.getC_BPartner_ID(); + docNo += invoice.getDocumentNo() + "; "; + if (BPartner != invoice.getC_BPartner_ID()) + IsMultipleBPartner = true; + counter++; + } + objek.setIsMultipleBPartner(IsMultipleBPartner); + if (IsMultipleBPartner == false) { + objek.setC_BPartner_ID(BPartner); + } + if (m_C_BPartner_ID != null) + objek.setC_BPartner_ID((Integer)m_C_BPartner_ID); + String information = "BCA Veteran - SURABAYA \nAC : 010.140.7879 \nAN : PT SEMERU TEKNIK"; + String information2 = "BRI Kaliasin - SURABAYA \nAC : 009.601.002.907.302 \nAN : PT SEMERU TEKNIK"; + objek.setDateDoc(Env.getContextAsDate(Env.getCtx(), "Date")); + objek.setDescription(docNo); + objek.setInformation(information); + objek.setInformationT(information2); + objek.setGrandTotal(grandtotal); + +// if(m_DocType!=null) +// objek.set_ValueNoCheck("C_DocType_ID", (Integer)m_DocType); + info += docNo; + objek.saveEx(); + + int idBilling = objek.get_ID(); + +// Log.log(Level.SEVERE, String.valueOf(idBilling)); + + int lineNo = 0; + + for(Integer selectedID: getSelection()) { + info += selectedID.toString(); + MInvoice invoice = new MInvoice(Env.getCtx(), selectedID, null); + lineNo += 10; + MID_MBillingListLine id = new MID_MBillingListLine(Env.getCtx(), 0, null); + id.setC_BillingList_ID(idBilling); + id.setLine(lineNo); + id.setC_BPartner_ID(invoice.getC_BPartner_ID()); + id.setC_Invoice_ID(selectedID); + id.setAD_Org_ID(Env.getAD_Org_ID(Env.getCtx())); + id.setTandaTerima(invoice.get_ValueAsString("TandaTerima")); + java.sql.Timestamp paydate = (java.sql.Timestamp) invoice.get_Value("PayDate"); + id.setPayDate(paydate); + id.saveEx(); + } + + + +// String message = Msg.getMsg(Env.getCtx(), "ProcessNoInstance"); +// info += message; + String trxName = Trx.createTrxName(); + Trx trx = Trx.get(trxName, true); + String sql = "SELECT AD_Process_ID FROM AD_Process WHERE name='BillingListBuffer'"; + int AD_Process_ID = DB.getSQLValue("BillingListBuffer", sql); + + MPInstance instance = new MPInstance(Env.getCtx(), AD_Process_ID, 0); + if (!instance.save()) + { + info = Msg.getMsg(Env.getCtx(), "ProcessNoInstance"); + return info; + } + ProcessInfo pi = new ProcessInfo ("", AD_Process_ID); + pi.setAD_PInstance_ID (instance.getAD_PInstance_ID()); + + // Add Parameters + MPInstancePara para = new MPInstancePara(instance, 10); + para.setParameter("C_BillingList_ID", idBilling); + if (!para.save()) + { + String msg = "No Selection Parameter added"; // not translated + info = msg; + Log.log(Level.SEVERE, msg); + return info; + } + setTrx(trx); + setProcessInfo(pi); + + return info; + } + +} diff --git a/andromeida.midsuit.project/src/andromedia/midsuit/form/WBillingListGenerate.java b/andromeida.midsuit.project/src/andromedia/midsuit/form/WBillingListGenerate.java new file mode 100644 index 0000000..151bfcc --- /dev/null +++ b/andromeida.midsuit.project/src/andromedia/midsuit/form/WBillingListGenerate.java @@ -0,0 +1,337 @@ +package andromedia.midsuit.form; + + +import java.math.BigDecimal; +import java.text.DecimalFormat; +import java.text.NumberFormat; +import java.util.ArrayList; +import java.util.List; +import java.util.Locale; +import java.util.Vector; +import java.util.logging.Level; +import java.util.stream.Collectors; + +import org.adempiere.webui.ClientInfo; +import org.adempiere.webui.LayoutUtils; +import org.adempiere.webui.apps.form.WGenForm; +import org.adempiere.webui.component.Column; +import org.adempiere.webui.component.Columns; +import org.adempiere.webui.component.Label; +import org.adempiere.webui.component.ListModelTable; +import org.adempiere.webui.component.Listbox; +import org.adempiere.webui.component.ListboxFactory; +import org.adempiere.webui.component.Row; +import org.adempiere.webui.editor.WSearchEditor; +import org.adempiere.webui.event.ValueChangeEvent; +import org.adempiere.webui.event.ValueChangeListener; +import org.adempiere.webui.event.WTableModelEvent; +import org.adempiere.webui.event.WTableModelListener; +import org.adempiere.webui.panel.ADForm; +import org.adempiere.webui.panel.IFormController; +import org.adempiere.webui.util.ZKUpdateUtil; +import org.compiere.model.MDocType; +import org.compiere.model.MLookup; +import org.compiere.model.MLookupFactory; +import org.compiere.model.MUser; +import org.compiere.model.Query; +import org.compiere.util.CLogger; +import org.compiere.util.DisplayType; +import org.compiere.util.Env; +import org.compiere.util.KeyNamePair; +import org.compiere.util.Msg; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zk.ui.event.EventListener; +import org.zkoss.zul.North; + +public class WBillingListGenerate extends BillingListGenerate implements IFormController, EventListener, WTableModelListener, ValueChangeListener{ + + private static CLogger log = CLogger.getCLogger(WBillingListGenerate.class); + private WGenForm form; + + private Label lBPartner = new Label(); + private Label lSales = new Label(); + private BigDecimal totalInvoice = Env.ZERO; + private WSearchEditor fBPartner; + private Listbox cmbSales = ListboxFactory.newDropdownListbox(); + private Label lDocType = new Label(); + private Listbox cmbDocType = ListboxFactory.newDropdownListbox(); + private Label sumTxt = new Label(); + private Vector selectedList = new Vector(); + private BigDecimal total = Env.ZERO; + + private int noOfColumn; + + public WBillingListGenerate() { + // TODO Auto-generated constructor stub + log.info(""); + form = new WGenForm(this); + + + try + { + super.dynInit(); + dynInit(); + zkInit(); + form.getMiniTable().addActionListener(this); +// form.postQueryEvent(); + } + catch(Exception ex) + { + log.log(Level.SEVERE, "init", ex); + } + + ClientInfo.onClientInfo(form, this::onClientInfo); + } + + void zkInit() throws Exception { + setupColumns(); + + lBPartner.setText(Msg.translate(Env.getCtx(), "C_BPartner_ID")); + lSales.setText(Msg.translate(Env.getCtx(), "SalesRep_ID")); + sumTxt.setText("0"); + Row row = form.getParameterPanel().newRows().newRow(); + + row.appendCellChild(lDocType.rightAlign()); + ZKUpdateUtil.setHflex(cmbDocType, "true"); + row.appendCellChild(cmbDocType); + row.appendCellChild(lDocType.rightAlign()); + ZKUpdateUtil.setHflex(cmbDocType, "true"); + row.appendCellChild(cmbDocType); + + row = new Row(); + form.getParameterPanel().getRows().appendChild(row); + + row.appendCellChild(lBPartner.rightAlign()); + ZKUpdateUtil.setHflex(fBPartner.getComponent(), "true"); + row.appendCellChild(fBPartner.getComponent()); + row.appendCellChild(lBPartner.rightAlign()); + ZKUpdateUtil.setHflex(fBPartner.getComponent(), "true"); + row.appendCellChild(fBPartner.getComponent()); + + row = new Row(); + form.getParameterPanel().getRows().appendChild(row); + row.appendCellChild(lSales.rightAlign()); + ZKUpdateUtil.setHflex(cmbSales, "true"); + row.appendCellChild(cmbSales); + row.appendCellChild(lSales.rightAlign()); + ZKUpdateUtil.setHflex(cmbSales, "true"); + row.appendCellChild(cmbSales); + row.appendChild(sumTxt.rightAlign()); + if (noOfColumn < 6) + LayoutUtils.compactTo(form.getParameterPanel(), noOfColumn); + else + LayoutUtils.expandTo(form.getParameterPanel(), noOfColumn, true); + + } + + protected void setupColumns() { + noOfColumn = 6; + if (ClientInfo.maxWidth(ClientInfo.MEDIUM_WIDTH-1)) + { + if (ClientInfo.maxWidth(ClientInfo.SMALL_WIDTH-1)) + noOfColumn = 2; + else + noOfColumn = 4; + } + if (noOfColumn == 2) + { + Columns columns = new Columns(); + Column column = new Column(); + column.setWidth("35%"); + columns.appendChild(column); + column = new Column(); + column.setWidth("65%"); + columns.appendChild(column); + form.getParameterPanel().appendChild(columns); + } + } + + public void dynInit() throws Exception { + MLookup bpL = MLookupFactory.get (Env.getCtx(), form.getWindowNo(), 0, 2762, DisplayType.Search); + fBPartner = new WSearchEditor("C_BPartner_ID", false, false, true, bpL); + fBPartner.setReadWrite(false); + lBPartner.setText(Msg.translate(Env.getCtx(), "C_BPartner_ID")); + fBPartner.addValueChangeListener(this); + lDocType.setText(Msg.translate(Env.getCtx(), "C_DocType_ID")); + List docTypes = new Query(Env.getCtx(), MDocType.Table_Name, "DocBaseType =?", null) + .setParameters(new Object[] {"BLI"}) + .setOnlyActiveRecords(true) + .list(); + cmbDocType.addItem(new KeyNamePair(0, "-")); + for(MDocType docType : docTypes){ + cmbDocType.addItem(new KeyNamePair(docType.get_ID(), docType.getName())); + } + cmbDocType.setSelectedIndex(0); + cmbDocType.addActionListener(this); + + cmbSales.addItem(new KeyNamePair(0, "-")); + List reps = new Query(Env.getCtx(), MUser.Table_Name, " c.DocStatus='CO'", null) + .addJoinClause(" JOIN C_Invoice c ON c.SalesRep_ID = AD_User.AD_User_ID ") + .setOnlyActiveRecords(true) + .list(); + reps = reps.stream().distinct().collect(Collectors.toList()); + for(MUser rep : reps){ + cmbSales.addItem(new KeyNamePair(rep.getAD_User_ID(), rep.getName())); + } + cmbSales.setSelectedIndex(0); + cmbSales.addActionListener(this); + form.getStatusBar().setStatusLine(Msg.getMsg(Env.getCtx(), "BillingListGenerateSel"));; + +// form.getMiniTable().addEventListener(Events.ON_CHANGE, this); +// form.getMiniTable().addActionListener(this); + } + + public void executeQuery() + { + KeyNamePair docType = cmbDocType.getSelectedItem().toKeyNamePair(); + if(docType.getKey()==0) + return; + executeQuery(docType, form.getMiniTable()); + if (ClientInfo.maxHeight(ClientInfo.SMALL_HEIGHT-1)) + { + Component comp = form.getParameterPanel().getParent(); + if (comp instanceof North) + ((North)comp).setOpen(false); + } + form.getMiniTable().repaint(); +// form.getMiniTable().removeActionListener(this); +// form.getMiniTable().getEventListeners(Events.ON_CHECK); +// form.getMiniTable().removeEventListener(Events.ON_CHECK, this); +// form.getMiniTable().addEventListener(Events.ON_CHECK, form.getMiniTable()); +// form.addEventListener(Events.ON_CHANGE, this); + form.getMiniTable().addActionListener(this); + + form.invalidate(); + } // executeQuery + + protected void onClientInfo() { + + } + + DecimalFormat formatter = (DecimalFormat) NumberFormat.getInstance(Locale.US); + + public void calculate(Event event) { + DecimalFormat formatter = (DecimalFormat) NumberFormat.getInstance(Locale.US); +// DecimalFormatSymbols symbols = formatter.getDecimalFormatSymbols(); + form.saveSelection(); + + ArrayList selection = getSelection(); + if (selection!=null + && selection.size() > 0 + && isSelectionActive()) { + sumTxt.setText((formatter.format(calculateInvoice(selection))).toString()); + } + } + + + @Override + public void valueChange(ValueChangeEvent e) { + // TODO Auto-generated method stub + + log.log(Level.SEVERE, "valuechange " + e.getPropertyName()); + + if (log.isLoggable(Level.INFO)) log.info(e.getPropertyName() + "=" + e.getNewValue()); + if (e.getPropertyName().equals("C_BPartner_ID")) { + m_C_BPartner_ID = e.getNewValue(); + fBPartner.setValue(m_C_BPartner_ID); // display value + } + if (e.getPropertyName().equals("C_DocType_ID")) { + m_DocType = e.getNewValue(); + if((Integer)e.getOldValue()==0) + cmbDocType.removeItemAt(0); + cmbDocType.setValue(m_DocType); + } + if (e.getPropertyName().equals("SalesRep_ID")) { + m_SalesRep_ID = e.getNewValue(); +// if((Integer)e.getOldValue()==0) +// cmbSales.removeItemAt(0); + cmbSales.setValue(m_DocType); + } + + form.postQueryEvent(); + } + + @Override + public ADForm getForm() { + // TODO Auto-generated method stub + return form; + } + + @Override + public void onEvent(Event event) { + // TODO Auto-generated method stub + log.log(Level.SEVERE, event.toString()); + + if(cmbDocType.equals(event.getTarget())) + { + if(cmbDocType.getItemAtIndex(0).toKeyNamePair().getKey()==0) + cmbDocType.removeItemAt(0); + + MDocType docType = new MDocType (Env.getCtx(), cmbDocType.getSelectedItem().toKeyNamePair().getKey(), null); + Env.setContext(Env.getCtx(), form.getWindowNo(), "IsSOTrx", docType.isSOTrx()? "Y": "N"); + m_C_DocType_ID = docType.get_ID(); + fBPartner.setReadWrite(true); + + form.postQueryEvent(); + return; + } + if(cmbSales.equals(event.getTarget())) + { + if(cmbSales.getItemAtIndex(0).toKeyNamePair().getKey()==0) +// cmbSales.removeItemAt(0); + m_SalesRep_ID = cmbSales.getSelectedItem().toKeyNamePair().getKey(); + if(!(cmbDocType.getItemAtIndex(0).toKeyNamePair().getKey()==0)) + form.postQueryEvent(); + return; + } + + if(event.getTarget().equals(form.getMiniTable())) { + log.log(Level.SEVERE, "di select"); + ListModelTable model = form.getMiniTable().getModel(); + Object[] dataSets = model.getSelection().toArray(new Object[model.getSelection().size()]); + totalInvoice = Env.ZERO; + for(Object dataSet : dataSets) { + List data = (List) dataSet; + BigDecimal a = (BigDecimal) data.get(7); + totalInvoice = totalInvoice.add(a); + } + + sumTxt.setText(formatter.format(totalInvoice)); + grandtotal = totalInvoice; + +// log.log(Level.SEVERE, totalInvoice.toString()); + }else { + validate(); + } +// if(event.getName().equals("onSelect")) { +// calculate(); +// } +// +// validate(); + } + + public void validate() { + form.saveSelection(); + + ArrayList selection = getSelection(); + if (selection!=null + && selection.size() > 0 + && isSelectionActive()) { + form.generate(); + } + } + + public String generate() { + log.log(Level.SEVERE, String.valueOf(form.getStatusBar())); + return generate(form.getStatusBar()); + } + + @Override + public void tableChanged(WTableModelEvent event) { + // TODO Auto-generated method stub + int row = event.getFirstRow(); + log.log(Level.SEVERE, event.toString()); + } + +} diff --git a/andromeida.midsuit.project/src/andromedia/midsuit/model/I_C_BillingList.java b/andromeida.midsuit.project/src/andromedia/midsuit/model/I_C_BillingList.java new file mode 100644 index 0000000..274bdf5 --- /dev/null +++ b/andromeida.midsuit.project/src/andromedia/midsuit/model/I_C_BillingList.java @@ -0,0 +1,302 @@ +/****************************************************************************** + * Product: iDempiere ERP & CRM Smart Business Solution * + * Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. * + * This program is free software, you can redistribute it and/or modify it * + * under the terms version 2 of the GNU General Public License as published * + * by the Free Software Foundation. This program is distributed in the hope * + * that it will be useful, but WITHOUT ANY WARRANTY, without even the implied * + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * + * See the GNU General Public License for more details. * + * You should have received a copy of the GNU General Public License along * + * with this program, if not, write to the Free Software Foundation, Inc., * + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * + * For the text or an alternative of this public license, you may reach us * + * ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA * + * or via info@compiere.org or http://www.compiere.org/license.html * + *****************************************************************************/ +package andromedia.midsuit.model; + +import java.math.BigDecimal; +import java.sql.Timestamp; +import org.compiere.model.*; +import org.compiere.util.KeyNamePair; + +/** Generated Interface for C_BillingList + * @author iDempiere (generated) + * @version Release 5.1 + */ +@SuppressWarnings("all") +public interface I_C_BillingList +{ + + /** TableName=C_BillingList */ + public static final String Table_Name = "C_BillingList"; + + /** AD_Table_ID=1000031 */ + public static final int Table_ID = MTable.getTable_ID(Table_Name); + + KeyNamePair Model = new KeyNamePair(Table_ID, Table_Name); + + /** AccessLevel = 3 - Client - Org + */ + BigDecimal accessLevel = BigDecimal.valueOf(3); + + /** Load Meta Data */ + + /** Column name AD_Client_ID */ + public static final String COLUMNNAME_AD_Client_ID = "AD_Client_ID"; + + /** Get Client. + * Client/Tenant for this installation. + */ + public int getAD_Client_ID(); + + /** Column name AD_Org_ID */ + public static final String COLUMNNAME_AD_Org_ID = "AD_Org_ID"; + + /** Set Organization. + * Organizational entity within client + */ + public void setAD_Org_ID (int AD_Org_ID); + + /** Get Organization. + * Organizational entity within client + */ + public int getAD_Org_ID(); + + /** Column name C_BillingList_ID */ + public static final String COLUMNNAME_C_BillingList_ID = "C_BillingList_ID"; + + /** Set Billing List */ + public void setC_BillingList_ID (int C_BillingList_ID); + + /** Get Billing List */ + public int getC_BillingList_ID(); + + /** Column name C_BPartner_ID */ + public static final String COLUMNNAME_C_BPartner_ID = "C_BPartner_ID"; + + /** Set Business Partner . + * Identifies a Business Partner + */ + public void setC_BPartner_ID (int C_BPartner_ID); + + /** Get Business Partner . + * Identifies a Business Partner + */ + public int getC_BPartner_ID(); + + public org.compiere.model.I_C_BPartner getC_BPartner() throws RuntimeException; + + /** Column name C_DocType_ID */ + public static final String COLUMNNAME_C_DocType_ID = "C_DocType_ID"; + + /** Set Document Type. + * Document type or rules + */ + public void setC_DocType_ID (int C_DocType_ID); + + /** Get Document Type. + * Document type or rules + */ + public int getC_DocType_ID(); + + public org.compiere.model.I_C_DocType getC_DocType() throws RuntimeException; + + /** Column name Created */ + public static final String COLUMNNAME_Created = "Created"; + + /** Get Created. + * Date this record was created + */ + public Timestamp getCreated(); + + /** Column name CreatedBy */ + public static final String COLUMNNAME_CreatedBy = "CreatedBy"; + + /** Get Created By. + * User who created this records + */ + public int getCreatedBy(); + + /** Column name DateDoc */ + public static final String COLUMNNAME_DateDoc = "DateDoc"; + + /** Set Document Date. + * Date of the Document + */ + public void setDateDoc (Timestamp DateDoc); + + /** Get Document Date. + * Date of the Document + */ + public Timestamp getDateDoc(); + + /** Column name Description */ + public static final String COLUMNNAME_Description = "Description"; + + /** Set Description. + * Optional short description of the record + */ + public void setDescription (String Description); + + /** Get Description. + * Optional short description of the record + */ + public String getDescription(); + + /** Column name DocType_ID */ + public static final String COLUMNNAME_DocType_ID = "DocType_ID"; + + /** Set Document Type */ + public void setDocType_ID (int DocType_ID); + + /** Get Document Type */ + public int getDocType_ID(); + + public org.compiere.model.I_C_DocType getDocType() throws RuntimeException; + + /** Column name DocumentNo */ + public static final String COLUMNNAME_DocumentNo = "DocumentNo"; + + /** Set Document No. + * Document sequence number of the document + */ + public void setDocumentNo (String DocumentNo); + + /** Get Document No. + * Document sequence number of the document + */ + public String getDocumentNo(); + + /** Column name GrandTotal */ + public static final String COLUMNNAME_GrandTotal = "GrandTotal"; + + /** Set Grand Total. + * Total amount of document + */ + public void setGrandTotal (BigDecimal GrandTotal); + + /** Get Grand Total. + * Total amount of document + */ + public BigDecimal getGrandTotal(); + + /** Column name Information */ + public static final String COLUMNNAME_Information = "Information"; + + /** Set Information */ + public void setInformation (String Information); + + /** Get Information */ + public String getInformation(); + + /** Column name InformationT */ + public static final String COLUMNNAME_InformationT = "InformationT"; + + /** Set Information 2 */ + public void setInformationT (String InformationT); + + /** Get Information 2 */ + public String getInformationT(); + + /** Column name IsActive */ + public static final String COLUMNNAME_IsActive = "IsActive"; + + /** Set Active. + * The record is active in the system + */ + public void setIsActive (boolean IsActive); + + /** Get Active. + * The record is active in the system + */ + public boolean isActive(); + + /** Column name isBPShown */ + public static final String COLUMNNAME_isBPShown = "isBPShown"; + + /** Set Show BP */ + public void setisBPShown (boolean isBPShown); + + /** Get Show BP */ + public boolean isBPShown(); + + /** Column name IsMultipleBPartner */ + public static final String COLUMNNAME_IsMultipleBPartner = "IsMultipleBPartner"; + + /** Set Multiple Partner */ + public void setIsMultipleBPartner (boolean IsMultipleBPartner); + + /** Get Multiple Partner */ + public boolean isMultipleBPartner(); + + /** Column name NoMohonBantuan */ + public static final String COLUMNNAME_NoMohonBantuan = "NoMohonBantuan"; + + /** Set No Mohon Bantuan */ + public void setNoMohonBantuan (String NoMohonBantuan); + + /** Get No Mohon Bantuan */ + public String getNoMohonBantuan(); + + /** Column name NoMohonPenyelesaian */ + public static final String COLUMNNAME_NoMohonPenyelesaian = "NoMohonPenyelesaian"; + + /** Set No Mohon Penyelesaian */ + public void setNoMohonPenyelesaian (String NoMohonPenyelesaian); + + /** Get No Mohon Penyelesaian */ + public String getNoMohonPenyelesaian(); + + /** Column name NoPemberitahuan */ + public static final String COLUMNNAME_NoPemberitahuan = "NoPemberitahuan"; + + /** Set No Pemberitahuan */ + public void setNoPemberitahuan (String NoPemberitahuan); + + /** Get No Pemberitahuan */ + public String getNoPemberitahuan(); + + /** Column name Processed */ + public static final String COLUMNNAME_Processed = "Processed"; + + /** Set Processed. + * The document has been processed + */ + public void setProcessed (boolean Processed); + + /** Get Processed. + * The document has been processed + */ + public boolean isProcessed(); + + /** Column name ProcessedOn */ + public static final String COLUMNNAME_ProcessedOn = "ProcessedOn"; + + /** Set Processed On. + * The date+time (expressed in decimal format) when the document has been processed + */ + public void setProcessedOn (BigDecimal ProcessedOn); + + /** Get Processed On. + * The date+time (expressed in decimal format) when the document has been processed + */ + public BigDecimal getProcessedOn(); + + /** Column name Updated */ + public static final String COLUMNNAME_Updated = "Updated"; + + /** Get Updated. + * Date this record was updated + */ + public Timestamp getUpdated(); + + /** Column name UpdatedBy */ + public static final String COLUMNNAME_UpdatedBy = "UpdatedBy"; + + /** Get Updated By. + * User who updated this records + */ + public int getUpdatedBy(); +} diff --git a/andromeida.midsuit.project/src/andromedia/midsuit/model/I_C_BillingListLine.java b/andromeida.midsuit.project/src/andromedia/midsuit/model/I_C_BillingListLine.java new file mode 100644 index 0000000..540452d --- /dev/null +++ b/andromeida.midsuit.project/src/andromedia/midsuit/model/I_C_BillingListLine.java @@ -0,0 +1,262 @@ +/****************************************************************************** + * Product: iDempiere ERP & CRM Smart Business Solution * + * Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. * + * This program is free software, you can redistribute it and/or modify it * + * under the terms version 2 of the GNU General Public License as published * + * by the Free Software Foundation. This program is distributed in the hope * + * that it will be useful, but WITHOUT ANY WARRANTY, without even the implied * + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * + * See the GNU General Public License for more details. * + * You should have received a copy of the GNU General Public License along * + * with this program, if not, write to the Free Software Foundation, Inc., * + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * + * For the text or an alternative of this public license, you may reach us * + * ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA * + * or via info@compiere.org or http://www.compiere.org/license.html * + *****************************************************************************/ +package andromedia.midsuit.model; + +import java.math.BigDecimal; +import java.sql.Timestamp; +import org.compiere.model.*; +import org.compiere.util.KeyNamePair; + +/** Generated Interface for C_BillingListLine + * @author iDempiere (generated) + * @version Release 5.1 + */ +@SuppressWarnings("all") +public interface I_C_BillingListLine +{ + + /** TableName=C_BillingListLine */ + public static final String Table_Name = "C_BillingListLine"; + + /** AD_Table_ID=1000032 */ + public static final int Table_ID = MTable.getTable_ID(Table_Name); + + KeyNamePair Model = new KeyNamePair(Table_ID, Table_Name); + + /** AccessLevel = 3 - Client - Org + */ + BigDecimal accessLevel = BigDecimal.valueOf(3); + + /** Load Meta Data */ + + /** Column name AD_Client_ID */ + public static final String COLUMNNAME_AD_Client_ID = "AD_Client_ID"; + + /** Get Client. + * Client/Tenant for this installation. + */ + public int getAD_Client_ID(); + + /** Column name AD_Org_ID */ + public static final String COLUMNNAME_AD_Org_ID = "AD_Org_ID"; + + /** Set Organization. + * Organizational entity within client + */ + public void setAD_Org_ID (int AD_Org_ID); + + /** Get Organization. + * Organizational entity within client + */ + public int getAD_Org_ID(); + + /** Column name C_BillingList_ID */ + public static final String COLUMNNAME_C_BillingList_ID = "C_BillingList_ID"; + + /** Set Billing List */ + public void setC_BillingList_ID (int C_BillingList_ID); + + /** Get Billing List */ + public int getC_BillingList_ID(); + + public I_C_BillingList getC_BillingList() throws RuntimeException; + + /** Column name C_BillingListLine_ID */ + public static final String COLUMNNAME_C_BillingListLine_ID = "C_BillingListLine_ID"; + + /** Set Billing List Line */ + public void setC_BillingListLine_ID (int C_BillingListLine_ID); + + /** Get Billing List Line */ + public int getC_BillingListLine_ID(); + + /** Column name C_BPartner_ID */ + public static final String COLUMNNAME_C_BPartner_ID = "C_BPartner_ID"; + + /** Set Business Partner . + * Identifies a Business Partner + */ + public void setC_BPartner_ID (int C_BPartner_ID); + + /** Get Business Partner . + * Identifies a Business Partner + */ + public int getC_BPartner_ID(); + + public org.compiere.model.I_C_BPartner getC_BPartner() throws RuntimeException; + + /** Column name C_Invoice_ID */ + public static final String COLUMNNAME_C_Invoice_ID = "C_Invoice_ID"; + + /** Set Invoice. + * Invoice Identifier + */ + public void setC_Invoice_ID (int C_Invoice_ID); + + /** Get Invoice. + * Invoice Identifier + */ + public int getC_Invoice_ID(); + + public org.compiere.model.I_C_Invoice getC_Invoice() throws RuntimeException; + + /** Column name Created */ + public static final String COLUMNNAME_Created = "Created"; + + /** Get Created. + * Date this record was created + */ + public Timestamp getCreated(); + + /** Column name CreatedBy */ + public static final String COLUMNNAME_CreatedBy = "CreatedBy"; + + /** Get Created By. + * User who created this records + */ + public int getCreatedBy(); + + /** Column name Description */ + public static final String COLUMNNAME_Description = "Description"; + + /** Set Description. + * Optional short description of the record + */ + public void setDescription (String Description); + + /** Get Description. + * Optional short description of the record + */ + public String getDescription(); + + /** Column name IsActive */ + public static final String COLUMNNAME_IsActive = "IsActive"; + + /** Set Active. + * The record is active in the system + */ + public void setIsActive (boolean IsActive); + + /** Get Active. + * The record is active in the system + */ + public boolean isActive(); + + /** Column name KetMohonBantuan */ + public static final String COLUMNNAME_KetMohonBantuan = "KetMohonBantuan"; + + /** Set Keterangan Mohon Bantuan */ + public void setKetMohonBantuan (String KetMohonBantuan); + + /** Get Keterangan Mohon Bantuan */ + public String getKetMohonBantuan(); + + /** Column name KetMohonPenyelesaian */ + public static final String COLUMNNAME_KetMohonPenyelesaian = "KetMohonPenyelesaian"; + + /** Set Keterangan Mohon Penyelesaian */ + public void setKetMohonPenyelesaian (String KetMohonPenyelesaian); + + /** Get Keterangan Mohon Penyelesaian */ + public String getKetMohonPenyelesaian(); + + /** Column name KetPemberitahuan */ + public static final String COLUMNNAME_KetPemberitahuan = "KetPemberitahuan"; + + /** Set Keterangan Pemberitahuan */ + public void setKetPemberitahuan (String KetPemberitahuan); + + /** Get Keterangan Pemberitahuan */ + public String getKetPemberitahuan(); + + /** Column name Line */ + public static final String COLUMNNAME_Line = "Line"; + + /** Set Line No. + * Unique line for this document + */ + public void setLine (int Line); + + /** Get Line No. + * Unique line for this document + */ + public int getLine(); + + /** Column name PayDate */ + public static final String COLUMNNAME_PayDate = "PayDate"; + + /** Set Payment date. + * Date Payment made + */ + public void setPayDate (Timestamp PayDate); + + /** Get Payment date. + * Date Payment made + */ + public Timestamp getPayDate(); + + /** Column name Processed */ + public static final String COLUMNNAME_Processed = "Processed"; + + /** Set Processed. + * The document has been processed + */ + public void setProcessed (boolean Processed); + + /** Get Processed. + * The document has been processed + */ + public boolean isProcessed(); + + /** Column name ProcessedOn */ + public static final String COLUMNNAME_ProcessedOn = "ProcessedOn"; + + /** Set Processed On. + * The date+time (expressed in decimal format) when the document has been processed + */ + public void setProcessedOn (BigDecimal ProcessedOn); + + /** Get Processed On. + * The date+time (expressed in decimal format) when the document has been processed + */ + public BigDecimal getProcessedOn(); + + /** Column name TandaTerima */ + public static final String COLUMNNAME_TandaTerima = "TandaTerima"; + + /** Set Tanda Terima */ + public void setTandaTerima (String TandaTerima); + + /** Get Tanda Terima */ + public String getTandaTerima(); + + /** Column name Updated */ + public static final String COLUMNNAME_Updated = "Updated"; + + /** Get Updated. + * Date this record was updated + */ + public Timestamp getUpdated(); + + /** Column name UpdatedBy */ + public static final String COLUMNNAME_UpdatedBy = "UpdatedBy"; + + /** Get Updated By. + * User who updated this records + */ + public int getUpdatedBy(); +} diff --git a/andromeida.midsuit.project/src/andromedia/midsuit/model/MID_MBillingList.java b/andromeida.midsuit.project/src/andromedia/midsuit/model/MID_MBillingList.java new file mode 100644 index 0000000..a302500 --- /dev/null +++ b/andromeida.midsuit.project/src/andromedia/midsuit/model/MID_MBillingList.java @@ -0,0 +1,24 @@ +package andromedia.midsuit.model; + +import java.sql.ResultSet; +import java.util.Properties; + +public class MID_MBillingList extends X_C_BillingList { + + /** + * + */ + private static final long serialVersionUID = -7070015942204002280L; + + public MID_MBillingList(Properties ctx, ResultSet rs, String trxName) { + super(ctx, rs, trxName); + // TODO Auto-generated constructor stub + } + + public MID_MBillingList(Properties ctx, int C_BillingList_ID, String trxName) { + super(ctx, C_BillingList_ID, trxName); + // TODO Auto-generated constructor stub + } + + +} diff --git a/andromeida.midsuit.project/src/andromedia/midsuit/model/MID_MBillingListLine.java b/andromeida.midsuit.project/src/andromedia/midsuit/model/MID_MBillingListLine.java new file mode 100644 index 0000000..3aaa0fc --- /dev/null +++ b/andromeida.midsuit.project/src/andromedia/midsuit/model/MID_MBillingListLine.java @@ -0,0 +1,23 @@ +package andromedia.midsuit.model; + +import java.sql.ResultSet; +import java.util.Properties; + +public class MID_MBillingListLine extends X_C_BillingListLine{ + + /** + * + */ + private static final long serialVersionUID = -4693926046705773136L; + + public MID_MBillingListLine(Properties ctx, ResultSet rs, String trxName) { + super(ctx, rs, trxName); + // TODO Auto-generated constructor stub + } + + public MID_MBillingListLine(Properties ctx, int C_BillingListLine_ID, String trxName) { + super(ctx, C_BillingListLine_ID, trxName); + // TODO Auto-generated constructor stub + } + +} diff --git a/andromeida.midsuit.project/src/andromedia/midsuit/model/X_C_BillingList.java b/andromeida.midsuit.project/src/andromedia/midsuit/model/X_C_BillingList.java new file mode 100644 index 0000000..400e462 --- /dev/null +++ b/andromeida.midsuit.project/src/andromedia/midsuit/model/X_C_BillingList.java @@ -0,0 +1,404 @@ +/****************************************************************************** + * Product: iDempiere ERP & CRM Smart Business Solution * + * Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. * + * This program is free software, you can redistribute it and/or modify it * + * under the terms version 2 of the GNU General Public License as published * + * by the Free Software Foundation. This program is distributed in the hope * + * that it will be useful, but WITHOUT ANY WARRANTY, without even the implied * + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * + * See the GNU General Public License for more details. * + * You should have received a copy of the GNU General Public License along * + * with this program, if not, write to the Free Software Foundation, Inc., * + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * + * For the text or an alternative of this public license, you may reach us * + * ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA * + * or via info@compiere.org or http://www.compiere.org/license.html * + *****************************************************************************/ +/** Generated Model - DO NOT CHANGE */ +package andromedia.midsuit.model; + +import java.math.BigDecimal; +import java.sql.ResultSet; +import java.sql.Timestamp; +import java.util.Properties; +import org.compiere.model.*; +import org.compiere.util.Env; + +/** Generated Model for C_BillingList + * @author iDempiere (generated) + * @version Release 5.1 - $Id$ */ +public class X_C_BillingList extends PO implements I_C_BillingList, I_Persistent +{ + + /** + * + */ + private static final long serialVersionUID = 20180426L; + + /** Standard Constructor */ + public X_C_BillingList (Properties ctx, int C_BillingList_ID, String trxName) + { + super (ctx, C_BillingList_ID, trxName); + /** if (C_BillingList_ID == 0) + { + setC_BillingList_ID (0); + setDocumentNo (null); + } */ + } + + /** Load Constructor */ + public X_C_BillingList (Properties ctx, ResultSet rs, String trxName) + { + super (ctx, rs, trxName); + } + + /** AccessLevel + * @return 3 - Client - Org + */ + protected int get_AccessLevel() + { + return accessLevel.intValue(); + } + + /** Load Meta Data */ + protected POInfo initPO (Properties ctx) + { + POInfo poi = POInfo.getPOInfo (ctx, Table_ID, get_TrxName()); + return poi; + } + + public String toString() + { + StringBuffer sb = new StringBuffer ("X_C_BillingList[") + .append(get_ID()).append("]"); + return sb.toString(); + } + + /** Set Billing List. + @param C_BillingList_ID Billing List */ + public void setC_BillingList_ID (int C_BillingList_ID) + { + if (C_BillingList_ID < 1) + set_ValueNoCheck (COLUMNNAME_C_BillingList_ID, null); + else + set_ValueNoCheck (COLUMNNAME_C_BillingList_ID, Integer.valueOf(C_BillingList_ID)); + } + + /** Get Billing List. + @return Billing List */ + public int getC_BillingList_ID () + { + Integer ii = (Integer)get_Value(COLUMNNAME_C_BillingList_ID); + if (ii == null) + return 0; + return ii.intValue(); + } + + public org.compiere.model.I_C_BPartner getC_BPartner() throws RuntimeException + { + return (org.compiere.model.I_C_BPartner)MTable.get(getCtx(), org.compiere.model.I_C_BPartner.Table_Name) + .getPO(getC_BPartner_ID(), get_TrxName()); } + + /** Set Business Partner . + @param C_BPartner_ID + Identifies a Business Partner + */ + public void setC_BPartner_ID (int C_BPartner_ID) + { + if (C_BPartner_ID < 1) + set_Value (COLUMNNAME_C_BPartner_ID, null); + else + set_Value (COLUMNNAME_C_BPartner_ID, Integer.valueOf(C_BPartner_ID)); + } + + /** Get Business Partner . + @return Identifies a Business Partner + */ + public int getC_BPartner_ID () + { + Integer ii = (Integer)get_Value(COLUMNNAME_C_BPartner_ID); + if (ii == null) + return 0; + return ii.intValue(); + } + + public org.compiere.model.I_C_DocType getC_DocType() throws RuntimeException + { + return (org.compiere.model.I_C_DocType)MTable.get(getCtx(), org.compiere.model.I_C_DocType.Table_Name) + .getPO(getC_DocType_ID(), get_TrxName()); } + + /** Set Document Type. + @param C_DocType_ID + Document type or rules + */ + public void setC_DocType_ID (int C_DocType_ID) + { + if (C_DocType_ID < 0) + set_ValueNoCheck (COLUMNNAME_C_DocType_ID, null); + else + set_ValueNoCheck (COLUMNNAME_C_DocType_ID, Integer.valueOf(C_DocType_ID)); + } + + /** Get Document Type. + @return Document type or rules + */ + public int getC_DocType_ID () + { + Integer ii = (Integer)get_Value(COLUMNNAME_C_DocType_ID); + if (ii == null) + return 0; + return ii.intValue(); + } + + /** Set Document Date. + @param DateDoc + Date of the Document + */ + public void setDateDoc (Timestamp DateDoc) + { + set_Value (COLUMNNAME_DateDoc, DateDoc); + } + + /** Get Document Date. + @return Date of the Document + */ + public Timestamp getDateDoc () + { + return (Timestamp)get_Value(COLUMNNAME_DateDoc); + } + + /** Set Description. + @param Description + Optional short description of the record + */ + public void setDescription (String Description) + { + set_Value (COLUMNNAME_Description, Description); + } + + /** Get Description. + @return Optional short description of the record + */ + public String getDescription () + { + return (String)get_Value(COLUMNNAME_Description); + } + + public org.compiere.model.I_C_DocType getDocType() throws RuntimeException + { + return (org.compiere.model.I_C_DocType)MTable.get(getCtx(), org.compiere.model.I_C_DocType.Table_Name) + .getPO(getDocType_ID(), get_TrxName()); } + + /** Set Document Type. + @param DocType_ID Document Type */ + public void setDocType_ID (int DocType_ID) + { + if (DocType_ID < 1) + set_Value (COLUMNNAME_DocType_ID, null); + else + set_Value (COLUMNNAME_DocType_ID, Integer.valueOf(DocType_ID)); + } + + /** Get Document Type. + @return Document Type */ + public int getDocType_ID () + { + Integer ii = (Integer)get_Value(COLUMNNAME_DocType_ID); + if (ii == null) + return 0; + return ii.intValue(); + } + + /** Set Document No. + @param DocumentNo + Document sequence number of the document + */ + public void setDocumentNo (String DocumentNo) + { + set_ValueNoCheck (COLUMNNAME_DocumentNo, DocumentNo); + } + + /** Get Document No. + @return Document sequence number of the document + */ + public String getDocumentNo () + { + return (String)get_Value(COLUMNNAME_DocumentNo); + } + + /** Set Grand Total. + @param GrandTotal + Total amount of document + */ + public void setGrandTotal (BigDecimal GrandTotal) + { + set_ValueNoCheck (COLUMNNAME_GrandTotal, GrandTotal); + } + + /** Get Grand Total. + @return Total amount of document + */ + public BigDecimal getGrandTotal () + { + BigDecimal bd = (BigDecimal)get_Value(COLUMNNAME_GrandTotal); + if (bd == null) + return Env.ZERO; + return bd; + } + + /** Set Information. + @param Information Information */ + public void setInformation (String Information) + { + set_Value (COLUMNNAME_Information, Information); + } + + /** Get Information. + @return Information */ + public String getInformation () + { + return (String)get_Value(COLUMNNAME_Information); + } + + /** Set Information 2. + @param InformationT Information 2 */ + public void setInformationT (String InformationT) + { + set_Value (COLUMNNAME_InformationT, InformationT); + } + + /** Get Information 2. + @return Information 2 */ + public String getInformationT () + { + return (String)get_Value(COLUMNNAME_InformationT); + } + + /** Set Show BP. + @param isBPShown Show BP */ + public void setisBPShown (boolean isBPShown) + { + set_Value (COLUMNNAME_isBPShown, Boolean.valueOf(isBPShown)); + } + + /** Get Show BP. + @return Show BP */ + public boolean isBPShown () + { + Object oo = get_Value(COLUMNNAME_isBPShown); + if (oo != null) + { + if (oo instanceof Boolean) + return ((Boolean)oo).booleanValue(); + return "Y".equals(oo); + } + return false; + } + + /** Set Multiple Partner. + @param IsMultipleBPartner Multiple Partner */ + public void setIsMultipleBPartner (boolean IsMultipleBPartner) + { + set_Value (COLUMNNAME_IsMultipleBPartner, Boolean.valueOf(IsMultipleBPartner)); + } + + /** Get Multiple Partner. + @return Multiple Partner */ + public boolean isMultipleBPartner () + { + Object oo = get_Value(COLUMNNAME_IsMultipleBPartner); + if (oo != null) + { + if (oo instanceof Boolean) + return ((Boolean)oo).booleanValue(); + return "Y".equals(oo); + } + return false; + } + + /** Set No Mohon Bantuan. + @param NoMohonBantuan No Mohon Bantuan */ + public void setNoMohonBantuan (String NoMohonBantuan) + { + set_Value (COLUMNNAME_NoMohonBantuan, NoMohonBantuan); + } + + /** Get No Mohon Bantuan. + @return No Mohon Bantuan */ + public String getNoMohonBantuan () + { + return (String)get_Value(COLUMNNAME_NoMohonBantuan); + } + + /** Set No Mohon Penyelesaian. + @param NoMohonPenyelesaian No Mohon Penyelesaian */ + public void setNoMohonPenyelesaian (String NoMohonPenyelesaian) + { + set_Value (COLUMNNAME_NoMohonPenyelesaian, NoMohonPenyelesaian); + } + + /** Get No Mohon Penyelesaian. + @return No Mohon Penyelesaian */ + public String getNoMohonPenyelesaian () + { + return (String)get_Value(COLUMNNAME_NoMohonPenyelesaian); + } + + /** Set No Pemberitahuan. + @param NoPemberitahuan No Pemberitahuan */ + public void setNoPemberitahuan (String NoPemberitahuan) + { + set_Value (COLUMNNAME_NoPemberitahuan, NoPemberitahuan); + } + + /** Get No Pemberitahuan. + @return No Pemberitahuan */ + public String getNoPemberitahuan () + { + return (String)get_Value(COLUMNNAME_NoPemberitahuan); + } + + /** Set Processed. + @param Processed + The document has been processed + */ + public void setProcessed (boolean Processed) + { + set_Value (COLUMNNAME_Processed, Boolean.valueOf(Processed)); + } + + /** Get Processed. + @return The document has been processed + */ + public boolean isProcessed () + { + Object oo = get_Value(COLUMNNAME_Processed); + if (oo != null) + { + if (oo instanceof Boolean) + return ((Boolean)oo).booleanValue(); + return "Y".equals(oo); + } + return false; + } + + /** Set Processed On. + @param ProcessedOn + The date+time (expressed in decimal format) when the document has been processed + */ + public void setProcessedOn (BigDecimal ProcessedOn) + { + set_Value (COLUMNNAME_ProcessedOn, ProcessedOn); + } + + /** Get Processed On. + @return The date+time (expressed in decimal format) when the document has been processed + */ + public BigDecimal getProcessedOn () + { + BigDecimal bd = (BigDecimal)get_Value(COLUMNNAME_ProcessedOn); + if (bd == null) + return Env.ZERO; + return bd; + } +} \ No newline at end of file diff --git a/andromeida.midsuit.project/src/andromedia/midsuit/model/X_C_BillingListLine.java b/andromeida.midsuit.project/src/andromedia/midsuit/model/X_C_BillingListLine.java new file mode 100644 index 0000000..32b586c --- /dev/null +++ b/andromeida.midsuit.project/src/andromedia/midsuit/model/X_C_BillingListLine.java @@ -0,0 +1,332 @@ +/****************************************************************************** + * Product: iDempiere ERP & CRM Smart Business Solution * + * Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. * + * This program is free software, you can redistribute it and/or modify it * + * under the terms version 2 of the GNU General Public License as published * + * by the Free Software Foundation. This program is distributed in the hope * + * that it will be useful, but WITHOUT ANY WARRANTY, without even the implied * + * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * + * See the GNU General Public License for more details. * + * You should have received a copy of the GNU General Public License along * + * with this program, if not, write to the Free Software Foundation, Inc., * + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * + * For the text or an alternative of this public license, you may reach us * + * ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA * + * or via info@compiere.org or http://www.compiere.org/license.html * + *****************************************************************************/ +/** Generated Model - DO NOT CHANGE */ +package andromedia.midsuit.model; + +import java.math.BigDecimal; +import java.sql.ResultSet; +import java.sql.Timestamp; +import java.util.Properties; +import org.compiere.model.*; +import org.compiere.util.Env; + +/** Generated Model for C_BillingListLine + * @author iDempiere (generated) + * @version Release 5.1 - $Id$ */ +public class X_C_BillingListLine extends PO implements I_C_BillingListLine, I_Persistent +{ + + /** + * + */ + private static final long serialVersionUID = 20180426L; + + /** Standard Constructor */ + public X_C_BillingListLine (Properties ctx, int C_BillingListLine_ID, String trxName) + { + super (ctx, C_BillingListLine_ID, trxName); + /** if (C_BillingListLine_ID == 0) + { + setC_BillingList_ID (0); + setC_BillingListLine_ID (0); + setLine (0); + } */ + } + + /** Load Constructor */ + public X_C_BillingListLine (Properties ctx, ResultSet rs, String trxName) + { + super (ctx, rs, trxName); + } + + /** AccessLevel + * @return 3 - Client - Org + */ + protected int get_AccessLevel() + { + return accessLevel.intValue(); + } + + /** Load Meta Data */ + protected POInfo initPO (Properties ctx) + { + POInfo poi = POInfo.getPOInfo (ctx, Table_ID, get_TrxName()); + return poi; + } + + public String toString() + { + StringBuffer sb = new StringBuffer ("X_C_BillingListLine[") + .append(get_ID()).append("]"); + return sb.toString(); + } + + public I_C_BillingList getC_BillingList() throws RuntimeException + { + return (I_C_BillingList)MTable.get(getCtx(), I_C_BillingList.Table_Name) + .getPO(getC_BillingList_ID(), get_TrxName()); } + + /** Set Billing List. + @param C_BillingList_ID Billing List */ + public void setC_BillingList_ID (int C_BillingList_ID) + { + if (C_BillingList_ID < 1) + set_ValueNoCheck (COLUMNNAME_C_BillingList_ID, null); + else + set_ValueNoCheck (COLUMNNAME_C_BillingList_ID, Integer.valueOf(C_BillingList_ID)); + } + + /** Get Billing List. + @return Billing List */ + public int getC_BillingList_ID () + { + Integer ii = (Integer)get_Value(COLUMNNAME_C_BillingList_ID); + if (ii == null) + return 0; + return ii.intValue(); + } + + /** Set Billing List Line. + @param C_BillingListLine_ID Billing List Line */ + public void setC_BillingListLine_ID (int C_BillingListLine_ID) + { + if (C_BillingListLine_ID < 1) + set_ValueNoCheck (COLUMNNAME_C_BillingListLine_ID, null); + else + set_ValueNoCheck (COLUMNNAME_C_BillingListLine_ID, Integer.valueOf(C_BillingListLine_ID)); + } + + /** Get Billing List Line. + @return Billing List Line */ + public int getC_BillingListLine_ID () + { + Integer ii = (Integer)get_Value(COLUMNNAME_C_BillingListLine_ID); + if (ii == null) + return 0; + return ii.intValue(); + } + + public org.compiere.model.I_C_BPartner getC_BPartner() throws RuntimeException + { + return (org.compiere.model.I_C_BPartner)MTable.get(getCtx(), org.compiere.model.I_C_BPartner.Table_Name) + .getPO(getC_BPartner_ID(), get_TrxName()); } + + /** Set Business Partner . + @param C_BPartner_ID + Identifies a Business Partner + */ + public void setC_BPartner_ID (int C_BPartner_ID) + { + if (C_BPartner_ID < 1) + set_Value (COLUMNNAME_C_BPartner_ID, null); + else + set_Value (COLUMNNAME_C_BPartner_ID, Integer.valueOf(C_BPartner_ID)); + } + + /** Get Business Partner . + @return Identifies a Business Partner + */ + public int getC_BPartner_ID () + { + Integer ii = (Integer)get_Value(COLUMNNAME_C_BPartner_ID); + if (ii == null) + return 0; + return ii.intValue(); + } + + public org.compiere.model.I_C_Invoice getC_Invoice() throws RuntimeException + { + return (org.compiere.model.I_C_Invoice)MTable.get(getCtx(), org.compiere.model.I_C_Invoice.Table_Name) + .getPO(getC_Invoice_ID(), get_TrxName()); } + + /** Set Invoice. + @param C_Invoice_ID + Invoice Identifier + */ + public void setC_Invoice_ID (int C_Invoice_ID) + { + if (C_Invoice_ID < 1) + set_ValueNoCheck (COLUMNNAME_C_Invoice_ID, null); + else + set_ValueNoCheck (COLUMNNAME_C_Invoice_ID, Integer.valueOf(C_Invoice_ID)); + } + + /** Get Invoice. + @return Invoice Identifier + */ + public int getC_Invoice_ID () + { + Integer ii = (Integer)get_Value(COLUMNNAME_C_Invoice_ID); + if (ii == null) + return 0; + return ii.intValue(); + } + + /** Set Description. + @param Description + Optional short description of the record + */ + public void setDescription (String Description) + { + set_Value (COLUMNNAME_Description, Description); + } + + /** Get Description. + @return Optional short description of the record + */ + public String getDescription () + { + return (String)get_Value(COLUMNNAME_Description); + } + + /** Set Keterangan Mohon Bantuan. + @param KetMohonBantuan Keterangan Mohon Bantuan */ + public void setKetMohonBantuan (String KetMohonBantuan) + { + set_Value (COLUMNNAME_KetMohonBantuan, KetMohonBantuan); + } + + /** Get Keterangan Mohon Bantuan. + @return Keterangan Mohon Bantuan */ + public String getKetMohonBantuan () + { + return (String)get_Value(COLUMNNAME_KetMohonBantuan); + } + + /** Set Keterangan Mohon Penyelesaian. + @param KetMohonPenyelesaian Keterangan Mohon Penyelesaian */ + public void setKetMohonPenyelesaian (String KetMohonPenyelesaian) + { + set_Value (COLUMNNAME_KetMohonPenyelesaian, KetMohonPenyelesaian); + } + + /** Get Keterangan Mohon Penyelesaian. + @return Keterangan Mohon Penyelesaian */ + public String getKetMohonPenyelesaian () + { + return (String)get_Value(COLUMNNAME_KetMohonPenyelesaian); + } + + /** Set Keterangan Pemberitahuan. + @param KetPemberitahuan Keterangan Pemberitahuan */ + public void setKetPemberitahuan (String KetPemberitahuan) + { + set_Value (COLUMNNAME_KetPemberitahuan, KetPemberitahuan); + } + + /** Get Keterangan Pemberitahuan. + @return Keterangan Pemberitahuan */ + public String getKetPemberitahuan () + { + return (String)get_Value(COLUMNNAME_KetPemberitahuan); + } + + /** Set Line No. + @param Line + Unique line for this document + */ + public void setLine (int Line) + { + set_ValueNoCheck (COLUMNNAME_Line, Integer.valueOf(Line)); + } + + /** Get Line No. + @return Unique line for this document + */ + public int getLine () + { + Integer ii = (Integer)get_Value(COLUMNNAME_Line); + if (ii == null) + return 0; + return ii.intValue(); + } + + /** Set Payment date. + @param PayDate + Date Payment made + */ + public void setPayDate (Timestamp PayDate) + { + set_Value (COLUMNNAME_PayDate, PayDate); + } + + /** Get Payment date. + @return Date Payment made + */ + public Timestamp getPayDate () + { + return (Timestamp)get_Value(COLUMNNAME_PayDate); + } + + /** Set Processed. + @param Processed + The document has been processed + */ + public void setProcessed (boolean Processed) + { + set_Value (COLUMNNAME_Processed, Boolean.valueOf(Processed)); + } + + /** Get Processed. + @return The document has been processed + */ + public boolean isProcessed () + { + Object oo = get_Value(COLUMNNAME_Processed); + if (oo != null) + { + if (oo instanceof Boolean) + return ((Boolean)oo).booleanValue(); + return "Y".equals(oo); + } + return false; + } + + /** Set Processed On. + @param ProcessedOn + The date+time (expressed in decimal format) when the document has been processed + */ + public void setProcessedOn (BigDecimal ProcessedOn) + { + set_Value (COLUMNNAME_ProcessedOn, ProcessedOn); + } + + /** Get Processed On. + @return The date+time (expressed in decimal format) when the document has been processed + */ + public BigDecimal getProcessedOn () + { + BigDecimal bd = (BigDecimal)get_Value(COLUMNNAME_ProcessedOn); + if (bd == null) + return Env.ZERO; + return bd; + } + + /** Set Tanda Terima. + @param TandaTerima Tanda Terima */ + public void setTandaTerima (String TandaTerima) + { + set_Value (COLUMNNAME_TandaTerima, TandaTerima); + } + + /** Get Tanda Terima. + @return Tanda Terima */ + public String getTandaTerima () + { + return (String)get_Value(COLUMNNAME_TandaTerima); + } +} \ No newline at end of file diff --git a/andromeida.midsuit.project/src/andromedia/midsuit/process/BillingListBuffer.java b/andromeida.midsuit.project/src/andromedia/midsuit/process/BillingListBuffer.java new file mode 100644 index 0000000..88eadc2 --- /dev/null +++ b/andromeida.midsuit.project/src/andromedia/midsuit/process/BillingListBuffer.java @@ -0,0 +1,39 @@ +package andromedia.midsuit.process; + +import java.util.logging.Level; + +import org.compiere.process.ProcessInfoParameter; +import org.compiere.process.SvrProcess; +import org.compiere.util.Msg; + +import andromedia.midsuit.model.MID_MBillingList; + +public class BillingListBuffer extends SvrProcess{ + + private int p_BillingListID = 0; + + @Override + protected void prepare() { + ProcessInfoParameter[] para = getParameter(); + + for (int i = 0; i < para.length; i++) { + String name = para[i].getParameterName(); + if (para[i].getParameter() == null) { + + } else if (name.equals("C_BillingList_ID")) { + p_BillingListID = (int) para[i].getParameterAsInt(); + } + } + } + + @Override + protected String doIt() throws Exception { + // TODO Auto-generated method stub + MID_MBillingList bl = new MID_MBillingList(getCtx(), p_BillingListID, get_TrxName()); + String message = Msg.parseTranslation(getCtx(), "@C_BillingList_ID@ - " + bl.getDocumentNo()); + addBufferLog(0, null, null, message, bl.get_Table_ID(), + bl.get_ID()); + return message; + } + +}