当前位置:首页 > EAS管理会计二次开发指南
slInfo.setDescription(chLoanInfo.getDescription()); //结算业务类型
slInfo.setBizType(SubsidiaryBillTypeEnum.CHLOANBILL);
//公司 }
}
slInfo.setCompany(chLoanInfo.getCompany()); return slInfo;
可以看到,这个类的主要目的就是组织一个内部账户的集合,这个类完成后,登账其
实很简单,调用下面的方法即可:
SubsidiaryLedgerFactory.getLocalInstance(ctx).book(
chLoanInfo.getId().toString(), ChLoanSubsidiaryBookProvider.class.getName()); 取消登账就是把登账的记录从内部账户明细账中删除,删除登账的调用也很简单,只需传入一个单据ID就可以了。
SubsidiaryLedgerFactory.getLocalInstance(ctx).cancelBook(pk.toString());
Q8. 资金系统登银行日记账
资金系统中日记账对应的实体为com.kingdee.eas.fi.cas.app.Journal,当单据在某个银行账户上发生业务,并希望记录下来的时候,就需要登银行日记账,登账的接口如下 public interface IBookNotifyFacade extends IBizCtrl { 反登账
public void antiBook(String billId) throws BOSException, EASBizException; 登账
public void book(String builderName, String billId) throws BOSException, EASBizException;
批量登账
public void bookBatch(JournalCollection journalColl) throws BOSException, EASBizException; }
先看看业务场景
单据登账后可在银行日记账中看到该记录
要实现登记银行日记账,主要要做要写一个类实现如下接口
public interface IBookNotifyBuilder {
/**
* 获取日记账集合 * @param ctx * @param billId * @return
* @throws BOSException * @throws EASBizException */ public
JournalCollection
getJournalColl(Context
ctx,
String
billId)
throws
BOSException,EASBizException;
//public JournalCollection getOppJournalColl(Context ctx, String billId) throws BOSException,EASBizException;
}
实现类的主要目的也是为了生成银行日记账数据,以上面的借款为例看看这个类如何实现 public class LoanBookNotifyBuilder implements IBookNotifyBuilder {
/**
* 借款单登日记账的接口实现类 */
public JournalCollection getJournalColl(Context ctx, String billId)
throws BOSException, EASBizException {
LoanInfo loanInfo = getLoanInfo(ctx, billId);
JournalCollection journalColl = new JournalCollection(); JournalInfo journalInfo = new JournalInfo(); journalInfo.setType(JournalTypeEnum.BANK); //银行账户 借款单.银行账户
journalInfo.setAccountBank(loanInfo.getBankAcct()); //币别 借款单.币别
journalInfo.setCurrency(loanInfo.getCurrency()); //日期 当前日期
journalInfo.setCreateDate(new Date()); //借方金额 借款单.借款金额
journalInfo.setDebitAmount(loanInfo.getAmount()); journalInfo.setIsDebit(true); //贷方金额 空 //结算方式
空
//结算号 空
journalInfo.setCreditAmount(FMConstants.ZERO); //业务日期 借款单.借款开始日
journalInfo.setBizDate(loanInfo.getIssueDate());
journalInfo.setAccountView(loanInfo.getSettlementAcct()); //对方科目 借款单.贷方科目
journalInfo.setOppAccountView(loanInfo.getLoanAcct());
}
//对方单位 //单据类型
空 借款
journalInfo.setBillType(BillTypeEnum.loanBill); //单据号 借款单.单据编号
journalInfo.setBillId(loanInfo.getId().toString()); journalInfo.setBillNumber(loanInfo.getNumber()); //摘要 借款放款
journalInfo.setDescription(\借款放款\
journalInfo.setCompany(loanInfo.getCompany()); journalInfo.setVerifyStatus(VerifyScopeEnum.NOVA); journalInfo.setSource(JournalSourceEnum.BYBILL); journalColl.add(journalInfo); return journalColl;
private LoanInfo getLoanInfo(Context ctx, String billId) throws EASBizException,
BOSException {
LoanInfo info = LoanFactory.getLocalInstance(ctx).getLoanInfo( new ObjectUuidPK(billId), getSelector());
}
private SelectorItemCollection getSelector() { SelectorItemCollection sic = new SelectorItemCollection(); sic.add(\ }
return sic; return info;
}
可以看到,这个类的主要目的就是组织一个银行账户的集合,这个类完成后,登账其实很简单,调用下面的方法即可:
JournalCollection journalColl = new JournalCollection(); journalColl.addCollection(builder.getJournalColl(ctx, billId));
IBookNotifyFacade bookFacade = BookNotifyFacadeFactory.getLocalInstance(ctx); bookFacade.bookBatch(journalColl);
取消登账就是把登账的记录从银行日记账中删除,删除登账的调用也很简单,只需传入一个单据ID就可以了。
IBookNotifyFacade bookFacade = BookNotifyFacadeFactory.getLocalInstance(ctx); bookFacade.antiBook(billId); Q9. BI汇总表的开发
EAS有一套BI报表框架,可以在改框架的基础上快速的开发出响应的报表,下面会介绍如何基于EAS的BI框架开发出报表。
共分享92篇相关文档