OLE Integration
To: [email protected]
cc:
Subject: OLE Integration
I'm trying to perform OLE automation between Forte and MS Word (95). I'm
doing this because I want to generate a Word document based on information
within my Forte application. According to the documentation within the
"Integrating with External Systems" manual, the TOOL commands to link up
with MS Word should be as follows:
WordApp : CDispatch = new;
WordApp.CreateUsingProdID('Word.Basic');
However, when I try to run this I end up with the following error when
executing the CreateUsingProdID method:
No source is available for method "CUnknown.CreateUsingCLSID".
I received the same error on both version 2 and 3 of Forte. This is a
method internal to Forte so I don't know what code should be placed in it
or whether I even have the option of entering my own code.
Any suggestions on how this should work?
David Wilbur email: [email protected]
University of Windsor phone: 519-253-3000 ext. 2779
Windsor, Ontario Canada
-----------------------------------------------
get java COM (OLE) bridge njawin at http://www.simtel.net/product.php?url_fb_product_page=60701
Similar Messages
-
Change bookmark/text in footer (OLE-integration)
Hi folks
I have a ABAP program with OLE integration to Word (Old program, and therefore the old way to integrate - not DOI!) So far so good. It has been working for the last 4 years. Now I want to add some extra code, so I can insert a value to a bookmark in the footer. Alternative is to change a word in the footer. I have been fighting with the code for a quite a long time.
My problem is to convert the shown macro to ABAP Method/Property coding!!
The cursor is placed in the top of the document. In the footer I have a text: &Z_FOOT2&. This text I want to change with anoter value. No problem when I just activates the function Change All (recorded in the macro) - but how to do in ABAP???
Hope You can help me!!
REPORT ztces_word_test
NO STANDARD PAGE HEADING
LINE-SIZE 255
MESSAGE-ID zcrm00.
* OLE - Word Integration
INCLUDE ole2incl.
DATA o_word TYPE ole2_object.
DATA o_docs TYPE ole2_object.
DATA o_doc TYPE ole2_object.
DATA o_selection TYPE ole2_object.
DATA o_range TYPE ole2_object.
DATA: o_find TYPE ole2_object.
DATA skabelon(255) TYPE c.
CONSTANTS: tab(2) TYPE x VALUE '0D0A',
wdtoggle TYPE i VALUE 9999998,
c_true TYPE i VALUE -1,
c_false TYPE i VALUE 0.
CONSTANTS: true VALUE 1, false VALUE 0.
CONSTANTS:
c_wdstory TYPE i VALUE 6,
c_wdextend TYPE i VALUE 1.
skabelon = 'C:SAPWORKDIRCRM Kundeplanfooter_change.dot'.
CREATE OBJECT o_word 'Word.Application'.
SET PROPERTY OF o_word 'Visible' = '1'.
CALL METHOD OF o_word 'Documents' = o_docs.
CALL METHOD OF o_docs 'Add' = o_doc
EXPORTING
#1 = skabelon.
IF o_doc IS INITIAL.
CALL METHOD OF o_word 'Quit'
EXPORTING
#1 = 0
#2 = 1
#3 = -1.
COMMIT WORK.
MESSAGE e001(ztces00) WITH skabelon 'IIE'
RAISING skabelon_findes_ikke.
FREE OBJECT o_doc.
FREE OBJECT o_docs.
FREE OBJECT o_word.
ENDIF.
CALL METHOD OF o_word 'Selection' = o_selection.
* Here I have the MACRO which I recorded in the Word Document
* Selection.Find.ClearFormatting
* Selection.Find.Replacement.ClearFormatting
* With Selection.Find
* .Text = "&Z_FOOT2&"
* .Replacement.Text = "New footer text"
* .Forward = True
* .Wrap = wdFindContinue
* .Format = False
* .MatchCase = False
* .MatchWholeWord = False
* .MatchWildcards = False
* .MatchSoundsLike = False
* .MatchAllWordForms = False
* End With
* Selection.Find.Execute Replace:=wdReplaceAll
*GET PROPERTY OF o_selection 'Find' = o_find.
CALL METHOD OF o_selection 'Find' = o_find
EXPORTING
#01 = 'Z_FOOT2'.
* Selection.FIND.ClearFormatting
* Selection.FIND.Replacement.ClearFormatting
*GET PROPERTY OF o_selection 'Find' = o_find.
*CALL METHOD OF o_selection 'Find' = o_find.
*CALL METHOD OF o_find 'Replacement' = o_find.
*CALL METHOD OF o_find 'ClearFormatting' = o_find.
CALL METHOD OF o_find 'Execute'
*CALL METHOD OF o_selection 'Execute'
EXPORTING
#01 = '&Z_FOOT2&'
#02 = true
#03 = true
#04 = false
#05 = false
#06 = false
#07 = false
#08 = false
#09 = false
#10 = 'New footer text'.
CALL METHOD OF o_selection 'HomeKey' = o_range
EXPORTING
#1 = c_wdstory.
FREE OBJECT o_word.
Best regards
Carsten :o)Hi,
Go to Tocde: So10
Give as follows:
Text Name :ZXX_ZXXXXX_FOOTER
Text ID ST
Language EN
and enter change mode, change whatever modifications you want.
after run Standard program: RSTXTRAN for adding Standradt text to transport request
Regards
Jana -
MS Word OLE integration i new UI??
Hi Folks
We are in the middle of an upgrade from CRM 3.1 to CRM2007. And the new WEB UI.
In our old SAP gui, we have developped a ABAP Report program that collects a lot of data, and then via OLE integrated to a Word document. We didn't use the DOI, but just called a lot of methods in Word.
I have tried to execute our old ABAP Report via the Transaction Launcer in the new UI. And the first part of
it - collecting all the data - works fine. But the integration to word does not work.
Does anyone have an idea how to make this integration. The result of the progam is a nice formatted Word Document with a lot of fixed texts combined wit data from the CRM system!
Best regards
Carsten<b>word_document</b> = location of the existing document in which you want to change the val (d:\Documents and Settings\user\Desktop\Doc1.doc)
<b>File_name</b> = File name to which the modified file to be saved (just give the same file name you opened - Doc1.doc - just the file name and not the whole path)
<b>Download_path</b>
path for downloading (d:\Documents and Settings\user\Desktop\)
<b>Data_tab</b> = any internal table
<b>filednames</b> = field names of the internal table in a table . for example if your itab has fielda, fieldb and fieldc , then this table first record value should be fielda and second record value should be fieldb, etc.
Hope this is clear.
Regards
Raja -
OLEGEN (Re: OLE integration)
OLEGEN can be run in different ways -
using the type library : (not available for Word)
Example : For Excel
olegen -it xlen50.olb -of excel.pex -op Excel
using the ProgID (most commonly done)
Example : For Word
olegen -ip Word.Basic -op Word -oc Application -of word.pex
using CLSID
Example : For Word
olegen -ic {000209FE-0000-0000-C000-000000000046) -op Word -oc Application -of Word.pex
NOTE :This should be run from Windows Run if it is Win 3.1 or WFWG.
Dear Sir,
Thank You for Your kind help with the real example of Forte-OLE
interface. It helps to us a lot.
If it will be possible, please, answer for two simple questions:
1. On what file we need to run OLEGEN utility (probably with OLB
extension) to receive WORD.PEX file (WORD project).
2. Does anybody tried to do the same with CDispatch? If yes,
what are the results, cause I tried with it and still have no success and I
can not understand why.
Sincerely Yours,
Pavel RyzhkovOLEGEN can be run in different ways -
using the type library : (not available for Word)
Example : For Excel
olegen -it xlen50.olb -of excel.pex -op Excel
using the ProgID (most commonly done)
Example : For Word
olegen -ip Word.Basic -op Word -oc Application -of word.pex
using CLSID
Example : For Word
olegen -ic {000209FE-0000-0000-C000-000000000046) -op Word -oc Application -of Word.pex
NOTE :This should be run from Windows Run if it is Win 3.1 or WFWG.
Dear Sir,
Thank You for Your kind help with the real example of Forte-OLE
interface. It helps to us a lot.
If it will be possible, please, answer for two simple questions:
1. On what file we need to run OLEGEN utility (probably with OLB
extension) to receive WORD.PEX file (WORD project).
2. Does anybody tried to do the same with CDispatch? If yes,
what are the results, cause I tried with it and still have no success and I
can not understand why.
Sincerely Yours,
Pavel Ryzhkov -
OLE integration with Forms Server
Can Forms 6 server running 3 tier, be used to call and integrate
from an Oracle Form connecting to Microsoft Word or other local
applications on a PC (+ local printing) ? We can do it 2 tier
with OLE but need to migrate to 3 tier.
How do we achieve this ? What are the options ?
nullCan Forms 6 server running 3 tier, be used to call and integrate
from an Oracle Form connecting to Microsoft Word or other local
applications on a PC (+ local printing) ? We can do it 2 tier
with OLE but need to migrate to 3 tier.
How do we achieve this ? What are the options ?
null -
OLE Integration with Excel --- Urgent
Hello,
i want to draw two charts on Excel sheet based on some data in SAP. in the excel sheet first i have to display the data and then draw the chart for that. now i am able to draw first chart but not able to draw the second chart because i think the area where i have drawn my first chart is active and not able to print the data related to second chart. can any one tell me, how to activate the sheet after drawing first graph.
Thanks a lot in advance...
MohanMohan,
Try this....
You can activate using ...CALL METHOD OF gs_activesheet 'Activate' .
Report ZTEST.
INCLUDE ole2incl .
DATA: gs_excel TYPE ole2_object ,
gs_wbooklist TYPE ole2_object ,
gs_application TYPE ole2_object ,
gs_wbook TYPE ole2_object ,
gs_activesheet TYPE ole2_object ,
gs_sheets TYPE ole2_object ,
gs_newsheet TYPE ole2_object ,
gs_cell1 TYPE ole2_object ,
gs_cell2 TYPE ole2_object ,
gs_cells TYPE ole2_object ,
gs_range TYPE ole2_object ,
gs_font TYPE ole2_object ,
gs_interior TYPE ole2_object ,
gs_columns TYPE ole2_object ,
gs_charts TYPE ole2_object ,
gs_chart TYPE ole2_object ,
gs_charttitle TYPE ole2_object ,
gs_charttitlechar TYPE ole2_object ,
gs_chartobjects TYPE ole2_object .
DATA gv_sheet_name(20) TYPE c .
DATA gv_outer_index LIKE sy-index .
DATA gv_intex(2) TYPE c .
DATA gv_line_cntr TYPE i . "line counter
DATA gv_linno TYPE i . "line number
DATA gv_colno TYPE i . "column number
DATA gv_value TYPE i . "data
PARAMETERS: p_sheets TYPE i .
*Step 2 Initiate the do-loop and OLE automation base objects.
*Code Part C.2 Looping and initializing, adding new worksheets
START-OF-SELECTION .
DO p_sheets TIMES .
*--Forming sheet name
gv_intex = sy-index .
gv_outer_index = sy-index .
CONCATENATE 'Excel Sheet #' gv_intex INTO gv_sheet_name .
*--For the first loop, Excel is initiated and one new sheet is added
IF sy-index = 1 .
CREATE OBJECT gs_excel 'EXCEL.APPLICATION' .
SET PROPERTY OF gs_excel 'Visible' = 1 .
GET PROPERTY OF gs_excel 'Workbooks' = gs_wbooklist .
GET PROPERTY OF gs_wbooklist 'Application' = gs_application .
SET PROPERTY OF gs_application 'SheetsInNewWorkbook' = 1 .
CALL METHOD OF gs_wbooklist 'Add' = gs_wbook .
GET PROPERTY OF gs_application 'ActiveSheet' = gs_activesheet .
SET PROPERTY OF gs_activesheet 'Name' = gv_sheet_name .
*--For the rest of loops, other sheets are added
ELSE .
GET PROPERTY OF gs_wbook 'Sheets' = gs_sheets .
CALL METHOD OF gs_sheets 'Add' = gs_newsheet .
SET PROPERTY OF gs_newsheet 'Name' = gv_sheet_name .
ENDIF .
gv_line_cntr = 1 . "line counter
*Step3 Write the title and format it.
*--Title
*--Selecting cell area to be merged.
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF gs_excel 'Cells' = gs_cell2
EXPORTING
#1 = 1
#2 = 4.
CALL METHOD OF gs_excel 'Range' = gs_cells
EXPORTING
#1 = gs_cell1
#2 = gs_cell2.
CALL METHOD OF gs_cells 'Select' .
*--Merging
CALL METHOD OF gs_cells 'Merge' .
*--Setting title data
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = gv_line_cntr
#2 = 1.
SET PROPERTY OF gs_cell1 'Value' = 'TITLE' .
*Code Part C.3 Writing and formatting the title
*--Formatting the title
GET PROPERTY OF gs_cell1 'Font' = gs_font .
SET PROPERTY OF gs_font 'Underline' = 2 .
SET PROPERTY OF gs_font 'Bold' = 1 .
SET PROPERTY OF gs_cell1 'HorizontalAlignment' = -4108 .
GET PROPERTY OF gs_cell1 'Interior' = gs_interior .
SET PROPERTY OF gs_interior 'ColorIndex' = 15 .
SET PROPERTY OF gs_interior 'Pattern' = -4124 .
SET PROPERTY OF gs_interior 'PatternColorIndex' = -4105 .
*Step 4 Write some additional data for the title area and format them.
gv_line_cntr = gv_line_cntr + 1 .
*--Writing some additional data for the title
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = gv_line_cntr
#2 = 1.
SET PROPERTY OF gs_cell1 'Value' = 'Sheet No' .
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = gv_line_cntr
#2 = 5.
SET PROPERTY OF gs_cell1 'Value' = ':' .
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = gv_line_cntr
#2 = 6.
SET PROPERTY OF gs_cell1 'Value' = gv_intex .
*--Formatting the area of additional data 1
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF gs_excel 'Cells' = gs_cell2
EXPORTING
#1 = gv_line_cntr
#2 = 5.
CALL METHOD OF gs_excel 'Range' = gs_cells
EXPORTING
#1 = gs_cell1
#2 = gs_cell2.
CALL METHOD OF gs_cells 'Select' .
GET PROPERTY OF gs_cells 'Font' = gs_font .
SET PROPERTY OF gs_font 'Bold' = 1 .
*--Formatting the area of additional data 2
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = 1
#2 = 5.
CALL METHOD OF gs_excel 'Cells' = gs_cell2
EXPORTING
#1 = gv_line_cntr
#2 = 5.
CALL METHOD OF gs_excel 'Range' = gs_cells
EXPORTING
#1 = gs_cell1
#2 = gs_cell2.
CALL METHOD OF gs_cells 'Select' .
GET PROPERTY OF gs_cells 'Columns' = gs_columns .
CALL METHOD OF gs_columns 'AutoFit' .
*--Bordering title data area
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = 1
#2 = 1.
CALL METHOD OF gs_excel 'Cells' = gs_cell2
EXPORTING
#1 = gv_line_cntr
#2 = 6.
CALL METHOD OF gs_excel 'Range' = gs_cells
EXPORTING
#1 = gs_cell1
#2 = gs_cell2.
CALL METHOD OF gs_cells 'Select' .
CALL METHOD OF gs_cells 'BorderAround'
EXPORTING
#1 = 1 "continuous line
#2 = 4. "thick
*Code Part C.4 Some additional writing to the title area, formatting
*and bordering around the title area
*Step 5 Put axis labels to the data area.
*Code Part C.5 Axis Labels
*--Putting axis labels
gv_colno = 2 .
gv_line_cntr = gv_line_cntr + 5 .
gv_linno = gv_line_cntr - 1 .
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = gv_linno
#2 = 1.
SET PROPERTY OF gs_cell1 'Value' = 'X' .
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = gv_line_cntr
#2 = 1.
SET PROPERTY OF gs_cell1 'Value' = 'Y' .
*Step 6 Generate some data.
*Code Part C.6 Generating Data
*--Generating some data
DO 3 TIMES .
gv_value = gv_outer_index * sy-index * 10 .
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = gv_linno
#2 = gv_colno.
SET PROPERTY OF gs_cell1 'Value' = sy-index .
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = gv_line_cntr
#2 = gv_colno.
SET PROPERTY OF gs_cell1 'Value' = gv_value .
gv_colno = gv_colno + 1 .
ENDDO .
*Step 7 Set source data area for the chart.
*Code Part C.7 Setting source data area for the chart
*--Source data area
gv_colno = gv_colno - 1 .
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = gv_linno
#2 = 1.
CALL METHOD OF gs_excel 'Cells' = gs_cell2
EXPORTING
#1 = gv_line_cntr
#2 = gv_colno.
CALL METHOD OF gs_excel 'Range' = gs_cells
EXPORTING
#1 = gs_cell1
#2 = gs_cell2.
CALL METHOD OF gs_cells 'Select' .
*Step8 Draw the chart
*Code Part C.8 Draw the chart
GET PROPERTY OF gs_application 'Charts' = gs_charts .
CALL METHOD OF gs_charts 'Add' = gs_chart .
CALL METHOD OF gs_chart 'Activate' .
SET PROPERTY OF gs_chart 'ChartType' = '51' . "Vertical bar graph
CALL METHOD OF gs_chart 'SetSourceData'
EXPORTING
#1 = gs_cells
#2 = 1.
SET PROPERTY OF gs_chart 'HasTitle' = 1 .
GET PROPERTY OF gs_chart 'ChartTitle' = gs_charttitle .
GET PROPERTY OF gs_charttitle 'Characters' = gs_charttitlechar .
SET PROPERTY OF gs_charttitlechar 'Text' = 'Sample Graph' .
*Step 9 Locate the chart onto the current worksheet.
*Code Part C.9 Locating the chart onto the current worksheet
*--Locate the chart onto the current worksheet
*--Activate current sheet
CALL METHOD OF gs_excel 'WorkSheets' = gs_activesheet
EXPORTING
#1 = gv_sheet_name.
CALL METHOD OF gs_activesheet 'Activate' .
CALL METHOD OF gs_chart 'Location'
EXPORTING
#1 = 2
#2 = gv_sheet_name.
*Step 10 Reposition the chart to a proper place and finish the do-loop.
*Code Part C.10 Repositioning the chart to a proper place and end of
*the do-loop counting sheet number
*--Reposition the chart on the worksheet (cut&paste)
CALL METHOD OF gs_activesheet 'ChartObjects' = gs_chartobjects .
CALL METHOD OF gs_chartobjects 'Select' .
CALL METHOD OF gs_chartobjects 'Cut' .
*--Select new area
gv_line_cntr = gv_line_cntr + 2 .
CALL METHOD OF gs_excel 'Cells' = gs_cell1
EXPORTING
#1 = gv_line_cntr
#2 = 1.
CALL METHOD OF gs_excel 'Cells' = gs_cell2
EXPORTING
#1 = gv_line_cntr
#2 = 1.
CALL METHOD OF gs_excel 'Range' = gs_cells
EXPORTING
#1 = gs_cell1
#2 = gs_cell2.
CALL METHOD OF gs_cells 'Select' .
CALL METHOD OF gs_activesheet 'Paste' .
ENDDO .
*Step 11 Free OLE objects to deallocate memory.
*Code Part C.11 Deallocating the memory
*--Deallocating memory
FREE: gs_excel, gs_wbooklist, gs_application, gs_wbook,
gs_activesheet,gs_sheets, gs_newsheet, gs_cell1,
gs_cell2, gs_cells, gs_range, gs_font, gs_interior,
gs_columns, gs_charts, gs_chart, gs_charttitle,
gs_charttitlechar, gs_chartobjects . -
Forms6i with OLE2 Integration on web client-Is possible? how?
Hi Dears,
When running a form on the Web, can I use OLE to talk to programs such as MS Word or Excel?
This is my Q.
In the Oracle FAQ the given solution like this:
Yes. OLE integration works for external OLE servers invoked using OLE2.CREATE_OBJ. The OLE server you are invoking must be available on the middle tier machine where the Forms Services resides. Consequently the middle tier machine must be a Windows NT or Windows 2000 machine. Embedded OLE containers and ActiveX (OCX) controls are not supported when running on the Web.
But the problem is,
The applications(Excel,Word & etc.,) are opening in the middle tier, but not in the client mechine when i opening the word document.
How can i open a MSWord in the client browser using orcle forms6i?!
Please help me on this.
Thanks & Regards,
Vijayakumar.SHi Shay,
Thanks for your response.
Shay, in Oracle FAQ one Q&A is like this
Q:When running a form on the Web, can I use OLE to talk to programs such as MS Word or Excel?
A:Yes. OLE integration works for external OLE servers invoked using OLE2.CREATE_OBJ. The OLE server you are invoking must be available on the middle tier machine where the Forms Services resides. Consequently the middle tier machine must be a Windows NT or Windows 2000 machine. Embedded OLE containers and ActiveX (OCX) controls are not supported when running on the Web.
Are you sure, is not possible to open a Word Application in
client mechine/browser?!
Why i'm asking is, oracle answered it is possible.
Please shay, i need your help, help me.
Thanks & Regards,
Vijayakumar.S -
I have trying to integrate MSGraph in Forte for a while with
little success. I agree with you that Forte example is too
basic.
Perhaps your problem is simpler but I found impossible to
send data from Forte to the OLE Object. I've been said
that it's easier through Excel.
When you generate project Graph from Olegen, you start with
a broken hierarchy that needs to be rebuilt.
A posting from Pavel Ryzhkov on 14/10/97 may be helpful for
you. If you cannot access it, I can send you a copy.
Regards,
Jesus Zamarreno
EAM Sistemas Informáticos S.L.
C/ Padre Llanos, 33 47014 Valladolid
Tlf.: (983) 352922 Fax: (983) 352115
e-mail: [email protected]
De: Jean Baptiste BRIAUD <[email protected]>
A: [email protected]
Asunto: OLE
Fecha: viernes 31 de octubre de 1997 17:44
Hi,
I need to use MSGraph with OLE integration.
I saw Forte example, but it seem too basic :
How to know what to do with all this classes in
the imported project Graph ?
How to know which CDispatch's attribute
to call ?
I didn't found any doc on Office, Microsoft Shared, ..
directory.
Thanks in advance,
Jean-Baptiste BRIAUD, [email protected]
SEMA GROUP
16 rue Barbes
92126 Montrouge
FranceDDE is an interface much like OLE - e.g. it has calls to invoke methods and set properties - again you need the doc from the vendor to know what properties to set and methods to call. Likewise the C interface can be used to call public apis exposed by the vendor in a DLL or EXE. This uses the ORA_FFI package. Again the interface is simple (fo someone who understands C) but without the vendor doc about any APIs they expose it's of no use.
What interfaces does the software expose? -
Hello,
I want a help/program on how to insert an image(jpg/bmp) into a MS WORD file through ABAP.
Kindly help me ASAP.
Regards,
G Kishore.Hi,
Take a look at trn DWDM for example programs on OLE integration. You can additionally search the ABAP forum for OLE integration. A lot of discussion has already been carried out on this topic. If you still need assistance, please get back with more details on what problem are you facing?
Regards -
Integrating Forte and File Net...
Last month there was some discussion about integration of Forte and FileNet
and someone from Sage and Alameda County(?) responded that they had done
the integration. Has anyone else in the community integrated Forte and
FileNet (preferably using ActiveX controls or direct OLE integration from
Forte). We are planning on doing this and are looking for tips on possible
pitfalls and things that will make our life easier.
Thanks,
-lnsPlease clarify what you mean by "file net system"?
-
Hello,
We have recently completed the above installation and configuration. However on certain forms we are having difficulty opening word using OLE commands.
In this release has any code changed that we need to be aware of when using OLE for client-side functions?
Let me know if you would like to see code used.
Thanks
RDIn reply to my own thread it seems the cause cannot be fully explained but there would seem to be some problem / incompatibility between version 17 Jacob.dll and Oracle Jinitiator 1.3.1.22. (Jacob is the 3rd Party freeware used by WebUtil to allow client OLE integration to work).
Instructions on how to resolve it can be found on metalink by searching for error: WUO-714 -
SAP Form layout output in MS word doc.
Hi Everybody,
I have a requirement from business where they would like to get the output of a docuemnt in MS word format so that they can add some text or input text in the output and then manually send to customer through mail. Now the question is by what mechanism or method can we have the output to be stored in MS word format and save in the local machine to provide the user the facility to edit it?
Thanks in advance.
Sameer Shaikh.Try with OLE integration with MS word
Please look at this document
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/204d1bb8-489d-2910-d0b5-cdddb3227820
a® -
Hi all.
I have a problem with webutil on the server-side.
On my client-machine (operating system windows xp service pack2) everything it is ok. But when I run webutil on the server (operating system Linux), I have this message error:
"The webutil object group is not available in this form. Webutil cannot work.
Webutil error: oracle.forms.webutil.olefunctions bean not found. CLIENT_OLE2.create_obj will not work."
The thing that is strange is that local on my machine everything is ok. I have tried to cancel the library and the object group from the form and then to re-attach them, but the result is the same: local on my machine it's ok and on the server I have got the message above.
Is there anyone that can help me???
Thanks, FabrizioDear Fabrizo ;
I am so sorry i did not work on Linux plafrom befor,
but i think it has the same configuraion as windows.so if you check webutil configuration again and again i think it could work.
and this is webutil configuration
---------- B y E n g R e d a E l M i t w a l l y ----------
1- ....................... The Principles of the WebUtil Design .
2- ....................... HOW TO CONFIGURE AND DEPLOY WEBUTIL .
3- ....................... HOWT O ATTACH IT IN UR FORM .
1 - The Principles of the WebUtil Design :-
The aim of WebUtil is to provide a utility that any Forms developer can use to carry
out complex tasks on the client browser computer by simply coding in PL/SQL.
Although WebUtil itself uses Java extensively, there is no need for the developer to
have any understanding of Java. Everything the developer needs to do is exposed
through a standard PL/SQL library webutil.pll.
All of the components that are needed to support WebUtil are likewise exposed
through a simple object group.
For an Oracle Forms application to take advantage of WebUtil, you only need to attach
the WebUtil library and subclass the Object Group. No setup or configuration in code
is required as WebUtil is self-configuring and where necessary, self-installing.
Some features of WebUtil, such as client side OLE integration, require code to be
installed onto each client computer. One of the key features of WebUtil is its ability to
"self-install" in these cases. There is no need for an administrator to configure each and
every computer because WebUtil detects which client-side pieces are missing and
automatically installs them.
Another aim of WebUtil is to simplify porting of client server integration code to work
on the client browser computer. To achieve this, WebUtil contains PL/SQL APIs mimic
the behavior of the equivalent native Forms functions.
An example of this is the Forms TEXT_IO package. This package provides the
developer with facilities to read and write text files on the application server. WebUtil
provides an alternative implementation, CLIENT_TEXT_IO, which is identical to
TEXT_IO except that calls are implemented on the client browser computer rather than
on the middle tier. Migrating existing code to operate on the client can be achieved
using a simple search and replace operation in the PL/SQL code to changes references
to point at the alternative "CLIENT" implementations provided by WebUtil.
The final goal of WebUtil design is to add value to Oracle Forms as a product. WebUtil
adds capabilities to Forms which have simply not existed before in either web or client
server deployments.
2 - H O W T O C O N F I G U R E A N D D E P L O Y W E B U T I L
2-1 : From folder "webutil_106" Copy folder "webutil" in this path "DeveloperHome\forms"
-- note this step in release 3 is done .
2-2 : From folder "JACOB_18" copy file "jacob.dll" in path "DeveloperHome\forms"
-- note this step in release 3 is done .
2-3 : From folder "JACOB_18" copy file "jabcob.jar" in path "DeveloperHome\forms\java"
-- note this step in release 3 is done .
2-4 : From folder "webutil_106" Copy file "frmwebutil.jar" in path "DeveloperHome\forms\java"
-- note this step in release 3 is done .
2-5 : Edit file"D:\DevSuiteHome_1\j2ee\DevSuite\application-deployments\forms\formsweb\orion-web.xml"
by notepad and add this code
<virtual-directory virtual-path="/webutil" real-path="D:\oracle\product\10.1.0\Developerhome\forms\webutil" />
-- note this step in release 3 is done .
2-6 : Edit file "Developerhome\forms\server\server\formsweb.cfg " and add this code
archive_jini=frmall_jinit.jar,frmwebutil.jar,jacob.jar
archive=frmall.jar
2-7 : at the end of this file add also
[webutil]
WebUtilArchive=frmwebutil.jar,jacob.jar,frmall.jar
WebUtilLogging=off
WebUtilLoggingDetail=normal
WebUtilErrorMode=Alert
WebUtilDispatchMonitorInterval=5
WebUtilTrustInternal=true
WebUtilMaxTransferSize=16384
baseHTMLjinitiator=webutiljini.htm
baseHTMLjpi=webutiljpi.htm
archive_jini=frmall_jinit.jar
archive=frmall.jar,frmwebutil.jar
lookAndFeel=oracle
--not in releas 3 u will find this block of code replace it by this code
2-8 : edit file "developerhome\forms\server\default.env" add this code
FORMS_PATH=D:\DevSuiteHome_1\forms;D:\DevSuiteHome_1\forms\webutil
WEBUTIL_CONFIG=D:\DevSuiteHome_1\forms\server\webutil.cfg
2-9 : at line class_path add this code in addition of it's code and remember to modify ur home path
;D:\oracle\product\10.1.0\Developer\forms90\java\jacob.jar;D:\oracle\product\10.1.0\Developer\jdk\jre\lib\rt.jar;D:\oracle\product\10.1.0\Developer\forms90\java\frmall.jar;D:\oracle\product\10.1.0\Developer\forms90\java\frmwebutil.jar
2-10 : Replace all code in line "path" by again remember to modify the developerhome
PATH=d:\oracle\product\10.1.0\Developer\jdk\bin;d:\oracle\product\10.1.0\Developer\jdk\jre\bin\classic;d:\oracle\product\10.1.0\Developer\jdk\jre\bin; d:\oracle\product\10.1.0\Developer\jdk\jre\bin\client;d:\oracle\product\10.1.0\Developer\jlib;d:\oracle\product\10.1.0\Developer\bin;d:\oracle\product\10.1.0\Developer\jre\1.4.2\bin\client;d:\oracle\product\10.1.0\Developer\jre\1.4.2\bin;
d:\oracle\product\10.1.0\Developer\bin;d:\oracle\product\10.1.0\Developer\jdk\jre\bin\client
2-11 : Edit file "devloperhome\forms\server\webutil.cfg" and add these two lines at the end of it
transfer.database.enabled=TRUE
transfer.appsrv.enabled=TRUE
-- very important note the two lines
transfer.appsrv.read.1=C:\ -- Only files in this directory can be downloaded from AS
transfer.appsrv.write.1=C:\ -- Only files in this directory can be uploaded to AS
2-12 : Open msdos(or shell on linux) and run these batches :be carefull to run tis batch put it first in the JDK\bin home:
sign_webutil.bat DeveloperHome\forms\java\frmwebutil.jar
sign_webutil.bat DeveloperHome\forms\java\jacob.jar
2-13 : And now create user may be "webutilowner" or as u like to name it
create user webutilowner identified by webutilowner;
conn webutilowner/webutilowner
from folder "webutil_106" u will find this script "create_webutil_db.sql" run it on this user
grant execute on WEBUTIL_DB to public;
----------- T H E E N D O F C O N F I G U R I N G ----------
--------- H O W T O A T T A C H I T I N U R F O R M -------------
3-1 : From "webutil_106" copy this liberary "webutil.pll" and "webutil.olb" in ur ofismain
3-2 : Open ur module and at pl/sql liberraries open file then open "webutil.pll" from ur ofismain
3-3 : Compile this liberrary.
4-3 : Then attatch this liberrary to ur module .
4-5 : At object liberraries open the "webutil.olb" from ur ofis main
4-6 : THEN right click and choose object liberary
4-7 : You will have a window restore it down and drag "webutil" from it to ur object group at ur module.
4-8 : You wil have a window asking for copy,subclass or cancel choose copy, but for more dynamic coding u have to choose subclass
4-9 : You will have a block called webutil move it to be last block.
4-10 : then see some examples to use it we have example form called module2.fmb
---------- B y E n g R e d a E l M i t w a l l y ----------
Regards
Reda -
Re: Crystal Reports 5.0 (32-Bit) and Forte 2.0H16 on NT3.51
Dear Silke,
Crystal's default for identifying a table in the report design is
<schema>.<table>. You can change that by going to the Database Location menu
item and cutting the schema prefix off. You should do that for every table in
the report. The PESetNthTableLogOnInfo function will, I believe, not change
the schema prefix of a table, since it assumes you really want that schema,
i.e., as an override. Also, if you are using the propagateAcrossAllTables
feature of the function make sure that every table has the schema prefix cut
off, otherwise those tables will be skipped, since the propagate feature applies
to all other similar tables only. For example, some of the tables could be
Sybase, etc.
I believe you can change the default behaviour of the CR Report Designer in the
File->Preferences menu, so that when reports are designed the schema prefix is
not automatically attached.
I have compiled some guidelines on designing reports to make them work properly
with Forte. I will try to send them to you next week. Crystal Reports and its
C API are a good product, and you will get good performance once the report
design is set up properly.
Yours very sincerely, John Hodgson.
Schulte, Silke (DVD) wrote:
The problem seems to be, that Crystal stores the database name in the
report. If you want to change the database you have to develop your
report new, although you give the connection-information via the API.
The hotline from Crystal told us, when using subreports you have to use
the PESetNthTableLogOnInfo and to go through all the subreports and
change the connect-string.
Our experience is, you have to do both: change the report and call the
other function for the subreports.
Thank you very much for all the tips.
Regards
Silke Schulte
Union-Investment, Frankfurt / Main, Germany
e-mail: [email protected]
From: Ajith Kallambella M[SMTP:[email protected]]
Sent: Mittwoch, 23. September 1998 15:17
To: [email protected]; ForteUsers; [email protected]
Subject: RE: Crystal Reports 5.0 (32-Bit) and Forte 2.0H16 on NT
3.51
Hi There,
Crystal reports stores Database name as a hard-coded
value in the
report template. So if you have to use an other
database, you will
have to open the report template and modify the
database name. I
think this is why you are getting Crystal API error.
Hope this helps!
Ajith Kallambella M
Forte systems Engineer,
International Business Corporation.
Hello,
I wonder if we have a similar problem.
We are using Crystal Reports 5 and Forte 3.0.F.2. For
the interface
between Forte and Crystal we have in Forte a Lib using
C-wrappering to
the C-API of Crystal.
We have developed a report on a database in our
development-environment. This report comes up with data
and works
correct. It's no different if we have saved the report
in Crystal with
data or without.
If we want to use the same report on another database
in our
test-environment the window from crystal reports comes
up and when
starting there is an error from the Crystal API
function.
Both environments use the same version of an Oracle
Database and are on
Open VMS. The client for the test is in this case
always the same.
From the C-API we use the method PEStartPrintJob after
we have specified
the rest for the report.
Is there a possibility that this is the same error you
mentioned? Or do
you have any other ideas?
Any help is appreciated.
Regards
Silke Schulte
Union-Investment Frankfurt (Germany)
email: [email protected]
From: Katie Carty[SMTP:[email protected]]
Reply To: Katie Carty
Sent: Montag, 21. September 1998 19:14
To: 'Tim Hagemann'; [email protected]
Subject: RE: Crystal Reports 5.0 (32-Bit) and Forte2.0H16 on NT
3.51
Tim,
You need to upgrade to CrystalReports 6.0. There isa bug in the
interaction between Forte and CrystalReports 5.0 (Idon't know on
which side the bug resides, but I think that it is onthe Crystal end,
since the problem occurs both through C-wrapperingand OLE
interaction), which does not allow you to invoke thePrintReport
method unless you have saved data with the report.
As far as I know, there is no workaround, and theonly solution is to
upgrade to CrystalReports 6.0.
FYI, there is no ActiveX control supplied withCrystalReports 5.0 -
you are actually using standard OLE integration.
Hope this helps...
Regards,
-Katie
-----Original Message-----
From: Tim Hagemann [SMTP:[email protected]]
Sent: Monday, September 21, 1998 11:27 AM
To: [email protected]
Subject: Crystal Reports 5.0 (32-Bit) and Forte2.0H16 on NT 3.51
Hi Forte-User !
We got a big problem here using the crystal active-xcontrol. On my
windows-nt 4.0 machine (with
crystal reports installed completely) all works well.On our test
machine (with only the crystal ActiveX
installed), the Forte runtime shuts down afterinvoking a special
method of the ocx (PrintReport).
The cause for shutting down (no stacktrace orsomething like that) is
a generated c++ exception in crystal -
but we don't know the cause of this exception.
Has anyone made the control work under nt 3.51 ? Doesanybody know
(exactly) what dll's we'll have
to use ?
TIA,
Tim Hagemann
Tim Hagemann
Ascom GmbH Email:
[email protected]
Charlottenburger Allee 61 Phone: +49241 96806 273
D-52068 Aachen Fax: +49241 96806 225
>
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive
<URL:http://pinehurst.sageit.com/listarchive/>
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive
<URL:http://pinehurst.sageit.com/listarchive/>
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive
<URL:http://pinehurst.sageit.com/listarchive/>
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>-
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>Dear Silke,
Crystal's default for identifying a table in the report design is
<schema>.<table>. You can change that by going to the Database Location menu
item and cutting the schema prefix off. You should do that for every table in
the report. The PESetNthTableLogOnInfo function will, I believe, not change
the schema prefix of a table, since it assumes you really want that schema,
i.e., as an override. Also, if you are using the propagateAcrossAllTables
feature of the function make sure that every table has the schema prefix cut
off, otherwise those tables will be skipped, since the propagate feature applies
to all other similar tables only. For example, some of the tables could be
Sybase, etc.
I believe you can change the default behaviour of the CR Report Designer in the
File->Preferences menu, so that when reports are designed the schema prefix is
not automatically attached.
I have compiled some guidelines on designing reports to make them work properly
with Forte. I will try to send them to you next week. Crystal Reports and its
C API are a good product, and you will get good performance once the report
design is set up properly.
Yours very sincerely, John Hodgson.
Schulte, Silke (DVD) wrote:
The problem seems to be, that Crystal stores the database name in the
report. If you want to change the database you have to develop your
report new, although you give the connection-information via the API.
The hotline from Crystal told us, when using subreports you have to use
the PESetNthTableLogOnInfo and to go through all the subreports and
change the connect-string.
Our experience is, you have to do both: change the report and call the
other function for the subreports.
Thank you very much for all the tips.
Regards
Silke Schulte
Union-Investment, Frankfurt / Main, Germany
e-mail: [email protected]
From: Ajith Kallambella M[SMTP:[email protected]]
Sent: Mittwoch, 23. September 1998 15:17
To: [email protected]; ForteUsers; [email protected]
Subject: RE: Crystal Reports 5.0 (32-Bit) and Forte 2.0H16 on NT
3.51
Hi There,
Crystal reports stores Database name as a hard-coded
value in the
report template. So if you have to use an other
database, you will
have to open the report template and modify the
database name. I
think this is why you are getting Crystal API error.
Hope this helps!
Ajith Kallambella M
Forte systems Engineer,
International Business Corporation.
Hello,
I wonder if we have a similar problem.
We are using Crystal Reports 5 and Forte 3.0.F.2. For
the interface
between Forte and Crystal we have in Forte a Lib using
C-wrappering to
the C-API of Crystal.
We have developed a report on a database in our
development-environment. This report comes up with data
and works
correct. It's no different if we have saved the report
in Crystal with
data or without.
If we want to use the same report on another database
in our
test-environment the window from crystal reports comes
up and when
starting there is an error from the Crystal API
function.
Both environments use the same version of an Oracle
Database and are on
Open VMS. The client for the test is in this case
always the same.
From the C-API we use the method PEStartPrintJob after
we have specified
the rest for the report.
Is there a possibility that this is the same error you
mentioned? Or do
you have any other ideas?
Any help is appreciated.
Regards
Silke Schulte
Union-Investment Frankfurt (Germany)
email: [email protected]
From: Katie Carty[SMTP:[email protected]]
Reply To: Katie Carty
Sent: Montag, 21. September 1998 19:14
To: 'Tim Hagemann'; [email protected]
Subject: RE: Crystal Reports 5.0 (32-Bit) and Forte2.0H16 on NT
3.51
Tim,
You need to upgrade to CrystalReports 6.0. There isa bug in the
interaction between Forte and CrystalReports 5.0 (Idon't know on
which side the bug resides, but I think that it is onthe Crystal end,
since the problem occurs both through C-wrapperingand OLE
interaction), which does not allow you to invoke thePrintReport
method unless you have saved data with the report.
As far as I know, there is no workaround, and theonly solution is to
upgrade to CrystalReports 6.0.
FYI, there is no ActiveX control supplied withCrystalReports 5.0 -
you are actually using standard OLE integration.
Hope this helps...
Regards,
-Katie
-----Original Message-----
From: Tim Hagemann [SMTP:[email protected]]
Sent: Monday, September 21, 1998 11:27 AM
To: [email protected]
Subject: Crystal Reports 5.0 (32-Bit) and Forte2.0H16 on NT 3.51
Hi Forte-User !
We got a big problem here using the crystal active-xcontrol. On my
windows-nt 4.0 machine (with
crystal reports installed completely) all works well.On our test
machine (with only the crystal ActiveX
installed), the Forte runtime shuts down afterinvoking a special
method of the ocx (PrintReport).
The cause for shutting down (no stacktrace orsomething like that) is
a generated c++ exception in crystal -
but we don't know the cause of this exception.
Has anyone made the control work under nt 3.51 ? Doesanybody know
(exactly) what dll's we'll have
to use ?
TIA,
Tim Hagemann
Tim Hagemann
Ascom GmbH Email:
[email protected]
Charlottenburger Allee 61 Phone: +49241 96806 273
D-52068 Aachen Fax: +49241 96806 225
>
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive
<URL:http://pinehurst.sageit.com/listarchive/>
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive
<URL:http://pinehurst.sageit.com/listarchive/>
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive
<URL:http://pinehurst.sageit.com/listarchive/>
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>-
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/> -
Re: How to call a Forte service from a Power Builderapplication
Ernesto,
There are two main ways that you can integrate PowerBuilder with a set
of Forte services:
First, you can use the tried-and-true ExternalConnection approach. This
would require some way of performing socket-level communication through
the PB application, which may be possible natively through PB (I'm rusty
on my PB skills), or you could get a third-party OCX to perform the
socket-level communication.
Second, you can, in Forte 3.0, set Forte services up as OLE servers,
into which your PowerBuilder application can call.
The OLE integration with Forte is discussed in the Integrating with
Windows and Macintosh manual, and ExternalConnections is discussed (I
think) in the Integrating with External Systems manual.
The best way to integrate Forte and PowerBuilder is ultimately up to
your team. You want to make sure that you choose the option that will
make your project successful, and determining which option best utilizes
you existing skill sets is an important consideration. Additionally,
you might want to perform some limited testing to determine which
approach will perform the best within your environment constraints. The
nice thing about Forte (and I know I've said this before) is that it is
relatively simple to integrate anything with anything! :)
I hope this helps.
-Katie
Ernesto Moscatelli wrote:
>
Hi,
we need to interface a PowerBuilder application (running under W/NT) to
a Forté service (running under Solaris): is there anybody who has
already done it? Which is the best (and most efficient) way to do it?
Thanks a lot,
Ernesto Moscatelli
EDS Italy
Banking Division--
Katie Carty
Senior Consultant
Forte Software, Inc.
http://www.forte.com
4801 Woodway Drive, Suite 300E
Houston, Texas 77056
vmail: (510) 986-3802
email: [email protected]
**************************************************Ernesto,
There are two main ways that you can integrate PowerBuilder with a set
of Forte services:
First, you can use the tried-and-true ExternalConnection approach. This
would require some way of performing socket-level communication through
the PB application, which may be possible natively through PB (I'm rusty
on my PB skills), or you could get a third-party OCX to perform the
socket-level communication.
Second, you can, in Forte 3.0, set Forte services up as OLE servers,
into which your PowerBuilder application can call.
The OLE integration with Forte is discussed in the Integrating with
Windows and Macintosh manual, and ExternalConnections is discussed (I
think) in the Integrating with External Systems manual.
The best way to integrate Forte and PowerBuilder is ultimately up to
your team. You want to make sure that you choose the option that will
make your project successful, and determining which option best utilizes
you existing skill sets is an important consideration. Additionally,
you might want to perform some limited testing to determine which
approach will perform the best within your environment constraints. The
nice thing about Forte (and I know I've said this before) is that it is
relatively simple to integrate anything with anything! :)
I hope this helps.
-Katie
Ernesto Moscatelli wrote:
>
Hi,
we need to interface a PowerBuilder application (running under W/NT) to
a Forté service (running under Solaris): is there anybody who has
already done it? Which is the best (and most efficient) way to do it?
Thanks a lot,
Ernesto Moscatelli
EDS Italy
Banking Division--
Katie Carty
Senior Consultant
Forte Software, Inc.
http://www.forte.com
4801 Woodway Drive, Suite 300E
Houston, Texas 77056
vmail: (510) 986-3802
email: [email protected]
**************************************************
Maybe you are looking for
-
ERROR while deploying with Jython tool
HI, I am trying to deploy a BPEL process using joython tool. This is deploying well in one system, in another system its giving some porblem............ any idea. validateTask: [validateTask] Validation of workflow task definitions is completed witho
-
I accidentaly hit a feature that allowed me to hide everything on the top of my browser. Now All i have are the options of "most visited, Getting Started and Latest Headlines." I have no place to type in a website address, no options such as "file" o
-
All, Server: Sun Solaris 10 Database: Oracle 10g (stand alone) 10.2.0.4 We are seeing one of our Batch processes running slow. During this period when it runs slow, we have extracted the AWR and ADDM reports. Below are the same for referece. ADDM Rep
-
I got a light room 5 and once i put in the serial number its asking for an older version serial number. I had downloaded a 30 day trail few months back , but I dont hinki it had a serial number since it was only a trail version. I got it directly f
-
How do a report a hotspot fault
i am no longer able to conect to a particular btopenzone hotspot my iphone can see it but btfon cannot connect. it has been working fine until today