|
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
CPS0204
註冊時間: 2014-08-24 文章: 441
第 1 樓
|
發表於: 星期四 六月 23, 2022 2:23 pm 文章主題: 可否在com 中 使用report form 報表功能,結果報錯(已經解決) |
|
|
我想使用php 呼叫vfp com
由瀏覽器,執行php ,再呼叫 vfp的com 處裡文字,開啟寫入讀取sql都沒問題!
但想使用vfp 的report 生成一個 C:\TEMP\MYFILE-GONDAN.PDF
結果使用瀏覽器執行 php 時報錯:
Fatal error: Uncaught com_exception: Source: php5.COM01 php5.COM01<br/>Description: test1 d:\test1.prg 第 20 列發生錯誤 此時不能操作使用者介面 2031 in...............
好像是說.com當中不可以有顯示的操作介面.....
可是我又想使用vfp 的report 功能,不顯示沒有關係,只要能背景生成pdf就可以了
程式碼如下:
SELECT TEMP1
SCATTER MEMVAR MEMO
SET PRINTER TO NAME 'Microsoft Print To PDF'
SET PRINTER TO "C:\TEMP\MYFILE-GONDAN.PDF"
Report Form GD_CQ1 To File "C:\TEMP\MYFILE-GONDAN.PDF" NOWAIT NOCONSOLE NODIALOG <<此行有錯
請問:有甚麼解套的方法?
謝謝
CPS0204 在 星期六 六月 25, 2022 9:57 am 作了第 1 次修改 |
|
回頂端 |
|
|
ckp6250
註冊時間: 2004-07-30 文章: 1645
第 2 樓
|
發表於: 星期四 六月 23, 2022 7:01 pm 文章主題: |
|
|
php 要生成 pdf , 為何不直接用 tcpdf ? |
|
回頂端 |
|
|
CPS0204
註冊時間: 2014-08-24 文章: 441
第 3 樓
|
發表於: 星期四 六月 23, 2022 10:49 pm 文章主題: |
|
|
php 要生成 pdf , 為何不直接用 tcpdf ?
回答:因為php無法很快畫出report的線和內容!報表很複雜,想直接套用以開發好的fox report FORM
就不需要用PHP 來做報表!
PHP 只是過水,呼叫COM用的 |
|
回頂端 |
|
|
CPS0204
註冊時間: 2014-08-24 文章: 441
第 4 樓
|
發表於: 星期五 六月 24, 2022 8:13 am 文章主題: |
|
|
問題已解決了!
改用瀏覽器,呼叫 php ,然後在php 中輸入下列
exec (myfoxpro1.exe);
就可以呼叫由vfp9 寫成的myfoxpro1.exe (當中有讀ms-sql資料及寫report form輸出成pdf檔,檔名=c:\temp\myfile1.pdf)
*****************
再由php寫下列:
$file = 'C:\TEMP\MYFILE1.PDF';
sleep(1); 備註:需等待1秒鐘!讓PDF寫入磁碟中
$filename = $file;
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="' . $filename . '"');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
// 读取文件
@readfile($file);
就可以在瀏覽器中,預覽此pdf檔!
這樣可以繞開,由php呼叫com的不方便(com無法接受顯示功能)!
很滿意!
CPS0204 在 星期六 六月 25, 2022 10:00 am 作了第 3 次修改 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 5 樓
|
發表於: 星期五 六月 24, 2022 9:38 am 文章主題: |
|
|
老實說,
在 PHP 裡叫VFP做事,實在很作弊
可以躲過很多安全機制,
而且很省事
XD _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
CPS0204
註冊時間: 2014-08-24 文章: 441
第 6 樓
|
發表於: 星期五 六月 24, 2022 10:23 am 文章主題: |
|
|
老實說,
在 PHP 裡叫VFP做事,實在很作弊
可以躲過很多安全機制,
而且很省事
**************************
是的!
客戶須從瀏覽器看很多ms sql的報表 (這些表,vfp都已做過)
偷吃步方法:
1.有需要report from 報表 的-->使用php run myfoxpro.exe 就可以生成pdd的檔案,再由php撈回browser
備註:VFP9*.DLL RUNTIME 的DLL 檔須同步放在同個目錄中!
因以前有用vfp開發過報表,若要由php或 css 再重寫報表,很難!
2.不需要顯示的,純文字或數字運算-->>使用 php 呼叫vfoxpro com 即可!
由於php連通ms-SQL都沒問題,以上兩種方法都可活用!謝謝指導
CPS0204 在 星期五 六月 24, 2022 6:05 pm 作了第 1 次修改 |
|
回頂端 |
|
|
violetlkk
註冊時間: 2003-06-21 文章: 82 來自: kaohsiung
第 7 樓
|
發表於: 星期五 六月 24, 2022 4:12 pm 文章主題: |
|
|
@CPS0204
你真強
這個方法可能是你第一個使用 之前沒看過
如果可以穩定的執行 那就可以產生漂漂亮亮pdf
tcpdf 可能是我不會使用 產生的pdf醜醜的 |
|
回頂端 |
|
|
CPS0204
註冊時間: 2014-08-24 文章: 441
第 8 樓
|
發表於: 星期五 六月 24, 2022 5:59 pm 文章主題: |
|
|
@violetlkk
這個方法可能是你第一個使用 之前沒看過
如果可以穩定的執行 那就可以產生漂漂亮亮pdf
tcpdf 可能是我不會使用 產生的pdf醜醜的
*******************************************
剛試過一天,沒問題,由php run myfox1.exe!
PHP 呼叫EXE 後,EXE可正常離開,不會咬住在WINDOWS 的記憶體!
例如:
http:www.myfox.idv.tw:8075/print_fox.php?gondan=2205-003
傳入給php 變數 工單號碼=2205-003,(先不考慮安控問題)
-----------------------------------------------------
傳入你要的參數例如 工單號碼!就可以印出report 到pdf
我在vfp當中使用REPORT FORM 畫線,插圖,填入MSSQL....文字或欄位等,都可以生成PDF檔!
但若是由PHP 及CSS 或JAVA 來畫圖畫線畫報表等<<<我也不會做! |
|
回頂端 |
|
|
ckp6250
註冊時間: 2004-07-30 文章: 1645
第 9 樓
|
發表於: 星期六 六月 25, 2022 9:10 pm 文章主題: |
|
|
請教一下,如果報表內容中有用到罕用字,
這個方式,還行得通嗎? |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 10 樓
|
發表於: 星期日 六月 26, 2022 12:38 am 文章主題: |
|
|
我本來的想法應該是先把文件HTML化,
然後就可以用第三方函式印出PDF
像我這麼懶可能會先用WORD排好版,
用WORD轉成超爛的HTML版本,
_________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
CPS0204
註冊時間: 2014-08-24 文章: 441
第 11 樓
|
發表於: 星期日 六月 26, 2022 8:27 am 文章主題: |
|
|
ckp6250 寫到: | 請教一下,如果報表內容中有用到罕用字,
這個方式,還行得通嗎? |
*************
應該說:原本vfp可以做的事,prg,report 或label,不要有form
都可以做原來的事!
罕用字先report form 到 此台的 c:\temp\my1.pdf
然後等1秒給php 調用至瀏覽器上可以的!
餵pdf 單向給瀏覽器...一定沒問題!
我有印工單的條碼字體到pdf再到瀏覽器同樣沒問題 |
|
回頂端 |
|
|
CPS0204
註冊時間: 2014-08-24 文章: 441
第 12 樓
|
發表於: 星期日 六月 26, 2022 8:29 am 文章主題: |
|
|
syntech 寫到: | 我本來的想法應該是先把文件HTML化,
然後就可以用第三方函式印出PDF
像我這麼懶可能會先用WORD排好版,
用WORD轉成超爛的HTML版本,
|
我更懶,直接拿原本的vfp 的form 輸出到pdf檔
連改都不用改!
也不需要先用word畫!
|
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 13 樓
|
發表於: 星期日 六月 26, 2022 5:28 pm 文章主題: |
|
|
所以我看到就覺得這方法真妙. _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
CPS0204
註冊時間: 2014-08-24 文章: 441
第 14 樓
|
發表於: 星期一 六月 27, 2022 8:34 am 文章主題: |
|
|
php 的exec();
還可以用 shell_exec();,system();
看了google一天,try 一天,找不出他們呼叫myfox1.exe 的差異點在哪?
還是用exec()好了 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 15 樓
|
發表於: 星期一 六月 27, 2022 8:59 am 文章主題: |
|
|
CPS0204 寫到: |
應該說:原本vfp可以做的事,prg,report 或label,不要有form
都可以做原來的事!
|
只要不 "visual" 幾乎都可以,
所以執行訊息都得輸出到 log.txt _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|