ActiveX Automation Server - how to run VPE without the OCX

Knowledge exchange related to the VPE Report Engine and PDF Library

Moderator: IDEAL Software Support

ActiveX Automation Server - how to run VPE without the OCX

Postby BartG » Thu Jun 19, 2008 1:43 am

We have been using the window-embedded VPE ActiveX control (OCX) in all of our Progress applications to
print reports. Now we have an application that will be server based and therefore, we need to be able to manipulate VPE data in a windowless environment. We are sending data/parameters to this application, doing the processing,
creating the report and then sending the report back to the client to be printed.

In our current implementation, using the window-embedded OCX, the server fails to run the OCX because it cannot run code within a window. We are hoping VPE has windowless coding method, an ActiveX Automation control (opposed to the OCX).

In doing some research, it looks like we need to use VpeOpenDoc() with the
VpeSetMsgCallback() to accomplish this goal. Is my assumption correct?

If so, is there any sample code for Progress showing how this is done? I saw the
example using C, but it is somewhat difficult for me to translate this to Progress
as I have only a limited knowledge of C. If you do not have an example in Progress, maybe a different language could be helpful. I have seen several references within VPE documentation to a ‘Progress’ directory with sample code; however, I cannot seem to locate this directory. Any way to get another copy of this directory or the code samples in this directory?

Also, if this is the correct method to use, do we continue to create our document using all the
other standard code for writing the lines (WRITE) and printing (PrintDoc) just like
we do when creating it using the OCX?

ANy guidence toward how to accomplish this swiftly and properly would be greatly
appreciated! Thanks in advance!
BartG
 
Posts: 17
Joined: Tue Mar 18, 2008 5:06 pm
Location: Scottsdale,AZ

Postby IDEAL Software Support » Thu Jun 19, 2008 9:18 am

The function VpeSetMsgCallback() is provided by the DLL, not the OCX.

The VPE ActiveX supports the CreateObject() call, i.e. it can be called from non-visual classes and objects. This is very useful if running in Active Server Pages (ASP).

Example for Visual Basic:
Code: Select all
Dim x As Object
Set x = CreateObject("VpeControl.VpeControl.40")


The important parameter is "VpeControl.VpeControl.40" which is the class name of the VPE ActiveX Control v4.0.

Also, if this is the correct method to use, do we continue to create our document using all the other standard code for writing the lines (WRITE) and printing (PrintDoc) just like we do when creating it using the OCX?


Since the ActiveX is the same, the methods stay the same. So the answer is: yes.

I have seen several references within VPE documentation to a ‘Progress’ directory with sample code; however, I cannot seem to locate this directory.


The sample code for PROGRESS is installed with VPE, so I don't understand your question. The sample code does not demonstrate the CreateObject() call.

We have no knowledge, if PROGRESS supports the CreateObject() call - or any equivalent. You should clarify that with PROGRESS tech support.
IDEAL Software Support
 
Posts: 1633
Joined: Thu Nov 18, 2004 4:03 pm


Return to VPE Open Forum

Who is online

Users browsing this forum: No registered users and 10 guests