📄 db_tb.c
字号:
/****************************************************************
** *
** FILE : DB_TB.C *
** COPYRIGHT : (c) 2001 .Xiamen Yaxon NetWork CO.LTD *
** *
** *
** By : CCH 2002.1.15 *
****************************************************************/
#include "includes.h"
#include "tools.h"
#include "database.h"
#include "record.h"
#include "db_tb.h"
#if EN_HANDSET > 0
/*
********************************************************************************
* DEFINE DB_TB FIELD
********************************************************************************
*/
#define FIELD_NAME 0
#define FIELD_TEL 1
/*
********************************************************************************
* DEFINE DB_TB FIELD
********************************************************************************
*/
static FIELD_STRUCT fields[] = { {0, TBREC_SIZE_NAME}, /* field: name */
{0, TBREC_SIZE_TEL} /* field: tel */
};
void InitDB_TB(void)
{
if (!DB_IsValid(DB_TB)) {
DB_Init(DB_TB, FALSE, sizeof(fields)/sizeof(FIELD_STRUCT), fields, MAX_TBREC, ORDER_ORDER | ORDER_UP, FIELD_NAME);
}
}
void DelDB_TB(void)
{
DB_Init(DB_TB, FALSE, sizeof(fields)/sizeof(FIELD_STRUCT), fields, MAX_TBREC, ORDER_ORDER | ORDER_UP, FIELD_NAME);
}
BOOLEAN AddTBRec(TBREC_STRUCT *recptr)
{
if (GetTBItem() >= MAX_TBREC)
return FALSE;
else
return DB_AddRec(DB_TB, TRUE, (INT8U *)recptr);
}
BOOLEAN ModifyTBRec(INT16U numrec, TBREC_STRUCT *recptr)
{
return DB_ModifyRec(DB_TB, numrec, (INT8U *)recptr);
}
void DelTBRec(INT16U numrec)
{
DB_DelRec(DB_TB, numrec);
}
INT16S GetTBRecByName(INT8U len, INT8U *name)
{
return DB_FindRec(DB_TB, FIND_HALFMATCH, FIELD_NAME, len, name);
}
INT16S GetTBRecByName_FULL(INT8U len, INT8U *name)
{
return DB_FindRec(DB_TB, 0, FIELD_NAME, len, name);
}
INT16S GetTBRecByTel(INT8U len, INT8U *tel)
{
INT16S num;
num = DB_FindRec(DB_TB, 0, FIELD_TEL, len, tel);
if (num == -1) {
if (*tel == '+' && len > 3) {
tel += 3;
len -= 3;
num = DB_FindRec(DB_TB, 0, FIELD_TEL, len, tel);
}
}
if (num == -1 && len > 3)
num = DB_FindRec(DB_TB, FIND_REVERSE, FIELD_TEL, len, tel);
return num;
}
INT16U GetTBNameByTel(INT8U *ptr, INT8U len, INT8U *tel)
{
INT16S numrec;
if ((numrec = GetTBRecByTel(len, tel)) == -1) return 0;
else {
return DB_GetRecField(DB_TB, numrec, FIELD_NAME, ptr);
}
}
INT16U GetTBRec(INT16U numrec, TBREC_STRUCT *recptr)
{
return DB_GetRec(DB_TB, numrec, (INT8U *)recptr);
}
INT16U GetTBItem(void)
{
return DB_GetItem(DB_TB);
}
INT16U GetTBBlankItem(void)
{
return DB_GetBlankItem(DB_TB);
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -