use of org.compiere.model.MTable in project adempiere by adempiere.
the class TranslationDocSync method doIt.
// prepare
/**
* Perform process.
* @return Message
* @throws Exception
*/
protected String doIt() throws Exception {
MClient client = MClient.get(getCtx());
if (client.isMultiLingualDocument())
throw new AdempiereUserError("@AD_Client_ID@: @IsMultiLingualDocument@");
//
log.info("" + client);
String sql = "SELECT * FROM AD_Table " + "WHERE TableName LIKE '%_Trl' AND TableName NOT LIKE 'AD%' " + "ORDER BY TableName";
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
pstmt = DB.prepareStatement(sql, get_TrxName());
rs = pstmt.executeQuery();
while (rs.next()) {
processTable(new MTable(getCtx(), rs, null), client.getAD_Client_ID());
}
} catch (Exception e) {
log.log(Level.SEVERE, sql, e);
} finally {
DB.close(rs, pstmt);
rs = null;
pstmt = null;
}
return "OK";
}
use of org.compiere.model.MTable in project adempiere by adempiere.
the class VGenPanel method generateComplete.
/**
* Complete generating shipments/invoices.
* Called from Unlock UI
* @param pi process info
*/
public void generateComplete(ProcessInfo pi) {
// Switch Tabs
tabbedPane.setSelectedIndex(1);
//
ProcessInfoUtil.setLogFromDB(pi);
StringBuffer iText = new StringBuffer();
iText.append("<b>").append(pi.getSummary()).append("</b><br>(").append(Msg.getMsg(Env.getCtx(), genForm.getTitle())).append(")<br>").append(pi.getLogInfo(true));
info.setText(iText.toString());
// Reset Selection
/*
String sql = "UPDATE C_Order SET IsSelected='N' WHERE " + m_whereClause;
int no = DB.executeUpdate(sql, null);
log.config("Reset=" + no);*/
// Get results
int[] ids = pi.getIDs();
if (ids == null || ids.length == 0)
return;
log.config("PrintItems=" + ids.length);
confirmPanelGen.getOKButton().setEnabled(false);
// OK to print
if (ADialog.ask(m_WindowNo, this, genForm.getAskPrintMsg())) {
this.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
// see also ProcessDialog.printShipments/Invoices
int retValue = ADialogDialog.A_CANCEL;
do {
// Loop through all items
for (int i = 0; i < ids.length; i++) {
int Record_ID = ids[i];
if (genForm.getPrintFormat() != null) {
MPrintFormat format = genForm.getPrintFormat();
MTable table = MTable.get(Env.getCtx(), format.getAD_Table_ID());
MQuery query = new MQuery(table.getTableName());
query.addRestriction(table.getTableName() + "_ID", MQuery.EQUAL, Record_ID);
// Engine
PrintInfo info = new PrintInfo(table.getTableName(), table.get_Table_ID(), Record_ID);
ReportEngine re = new ReportEngine(Env.getCtx(), format, query, info);
re.print();
new Viewer(m_frame.getGraphicsConfiguration(), re);
} else
ReportCtl.startDocumentPrint(genForm.getReportEngineType(), Record_ID, this, Env.getWindowNo(this), true);
}
// Yamel Senih 2015-11-23 FR [ 114 ] Add Supoort to dynamic create from
ADialogDialog d = new ADialogDialog(m_frame.getCFrame(), Env.getHeader(Env.getCtx(), m_WindowNo), Msg.getMsg(Env.getCtx(), "PrintoutOK?"), JOptionPane.QUESTION_MESSAGE);
// End Yamel Senih
retValue = d.getReturnCode();
} while (retValue == ADialogDialog.A_CANCEL);
this.setCursor(Cursor.getDefaultCursor());
}
// OK to print
//
confirmPanelGen.getOKButton().setEnabled(true);
}
use of org.compiere.model.MTable in project adempiere by adempiere.
the class VSortTab method saveData.
// registerAPanel
/** (non-Javadoc)
* @see org.compiere.grid.APanelTab#saveData()
*/
public void saveData() {
if (!m_aPanel.aSave.isEnabled())
return;
log.fine("");
boolean ok = true;
StringBuffer info = new StringBuffer();
MTable table = MTable.get(Env.getCtx(), m_AD_Table_ID);
// noList - Set SortColumn to null and optional YesNo Column to 'N'
for (int i = 0; i < noModel.getSize(); i++) {
ListItem pp = (ListItem) noModel.getElementAt(i);
if (!pp.isUpdateable())
continue;
if (pp.getSortNo() == 0 && (m_ColumnYesNoName == null || !pp.isYes()))
// no changes
continue;
//
PO po = table.getPO(pp.getKey(), null);
po.set_ValueOfColumn(m_ColumnSortName, 0);
po.set_ValueOfColumn(m_ColumnYesNoName, false);
if (po.save()) {
pp.setSortNo(0);
pp.setIsYes(false);
} else {
ok = false;
if (info.length() > 0)
info.append(", ");
info.append(pp.getName());
log.log(Level.SEVERE, "NoModel - Not updated: " + m_KeyColumnName + "=" + pp.getKey());
}
}
// yesList - Set SortColumn to value and optional YesNo Column to 'Y'
int index = 0;
for (int i = 0; i < yesModel.getSize(); i++) {
ListItem pp = (ListItem) yesModel.getElementAt(i);
if (!pp.isUpdateable())
continue;
index += 10;
if (pp.getSortNo() == index && (m_ColumnYesNoName == null || pp.isYes()))
// no changes
continue;
//
PO po = table.getPO(pp.getKey(), null);
po.set_ValueOfColumn(m_ColumnSortName, index);
po.set_ValueOfColumn(m_ColumnYesNoName, true);
if (po.save()) {
pp.setSortNo(index);
pp.setIsYes(true);
} else {
ok = false;
if (info.length() > 0)
info.append(", ");
info.append(pp.getName());
log.log(Level.SEVERE, "YesModel - Not updated: " + m_KeyColumnName + "=" + pp.getKey());
}
}
//
if (ok) {
setIsChanged(false);
} else {
ADialog.error(m_WindowNo, null, "SaveError", info.toString());
}
}
use of org.compiere.model.MTable in project adempiere by adempiere.
the class MRelationType method retrieveWindowID.
public int retrieveWindowID(final PO po, final MRefTable refTable) {
MTable table = null;
int windowId = refTable.getAD_Window_ID();
if (windowId == 0) {
final int tableId = refTable.getAD_Table_ID();
table = MTable.get(po.getCtx(), tableId);
if (Env.isSOTrx(po.getCtx())) {
windowId = table.getAD_Window_ID();
} else {
windowId = table.getPO_Window_ID();
}
}
if (windowId == 0) {
PORelationException.throwMissingWindowId(po, getAD_Reference_Target().getName(), table.getName(), Env.isSOTrx(po.getCtx()));
}
return windowId;
}
use of org.compiere.model.MTable in project adempiere by adempiere.
the class ImportDelete method doIt.
// prepare
/**
* Perform process.
* @return clear Message
* @throws Exception
*/
protected String doIt() throws Exception {
log.info("AD_Table_ID=" + p_AD_Table_ID);
// get Table Info
MTable table = new MTable(getCtx(), p_AD_Table_ID, get_TrxName());
if (table.get_ID() == 0)
throw new IllegalArgumentException("No AD_Table_ID=" + p_AD_Table_ID);
String tableName = table.getTableName();
if (!tableName.startsWith("I"))
throw new IllegalArgumentException("Not an import table = " + tableName);
// Delete
String sql = "DELETE FROM " + tableName + " WHERE AD_Client_ID=" + getAD_Client_ID();
int no = DB.executeUpdate(sql, get_TrxName());
String msg = Msg.translate(getCtx(), tableName + "_ID") + " #" + no;
return msg;
}
Aggregations