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

請問一下各位像 材料記錄 這種的 如何寫!

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



註冊時間: 2003-07-20
文章: 54


第 1 樓

發表發表於: 星期日 五月 03, 2009 4:45 pm    文章主題: 請問一下各位像 材料記錄 這種的 如何寫! 引言回覆

之前講得不太清楚

結存要 先有個值,例如:1

-------------
收料 發料 結存
結存 1
收10 結存 11
發5 結=6
---------- ------

結存 每次都會去+ - 收 /發 的動作

就像 存款簿 格式 的,那個 結存 的值是要每新增一筆就帶下來的

像這種我要怎麼寫呢?

..........
謝謝


amd 在 星期一 五月 04, 2009 10:36 am 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
syntech



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

第 2 樓

發表發表於: 星期一 五月 04, 2009 12:13 am    文章主題: 引言回覆

先整理在一個TABLE/CURSOR上,
再印出來不就得了.

或是用報表變數,
以 IIF 判斷要加要減

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

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



註冊時間: 2003-07-20
文章: 54


第 3 樓

發表發表於: 星期一 五月 04, 2009 10:37 am    文章主題: 引言回覆

我改了一下 標題,之前說得可能不是很 清楚,麻煩 各位 教授 一下 吧!

謝謝

我是想要在 grid 上實現的!

是有關聯式的,有個 材料主表,這個是 明細


amd 在 星期一 五月 04, 2009 10:43 am 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
syntech



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

第 4 樓

發表發表於: 星期一 五月 04, 2009 10:41 am    文章主題: 引言回覆

你應該要知道,
就算給你如來神掌密笈,你也不一定看的懂.

答案就是那樣

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

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



註冊時間: 2003-07-20
文章: 54


第 5 樓

發表發表於: 星期一 五月 04, 2009 10:45 am    文章主題: 引言回覆

syntech 寫到:
你應該要知道,
就算給你如來神掌密笈,你也不一定看的懂.

答案就是那樣


老大 ,如你不 嫌棄, 你就 點一下,我看 是否 聽得懂!

謝 謝 先 !
---------


amd 在 星期一 五月 04, 2009 11:56 am 作了第 2 次修改
回頂端
檢視會員個人資料 發送私人訊息
garfield
Site Admin


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


第 6 樓

發表發表於: 星期一 五月 04, 2009 11:52 am    文章主題: 引言回覆

寫程式不就是將手工變成電腦自動作,
你先想想如何用手工做出你要的結果,
再用電腦處理資料的方式來寫程式,
這個題目你知道如何用手工填寫帳冊的方法嗎?

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



註冊時間: 2003-07-20
文章: 54


第 7 樓

發表發表於: 星期一 五月 04, 2009 11:55 am    文章主題: 引言回覆

garfield 寫到:
寫程式不就是將手工變成電腦自動作,
你先想想如何用手工做出你要的結果,
再用電腦處理資料的方式來寫程式,
這個題目你知道如何用手工填寫帳冊的方法嗎?


知道,大大 您出現了啊,可否麻煩 你教授一下呢?謝謝 先

因資料 是從中 接手,也就是之前有的 存料 需 接下來,才會要 先有 結存 的值!

我想要做的是像在 Excel 上操作的一樣,即輸入畫面跟印出的結果是一樣的!

且 如果 之中 有個值 被修改過了 ,那接下來 的值 也要自動更改 + -!

目前是有做到一些成果,但有缺點,想要看各位是否有更好的想法,謝謝!

有想過可以 用 text 來輸入,grid 設成唯讀, 但這樣就 覺得不是 很完美!
回頂端
檢視會員個人資料 發送私人訊息
garfield
Site Admin


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


第 8 樓

發表發表於: 星期一 五月 04, 2009 12:26 pm    文章主題: 引言回覆

我只能給你一些提示,
請你自己思考一下要如何變通
repl 結餘 with 上次結餘+異動數量 rest
go 剛才那筆

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



註冊時間: 2007-01-29
文章: 172


第 9 樓

發表發表於: 星期一 五月 04, 2009 12:54 pm    文章主題: 好優的解法 ~~~~~~~~~ 引言回覆

garfield 寫到:
我只能給你一些提示,
請你自己思考一下要如何變通
repl 結餘 with 上次結餘+異動數量 rest
go 剛才那筆


拍拍手!
啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪∼∼ Twisted Evil

我最欣賞這種解法!
太威了!
殺很大啊 ~~~~~~~~!
回頂端
檢視會員個人資料 發送私人訊息
amd



註冊時間: 2003-07-20
文章: 54


第 10 樓

發表發表於: 星期一 五月 04, 2009 8:27 pm    文章主題: 引言回覆

garfield 寫到:
我只能給你一些提示,
請你自己思考一下要如何變通
repl 結餘 with 上次結餘+異動數量 rest
go 剛才那筆

===============

大佬,你想的是不是跟我目前寫的一樣意思!

--------------------
Skip -1
a = 存料明細.庫存結存
Skip
Replace 材料編號 with 器材名稱.材料編號

Thisform.Grid1.Column6.text1.value = a + EVALUATE(FIELD(5)) - EVALUATE(FIELD(6))
-----------------------------

