📄 fun_findfriend.txt
字号:
//SP名称+业务名称+之+子流程/函数名称+子流程/子函数 --例如:新浪缘分天空之寻找聊友子流程
//函数名称:Fun_FindFriend()
/*参数
输入:
_Field1:参数说明
...
输出:
_Field1:参数说明
...
返回值:
0:正常返回
1:异常返回
...
*/
/*寄存器
SR20:主叫用户ID
SR21:被叫用户ID
SR22/IR22:用户性别
SR23/IR23:用户年龄
SR24/IR24:用户性格
SR25/IR25:交友目的
SR26:个人介绍文件名
SR27/IR27:结果集总数
SR28/IR28:结果集序号
SR30:系统提示音播放绝对路径(不含文件名称)
...
*/
//宏定义
#define DATAACCESS_TIMEOUT 20000
#define SUCCESS 0
#define EXCEPTION 1
...
#define FIND_FRIEND "00201" //查找朋友总数和信息
...
//调用通用子函数
//无
//调用私用子函数
#include Fun_CallUser //加载呼叫对方子流程
...
TRACE ON
FUNCTION Fun_FindFriend
{
BEGIN:
EvtStart[0]
... //一般是SAssign操作,把传入参数存放寄存器SR?中
-> stWelcome
stWelcome:
ReadStrFromINI(_INIFileName,"PATH.VOXPATH",SR30)
SAssign(SR0,SR30)
SAdd(SR0,"Welcome.vox")
PlayFile(SR0,"?")
EvtReturn[0] -> stInputSex
EvtReturn[3] -> stInputSex
EvtReturn[-1]-> stFindFriendEXCEPT
stInputSex:
SAssign(SR0,SR30)
SAdd(SR0,"sex.vox") //请输入性别
PlayFile(SR0,"?")
EvtReturn[0] -> stGetSex
EvtReturn[3] -> stGetSex
EvtReturn[-1] -> stFindFriendEXCEPT
stGetSex:
GetDigits(1,5,"")
EvtReturn[0] -> stCheckSex
EvtReturn[4] -> stInputSex
EvtReturn[-1]-> stFindFriendEXCEPT
stCheckSex:
SAssign(SR22,_EventData) //保存性别信息
CheckPushedButton()
EvtReturn[1] -> stFindFriendBegin
EvtReturn[2] -> stFindFriendBegin
EvtReturn[-1]-> stInputSex
stFindFriendBegin: //访问SP数据库时,推荐使用下列格式
SAssign(_OperateID,FIND_FRIEND)
IAssign(_FieldNum,2)
SAssign(_Field1,_UserID)
SAssign(_Field2,SR22)
DataAccess(0,0,DATAACCESS_TIMEOUT)
EvtReturn[0] //访问SP数据库成功
SAssign(SR21,_Field1)
-> stCallFriend
... //可以有其他返回值(在接口文档中定义)
EvtReturn[-1]-> stFindFriendEXCEPT
EvtTimerExpired[-1]-> stFindFriendEXCEPT
stCallFriend:
...
Fun_CallUser()
EvtReturn[0] //呼叫聊友成功
...
IAssign(_result,SUCCESS)
-> END
EvtReturn[-1] //呼叫聊友失败
...
IAssign(_result,EXCEPTION)
-> END
stFindFriendEXCEPT:
SAssign(SR0,SR30)
SAdd(SR0,"sysbusy.vox")
PlayFile(SR0,"?") //"很抱歉,系统正忙,请稍后"
EvtReturn[-1]
...
IAssign(_result,EXCEPTION)
-> END //结束此流程,返回到调用函数
...
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -