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

自動复制技術難題求解﹗

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



註冊時間: 2004-08-05
文章: 5


第 1 樓

發表發表於: 星期五 八月 27, 2004 3:42 pm    文章主題: 自動复制技術難題求解﹗ 引言回覆

現有一數据表weight.dbf,字段名及內容如下﹕

model case_no material weight
00-110 C-4-946707F SS 0.0112
00-110 B-4-946707F SS 0.006
00-110 C-4-946961F SS 0.0112
00-110 B-4-946961F SS 0.006
00-110 C-4-S82922FT SS 0.0112
00-110 B-4-S82922FT SS 0.006
00-110 C-4-R10362F SS 0.0112
00-110 B-4-R10362F SS 0.006
00-111 C-4-038835F SS 0.0158
00-111 B-4-038835F SS 0.007
00-111 C-4-S82906F SS 0.0158
00-111 B-4-S82906F SS 0.007
00-111 C-4-038835FT SS 0.0158
00-111 B-4-038835FT SS 0.007
00-242 C-4-039173F BS 0.022
00-242 B-4-039173F SS 0.007
00-242 C-4-039556F BS 0.022
00-242 B-4-039556F SS 0.007
00-242 C-4-039173Z BS 0.022
00-242 B-4-039173Z SS 0.007
00-242 C-4-039556FT BS 0.022
00-242 B-4-039556FT SS 0.007
條件﹕如果model(型號)相同,case_no如果以c開頭﹐其weight(單重)值都相同
如果model(型號)相同,case_no如果以B開頭﹐其weight(單重)值都相同
現以weight.dbf為資料來源建立一表單
表單建立一個文本框model,一個命令按鈕(查詢)
grid控件顯示數据表weight.dbf的內容。
現想實現的功能如下:
在文本框中輸入model(型號),然后點命令按鈕(查詢)
顯示該model(型號)下的case_no,material,weight﹐現如果在該型號下增加一個case_no,按前面的條件﹐如果以C開頭﹐新增加的case_no的
weight值自動等于相同型號case_no以c開頭的weight值。
如果以B開頭﹐新增加的case_no的
weight值自動等于相同型號case_no以B開頭的weight值。
在SQL SERVER 7.0里面可以使用以下語句達到效果﹐請問在vfp6.0中如何達到如此效果?
update weight set weight=TB.Tweight from weight inner join (select case_no,model,max(weight)
as Tweight from weight Group By case_no,model) as TB on weight.case_no=TB.case_no and weight.model=TB.Model
現舉例如下﹕
在文本框中輸入型號00-110,點查詢命令按鈕(command)
grid控件內容如下﹕
model case_no material weight
00-110 C-4-946707F SS 0.0112
00-110 B-4-946707F SS 0.006
00-110 C-4-946961F SS 0.0112
00-110 B-4-946961F SS 0.006
00-110 C-4-S82922FT SS 0.0112
00-110 B-4-S82922FT SS 0.006
00-110 C-4-R10362F SS 0.0112
00-110 B-4-R10362F SS 0.006

現在grid控件里面增加一個case_no為C-4-946707FT怎樣實現其weight自動等于0.0112
如果增加一個case_no為B-4-946707FT其weight自動等于0.006
如果以前資料庫中相同型號的case_no如果有一些weight值未輸入﹐自動添充為weight已有值﹐實例如下﹕
model case_no material weight
00-110 C-4-946707F SS 0.0112
00-110 B-4-946707F SS 0.006
00-110 C-4-946961F SS 0.0112
00-110 B-4-946961F SS 0.006
00-110 C-4-S82922FT SS ? 自動等于0.0112
00-110 B-4-S82922FT SS ? 自動等于0.006
00-110 C-4-R10362F SS ? 自動等于0.0112
00-110 B-4-R10362F SS ? 自動等于0.006

困惑中﹐望高手指點﹗高分回報﹗
回頂端
檢視會員個人資料 發送私人訊息
syntech



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

第 2 樓

發表發表於: 星期五 八月 27, 2004 4:04 pm    文章主題: 引言回覆

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

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



註冊時間: 2004-08-05
文章: 5


第 3 樓

發表發表於: 星期五 八月 27, 2004 6:05 pm    文章主題: 引言回覆

自動功能在表單中﹐不是在命令窗口中用set filt to 和repl with
要求在grid控件中修改第一筆﹐后面相同型號的帶case_no為C開頭的全部變為一樣﹐相同型號的帶case_no為B開頭的全部變為一樣﹐
回頂端
檢視會員個人資料 發送私人訊息
garfield
Site Admin


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


第 4 樓

發表發表於: 星期五 八月 27, 2004 11:33 pm    文章主題: 引言回覆

由於本人腦袋能處理的資料量較小, 無法解答太過複雜的問題, 提供以下幾點針對你第二次提問的問題做解答.
grid中的控件可以在 .valid( ) 中做以下處理
local mrec, mled, mweight
mrec = recno()
mled = left( case_no ,1 )
mweight = weight
repl weight with mweight for mled = left( case_no ,1 )
go mrec

_________________
利用>>搜尋<<的功能會比問的還要快得到答案.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

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


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