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

新手求助 ... 詢問 98 轉 XP 後....印表機問題....感謝幫忙

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



註冊時間: 2013-03-30
文章: 2


第 1 樓

發表發表於: 星期六 三月 30, 2013 10:34 pm    文章主題: 新手求助 ... 詢問 98 轉 XP 後....印表機問題....感謝幫忙 引言回覆

各位大哥: 小弟是個新手....我不懂FOXPRO 所以問的問題 可能會有點蠢,公司有一套 當時用在 98底下 用 FOXPRO 5.0寫的軟體.....原本都是正常的.....但是在XP 底下後 就出現了 怎麼列印 紙張都是A4

當然小弟 有先做功課.....網上一查 有人提到 98 與 XP 自行定義紙張的編號問題
我打開 FRT 後看果然 是PAPERSIZE=256 所以怎麼印都是 A4

但是問題來了....我要的其實很簡單 只要能改成 可以 正常列印 LETTER 的紙張就可以了,我沒有中一刀的需要,我只要可以列印 LETTER 就可以了.....

目前 列印的時候 不會選擇印表機....網上也找的到很多方式等等的解決方案,無奈 小弟 對FOXPRO 不熟......所以很多的解決方法 對我來說 都不知道該怎麼改跟操作.....

引言回覆:

CREATE TABLE &TMP1 (P5KYFM C(20),P5KYTO C(20),P5PRDT C(09), P5PGNO C(03),P5DATA C(200))
USE &TMP1
USE
CASE VAR1=2
FLNAME1 = 'TEMP\'+ACC_TIME
CASE VAR1=3
LOCATE FOR (P2GDNO=ACC_KEYFROM .OR. P2GDNO>ACC_KEYFROM)
CASE VAR1=4
PAGENO = PAGENO+1
STORE ACC_KEYFROM TO M.P5KYFM
STORE ACC_KEYTO TO M.P5KYTO
STORE P_DATE TO M.P5PRDT
STORE STR(PAGENO, 3) TO M.P5PGNO
CASE VAR1=5
SCATTER MEMVAR
CASE VAR1=6
IF M.P2GDNO>ACC_KEYTO
STORE ' ' TO SW1
ELSE
STORE 'Y' TO SW1
ENDIF
CASE VAR1=7
STORE M.P2GDNO+' '+M.P2DESC+' ' TO TMP_1
STORE ' ' TO TMP_2
STORE ' ' TO TMP_3
STORE TMP_1+TMP_2+TMP_3 TO M.P5DATA
TMP1 = 'TEMP\'+ACC_TIME
INSERT INTO &TMP1 FROM MEMVAR
CASE VAR1=8
CASE VAR1=9
IF ACC_SEL='1'
FLNAME1 = 'TEMP\'+ACC_TIME
SELECT 9
USE &FLNAME1 ALIAS FPT05
TMP1 = 'SPL01B'
REPORT FORM &TMP1 NOCONSOLE NOEJECT TO PRINTER
TMP1 = 'TEMP\'+ACC_TIME+'.DBF'
TMP2 = 'TEMP\'+ACC_TIME+'.CDX'
SELECT 9
USE
ERASE &TMP1
ERASE &TMP2
ENDIF


這是其中一段程式
列印的部份 應該是
REPORT FORM &TMP1 NOCONSOLE NOEJECT TO PRINTER

解決的想法 有下面幾個 不知道哪個簡單

第一種 改 REPORT FORM &TMP1 NOCONSOLE NOEJECT TO PRINTER ,讓列印前先選擇印表機跟紙張.....選好後 可以連續打印正確即可....

第二種 不動程式......我在XP 的登錄檔案作手腳 看看能不能內定出來就是 LETTER

第三種 就是 可以不用選印表機 內定預設的 紙張就固定 LETTER 就可以了

不知道 哪種方式簡單 有沒有人 可以教我一下的
PS 我現在用 6.0 在改程式碼
回頂端
檢視會員個人資料 發送私人訊息
syntech



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

第 2 樓

發表發表於: 星期日 三月 31, 2013 12:03 am    文章主題: 引言回覆

先試看看,重新開啟 SPL01B.FRX,
選擇[設定列印格式],
按下[列印設定],
指定你要印的印表機,
把紙張格式改成 LETTER,
存檔後,再試印看看.
(這些動作是更新報表檔中的預設印表機及紙張格式)

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

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



註冊時間: 2013-03-30
文章: 2


第 3 樓

發表發表於: 星期日 三月 31, 2013 2:20 am    文章主題: 引言回覆

syntech 寫到:
先試看看,重新開啟 SPL01B.FRX,
選擇[設定列印格式],
按下[列印設定],
指定你要印的印表機,
把紙張格式改成 LETTER,
存檔後,再試印看看.
(這些動作是更新報表檔中的預設印表機及紙張格式)


了解 我在測試看看 ,不過 我的6.0是英文版的...我不熟FOXPRO 所以你說的位置其實我有點模糊...... 我在實際測試看看

不過我剛剛測試出一個心得 如果我在報表法前面 加上
SYS(1037)
這樣的話 會有對話框,選擇紙張印表機 都沒問題,而且同一個報表 只要選一次,後面再列印 預設值都會跟前面選的一樣.....

想請教 難道沒有方法 可以直接抓取 WINDOWS 預設的印表機的名稱跟紙張設定嗎?? 既然 SYS(1037) 可以影響 那麼 沒有辦法利用 SYS(1037)抓取完畢以後直接等於按下確認....

或者 可以讓我設定一次 就都不用每次列印都出現嗎??
回頂端
檢視會員個人資料 發送私人訊息
bx1166



註冊時間: 2011-12-06
文章: 273


第 4 樓

發表發表於: 星期日 三月 31, 2013 7:28 am    文章主題: 引言回覆

開始 印表機設定 內容 裡面直接去設定使用Letter紙張 試試看
回頂端
檢視會員個人資料 發送私人訊息
syntech



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

第 5 樓

發表發表於: 星期一 四月 01, 2013 10:19 am    文章主題: 引言回覆

kk_lee69 寫到:
如果我在報表法前面 加上
SYS(1037)
這樣的話 會有對話框,選擇紙張印表機 都沒問題,而且同一個報表 只要選一次,後面再列印 預設值都會跟前面選的一樣.....




你誤打誤撞修改了報表預設值.
這就是我說的動作.

英文版的話,
當你已經開啟報表檔後,
選擇[File][Page Setup],
然後按下[Print Setup],
選擇SIZE是 'Letter',
再按下[ok]


sys(1037) 就是開啟[Print Setup]設定

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

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

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


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