各位高手,小妹现在有一个问题请教各位:我做了一个表单,数据环境包含两个表,一个父表,一个子表,都有“编号”字段,以“编号”作为索引连接,“编号”含数字和汉字,父表的“编号”是按顺序编排的没有重复,没问题。关键是子表的内容不是按父表的内容时间顺序添加的,会有重复,所以就可能发生子表新加的一条记录的“编号”不是最大一个编号而其记录号是最大的
例如原来有2005年重点-123和2007年重点-221两条记录,新添加2006年重点-020,这样2005年重点-123的记录号是1,2007年重点-221的记录号是2,2006年重点-020的记录号是3。当子表以“编号”排序浏览时,第一条是2005年重点-123,第二条是2006年重点-020,第三条是2007年重点-221,可“下一条”的按钮在第二条时就显示到最后一条了不能再往下了,但“末记录”的功能没问题,各代码如下:
“上一条”的Click代码:
*——如果到了数据表首部
IF BOF().or.recno()=1
MESSAGEBOX("已到首记录",48,"移动记录")
ELSE
*——如果数据指针不位于数据表首部
skip-1
ENDIF
*——刷新表单
thisform.Refresh
“下一条”的Click代码:
*——如果记录指针位于数据表末尾
IF EOF().or.recno()=RECCOUNT()
MESSAGEBOX("已到末记录",48,"移动记录")
ELSE &&记录指针下移
SKIP
ENDIF
*——刷新表单
thisform.Refresh
我曾想把“上一条”“下一条”按钮的代码以比较子表里的现有“编号”大小是否最大或最小判断是否移动到上一条、下一条。可是怎么求出“编号”字段的最大和最小一个呢?
另外,问一下,表的索引排序中有“mashine”,是按什么规则排序的?是ASC码?我选择“pingyin”,可它会自动又变成“mashine”,保存不住。为什么?