以文本方式查看主题

-  易表在线答疑  (http://egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://egrid2000.com/dvbbs/list.asp?boardid=2)
----  进销存系统如何设置月结  (http://egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=4003)

--  作者:九九八十一
--  发布时间:2006/9/19 21:13:00
--  进销存系统如何设置月结
请教各位版主:进销存系统,为了防止对上月的数据在无意中进行修改或删出,以及当修改本月的数据而影响上月相关数据,能否设置月结公式.谢谢!
--  作者:ylm
--  发布时间:2006/9/19 21:20:00
--  
如果仅仅是防止对上月的数据在无意中进行修改或删除等,可以锁定上一个月份行,同时计算公式改成下面方式(必要时可加一标志已月结的列):

RowLocked 函数
判断某一行是否处于锁定状态。利用这个函数,我们可以使锁定行不参与刷新公式计算,例如将金额列的刷新公式设为:

if(Rowlocked(row), [金额], [数量] * [产品!单价] * (1-[折扣]))

上述公式的含义是如果当前行被锁定,则金额保持不变,否则根据最新的单价重新计算金额。

 


--  作者:九九八十一
--  发布时间:2006/9/19 21:39:00
--  
锁定上月的行的意思是指上月的所有行吗?如果上月有500行应该全部锁定吗?
--  作者:ylm
--  发布时间:2006/9/19 21:42:00
--  
是的。可用:LockRowFor
锁定指定表中符合条件的行。

--  作者:九九八十一
--  发布时间:2006/9/19 21:57:00
--  
4楼版主:这个公式应设在什么位置?
--  作者:ylm
--  发布时间:2006/9/19 21:59:00
--  
录入窗口的自定义按扭。
--  作者:九九八十一
--  发布时间:2006/9/19 22:04:00
--  
同样在按扭公式能否设置取消锁定
--  作者:ylm
--  发布时间:2006/9/19 22:08:00
--  
UnlockRowFor
取消锁定指定表中符合条件的行。

UnlockRow
取消锁定指定行。

例如:

if([结账] = -1,LockRow(row),UnlockRow(row))
上述公式的含义是如果已经结帐,则锁定当前行,否则取消锁定。


--  作者:九九八十一
--  发布时间:2006/9/19 22:21:00
--  
请问版主:我不设置"结账"列作为已结账的标志行吗?我的目的是:在按扭公式设置按月销定行,同时可以按月取消锁定行.就是说对月份可进行选择.应如设置公式?
--  作者:ylm
--  发布时间:2006/9/19 22:28:00
--  
1,表中必须有一个月份列。可从录入时间中用MONTH 提取月份。

2,设一自定义变量%月份%
3,锁定:LockRowFor(GridName,"月份","=",[%月份%])
或取消锁定:  UnlockRowFor(GridName,"月份","=",[%月份%])

-=-=-=- 以下内容由 ylm2006年09月19日 10:30pm 时添加 -=-=-=-
设置与不设置"结账"列作为已结账的标志,看你需要了,