但這有個缺點,就是要先有一筆空白資料

第一筆時不能先有結存(也就是 收料 要先有值,結存才會有值,但這樣是不對的,因為多了一次收料)
不然會變成 0
===============
寫到現在,發現其實如果都是對資料庫來 + - ,這樣的結果 都可能出錯,

覺得如果是對目前畫面上的 橫() 列() = 儲存格 來做+ - 可能是最不會出錯的吧!

不知 這樣想法對不對呢?
回頂端
檢視會員個人資料 發送私人訊息
goodnight



註冊時間: 2008-10-13
文章: 473
來自: 台南市

第 11 樓

發表發表於: 星期一 五月 04, 2009 10:43 pm    文章主題: 引言回覆

通常你的問題應該是在報表呈現出的產品異動資料, 如果你是想在 grid 裡即時顯示
就可以參照excel 的方式, 將 grid 模擬成 excel 的模式, 而你需要在產品主檔有一個欄位是現有庫存量
然後每當 grid 去做進出的動作時, 就會更新這個欄位, 也可以在你的異動table 寫入這個值
那麼 grid 就會顯示出你要的結果了

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



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

第 12 樓

發表發表於: 星期二 五月 05, 2009 10:26 am    文章主題: 引言回覆

找出合適的事件,
撰寫合適的code,
就會出現你要的答案.
反之,就會搞出一堆問題,
還要怪工具不對.

excel 是用 cell 為單位處理資料.
但是 foxpro 應該使用table/cursor中記錄的欄位為單位處理資料.
很多人通常搞不清楚這點,
老是想拿vfp grid 的cell 作文章.

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

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



註冊時間: 2003-07-20
文章: 54


第 13 樓

發表發表於: 星期二 五月 05, 2009 5:48 pm    文章主題: 引言回覆

goodnight 寫到:
通常你的問題應該是在報表呈現出的產品異動資料, 如果你是想在 grid 裡即時顯示
就可以參照excel 的方式, 將 grid 模擬成 excel 的模式, 而你需要在產品主檔有一個欄位是現有庫存量
然後每當 grid 去做進出的動作時, 就會更新這個欄位, 也可以在你的異動table 寫入這個值
那麼 grid 就會顯示出你要的結果了


這個點,我有想過但沒實做,嗯,目前該考慮放下去了!

我再試試,謝謝 囉! Very Happy
回頂端
檢視會員個人資料 發送私人訊息
amd



註冊時間: 2003-07-20
文章: 54


第 14 樓

發表發表於: 星期二 五月 05, 2009 5:53 pm    文章主題: 引言回覆

syntech 寫到:
找出合適的事件,
撰寫合適的code,
就會出現你要的答案.
反之,就會搞出一堆問題,
還要怪工具不對.

excel 是用 cell 為單位處理資料.
但是 foxpro 應該使用table/cursor中記錄的欄位為單位處理資料.
很多人通常搞不清楚這點,
老是想拿vfp grid 的cell 作文章.


前輩,小弟不才,對 foxpro 認識不夠,感謝您的指導! Very Happy
回頂端
檢視會員個人資料 發送私人訊息
amd



註冊時間: 2003-07-20
文章: 54


第 15 樓

發表發表於: 星期二 五月 05, 2009 11:01 pm    文章主題: 引言回覆

這是昨晚在查到微軟的範例,果然有我想要的功能!

剛才改了一些,終於達到我想要的東東囉,Excel 輸入畫面!(當然這只是一小步,也不可能 100% 完美)

更神奇的是,輸入起始 結存的值之後,如有輸入第二筆,還會把第一筆給涷結起來,讓人無法進入,這也是我想要的功能!呵呵(不過我倒是不懂為什麼就是啦!)


---- 以下給有需要的人參考 -----微軟原版範例--------------------

ThisForm.Grid1.SetFocus
ThisForm.LockScreen = .T.
IF ThisForm.Grid1.RelativeRow = 1
=MESSAGEBOX("You cannot do this replacement from the top "+;
"of the Grid.",16,"")
*: If the active grid cell is in the top row of the grid, this
*: will display a message to the user.
ELSE
RepField = FIELD(ThisForm.Grid1.ActiveColumn)
ColumnNumber = "Column"+ALLTRIM(STR(ThisForm.Grid1.ActiveColumn))
ThisForm.GRID1.ACTIVATECELL(ThisForm.GRID1.RELATIVEROW-1,;
ThisForm.GRID1.RELATIVECOLUMN)
RepValue = ThisForm.Grid1.&ColumnNumber..Text1.Value
ThisForm.GRID1.ACTIVATECELL(ThisForm.GRID1.RELATIVEROW+1,;
ThisForm.GRID1.RELATIVECOLUMN)
yesno = MESSAGEBOX("Are you certain that you wish to replace "+;
CHR(13)+"Field "+UPPER(repField)+" current value?",36,"")
IF yesno = 6
REPLACE &RepField WITH RepValue
ThisForm.REFRESH
ELSE
WAIT WINDOW "Replacement Canceled" NOWAIT
ENDIF
ENDIF
ThisForm.LockScreen = .F.
-----------------------
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

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


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