close(w_xgmm)
ELSE
MESSAGEBOX("警告","两次输入的口令不一致,请重新输入") END IF
ELSE
IF SLE_1.TEXT<>G_PWD THEN
IF G_INPUT_TIME>3 THEN
MESSAGEBOX("警告","输入次数太多!")
CLOSE(w_xgmm)
ELSE
MESSAGEBOX("警告","输入的原口令不正确,请重新输入")
END IF
ELSE
UPDATE USER_inf SET user_PWD=:G_P
13
WHERE user_id=:G_U;
MESSAGEBOX("注意","你的口令已经修改,请牢记")
COMMIT;
CLOSE(w_xgmm)
END IF
END IF
(3)若选择退出则退出图书馆管理系统。
4.4读者信息管理
点击读者信息管理则会有添加,修改和查询三项选择。
(1)若选择添加则会进入如下页面:
图4.6 添加读者信息窗口
前一条按键的代码:
integer row_current
row_current=dw_1.ScrollPriorRow()
if row_current=1 then
MessageBox("警告","以是最前一条")
14
end if
后一条按键的代码:
integer row_current
integer row_count
row_current=dw_1.ScrollNextRow()
row_count=dw_1.RowCount()
if row_current=row_count then
MessageBox("警告","以是最后一条")
end if
添加按键的代码:
dw_1.object.datawindow.readonly = "no"
long g_RowNumber
g_RowNumber=dw_1.InsertRow(0)
dw_1.ScrollToRow(g_RowNumber)
dw_1.Setrow(g_RowNumber)
dw_1.Setfocus()
保存按键的代码:
if update(dw_1,true,false)=1 then
dw_1.resetupdate()
commit;
messagebox("错误!!!","数据保存成功")
else
rollback;
messagebox("错误!!!","数据保存失败")
end if
退出按键的代码:
int MCount
int UPdateOrNot
MCount=w_tj.dw_1.ModifiedCount()
if MCount=0 then
close(w_tj);
elseif MCount>0 then
15
UPdateOrNot=messagebox("保存修改","您修改了数据窗口中的数据,现在是否保存?",Question!,YesNoCancel!)
if UPdateOrNot=1 then
if update(w_tj.dw_1,true,false)=1 then
w_tj.dw_1.resetupdate()
commit;
else
rollback;
messagebox("错误!!!","数据保存失败")
end if
close(w_tj)
elseif UPdateOrNot=2 then
rollback;
close(w_tj)
end if
end if
(2)若选择修改则会进入如下页面:
图4.7读者信息窗口
16
窗口下输入如下代码:
dw_1.settransobject(sqlca)
dw_1.retrieve()
dw_1.object.datawindow.readonly = "yes"
修改按键的代码:
string oldsql,newsql
int total_row
dw_1.object.datawindow.readonly = "NO"
dw_1.Object.类型.Protect=1
if sle_1.text="" then
MessageBox("注意","请输入内容!")
else
oldsql=dw_1.getsqlselect()
newsql=oldsql+" where 编号="+"'"+sle_1.text+"'"
dw_1.setsqlselect(newsql)
dw_1.retrieve()
dw_1.setsqlselect(oldsql)
total_row=dw_1.rowcount()
if total_row=0 then
MessageBox("注意","没有符合条件的内容")
end if
end if
删除按键的代码:
long current_row
if sle_1.text="" then
MessageBox("注意","请输入内容!")
else
current_row=dw_1.getrow()
deleterow(dw_1,current_row)
end if
17
保存的代码:
if update(dw_1,true,false)=1 then
dw_1.resetupdate()
commit;
messagebox("","数据保存成功")
else
rollback;
messagebox("错误!!!","数据保存失败")
end if
退出按键的代码:
int MCount
int UPdateOrNot
MCount=w_xg.dw_1.ModifiedCount()
if MCount=0 then
close(w_xg);
elseif MCount>0 then
UPdateOrNot=messagebox("保存修改","您修改了数据窗口中的数据,现在是否保存?",Question!,YesNoCancel!)
if UPdateOrNot=1 then
if update(w_xg.dw_1,true,false)=1 then
w_xg.dw_1.resetupdate()
commit;
else
rollback;
messagebox("错误!!!","数据保存失败")
end if
close(w_xg)
elseif UPdateOrNot=2 then
rollback;
close(w_xg)
end if
end if
18
(3)若选择查询则会进入如下页面:
图4.8查询窗口
窗口下输入如下代码:
dw_1.settransobject(sqlca)
dw_1.retrieve()
dw_1.object.datawindow.readonly = "yes"
查询按键的代码:
string oldsql,newsql
int total_row
if sle_1.text="" then
MessageBox("注意","请输入内容!")
else
oldsql=dw_1.getsqlselect()
newsql=oldsql+" where 编号="+"'"+sle_1.text+"'"
dw_1.setsqlselect(newsql)
dw_1.retrieve()
dw_1.setsqlselect(oldsql)
total_row=dw_1.rowcount()
19
if total_row=0 then
MessageBox("注意","没有符合条件的内容")
end if
end if
退出按键的代码:
close(w_cx)
4.5图书信息管理
点击图书信息管理则会有添加,修改和查询三项选择。
(1)若选择添加则会进入如下页面:
图4.9 添加图书信息窗口
窗口下输入如下代码:
dw_1.settransobject(sqlca)
dw_1.retrieve()
dw_1.object.datawindow.readonly = "yes"
前一条按键的代码:
integer row_current
row_current=dw_1.ScrollPriorRow()
20
if row_current=1 then
MessageBox("警告","以是最前一条")
end if
后一条按键的代码:
integer row_current
integer row_count
row_current=dw_1.ScrollNextRow()
row_count=dw_1.RowCount()
if row_current=row_count then
MessageBox("警告","以是最后一条")
end if
添加按键的代码:
dw_1.object.datawindow.readonly = "no"
long g_RowNumber
g_RowNumber=dw_1.InsertRow(0)
dw_1.ScrollToRow(g_RowNumber)
dw_1.Setrow(g_RowNumber)
dw_1.Setfocus()
保存按键的代码:
if update(dw_1,true,false)=1 then
dw_1.resetupdate()
commit;
messagebox("错误!!!","数据保存成功")
else
rollback;
messagebox("错误!!!","数据保存失败")
end if
退出按键的代码:
int MCount
int UPdateOrNot
MCount=w_tj.dw_1.ModifiedCount()
if MCount=0 then
21

