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

有關LOCAL VIEW 的問題
前往頁面 1, 2  下一頁
 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
小寶寶



註冊時間: 2004-08-20
文章: 57


第 1 樓

發表發表於: 星期日 二月 20, 2005 11:30 am    文章主題: 有關LOCAL VIEW 的問題 引言回覆

小弟使用LOCAL VIEW作一對多

假如說今天一套軟體包成套裝的賣出

可能賣了許多間了

假如說LOCAL VIEW的欄位需要增加欄位

那不就要一間客戶抓一次資料庫回來修改

令個解決方案就是灌VFP現場編修~

不過假如說兩三間就算了~

假如10~50間的話~

不知道大大們都怎麼解決!!
回頂端
檢視會員個人資料 發送私人訊息
bin1x



註冊時間: 2004-08-27
文章: 462


第 2 樓

發表發表於: 星期日 二月 20, 2005 11:57 am    文章主題: 引言回覆

之前待過一家公司
執行一支程式
先以日期判斷是否執行過
再來就是alter table 了
view 那時我是再重新寫過
只是dbgetprop 好像保留原設定
這樣寫起來好像要一大串
最後再dbsetprop 好麻煩的樣子
覺得好像不是一個好的解決方法
反正之前有這麼做過
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 參觀發表人的個人網站 MSN Messenger
朱育興



註冊時間: 2003-08-25
文章: 661
來自: 台中市大里區

第 3 樓

發表發表於: 星期日 二月 20, 2005 2:46 pm    文章主題: 引言回覆

這種事,我們常在做這檔事,反正客戶(比你的客戶數還多且遍及全省)下載我們給的更新版本時,就會自動調整資料結構(如果有異動的話),這個公司的調整程式已經是制式的,不需我們去維護;要維護的是若欄位意義有變動而需調整資料內容時,這個就要因應實際資料而特定寫的。反正寫習慣了(被證券交易所給練出來的)就已成家常便飯了。

我也只能說這麼多了,我還沒空以自己的寫法來發表這個調整程式,所以只是讓你知道有這麼回事;反正都是人寫出來的就是了。

_________________
希望有更多人來參與
VFP wiki - 需要大家一起完成的VFP電子書與FAQ
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 MSN Messenger
bin1x



註冊時間: 2004-08-27
文章: 462


第 4 樓

發表發表於: 星期日 二月 20, 2005 3:34 pm    文章主題: 引言回覆

table 可以以alter table來做
那view 除了重新再create這種做法之外
有沒有可以保留原先的schema,(這麼拼沒有錯啦呼
有錯再說),再追加欄位定義的做法嗎?
我是指dbgetprop 和dbsetprop無法做到的事
或是可以寫得很漂亮
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 參觀發表人的個人網站 MSN Messenger
小寶寶



註冊時間: 2004-08-20
文章: 57


第 5 樓

發表發表於: 星期日 二月 20, 2005 7:26 pm    文章主題: 引言回覆

不知道朱兄說的是不是用程式去判斷view是否更改~

如更改~使用程式下去改變~

是嗎??
回頂端
檢視會員個人資料 發送私人訊息
朱育興



註冊時間: 2003-08-25
文章: 661
來自: 台中市大里區

第 6 樓

發表發表於: 星期日 二月 20, 2005 10:39 pm    文章主題: 引言回覆

我倒沒注意到是 LOCAL VIEW 的問題,而且公司的制式調整程式,因為是制式所以還沒很認真的仔細研究,除非是遇到新問題才會想去改良它。

但是不管怎麼樣,必定是要朝著程式去調整相關資料,否則在實務上是非常累人而沒效率,最後常常客戶不滿意而公司內部一定是累得人仰馬翻的;也許初期寫得程式不完善,但隨著不斷修正,也應該會愈來愈精煉;漂亮的程式是無法一次就辦到的,一般我們的習慣是先將功能寫出來,再逐步取得效率,最後在功能與效率之間取得平衡點,這個是沒辦法說得清楚的,大概要靠經驗的累積吧!

_________________
希望有更多人來參與
VFP wiki - 需要大家一起完成的VFP電子書與FAQ
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 MSN Messenger
elleryq



註冊時間: 2007-06-21
文章: 768


第 7 樓

發表發表於: 星期二 二月 22, 2005 11:08 am    文章主題: 引言回覆

我以前的方法是先把 view drop 掉,再自行建回來...
倒是不用寫很多程式,因為 vfp 有內附一個gendbc 的程式,我都是用這程式來幫我產生一個可以generate database schema 的 prg
然後去編輯這個 prg, 把我要的部份取出來即可...
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
小寶寶



註冊時間: 2004-08-20
文章: 57


第 8 樓

發表發表於: 星期二 二月 22, 2005 9:47 pm    文章主題: 引言回覆

這樣說的話~

是不是說用程式把view刪除...

在用程式建立view??

可以是這樣說嗎???
回頂端
檢視會員個人資料 發送私人訊息
elleryq



註冊時間: 2007-06-21
文章: 768


第 9 樓

