1 查詢的功能
long lPos, lPurchaseOrderCode
string sSQL
if wf_prechange( false, 'all') then
dw_search.accepttext( )
il_PurchaseOrderCode = dw_search.object.data[1,1]
if il_PurchaseOrderCode > 0 then
dw_1.reset( )
dw_2.reset( )
sSQL = dw_1.getsqlselect( )
lPos = pos( sSQL, ' where ')
if lPos > 0 then
sSQL = mid( sSQL, 1, lPos -1)
end if
sSQL += " where purchaseordercode = "+ string( il_PurchaseOrderCode)
dw_1.setsqlselect( sSQL)
dw_1.setTransobject( SQLCA)
if dw_1.retrieve( ) > 0 then
sSQL = dw_2.getsqlselect( )
lPos = pos( sSQL, ' where ')
if lPos > 0 then
sSQL = mid( sSQL, 1, lPos -1)
end if
sSQL += " where purchaseordercode = "+ string( il_PurchaseOrderCode)
dw_2.setsqlselect( sSQL)
dw_2.setTransobject( SQLCA)
dw_2.retrieve( )
end if
end if
end if
2洗掉
long ll_row, lRowCnt, lRow
ll_row = dw_1.getRow()
if ll_row > 0 and il_PurchaseOrderCode > 0 then
if messageBox('詢問','你確定要洗掉采購訂單【'+ string(il_PurchaseOrderCode) +'】嗎?',question!,yesno!,2) = 1 then
lRowCnt = dw_2.rowCount()
if lRowCnt > 0 then
for lRow = lRowCnt to 1
dw_2.deleterow( lRow)
next
end if
dw_1.deleterow( ll_row)
il_PurchaseOrderCode = 0
wf_prechange( true, 'all')
end if
end if
3 保存
long lDBIDENTIT
if dw_1.rowCount() > 0 then
dw_1.object.operatorcode[1] = gs_username
dw_1.accepttext( )
if dw_1.update( ) = 1 then
commit;
messageBox('提示','保存成功!')
declare cur_PurchaseOrderCode cursor for select isNull( @@IDENTITY, 0);
open cur_PurchaseOrderCode;
fetch cur_PurchaseOrderCode into :lDBIDENTIT;
close cur_PurchaseOrderCode;
if lDBIDENTIT > 0 then
il_PurchaseOrderCode = lDBIDENTIT
dw_search.event ue_retrieve( )
dw_search.object.data[1,1] = il_PurchaseOrderCode
// cb_search.event clicked()
end if
else
rollback;
messageBox('提示','保存失敗!~r~n'+ SQLCA.sqlerrtext, Exclamation!)
end if
else
wf_prechange( false, 'all')
end if
uj5u.com熱心網友回復:
..........uj5u.com熱心網友回復:
..........uj5u.com熱心網友回復:
呵呵,我頂啊!慢慢分析吧uj5u.com熱心網友回復:
都是些很基礎的陳述句,而且你都分別給出了代碼要處理的事情uj5u.com熱心網友回復:
1 查詢的功能long lPos, lPurchaseOrderCode
string sSQL
if wf_prechange( false, 'all') then //自定義函式作判斷條件
dw_search.accepttext( )//將資料放到資料視窗內
il_PurchaseOrderCode = dw_search.object.data[1,1]//取值
if il_PurchaseOrderCode > 0 then 如果值大于0
dw_1.reset( )//清除資料
dw_2.reset( )
sSQL = dw_1.getsqlselect( )//得到dw_1的select陳述句
lPos = pos( sSQL, ' where ')//判斷陳述句中是否包含where
if lPos > 0 then
sSQL = mid( sSQL, 1, lPos -1) //如果包含如 where 前陳述句
end if
sSQL += " where purchaseordercode = "+ string( il_PurchaseOrderCode)//復合sql陳述句
dw_1.setsqlselect( sSQL)//修改dw_1的select陳述句
dw_1.setTransobject( SQLCA)//設定資料物件
if dw_1.retrieve( ) > 0 then 判斷顯示資料是否大于0
sSQL = dw_2.getsqlselect( ) //參照前面
lPos = pos( sSQL, ' where ')
if lPos > 0 then
sSQL = mid( sSQL, 1, lPos -1)
end if
sSQL += " where purchaseordercode = "+ string( il_PurchaseOrderCode)
dw_2.setsqlselect( sSQL)
dw_2.setTransobject( SQLCA)
dw_2.retrieve( )
end if
end if
end if
2洗掉
long ll_row, lRowCnt, lRow
ll_row = dw_1.getRow() 得到當前行
if ll_row > 0 and il_PurchaseOrderCode > 0 then 判斷
if messageBox('詢問','你確定要洗掉采購訂單【'+ string(il_PurchaseOrderCode) +'】嗎?',question!,yesno!,2) = 1 then
lRowCnt = dw_2.rowCount() 統計dw_2行數
if lRowCnt > 0 then 行數大于0
for lRow = lRowCnt to 1 回圈洗掉
dw_2.deleterow( lRow)
next
end if
dw_1.deleterow( ll_row) 洗掉
il_PurchaseOrderCode = 0 賦值
wf_prechange( true, 'all') 自定義函式
end if
end if
3 保存
long lDBIDENTIT
if dw_1.rowCount() > 0 then 判斷dw_1行數是否大于0
dw_1.object.operatorcode[1] = gs_username 賦值
dw_1.accepttext( )
if dw_1.update( ) = 1 then 更新
commit;
messageBox('提示','保存成功!')
declare cur_PurchaseOrderCode cursor for select isNull( @@IDENTITY, 0); 宣告游標
open cur_PurchaseOrderCode;
fetch cur_PurchaseOrderCode into :lDBIDENTIT;
close cur_PurchaseOrderCode;
if lDBIDENTIT > 0 then
il_PurchaseOrderCode = lDBIDENTIT
dw_search.event ue_retrieve( ) 觸發自定義事件
dw_search.object.data[1,1] = il_PurchaseOrderCode 賦值
// cb_search.event clicked()
end if
else
rollback;
messageBox('提示','保存失敗!~r~n'+ SQLCA.sqlerrtext, Exclamation!)
end if
else
wf_prechange( false, 'all') 自定義函式
end if
uj5u.com熱心網友回復:
uj5u.com熱心網友回復:
..........uj5u.com熱心網友回復:
.....uj5u.com熱心網友回復:
說明了一個道理:程式是用字母拼出來的!
uj5u.com熱心網友回復:
..............uj5u.com熱心網友回復:
樓主,有些函式你都不給出來,怎么看啊?uj5u.com熱心網友回復:
就是幾個簡單的查詢,洗掉,保存功能啊。在洗掉的時候試試用rowmoves,效果會比用回圈好些。轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/75014.html
標籤:腳本語言
上一篇:C# 如何獲得form視窗中webbrowser控制元件網頁中js中定義的物件,急,請指教
下一篇:請教用PB怎么實作對圖片進行標注
