0

我想为每个现金日记帐制作一个类似于文档序列的 GL 类别序列。

我在现金日记帐窗口中添加了一个名为日记帐编号的字段。

我想为每个现金日记帐生成一个数字并将其增加 1?

4

1 回答 1

1

文档序列由 ADempiere 中的 PO.java 类管理。要使用它,您需要在表格中添加一个名为“DocumentNo”的列。您需要在序列表中添加条目以跟踪数字。

这是第一次保存记录时运行的 PO.java 中的代码。

    //  Set new DocumentNo
    String columnName = "DocumentNo";
    int index = p_info.getColumnIndex(columnName);
    if (index != -1 && p_info.getColumn(index).ColumnSQL == null)
    {
        String value = (String)get_Value(index);
        if (value != null && value.startsWith("<") && value.endsWith(">"))
            value = null;
        if (value == null || value.length() == 0)
        {
            int dt = p_info.getColumnIndex("C_DocTypeTarget_ID");
            if (dt == -1)
                dt = p_info.getColumnIndex("C_DocType_ID");
            if (dt != -1)       //  get based on Doc Type (might return null)
                value = DB.getDocumentNo(get_ValueAsInt(dt), m_trxName, false, this);
            if (value == null)  //  not overwritten by DocType and not manually entered
                value = DB.getDocumentNo(getAD_Client_ID(), p_info.getTableName(), m_trxName, this);
            set_ValueNoCheck(columnName, value);
        }
    }
于 2017-10-15T14:01:52.333 回答