eas bos单据预算查询

 其中有两种情况,一种是dep单据获取方法:

        IDynamicObject instance = DynamicObjectFactory.getLocalInstance(ctx); //用于动态获取单据对象
        info = instance.getValue(uuid.getType(), new ObjectUuidPK(uuid),sic2); //记账单对象

另外一种是标准单据或者自己做的单据:

        通过单据id或者为对象赋值来查询预算

 //报销预算查询
    @Override
    protected String _budgetQuery(Context ctx, String jsonData)
    		throws BOSException, EASBizException {

    	AjaxJson j = new AjaxJson();
    	try {
    		if (!validator.validate(jsonData)) {
    			throw new EASBizException(new NumericExceptionSubItem("100","Json数据格式有误!"));
    		}

    System.out.println("预算查询入参:" + jsonData);
    JSONObject jo = JSONObject.parseObject(jsonData);
    if (jo == null) {
		throw new EASBizException(new NumericExceptionSubItem("100","jsonData数据格式有误!"));
	}
    //单据ID
    String id = jo.getString("id");
    verifyFieldNotNull("单据ID", id);
   
    //获取UUID
    BOSUuid uuid = BOSUuid.read(id);
    BOSObjectType  objectType = uuid.getType();
    boolean flag = false;
    if (objectType.toString().equals("AE13E073")) {//薪酬报账单
    	 j.getData().put("noBudget", flag);//返回结果 noBudget此字段是本人返回给前端是否有预算的一个提示,如果你不需要用到此提示可以忽略。
    	 return j.getJsonStr();
	}else if (objectType.toString().equals("D001019A")) { //付款申请单
		 j.getData().put("noBudget", flag);//返回结果
    	 return j.getJsonStr();
	}else if (objectType.toString().equals("8110AAB2")) { //借款单
		 j.getData().put("noBudget", flag);//返回结果
    	 return j.getJsonStr();
	}else if (objectType.toString().equals("8FD159FE")) { //收入报账单
		 j.getData().put("noBudget", flag);//返回结果
    	 return j.getJsonStr();
	}
    IBudgetCtrlFacade balance = BudgetCtrlUtil.getBudgetCtrlFacadeImpl(ctx);
    BgCtrlResultCollection  ctrlResultCol = null;
    IObjectValue info = null;
    if (objectType.toString().equals("F1C85B33")) {//通用报账单
    	 SelectorItemCollection sic = new SelectorItemCollection();
    	    sic.add(new SelectorItemInfo("*"));
    	    sic.add(new SelectorItemInfo("company.*"));
    	    sic.add(new SelectorItemInfo("entrys.*"));
    	    sic.add(new SelectorItemInfo("entrys.currency.*"));
    	    sic.add(new SelectorItemInfo("entrys.expensetype.*"));
    	 //公司 
    	String companyStr = jo.getString("company");
    	verifyFieldNotNull("公司", companyStr);
    	CompanyOrgUnitInfo company =(CompanyOrgUnitInfo) BillProertiesConvertor.getValueObject(companyStr, CompanyOrgUnitInfo.class, null, ctx);
    	verifyFieldNotNull("company", company);
    	ctx.put(OrgType.Company, company);
    	IDynamicObject instance = DynamicObjectFactory.getLocalInstance(ctx); //用于动态获取单据对象
    	info = instance.getValue(uuid.getType(), new ObjectUuidPK(uuid),sic); //报账单对象
    	ctrlResultCol = balance.getBudget(info);
	}
    
    if (objectType.toString().equals("78D5CA77")) {//记账单对象
    	SelectorItemCollection sic2 = new SelectorItemCollection();
        sic2.add(new SelectorItemInfo("*"));
        sic2.add(new SelectorItemInfo("company.*"));
        sic2.add(new SelectorItemInfo("currency.*"));
        sic2.add(new SelectorItemInfo("entrys.*"));
        sic2.add(new SelectorItemInfo("entrys.account.*"));
    	 //公司 
    	String companyStr = jo.getString("company");
    	verifyFieldNotNull("公司", companyStr);
    	CompanyOrgUnitInfo company =(CompanyOrgUnitInfo) BillProertiesConvertor.getValueObject(companyStr, CompanyOrgUnitInfo.class, null, ctx);
    	verifyFieldNotNull("company", company);
    	ctx.put(OrgType.Company, company);
    	IDynamicObject instance = DynamicObjectFactory.getLocalInstance(ctx); //用于动态获取单据对象
    	info = instance.getValue(uuid.getType(), new ObjectUuidPK(uuid),sic2); //记账单对象
    	ctrlResultCol = balance.getBudget(info);
	}
    
    if (objectType.toString().equals("C57003BC")) {//差旅费报销单对象
    	SelectorItemCollection sic = new SelectorItemCollection();
	    sic.add(new SelectorItemInfo("*"));
	    sic.add(new SelectorItemInfo("company.*"));
	    sic.add(new SelectorItemInfo("currencyType.*"));
	    sic.add(new SelectorItemInfo("entries.*"));
	    sic.add(new SelectorItemInfo("entries.expenseType.*"));
   	 	//公司 
    	String companyStr = jo.getString("company");
    	verifyFieldNotNull("公司", companyStr);
    	CompanyOrgUnitInfo company =(CompanyOrgUnitInfo) BillProertiesConvertor.getValueObject(companyStr, CompanyOrgUnitInfo.class, null, ctx);
    	verifyFieldNotNull("company", company);
    	ctx.put(OrgType.Company, company);
    	IDynamicObject instance = DynamicObjectFactory.getLocalInstance(ctx); //用于动态获取单据对象
    	info = instance.getValue(uuid.getType(), new ObjectUuidPK(uuid),sic); //差旅费报销单对象
    	ctrlResultCol = balance.getBudget(info);
	}
    if (objectType.toString().equals("4A44F49F")) {//费用报销单对象
    	BizAccountBillInfo bizAccountInfo = BizAccountBillFactory.getLocalInstance(ctx).getBizAccountBillInfo(new ObjectUuidPK(uuid));
    	StringBuffer sqlBuff = new StringBuffer();
    	sqlBuff.append("/*dialect*/SELECT FCURRENCYID,FCOMPANYID,FPAYMENT,FCOSTEDDEPTID FROM T_BC_BIZACCOUNTBILL where FID ='"+uuid+"'");
    	String companyID = "";//公司
    	String payMent = "";//付款方式
    	String currencyID = "";//币别
    	String costeddepID = "";//成本中心
    	IRowSet rows = DbUtil.executeQuery(ctx, sqlBuff.toString());
    	if (rows != null && rows.size() > 0) {
			while (rows.next()) {
				companyID = rows.getString("FCOMPANYID");
				payMent = rows.getString("FPAYMENT");
				currencyID = rows.getString("FCURRENCYID");
				costeddepID = rows.getString("FCOSTEDDEPTID");
			}
		}
    	    BizAccountBillInfo bizInfo = new BizAccountBillInfo();
    		bizInfo.setNumber("预算查询");
    		bizInfo.setName("预算查询");
    		//业务日期
    	    Date bizDate = bizAccountInfo.getBizDate();
    	    verifyFieldNotNull("业务日期", bizDate);
    	    bizInfo.setBizDate(bizDate);
    	    bizInfo.setBizReqDate(bizDate);
    	    bizInfo.setBillDate(bizDate);

    	    bizInfo.setBiller(ContextUtil.getCurrentUserInfo(ctx));
    	    //成本中心
    	    CostCenterOrgUnitInfo costCenter = CostCenterOrgUnitFactory.getLocalInstance(ctx).getCostCenterOrgUnitInfo(new ObjectUuidPK(costeddepID));
//    	    verifyFieldNotNull("costedDept", costCenter);
    	    bizInfo.setCostedDept(costCenter);
    	    //公司
    	    CompanyOrgUnitInfo company = CompanyOrgUnitFactory.getLocalInstance(ctx).getCompanyOrgUnitInfo(new ObjectUuidPK(companyID));
    	    verifyFieldNotNull("公司", company);
    	    bizInfo.setCompany(company);
    	    //申请公司
    	    bizInfo.setApplierCompany(company);
    	    //管理单元
    	    bizInfo.setCU(CtrlUnitFactory.getLocalInstance(ctx).getCtrlUnitInfo(
    		    new ObjectUuidPK(company.getCU().getId())));
    		//紧急程度
    	    bizInfo.setPrior(PriorEnum.LOW);
    	    //支付方式
    		SettlementTypeInfo settlementTypeInfo = SettlementTypeFactory.getLocalInstance(ctx).getSettlementTypeInfo(new ObjectUuidPK(payMent));
//    		verifyFieldNotNull("支付方式", settlementTypeInfo);
    		bizInfo.setPayMode(settlementTypeInfo);
    		
    		//单据类型
    		bizInfo.setBillTypeCode(BizCollBillTypeEnum.BIZ_ACCOUNT);
    	    //币别
    	    CurrencyInfo bb01 = CurrencyFactory.getLocalInstance(ctx).getCurrencyInfo(new ObjectUuidPK(currencyID));
    	    bizInfo.setCurrencyType(bb01);

    	    //付现金额
    		BigDecimal biaoAmount =bizAccountInfo.getAmountEncashed();
    		//分录
    	    for (int i = 0; i < bizAccountInfo.getEntries().size(); i++) {
    	    	StringBuffer sqlBuff2 = new StringBuffer();
    	    	sqlBuff2.append("/*dialect*/SELECT FEXPENSETYPEID,FOPERATIONTYPEID FROM T_BC_BIZACCOUNTBILLENTRY where FBILLID ='"+uuid+"'");
    	    	String expenseTypeID = "";//费用项目类型
    	    	String operationtypeID = "";//业务类别
    	    	IRowSet rows2 = DbUtil.executeQuery(ctx, sqlBuff2.toString());
    	    	if (rows2 != null && rows2.size() > 0) {
    				while (rows2.next()) {
    					expenseTypeID = rows2.getString("FEXPENSETYPEID");
    					operationtypeID = rows2.getString("FOPERATIONTYPEID");
    				}
    			}
    		BizAccountBillEntryInfo eInfo = bizAccountInfo.getEntries().get(i);
    		int seq = eInfo.getSeq();
    		eInfo.setSeq(seq);
    		//费用类型
    		ExpenseTypeInfo expenInfo = ExpenseTypeFactory.getLocalInstance(ctx).getExpenseTypeInfo(new ObjectUuidPK(expenseTypeID));
//			verifyFieldNotNull("费用类型", expenInfo);
    		eInfo.setExpenseType(expenInfo);
    		//业务类别
    		OperationTypeInfo operationType = OperationTypeFactory.getLocalInstance(ctx).getOperationTypeInfo(new ObjectUuidPK(operationtypeID));
//    		verifyFieldNotNull("业务类别", operationType);
    		eInfo.setOperationType(operationType);
    		
    		//申请原因
    		eInfo.setPurpose("");
    		//币别
    		CurrencyInfo  currencyType2 = eInfo.getCurrencyType();
    		eInfo.setCurrencyType(currencyType2);
    		//汇率
    		eInfo.setExchangeRate(eInfo.getExchangeRate());
    		//汇率精度
    		eInfo.setExchangeRatePrecision(eInfo.getExchangeRatePrecision());
    		//原币申请金额
    		eInfo.setAmountOri(biaoAmount);
    		
    		//本位币申请金额
    		eInfo.setAmount(biaoAmount);
    		//原币核定金额
    		eInfo.setAmountApprovedOri(biaoAmount);
    		//本位币核定金额
    		eInfo.setAmountApproved(biaoAmount);
    		//表头金额
    		biaoAmount = biaoAmount.add(biaoAmount);	
    		//费用支付部门
    		eInfo.setCompany(company);
    		//费用支付公司
    		eInfo.setCostCenter(costCenter);
    		bizInfo.getEntries().add(eInfo);
    	    }
    	    
    	    for (int k = 0; k < bizAccountInfo.getCollectionEntries().size(); k++) {
    	    	BizAccountBillAccountEntryInfo accountInfo = bizAccountInfo.getCollectionEntries().get(k);
    	    	SettlementTypeInfo settlementInfo = accountInfo.getPayMode();
    	    	accountInfo.setPayMode(settlementInfo);
    	    	//币别
    	    	CurrencyInfo accCurrency = accountInfo.getCurrencyType();
    	    	accountInfo.setCurrencyType(accCurrency);
    	    	//支付方式
    	    	SettlementTypeInfo settletype = accountInfo.getPayMode();
    	    	accountInfo.setPayMode(settletype);
    	    	//汇率精度
    	    	accountInfo.setExchangeRatePrecision(accountInfo.getExchangeRatePrecision());
    	    	//汇率
    	    	accountInfo.setExchangeRate(accountInfo.getExchangeRate());
    	    	//本位币金额
    	    	accountInfo.setAmount(biaoAmount);
    	    	//原币金额
    	    	accountInfo.setAmountOri(biaoAmount);
    	    	bizInfo.getCollectionEntries().add(accountInfo);
			}
    	    //申请金额
    	    bizInfo.setAmount(biaoAmount);
    		//核定总额
    	    bizInfo.setAmountApproved(biaoAmount);
    	    //付现
    	    bizInfo.setAmountEncashed(biaoAmount);
    	    ctx.put(OrgType.Company, company);
    	    ctrlResultCol = balance.getBudget(bizInfo);
	}
    
    
    if (objectType.toString().equals("48DA3A71")) {//应付单
    	OtherBillInfo OtherBillInfo = OtherBillFactory.getLocalInstance(ctx).getOtherBillInfo(new ObjectUuidPK(uuid));
    	StringBuffer sqlBuff = new StringBuffer();
    	sqlBuff.append("/*dialect*/SELECT FASSTACTTYPEID,FPURORGID,FPAYMENTTYPEID,FCOMPANYID,FCURRENCYID FROM T_AP_OTHERBILL where FID ='"+uuid+"'");
    	String companyID = "";//公司
    	String asstActTypeID = "";//单据类型
    	String paymentTypeID = "";//付款方式
    	String purOrgID = "";//采购
    	String currencyID = "";//币别
    	IRowSet rows = DbUtil.executeQuery(ctx, sqlBuff.toString());
    	if (rows != null && rows.size() > 0) {
			while (rows.next()) {
				companyID = rows.getString("FCOMPANYID");
				asstActTypeID = rows.getString("FASSTACTTYPEID");
				paymentTypeID = rows.getString("FPAYMENTTYPEID");
				purOrgID = rows.getString("FPURORGID");
				currencyID = rows.getString("FCURRENCYID");
			}
		}
    		OtherBillInfo OtherInfo = new OtherBillInfo();

    	    OtherInfo.setNumber(OtherBillInfo.getNumber());
    	    //业务日期
            Date date = OtherBillInfo.getBizDate();
    	    OtherInfo.setBizDate(date);
    	    OtherInfo.setBillDate(date);
    	    //公司
    	    CompanyOrgUnitInfo companyInfo = CompanyOrgUnitFactory.getLocalInstance(ctx).getCompanyOrgUnitInfo(new ObjectUuidPK(companyID));
    	    verifyFieldNotNull("公司", companyInfo);
    	    OtherInfo.setCompany(companyInfo);
    	    //采购组织
    	    PurchaseOrgUnitInfo purOrg = PurchaseOrgUnitFactory.getLocalInstance(ctx).getPurchaseOrgUnitInfo(new ObjectUuidPK(purOrgID));
    	    OtherInfo.setPurOrg(purOrg);
    	    //管理单元
    	    OtherInfo.setCU(CtrlUnitFactory.getLocalInstance(ctx).getCtrlUnitInfo(
    		    new ObjectUuidPK(companyInfo.getCU().getId())));
    	    //单据类型
    	    OtherInfo.setBillType(OtherBillInfo.getBillType());
    	     // 往来类型 T_BD_AsstActType (辅助核算项目 47385590)
   		    AsstActTypeInfo asstActTypeInfo = AsstActTypeFactory.getLocalInstance(ctx).getAsstActTypeInfo(new ObjectUuidPK(asstActTypeID)) ;
   		    verifyFieldNotNull("往来类型", asstActTypeInfo);
   		    OtherInfo.setAsstActType(asstActTypeInfo);
   		    setAsstActor(ctx, OtherInfo,OtherBillInfo,asstActTypeInfo);
   		    //付款方式
   		     PaymentTypeInfo paymentType = PaymentTypeFactory.getLocalInstance(ctx).getPaymentTypeInfo(new ObjectUuidPK(paymentTypeID));
   		     verifyFieldNotNull("付款方式", paymentType);
   		     OtherInfo.setPaymentType(paymentType);
    	    //币别
    	    CurrencyInfo bb01 = CurrencyFactory.getLocalInstance(ctx).getCurrencyInfo(new ObjectUuidPK(currencyID));
    	    verifyFieldNotNull("币别", paymentType);
    	    OtherInfo.setCurrency(bb01);
    	    //汇率
    	    OtherInfo.setExchangeRate(OtherBillInfo.getExchangeRate());
    	    //应付金额
    	    BigDecimal amountOri = OtherBillInfo.getAmount();
    	    //预计总费用
    	    OtherInfo.setAmount(amountOri);
    	    OtherInfo.setAmountLocal(amountOri);
    	    for (int i = 0; i < OtherBillInfo.getEntry().size(); i++) {
    	    	StringBuffer sqlBuff2 = new StringBuffer();
    	    	sqlBuff2.append("/*dialect*/SELECT FEXPENSEITEMID FROM T_AP_OTHERBILLENTRY where FPARENTID ='"+uuid+"'");
    	    	String expenseItemID = "";//费用项目类型
    	    	IRowSet rows2 = DbUtil.executeQuery(ctx, sqlBuff2.toString());
    	    	if (rows2 != null && rows2.size() > 0) {
    				while (rows2.next()) {
    					expenseItemID = rows2.getString("FEXPENSEITEMID");
    				}
    			}
    		OtherBillentryInfo entryInfo = OtherBillInfo.getEntry().get(i);;
    		int seq = entryInfo.getSeq();
    		entryInfo.setSeq(seq);
    		OtherBillType billType = OtherBillInfo.getBillType();
    		boolean isInvoice = billType.equals(OtherBillType.InvoiceBill);
    		if (isInvoice) {
    			MaterialInfo mInfo = entryInfo.getMaterial();
    			verifyFieldNotNull("material", mInfo);
    			entryInfo.setMaterial(mInfo);
    			entryInfo.setMeasureUnit(mInfo.getBaseUnit());
    		} else {
    			//费用项目编码
    			ExpenseItemInfo eInfo = ExpenseItemFactory.getLocalInstance(ctx).getExpenseItemInfo(new ObjectUuidPK(expenseItemID));
    			verifyFieldNotNull("expenseItem", eInfo);
    			entryInfo.setExpenseItem(eInfo);
    		}
    		 // 计量单位 T_BD_MeasureUnit (计量单位 5B825C57)
//    		MeasureUnitInfo measureUnit = entryInfo.getMeasureUnit();
//    		verifyFieldNotNull("measureUnit", measureUnit);
//    		entryInfo.setMeasureUnit(measureUnit);
    		// 应收(付)金额
    		entryInfo.setRecievePayAmount(entryInfo.getRecievePayAmount());
    		// 应收(付)本币金额
    		entryInfo.setRecievePayAmountLocal(entryInfo.getRecievePayAmountLocal());
    		//未结算本币金额
    		entryInfo.setUnVerifyAmount(entryInfo.getUnVerifyAmount());
    		// 未锁定金额
    		entryInfo.setLockUnVerifyAmt(entryInfo.getLockUnVerifyAmt());
    		// 未锁定本币金额
    		entryInfo.setLockUnVerifyAmtLocal(entryInfo.getLockUnVerifyAmt());
    		//单价
    		entryInfo.setPrice(entryInfo.getPrice());
    		//实际单价
    		entryInfo.setActualPrice(entryInfo.getActualPrice());
    		// 税额
    		entryInfo.setTaxAmount(entryInfo.getTaxAmount());
    		// 税额本币
    		entryInfo.setTaxAmountLocal(entryInfo.getTaxAmountLocal());
    		// 金额
    		entryInfo.setAmount(entryInfo.getAmount());
    		// 本币金额
    		entryInfo.setAmountLocal(entryInfo.getAmountLocal());
    		OtherInfo.getEntry().add(entryInfo);
    	    }
    	   
    	    for (int i = 0; i < OtherBillInfo.getPayPlan().size(); i++) {
    	    	OtherBillPlanInfo planInfo = OtherBillInfo.getPayPlan().get(i);
    	    	//应付日期
                Date bizDate2 = planInfo.getRecievePayDate();
    	    	planInfo.setRecievePayDate(bizDate2);
    	    	// 应收(付)金额
    	    	planInfo.setRecievePayAmount(planInfo.getRecievePayAmount());
    	    	// 应收(付)本币金额
    	    	planInfo.setRecievePayAmountLocal(planInfo.getRecievePayAmountLocal());
    	    	planInfo.setLockAmount(planInfo.getLockAmount());
    	    	planInfo.setVerifyAmountLocal(planInfo.getVerifyAmountLocal());
			}
    	    ctx.put(OrgType.Company, companyInfo);
    	    ctrlResultCol = balance.getBudget(OtherInfo);
	}
     System.out.println();
    if (ctrlResultCol != null && ctrlResultCol.size() > 0) {
    	List<HashMap<String, Object>> maps=new ArrayList<HashMap<String,Object>>();
	for (int i = 0; i < ctrlResultCol.size(); i++) {
		HashMap<String, Object> obj = new HashMap<String, Object>();
	    BgCtrlResultInfo param = ctrlResultCol.get(i);
	    if (param.getOrgUnitName() == null)
	    	continue;
	    int precision = 2;
	    //预算申请项目
	    String billItemName = param.getBillItemName();
	    obj.put("billItemName", billItemName);
	    // 组织
	    String orgName = param.getOrgUnitName();
	    obj.put("seq", i + 1);
	    obj.put("orgName", orgName);
	    // 预算方案
	    String scheme = param.getBgSchemeId();
	    BgSchemeInfo schemeInfo = BgSchemeFactory.getLocalInstance(ctx).getBgSchemeInfo(new ObjectUuidPK(scheme));
	    obj.put("scheme", schemeInfo.getName());
	    // 预算期间
	    String bgPeriod = param.getPeriodName();
	    obj.put("bgPeriod", bgPeriod);
	    // 预算要素
	    String bgElement = param.getElementName();
	    obj.put("bgElement", bgElement);
	    // 预算数
	    BigDecimal budgetValue = param.getBgValue();
	    if (budgetValue == null) {
	    	budgetValue = param.getBgValue() == null ? BigDecimal.ZERO: param.getBgValue();
	    }
	    obj.put("budget", budgetValue.setScale(precision,BigDecimal.ROUND_HALF_UP));
	    // 实际数
	    BigDecimal actualValue = param.getBizActual();
	    if (actualValue == null) {
	    	actualValue = param.getBizActual() == null ? BigDecimal.ZERO
	    			: param.getBizActual();
	    }
	    obj.put("actual", actualValue.setScale(precision,BigDecimal.ROUND_HALF_UP));
	    BigDecimal balanceValue = BigDecimal.ZERO;
	    // 预算余额
	    if (param.getBalance() != null)
		balanceValue = param.getBalance();
	    else
		balanceValue = param.getBalance() == null ? BigDecimal.ZERO: param.getBalance();
	    obj.put("balance", balanceValue.setScale(precision,BigDecimal.ROUND_HALF_UP));
	    maps.add(obj);
		   }
	   j.getData().put("noBudget", true);//返回结果
	   j.getData().put("result", maps);
    	 }
    	} catch (EASBizException e) {
    		j.setSuccess(false);
    		j.setMessage(e.getMessage());
    		System.out.println("预算查询回执:" + j.getJsonStr());
    		return j.getJsonStr();
    	} catch (BOSException e) {
    		j.setSuccess(false);
    		j.setMessage(e.getMessage());
    		System.out.println("预算查询回执:" + j.getJsonStr());
    		return j.getJsonStr();
    	} catch (Exception e) {
    		j.setSuccess(false);
    		j.setMessage("error occur");
    		System.out.println("预算查询回执:" + j.getJsonStr());
    		return j.getJsonStr();
    	}
    		System.out.println("预算查询回执:" + j.getJsonStr());
    		return j.getJsonStr();
    }

