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

grid無法重新顯示資料

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



註冊時間: 2014-02-04
文章: 7


第 1 樓

發表發表於: 星期四 二月 06, 2014 10:42 pm    文章主題: grid無法重新顯示資料 引言回覆

請教
當整理資料時需要開啟多個table,form中之各個grid呈現空白且格式丟失,將其中1個grid用如下指令
THISFORM.Grid1.RecordSource = null
SELECT jcs1_3_1
use
USE JCS1_3_1
THISFORM.Grid1.RecordSource = "JCS1_3_1.DBF"
THISFORM.Grid1.Refresh()
THISFORM.Refresh()
THISFORM.Grid1.Column1.SetFocus()
當refresh後出現空白grid,請問還要調整哪個指令
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
danielkao



註冊時間: 2011-04-21
文章: 31


第 2 樓

發表發表於: 星期一 二月 10, 2014 1:58 pm    文章主題: 引言回覆

因可能此grid是記錄上一資料庫的資料, 所以於use jcs1_3_1的下一行增加一指令
THISFORM.GRID1.COLUMNCOUNT = -1
回頂端
檢視會員個人資料 發送私人訊息
albertlei



註冊時間: 2014-02-04
文章: 7


第 3 樓

發表發表於: 星期四 二月 13, 2014 8:59 pm    文章主題: 引言回覆

在FORM有一個GRID1,其RecordSource為JCS1_3_1
FORM上有一個COMMAND,書寫的CODE如下
THISFORM.Grid1.RecordSource=NULL
CLOSE TABLES
--------------(運算式)
CLOSE TABLES
SELECT A
USE JCS1_3_1
LOCATE FOR 學年期 = A_學年期
THISFORM.Grid1.RecordSource = "JCS1_3_1.DBF"
THISFORM.Grid1.RecordSourceType= 1
THISFORM.Grid1.Refresh()
THISFORM.Grid1.Column1.SetFocus()
SELECT B
USE JCS4_1_2A
類似上面寫法

執行COMMAND後GRID1呈現空白
經前輩指導加入THISFORM.GRID1.COLUMNCOUNT = -1,仍然是空白
再請前輩指導,還是前輩提供MAIL,將完整資料寄給前輩觀看
謝謝
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
ptiger



註冊時間: 2004-02-26
文章: 38


第 4 樓

發表發表於: 星期五 二月 14, 2014 9:58 am    文章主題: 引言回覆

thisform.Grid1.recordsource=""
..
....
select dbfname
go top
thisform.Grid1.recordsource="dbfname"
thisform.Grid1.recordsourceTYPE=1
thisform.Grid1.refresh()
回頂端
檢視會員個人資料 發送私人訊息
albertlei



註冊時間: 2014-02-04
文章: 7


第 5 樓

發表發表於: 星期一 二月 17, 2014 10:46 am    文章主題: 引言回覆

select dbfname時會產生 alias dbfname is not found()
所以在select dbfname之前加入select A 及 use dbfname,也試了將dbfname copy to newdbfname,由newdbfname操作,grid仍是空白
如果用thisform.refresh(),會告知某個table is not found()
提供完整COMMAND,請前輩指導,謝謝

