VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

為什麼資料總是會在最後多一筆空白的資料

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
芝風



註冊時間: 2006-08-09
文章: 45
來自: 台灣,巴西

第 1 樓

發表發表於: 星期三 九月 13, 2006 2:59 am    文章主題: 為什麼資料總是會在最後多一筆空白的資料 引言回覆

是這樣的,在表單中有上移下移的指令

下移指令:
IF EOF()=.f.
SKIP 1 IN user_data
recNum=RECNO()
ELSE
thisform.commandgroup2.command3.Enabled=.f.
ENDIF


可是例如有七筆資料,到第七筆的時候,他還是判斷eof()=.f

所以我可以再按一下,到最後一筆空白的資料,這時他才會判斷eof()=.t.
才把下移鍵的enable關掉

有人說可以直接拉vcx元件,可是找不到,不知道是哪一個vcx元件

求各位大大幫忙了!

_________________
一籬一櫓一漁舟,一個艄公一釣勾
一拍一呼還一笑,一人獨佔一江秋
~清.紀昀~
回頂端
檢視會員個人資料 發送私人訊息 MSN Messenger
liangszpt



註冊時間: 2004-11-18
文章: 262
來自: 广东省深圳市

第 2 樓

發表發表於: 星期三 九月 13, 2006 4:57 am    文章主題: 引言回覆

你可能还不了解VFP对DBF文件的结构,是这样的。
BOF
第一笔资料
第二笔资料
第三笔资料
......
第N笔资料
EOF

第七笔资料不是最后一笔,是第七笔资料的下一笔,才是文件的最后标致。

_________________
我的理想是能成为古代的一位富家公子,
日常生活就是喝茶去怡香院,没事带着一班小打手在街上调戏良家妇女。
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 MSN Messenger
芝風



註冊時間: 2006-08-09
文章: 45
來自: 台灣,巴西

第 3 樓

發表發表於: 星期三 九月 13, 2006 8:32 am    文章主題: 引言回覆

第七筆資料的下一筆,是指eof嗎?

那請問我該怎麼設定,讓他在「真正的」最後一筆資料就停住?

_________________
一籬一櫓一漁舟,一個艄公一釣勾
一拍一呼還一笑,一人獨佔一江秋
~清.紀昀~
回頂端
檢視會員個人資料 發送私人訊息 MSN Messenger
garfield
Site Admin


註冊時間: 2003-01-30
文章: 2157


第 4 樓

發表發表於: 星期三 九月 13, 2006 9:18 am    文章主題: 引言回覆

有許多狀況要考慮:
1.如果是沒有index 過的資料 recc() 就是最後一筆.
2.如果有index 過, 一般是在按下"下一筆"時, 在 skip 後 才檢查是否為eof() , 例:
skip
if eof()
go bottom
wait windows '已經是最後一筆'
endif

_________________
利用>>搜尋<<的功能會比問的還要快得到答案.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
syntech



註冊時間: 2003-05-16
文章: 4212
來自: Taipei,Taiwan

第 5 樓

發表發表於: 星期三 九月 13, 2006 1:48 pm    文章主題: 引言回覆

簡單的說,
判斷的Timing 不對.
liangszpt 兄就是這樣的意思.

是先 skip ,再判斷 eof(),
而不是 先判斷eof() 再skip.

一般也是會用 recno() 先記錄一下,再go 回來.
命令怎麼組合就看個人需求

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
芝風



註冊時間: 2006-08-09
文章: 45
來自: 台灣,巴西

第 6 樓

發表發表於: 星期三 九月 13, 2006 7:25 pm    文章主題: 引言回覆

喔喔…原來如此…多謝
_________________
一籬一櫓一漁舟,一個艄公一釣勾
一拍一呼還一笑,一人獨佔一江秋
~清.紀昀~
回頂端
檢視會員個人資料 發送私人訊息 MSN Messenger
芝風



註冊時間: 2006-08-09
文章: 45
來自: 台灣,巴西

第 7 樓

發表發表於: 星期三 九月 20, 2006 1:25 am    文章主題: 引言回覆

呃…現在多了一個問題,也是有關recno的

我一開始會設一個變數,然後先設他為零,然後當執行上一筆,下一筆或是跳行時,都會讓這個變數儲存現在所在的行數

但是我設計了一張空白表單,資料表上完全沒資料

當要執行 go recno的變數時,他就出現 out of range

我知道這是超出範圍,可是我設為零了,為啥還會超出範圍??

_________________
一籬一櫓一漁舟,一個艄公一釣勾
一拍一呼還一笑,一人獨佔一江秋
~清.紀昀~
回頂端
檢視會員個人資料 發送私人訊息 MSN Messenger
liangszpt



註冊時間: 2004-11-18
文章: 262
來自: 广东省深圳市

第 8 樓

發表發表於: 星期三 九月 20, 2006 2:51 am    文章主題: 引言回覆

因为TABLE是没有0号记录的。
你在一个BOTTOM.CLICK的时候,应该这样判断先
SELECT MYTABLE
IF EOF()
RETURN
ENDIF

_________________
我的理想是能成为古代的一位富家公子,
日常生活就是喝茶去怡香院,没事带着一班小打手在街上调戏良家妇女。
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 MSN Messenger
芝風



註冊時間: 2006-08-09
文章: 45
來自: 台灣,巴西

第 9 樓

發表發表於: 星期三 九月 20, 2006 3:26 am    文章主題: 引言回覆

嗯嗯…了解

我想我是應該先設變數為零

然後這樣寫

if 變數!=0
go 變數
endif

thisform.refresh

因為我的按鍵是放棄--tablerevert,要從新增--append blank跳出

_________________
一籬一櫓一漁舟,一個艄公一釣勾
一拍一呼還一笑,一人獨佔一江秋
~清.紀昀~
回頂端
檢視會員個人資料 發送私人訊息 MSN Messenger
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作