!!!!注意的地方:

        dep查询预算需要过滤的条件是根据单据的预算配置属性去过滤的,每个单据的过滤条件不一定相同,需要自己去根据实际情况来过滤。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: EAS(企业应用软件)和BOS(业务操作平台)是一种企业级应用软件,用于管理企业内部的各种业务流程和数据。单据开发是指在EASBOS系统中,根据企业的具体业务需求,开发和定制各种业务单据模板和流程。 在EASBOS系统中,单据是一种重要的业务文档,用于记录和处理企业的业务活动。例如,销售订单、采购申请、合同、报销单等都属于常见的业务单据。通过定制化开发,可以根据企业的实际需求,创建适合企业业务特点的单据模板,并设计相应的工作流程用于处理和审批这些单据单据开发一般包含以下几个步骤: 1. 需求分析:与企业相关部门沟通,了解业务需求,明确单据开发的目标和范围。 2. 设计单据模板:根据需求分析的结果,设计单据模板,包括单据的样式、字段和布局等,确保单据能够满足业务需求。 3. 编码开发:根据设计的单据模板,进行编码开发工作,实现单据EASBOS系统中的呈现和功能。 4. 测试和调试:进行单据开发的测试和调试工作,确保单据的正常运行,并满足企业的需求。 5. 部署和上线:将开发好的单据模板和应用程序部署到EASBOS系统中,并让相关人员开始使用。 6. 维护和优化:持续跟踪和维护开发的单据,在实际使用中及时进行修复和优化,以保证系统的稳定性和性能。 通过EASBOS系统的单据开发,企业可以更加高效地管理和处理各种业务单据,提高工作效率和准确性。同时,定制化的单据开发也使企业能够适应特定行业或业务的需求,提供更加个性化和专业化的管理解决方案。 ### 回答2: EAS (企业应用系统) 和 BOS (业务操作系统) 是一种常用于企业管理的软件平台。它们可以帮助企业管理各种业务流程和数据,提高工作效率和准确性。 EAS 是一个综合性的企业管理软件平台,它集成了各种功能模块,涵盖了企业的各个领域,包括财务、人力资源、采购、销售、供应链等。通过EAS,企业可以实现业务流程的标准化和自动化,提高工作效率,减少人工错误。EAS可以提供全面的数据分析和报表功能,供企业管理者进行决策分析。 BOS 是建立在EAS平台上的具体业务应用系统。通过BOS,企业可以实现各种业务单据的开发和管理。比如,采购订单、销售订单、合同、报价单等。BOS可以根据企业的实际需求,定制各种业务单据,并与其他系统进行数据交互。BOS可以实现单据的自动流转和审批,减少了人工处理的时间和成本。 在进行EASBOS单据开发时,需要考虑企业的实际需求和业务流程。首先,需要对业务流程进行分析,确定需要开发的单据类型和数据字段。然后,可以使用EAS平台自带的开发工具,或者使用其他开发工具进行单据开发。开发过程中,需要进行系统测试和调试,确保单据的准确性和稳定性。 总之,EASBOS单据开发是企业管理的重要组成部分。通过合理的单据开发和管理,可以提高企业的工作效率和管理水平,实现企业的可持续发展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奋斗的小虾米

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值