新多维预算的控制接口说明如下:包路径com.kingdee.eas.ma.nbudget.BgControlCaller (ma_budget_api-client.jar), 该接口会根据多维预算的包是否存在及控制参数来识别是调用新多维预算还是老预算的接口。
/*
* 描述:预算扣减接口
*/
public IControlResult requestBudget(Context ctx, BOSUuid billId) throws BOSException, EASBizException;
public IControlResult requestBudget(BOSUuid billId) throws BOSException, EASBizException;
/*
* 描述:预算强制扣减接口
*/
public IControlResult specialBudget(Context ctx, BOSUuid billId) throws BOSException, EASBizException;
public IControlResult specialBudget(BOSUuid billId) throws BOSException, EASBizException;
/*
* 描述:预算占用接口(资金专用,新多维预算控制没有,只提供老预算的接口调用)
*/
public IControlResult requestOccupation(Context ctx, BOSUuid billId) throws BOSException, EASBizException;
public IControlResult requestOccupation(BOSUuid billId) throws BOSException, EASBizException;
public IControlResult specialOccupation(Context ctx, BOSUuid billId) throws BOSException, EASBizException;
public IControlResult specialOccupation(BOSUuid billId) throws BOSException, EASBizException;
/*
* 描述:预算返还接口
*/
public IControlResult returnBudget(Context ctx, BOSUuid billId) throws BOSException, EASBizException;
public IControlResult returnBudget(BOSUuid billId) throws BOSException, EASBizException;
/*
* 描述:预算余额查询接口
*/
public IBudgetBalance queryBalance(Context ctx, BOSUuid billId) throws BOSException, EASBizException;
public IBudgetBalance queryBalance(BOSUuid billId) throws BOSException, EASBizException;
public IBudgetBalance queryBalance(Context ctx, IObjectValue model) throws BOSException, EASBizException;
public IBudgetBalance queryBalance(IObjectValue model) throws BOSException, EASBizException;
/*
*描述:显示预算余额查询界面
* @param owner 所属UI,必录
*/
public void showBudget(Component owner, IObjectValue model) throws BOSException, EASBizException;
public void showBudget(Component owner, BOSUuid billId) throws BOSException, EASBizException;
/*
*描述:获取单据在预算控制中使用的字段
*/
public List<String> getRequestFields(Context ctx, BOSUuid billId) throws BOSException, EASBizException;
public List<String> getRequestFields(BOSUuid billId) throws BOSException, EASBizException;
public List<String> getRequestFields(Context ctx, IObjectValue model) throws BOSException, EASBizException;
public List<String> getRequestFields(IObjectValue model) throws BOSException, EASBizException;
/*
* 描述:预算控制必录项检查接口
*/
public boolean checkBizUnitInfo(Context ctx, BOSUuid billId, IExtBillCheck check) throws BOSException, EASBizException;
public boolean checkBizUnitInfo(BOSUuid billId, IExtBillCheck check) throws BOSException, EASBizException;
public boolean checkBizUnitInfo(Context ctx, IObjectValue model, IExtBillCheck check) throws BOSException, EASBizException;
public boolean checkBizUnitInfo(IObjectValue model, IExtBillCheck check) throws BOSException, EASBizException;
/*
*描述:对接苍穹的查询预算接口
model: eas费用报销单的实体对象
type: 0.全局 1.分录(批量)
*/
public String queryBalanceToCQ(Context ctx,IObjectValue model,int type) throws BOSException, EASBizException;
--------------------------------------------
2015/12/23 增加预算控制结果集定义说明
com.kingdee.eas.ma.control.face.IControlResult
int getResult() //返回预算控制结果
List getCause() //返回预算控制结果错误原因
public static final int C = 1; //描述:预算扣减成功
public static final int C = 1; //描述:预算扣减成功,提示超预算(允许超预算)
public static final int C = 3; //描述:没有完成预算控制流程(没有控制策略等原因)
public static final int C_NOT = 6; //描述:预算扣减失败,提示超预算(没有找到预算)
public static final int C_CTRL = 7; //描述:预算扣减失败,提示超预算(不允许超预算)
--------------------------------------------
2018-6-13 补充说明
在对查询数据余额的结果集的余额显示说明:IBudgetBalance 返回的预算控制数据集对象 BgControlParam 里,在显示预算数及实际数、余额时,优先是 extBudget、extActual、extBalance,如果没有数据则其次是budgetValue, actualValue, balace
推荐阅读