SET SAFETY OFF
THISFORM.Grid1.RecordSource=""
THISFORM.Pageframe1.Page1.Grid1.RecordSource="" && NULL
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Grid1.RecordSource=""
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Grid1.RecordSource=""
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo1.RowSource=""
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo2.RowSource=""
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo3.RowSource=""
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo4.RowSource=""
* CLOSE TABLES
SELECT JCS4_1_3A
A_學年 = 學年
A_學期 = 學期
A_學期代碼 = 學期代碼
A_學年期 = 學年期
A_班別代碼 = 班別代碼
A_班別 = 班別
A_DEAL = DEAL
A_月次數 = 月次數
A_開單日期 = 開單日期
A_應收日期 = 應收日期
A_應收年月 = 應收年月
A_收費DEAL = 收費DEAL
A_YEAR = YEAR(A_應收日期)
A_MONTH = MONTH(A_應收日期)
A_DAY = DAY(A_應收日期)
IF A_DAY < 10
IF A_MONTH < 10
A_應收 = STR(A_YEAR,4)+'0'+STR(A_MONTH,1)+'0'+STR(A_DAY,1)
ELSE
A_應收 = STR(A_YEAR,4)+STR(A_MONTH,2)+'0'+STR(A_DAY,1)
ENDIF
ELSE
IF A_MONTH < 10
A_應收 = STR(A_YEAR,4)+'0'+STR(A_MONTH,1)+STR(A_DAY,2)
ELSE
A_應收 = STR(A_YEAR,4)+STR(A_MONTH,2)+STR(A_DAY,2)
ENDIF
ENDIF
SELECT A
USE JCS4_1_3
ZAP
SELECT D
USE JCS2_2_1
GO TOP
DO WHILE .NOT. EOF()
IF 學年期 <> A_學年期
SKIP
LOOP
ENDIF
IF YEAR(離校日期) <> 0
SKIP
LOOP
ENDIF
IF 班別代碼 <> A_班別代碼
SKIP
LOOP
ENDIF
B_學員編號 = 學員編號
B_學員姓名 = 學員姓名
B_班別代碼 = 班別代碼
B_班別 = 班別
B_次班別代碼 = 次班別代碼
B_次班別 = 次班別
B_座號 = 座號
B_DEAL = DEAL
B_學員DEAL = 學員DEAL
SELECT JCS4_1_3B && C
GO TOP
DO WHILE .NOT. EOF()
IF 學年期 <> A_學年期
SKIP
LOOP
ENDIF
IF 班別代碼 <> A_班別代碼
SKIP
LOOP
ENDIF
IF 應收日期 <> A_應收日期
SKIP
LOOP
ENDIF
C_學年 = 學年
C_學期 = 學期
C_學期代碼 = 學期代碼
C_學年期 = 學年期
C_月次數 = 月次數
C_開單日期 = 開單日期
C_應收日期 = 應收日期
C_應收年月 = 應收年月
C_收費DEAL = 收費DEAL
C_主項目編碼 = 主項目編碼
C_費用主項目 = 費用主項目
C_次項目編碼 = 次項目編碼
C_費用次項目 = 費用次項目
C_項目編碼 = 項目編碼
C_類別 = 類別
C_費用週期 = 費用週期
C_標準金額 = 標準金額
C_實際金額 = 實際金額
C_片語 = 片語
SELECT A
APPEND BLANK
REPLACE 學員編號 WITH B_學員編號
REPLACE 學員姓名 WITH B_學員姓名
REPLACE 學年 WITH A_學年
REPLACE 學期 WITH A_學期
REPLACE 學期代碼 WITH A_學期代碼
REPLACE 學年期 WITH A_學年期
REPLACE 班別代碼 WITH A_班別代碼
REPLACE 班別 WITH A_班別
REPLACE 次班別代碼 WITH B_次班別代碼
REPLACE 次班別 WITH B_次班別
REPLACE 座號 WITH B_座號
REPLACE DEAL WITH A_學年期 + A_班別代碼 + B_次班別代碼
REPLACE 學員DEAL WITH B_學員編號 + A_學年期 + A_班別代碼 + B_次班別代碼
REPLACE 月次數 WITH A_月次數
REPLACE 開單日期 WITH A_開單日期
REPLACE 應收日期 WITH A_應收日期
REPLACE 應收年月 WITH A_應收年月
REPLACE 收費DEAL WITH B_學員編號 + A_學年期 + A_班別代碼 + B_次班別代碼 + A_應收
REPLACE 主項目編碼 WITH C_主項目編碼
REPLACE 費用主項目 WITH C_費用主項目
REPLACE 次項目編碼 WITH C_次項目編碼
REPLACE 費用次項目 WITH C_費用次項目
REPLACE 項目編碼 WITH C_項目編碼
REPLACE 類別 WITH C_類別
REPLACE 費用週期 WITH C_費用週期
REPLACE 標準金額 WITH C_標準金額
REPLACE 實際金額 WITH C_實際金額
REPLACE 片語 WITH C_片語
SELECT JCS4_1_3B
SKIP
LOOP
ENDDO
SELECT D
SKIP
LOOP
ENDDO
SELECT E
USE JCS4_1_3C
ZAP
SELECT F
USE JCS4_1_3D
ZAP
SELECT A
GO TOP
DO WHILE .NOT. EOF()
D_學員編號 = 學員編號
D_學員姓名 = 學員姓名
D_學年 = 學年
D_學期 = 學期
D_學期代碼 = 學期代碼
D_學年期 = 學年期
D_DEAL = DEAL
D_學員DEAL = 學員DEAL
D_班別代碼 = 班別代碼
D_班別 = 班別
D_次班別代碼 = 次班別代碼
D_次班別 = 次班別
D_座號 = 座號
D_月次數 = 月次數
D_開單日期 = 開單日期
D_應收日期 = 應收日期
D_應收年月 = 應收年月
D_收費DEAL = 收費DEAL
D_主項目編碼 = 主項目編碼
D_費用主項目 = 費用主項目
D_次項目編碼 = 次項目編碼
D_費用次項目 = 費用次項目
D_項目編碼 = 項目編碼
D_類別 = 類別
D_費用週期 = 費用週期
D_標準金額 = 標準金額
D_實際金額 = 實際金額
D_片語 = 片語
SELECT E
LOCATE FOR DEAL = D_DEAL
IF .NOT. FOUND()
APPEND BLANK
REPLACE 學年 WITH D_學年
REPLACE 學期 WITH D_學期
REPLACE 學期代碼 WITH D_學期代碼
REPLACE 學年期 WITH D_學年期
REPLACE DEAL WITH D_DEAL
REPLACE 班別代碼 WITH D_班別代碼
REPLACE 班別 WITH D_班別
REPLACE 次班別代碼 WITH D_次班別代碼
REPLACE 次班別 WITH D_次班別
REPLACE 月次數 WITH D_月次數
REPLACE 開單日期 WITH D_開單日期
REPLACE 應收日期 WITH D_應收日期
REPLACE 應收年月 WITH D_應收年月
ENDIF
SELECT F
LOCATE FOR 學員DEAL = D_學員DEAL
IF .NOT. FOUND()
APPEND BLANK
REPLACE 學員編號 WITH D_學員編號
REPLACE 學員姓名 WITH D_學員姓名
REPLACE 學年 WITH D_學年
REPLACE 學期 WITH D_學期
REPLACE 學期代碼 WITH D_學期代碼
REPLACE 學年期 WITH D_學年期
REPLACE DEAL WITH D_DEAL
REPLACE 學員DEAL WITH D_學員DEAL
REPLACE 班別代碼 WITH D_班別代碼
REPLACE 班別 WITH D_班別
REPLACE 次班別代碼 WITH D_次班別代碼
REPLACE 次班別 WITH D_次班別
REPLACE 座號 WITH D_座號
ENDIF
SELECT A
SKIP
LOOP
ENDDO
CLOSE TABLES ALL
SELECT A
USE JCS1_3_1
GO TOP
THISFORM.Grid1.RecordSource = 'JCS1_3_1.DBF'
THISFORM.Grid1.RecordSourceType= 1
THISFORM.Grid1.Refresh()
THISFORM.Grid1.Column1.SetFocus()
SELECT B
USE JCS1_3_2C
GO TOP
THISFORM.Pageframe1.Page1.Grid1.RecordSource = "JCS1_3_2C.DBF"
THISFORM.Pageframe1.Page1.Grid1.RecordSourceType= 1
THISFORM.Pageframe1.Page1.Grid1.Refresh()
THISFORM.Pageframe1.Page1.Grid1.Column1.SetFocus()
SELECT C
USE JCS4_1_3A
GO TOP
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Grid1.RecordSource = "JCS4_1_3A.DBF"
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Grid1.RecordSourceType= 1
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Grid1.Refresh()
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Grid1.Column1.SetFocus()
SELECT D
USE JCS4_1_3B
GO TOP
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Grid1.RecordSource = "JCS4_1_3B.DBF"
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Grid1.RecordSourceType= 1
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Grid1.Refresh()
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Grid1.Column1.SetFocus()
SELECT E
USE JCS1_5_1A
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo1.RowSource="Jcs1_5_1a.主項目編碼,費用主項目,類別"
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo1.RowSourceType= 6
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo1.ControlSource="JCS4_1_3B.主項目編碼"
SELECT F
USE JCS1_5_1
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo2.RowSource="Jcs1_5_1.次項目編碼,費用次項目,主項目編碼,費用主項目,類別,費用週期"
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo2.RowSourceType= 6
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo2.ControlSource="JCS4_1_3B.次項目編碼"
SELECT G
USE JCS1_5_2
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo3.RowSource="Jcs1_5_2.標準金額,主項目編碼,費用主項目,次項目編碼,費用次項目,類別,費用週期"
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo3.RowSourceType= 6
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo3.ControlSource="JCS4_1_3B.標準金額"
SELECT H
USE JCS1_5_3
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo4.RowSource="Jcs1_5_3.片語"
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo4.RowSourceType= 6
THISFORM.Pageframe1.Page1.Pageframe1.Page1.Pageframe1.Page1.Combo4.ControlSource="JCS4_1_3B.片語"
SET SAFETY ON
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
ptiger



註冊時間: 2004-02-26
文章: 38


第 6 樓

發表發表於: 星期一 二月 17, 2014 1:04 pm    文章主題: 引言回覆

THISFORM.Grid1.RecordSource = 'JCS1_3_1.DBF' 好像沒用過加附檔名的


THISFORM.Grid1.RecordSource = "JCS1_3_1"

這樣呢
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

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


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