Search in sources :

Example 61 with MTable

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";
}
Also used : AdempiereUserError(org.compiere.util.AdempiereUserError) MTable(org.compiere.model.MTable) ResultSet(java.sql.ResultSet) PreparedStatement(java.sql.PreparedStatement) MClient(org.compiere.model.MClient)

Example 62 with MTable

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);
}
Also used : MPrintFormat(org.compiere.print.MPrintFormat) ReportEngine(org.compiere.print.ReportEngine) MTable(org.compiere.model.MTable) ADialogDialog(org.compiere.apps.ADialogDialog) MQuery(org.compiere.model.MQuery) PrintInfo(org.compiere.model.PrintInfo) Viewer(org.compiere.print.Viewer)

Example 63 with MTable

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());
    }
}
Also used : MTable(org.compiere.model.MTable) Point(java.awt.Point) PO(org.compiere.model.PO)

Example 64 with MTable

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;
}
Also used : MTable(org.compiere.model.MTable)

Example 65 with MTable

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;
}
Also used : MTable(org.compiere.model.MTable)

Aggregations

MTable (org.compiere.model.MTable)67 PO (org.compiere.model.PO)18 ResultSet (java.sql.ResultSet)16 SQLException (java.sql.SQLException)16 PreparedStatement (java.sql.PreparedStatement)15 MColumn (org.compiere.model.MColumn)15 Query (org.compiere.model.Query)13 ArrayList (java.util.ArrayList)10 Properties (java.util.Properties)9 AdempiereException (org.adempiere.exceptions.AdempiereException)7 ADLoginRequest (pl.x3E.adInterface.ADLoginRequest)7 XFireFault (org.codehaus.xfire.fault.XFireFault)5 POInfo (org.compiere.model.POInfo)5 Trx (org.compiere.util.Trx)5 DataField (pl.x3E.adInterface.DataField)5 DataRow (pl.x3E.adInterface.DataRow)5 ModelCRUD (pl.x3E.adInterface.ModelCRUD)5 List (java.util.List)4 ParserConfigurationException (javax.xml.parsers.ParserConfigurationException)4 POSaveFailedException (org.adempiere.pipo.exception.POSaveFailedException)4