财务软件设计

tds__609 2010-01-27 03:58:20
在设计财务软件时,一些财务公式需要用户自己输入,这样的系统怎么设计呢?

系统如何根据客户输入计算数据呢?

求高人只指点

...全文
160 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiangyiming 2010-01-28
  • 打赏
  • 举报
回复
然后界面用户可以自己选择会计科目,选择对应的运算符就这样啦。
jiangyiming 2010-01-28
  • 打赏
  • 举报
回复
我之前做的那个ERP财务模块也遇到过类似的情况,我当初是单独添加一个公式表,然后用户根据自己的需要添加公式,然后后面做报表计算直接从这个表里面取数据来计算的。
Rock870210 2010-01-27
  • 打赏
  • 举报
回复
给个小例子给你(只是例子,有可能有些错误),当然,只正对一般的+ - * / 和括号 运算,先要保存好计算表达式,然后再解析计算表达式进行运算

<HEAD>
<SCRIPT type="text/javascript" language="javascript">
var hidValue = " ";//需要保存到数据库的
var showValue = " ";//显示给客户看的
var txtExp;
var hidExp;
var txtNum;
window.onload = function()
{
txtExp = document.getElementById("txtExpression");
hidExp = document.getElementById("hidExpression");
txtNum = document.getElementById("txtNumber");
}
function addPro(elementName)
{
var Oselect = document.getElementById(elementName);
var oOption = Oselect.options;
hidValue = hidValue + oOption[Oselect.selectedIndex].value+" ";
showValue = showValue + oOption[Oselect.selectedIndex].text+" ";
txtExp.value=showValue;
hidExp.value=hidValue;
}
function addNumber()
{
if(!isNaN(txtNum.value))
{
hidValue = hidValue + txtNum.value+" ";
showValue = showValue + txtNum.value+" ";
txtExp.value=showValue;
hidExp.value=hidValue;
}
}
function del()
{
if(hidValue.length>0)
{
hidValue = hidValue.substring(0,hidValue.substr(0,hidValue.length-1).lastIndexOf(" ")) + " ";
showValue = showValue.substring(0,showValue.substr(0,showValue.length-1).lastIndexOf(" ")) + " ";
txtExp.value=showValue;
hidExp.value=hidValue;
}
else
alert("表达式已为空,无法继续删除!");
}
</SCRIPT>
</HEAD>
<BODY>
<form>
<table width="100%" border="1">
<tr>
<td align="right" style="width: 255px">计算表达式:</td>
<td align="left" colspan="2"><input name="txtExpression" type="text" readonly="readonly" id="txtExpression" style="width:269px;" />
   <input type="button" onclick="del()" value="删 除" id="btnDelExpression" title="每次只撤销一次输入" /></td>
</tr>
<tr>
<td align="right" style="width: 255px; height: 28px;">
<select name="ddlProperty" id="ddlProperty" title="请选择属性名称" style="width:141px;">
<option value="10">行业</option>
<option value="11">类别</option>
<option value="12">形式</option>
<option value="13">运营商/企业</option>
<option value="14">品牌/部门</option>
<option value="15">业务</option>
<option value="16">宽</option>
<option value="17">高</option>
</select>
</td>
<td align="center" style="height: 28px">
<select name="ddlOperator" id="ddlOperator" title="请选择运算符" onchange="getid()" style="width:141px;">
<option value="0">--运算符--</option>
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
<option value="(">(</option>
<option value=")">)</option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
</select>
</td>
<td align="left" style="height: 28px"><input name="txtNumber" type="text" value="234" id="txtNumber" title="请输入要加入的数字" /></td>
</tr>
<tr>
<td align="right" style="width: 255px; height: 28px;"><input type="button" value="加 入" onclick="addPro('ddlProperty')" id="btnPropertyName" /></td>
<td align="center" style="height: 28px"><input type="button" name="btnOperator" value="加 入" onclick="addPro('ddlOperator')" id="btnOperator" /></td>
<td align="left" style="height: 28px"><input type="button" name="btnNumber" value="加 入" onclick="addNumber()" id="btnNumber" /></td>
</tr>
</table>
<input type="hidden" id="hidExpression" value="" />
</body>

做好计算表达式后关于计算方面可以参考:
http://blog.csdn.net/Rock870210/archive/2009/12/07/4958479.aspx
tyzs2001 2010-01-27
  • 打赏
  • 举报
回复
加减乘除,客户可以自定义,但是各个参数的含义还是要预先定义吧。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