数据库记录自动插入及排序的子程序
SORT ON NUMB TO LSWJ
*“NUMB”——所需处理数据库序号的字段名,数值型,小数点1位
*“LSWJ”——存放数据的临时文件
ZAP
APPEND FROM LSWJ
DO WHILE .NOT. EOF()
M_NUMB=INT(NUMB+0.9)
IF M_NUMB>NUMB
REPLACE NUMB WITH INT(NUMB)+1
DO WHILE .NOT. EOF(0)
SKIP
REPLACE NUMB WITH NUMB+1
LOOP
ENDDO
ENDIF
SKIP
LOOP
ENDDO
程序运行时,当需要插入新的记录时,只要将序号登记为插入点前后序号之间的一个带小数的数字即可。例如:要在原记录4号和5号间插入一个新的记录,将新记录号登记为4.5,上述子程序运行后,新记录即改为5号,而原记录5号及以后各数据均顺延加1。如果要同时插入两个或以上记录的话,新记录序号顺次登记为4.1、4.2、4.3等即可。