發表發表於: 星期三 二月 23, 2005 9:14 am    文章主題: 引言回覆

可以這麼說...
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
garfield
Site Admin


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


第 10 樓

發表發表於: 星期三 二月 23, 2005 9:42 am    文章主題: 引言回覆

朱育興 寫到:

我也只能說這麼多了,我還沒空以自己的寫法來發表這個調整程式,所以只是讓你知道有這麼回事;反正都是人寫出來的就是了。


朱兄的著作版權概念不錯哦! , 只要是利用上班時間寫的程式皆是屬於公司的, 不可私下拿來公佈,因為你拿人薪水替人作事, 版權就是該公司所有, 所以就只能拿自己下班時寫的程式碼來公佈. 佩服!.

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



註冊時間: 2003-06-11
文章: 393


第 11 樓

發表發表於: 星期三 二月 23, 2005 10:04 am    文章主題: 引言回覆

我的做法是:
A.如果是只有更改 VIEW 而已,只要將 資料庫.D* (.DBC,.DCT,.DCX) 拷貝給客戶覆蓋更新即可
B.如果有異動某些 資料表的結構:
  公司端Sad先整理出新的空白資料庫全部檔案)
  1.先 ZAP 掉所有的資料表
  2.將 資料庫 及 空的資料表 相關檔案 交給客戶

  客戶端:
  1.先將全部檔案 Copy 到 臨時資料夾 (備份)
  2.更新所有檔案
  3.再一一執行 Append from \臨時資料夾\資料表 (取回備份資料)

當然上面的做法大部份都可以以程式處理
回頂端
檢視會員個人資料 發送私人訊息
garfield
Site Admin


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


第 12 樓

發表發表於: 星期三 二月 23, 2005 10:49 am    文章主題: 引言回覆

我的方法就是用215001 , 也有寫程式來處理, 你們參考看看吧!
代碼:

func trandbf
Lpara need_zero
if type('need_zero')#'C'
   need_zero= .f.
else
   need_zero = (upper(need_zero)=='ZERO')
endif
 *SET DEFA TO
SET STAT ON
SET TALK OFF
SET SAFE OFF
set dele on
Clear
CLOSE DATA

IF NEED_ZERO           &&--這個功能是為了要將你在開發的程式的資料環境複製一份空白的TABLE檔到客戶端時在用的. Garfield
      S=PADR('d:\OUT',30)
   @ 12,20 SAY '請輸入要將資料全部清除的目錄' GET S
   READ
   IF LASTKEY()=27
      RETURN
   ENDIF
   SET DEFA TO &S
ELSE
   @ 08,20 SAY '目前資料預設的目錄為(如果不對, 請用SET DEFA TO ?? 來改) ==> '+fullpath(sys(2001,'defa'))
   MFILE=SPACE(30)
   @ 12,20 SAY '請輸入備份檔的目錄:' GET MFILE
   READ
   IF LASTKEY()=27
      RETURN
   ENDIF
   MFILE = ALLTRIM(MFILE)
   IF !FILE(MFILE+'\PUB_VAR.MEM')       &&--我是用這個檔案來判定那個目錄是否真的有資料, 請自行修正, Garfield
      WAIT '無此目錄' WINDOW
      RETURN
   ENDIF
   i=MFILE+'\pub_var'
   REST from pub_var addi
   REST from &i addi
   SAVE all like pub_* to pub_var
ENDIF

TOT_DBF = ADIR(MDBF , '*.DBF')

FOR i=1 TO TOT_DBF
   IF !(' '+MDBF[I,1] $ ' FOXUSER.DBF PUB_BROW.DBF SYSTEM.DBF FUNCNAME.DBF DKCONTRL.DBF TEST.DBF TEMP.DBF SPECIAL.DBF DEFAULT.DBF FILESTRU.DBF MAIN.DBF PHONETIC.DBF SQLTABLE.DBF MBSM.DBF ADDR.DBF')
      USE MDBF[I,1] EXCL
      ZAP
      IF !NEED_ZERO
         PASS = MFILE+'\'+MDBF[I,1]
         ? pass
         IF FILE(PASS)
            SET TALK ON
            APPE FROM &PASS
            SET TALK OFF
         ENDIF
      ENDIF
   ENDIF
NEXT
IF NEED_ZERO
   QUIT
ENDIF

USE


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



註冊時間: 2007-06-21
文章: 768


第 13 樓

發表發表於: 星期四 二月 24, 2005 8:58 am    文章主題: 引言回覆

題外話,
什麼叫做 215001 ??
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
syntech



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

第 14 樓

發表發表於: 星期四 二月 24, 2005 9:05 am    文章主題: 引言回覆

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

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


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


第 15 樓

發表發表於: 星期四 二月 24, 2005 9:38 am    文章主題: 引言回覆

就是樓上的那位, 那為什麼要叫做 215001 , 我想是1.行動電話末6碼, 2.學號, 3. 2+1+5+0+0+1= 9 可能是希望做某些快樂的事情能久一點.. Wink
隨便亂猜的, 別介意.

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

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


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