比如合同的原始信息,是以pdf的形式保存的,相关数据保存在vfp的数据表中,但是用户希望能够通过电子的单证访问到pdf的原始单证,怎么处理啊?
我有一些不成熟的想法,不太好,估计。我可以通过文件打开的对话框取得文件(pdf)信息,然后,改名,把pdf文档,拷贝到某个服务器的文件夹上去。然后,需要时,打开它。
------解决方案--------------------------------------------------------
最简单的方法,安装PDF打印机,用VFP生成报表格式,打印到PDF文件即可。
1、用第三方控件;
2、搜索PDF打印机,(Virtual PDF Printer 虚拟PDF打印机 1.01 or PrimoPDF)安装即可。
------解决方案--------------------------------------------------------
帖主意思是要把报表打印成PDF,就是WWWWB的方法安装个PDF虚拟打印机即可。
“通过电子的单证访问到pdf的原始单证”不太明白?
------解决方案--------------------------------------------------------
对,楼主解释一下
通过电子的单证访问到pdf的原始单证
是什么意思?
------解决方案--------------------------------------------------------
应该是 单据/报表的意思
------解决方案--------------------------------------------------------
1、安装第三方软件;
2、安装Adobe Reader;
3、OR COPY 相应的OCX到系统目录(pdf.ocx ),并注册
4、在VFP中用ShellExecute调用。
------解决方案--------------------------------------------------------
方法一:
*VFP打开PDF文件并显示在表单中?(先安装Adobe Reader 5.0或6.0)
*--------------------------------------------------------------
*将下面程序代码保存为一个prg文件,传入PDF文件名作为参数即可。
LPARAMETERS tFile
PUBLIC oform1
oform1=NEWOBJECT( "form1 ")
IF VARTYPE(cFile) # "U "
oForm1.cmdFile.Visible = .f.
oForm1.cmdExit.Visible = .f.
oForm1.oleControl1.Top = 12
oForm1.oleControl1.LoadFile([&cFile])
ENDIF
oform1.Show
*RETURN
**********************************************************
DEFINE CLASS form1 AS form
DoCreate = .T.
Caption = "pdfForm "
Name = "Form1 "
ADD OBJECT cmdfile AS commandbutton WITH ;
Top = 12, ;
Left = 12, ;
Height = 27, ;
Width = 144, ;
Caption = "Select File ", ;
Name = "cmdFile "
ADD OBJECT cmdexit AS commandbutton WITH ;
Top = 12, ;
Left = 168, ;
Height = 27, ;
Width = 84, ;
Caption = "E\ <xit ", ;
Name = "cmdExit "
ADD OBJECT olecontrol1 AS olecontrol WITH ;
OLEClass = "PDF.PdfCtrl.6 ", ; &&如果是Adobe Reader 5.0,此处的6为5
Top = 48, ;
Left = 12, ;
Height = 192, ;
Width = 348, ;
Name = "Olecontrol1 "
PROCEDURE Init
ThisForm.ReSize()
ENDPROC
PROCEDURE Resize
ThisForm.Olecontrol1.Height = ThisForm.Height - 60
ThisForm.Olecontrol1.Width = ThisForm.Width - 24
ThisForm.Olecontrol1.Refresh()
ENDPROC
PROCEDURE cmdfile.Click
LOCAL cFile
cFile = GETFILE([PDF])
IF !EMPTY(cFile)
THISFORM.oleControl1.LoadFile([&cFile])
ENDIF
ENDPROC
PROCEDURE cmdexit.Click
ThisForm.Release()
ENDPROC
ENDDEFINE