新手的一个问题,请各位大侠帮忙帮忙!!!

dazhao 2003-10-14 04:00:31
各位高手好!
小弟有一个问题,想向各位大侠请教一下,希望各位能慷慨解囊,赐教赐教!!这个问题是:当我要添加一段记录的时候,表中有两个字段,分别是“序号”和“名称”;我希望能够当我在表单中(通过一个“添加”按钮实现此功能)添加一个“名称”记录时,在表中自动追加所添加的记录,而且还要在表单的“序号”上自动加上那个添加的“名称”的对应序号!请问这个“添加”按钮的代码怎样写?以上的功能怎样实现,代码如何?在什么“事件”里写这些代码?望各位赐教赐教!!谢谢!!
...全文
33 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
dfwxj 2003-10-17
  • 打赏
  • 举报
回复
楼主不能保存新的名称可能是下列原因:

1、文本框与表的字段进行了数据源绑定

2、使用数据环境,对表的缓冲设置有问题
dazhao 2003-10-17
  • 打赏
  • 举报
回复
可是就如上述代码!我就不能把我所增加的“名称”保存到数据表!请指教!!
boomit 2003-10-17
  • 打赏
  • 举报
回复
appe blan
repl with 这两个命令就已经保存记录了。。
dazhao 2003-10-17
  • 打赏
  • 举报
回复
请问如何把新增的记录保存起来呢?请指教!
dfwxj 2003-10-16
  • 打赏
  • 举报
回复
你想让系统自动生成序号,就必须有一个序号规则,例如,用10位数字编号,不重复使用,废除的序号不复用。表单只需要一个文本框,不需要序号框,每次生成序号取现有的最大序号加1。

if allt(thisform.text1.value)==''
messagebox('名称不能为空!',64,'信息')
thisform.text1.setfocus
retu
endi
sele max(序号) into arra mxh from 数据表 &&找出数据表中存在的最大的序号
sele 数据表
appe blan
repl 序号 with padl(allt(str(val(mxh)+1)),10,'0'),名称 with thisform.text1.value
mxh='' &&数组变量清空
thisform.text1.value='' &&文本框清空

lubf 2003-10-16
  • 打赏
  • 举报
回复
容易,在命令窗口里打:modify structure
然后根据你的要求就可以建立索引咯。
dazhao 2003-10-16
  • 打赏
  • 举报
回复
请问排序索引怎样建立?请各位指教指教
dazhao 2003-10-16
  • 打赏
  • 举报
回复
非常感谢清风和各位的帮忙赐教!可是我还是有一点不太明白,我用了清风给出的代码(我略作修改),它可以追加“序号”并且能把“序号”保存到我的“数据表”中了,可是不知道为何,“名称”却不能保存到“数据表”中,而是把“表”中原先有的那个“名称”返回到“表”中!请问我还需要什么代码实现把我所要“添加”的“名称”返回到我的“数据表”中吗?我该如何做?请再次指教!!谢谢!!!
dazhao 2003-10-15
  • 打赏
  • 举报
回复
谢谢noproblem12的赐教!可是这个代码我也已经用过了,但它有一个提示是说我的序号不唯一!请问是什么原因?请告知!谢谢!!!
dazhao 2003-10-15
  • 打赏
  • 举报
回复
感谢dfwxj(清风)的赐教!判断数据的有效性,我也试过了,可是我不知道什么原因,它会出现一个问题,就是当我输进我的“名称”时,“序号”不能为系统自动生成,而且当我单击“添加”按钮时,只能出现“名称”combo1框的内容追加清空,而“序号”TEXT1却没有自动追加清空,还是会留下上一个“序号”的号码在!请问我该用什么办法,当我单击“添加”按钮的时候,“序号”TEXT1和“名称”COMBO1的内容清空(但表里原先的内容却不要给删除哦)?万望指教一下!感谢万分啦!!!至于dfwxj(清风)所赐教的代码内容,毕竟跟我以前所写的有一点出入,可能会适合我的程序的情况,如果成功,我真是感激万分,你可就是我的救星啦!!
dfwxj 2003-10-15
  • 打赏
  • 举报
回复
因为你为序号字段设置了唯一索引,所以要先判断数据的有效性

if allt(thisform.text1.value)==''
messagebox('序号不能为空!',64,'信息')
thisform.text1.setfocus
retu
endi
seek thisform.text1.value
if found()
messagebox('该序号已存在!',64,'信息')
thisform.text1.setfocus
retu
endi
if allt(thisform.text2.value)==''
messagebox('名称不能为空!',64,'信息')
thisform.text2.setfocus
retu
endi
appe blan
repl 序号 with thisform.text1.value,名称 with thisform.text2.value
noproblem12 2003-10-14
  • 打赏
  • 举报
回复
在添加按钮的click事件中写
APPEND BLANK
REPLACE 序号 with thisform.text1.value,名称 with thisform.text2.value

在这里假设text1 和text2分别有序号和名称的内容

2,726

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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