Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

How to passing paramter from dw to word

Posted on 2006-07-11
2
Medium Priority
?
671 Views
Last Modified: 2013-12-26
hai expert,

l already open word in PB (use OLE object)  but l no idea how to passing value from dw to word.
l has tried coding vb but it's not work.
eg:
 ole_application.selection.insert("example")

 below is my coding :

//---------------
   ole_application = CREATE OLEObject
   //Open Word
    li_ret = ole_application.ConnectToObject("","word.application")
    IF li_ret <> 0 THEN
     // Didn't work lets try it and connect to it
    li_ret = ole_application.ConnectToNewObject("word.application")
  END if
            
   if(li_ret <> 0) THEN
       MessageBox("", "Error! Cannot open Microsoft Office.", StopSign!)
   ELSE
   //Start open file
    ole_application.Visible = True
    ole_application.Documents.Open(ls_fullpath)
   
   // --- I put my VB coding this here -----

   ole_application.DisconnectObject()
   Destroy ole_application
end if
 
0
Comment
Question by:firza
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 5

Accepted Solution

by:
michaelstoffel earned 1500 total points
ID: 17083381
We use iOLEWord.Selection.TypeText(as_text)  It's been around for awhile, so may be outdated but works from Word 97 to 2003

Mike
0
 
LVL 18

Expert Comment

by:diasroshan
ID: 17097021
Hi,

This code opens an existing word document(customer.doc)...
customer.doc has text with bookmarks on it...

This is how it is...
Customer Id:<bookmark here>
First Name: <bookmark here>
Last Name: <bookmark here>
Address: <bookmark here>
City: <bookmark here>
State: <bookmark here>
Phone: <bookmark here>
Zip: <bookmark here>

Now i have a datawindow dw_1 whose sql is...
SELECT  "CUSTOMER"."ID" ,
           "CUSTOMER"."FNAME" ,
           "CUSTOMER"."LNAME" ,
           "CUSTOMER"."ADDRESS" ,
           "CUSTOMER"."CITY" ,
           "CUSTOMER"."STATE" ,
           "CUSTOMER"."ZIP" ,
           "CUSTOMER"."PHONE" ,
           "CUSTOMER"."COMPANY_NAME"    
        FROM "CUSTOMER"  

ok... in this example what im trying is looking for bookmarks in the word document and inserting data from the DW to it...

//Code to set Data to Word based on Bookmarks
OleObject lole_OLE
Long ll_Col, ll_Cols
String ls_Columns[8]={'id', 'fname', 'lname', &
     'address', 'city', 'state', 'zip', 'phone'}
String ls_name

lole_OLE = CREATE OleObject

SetPointer( HourGlass! )

// Connect to the word application
lole_OLE.ConnectToNewObject( 'word.application' )

lole_OLE.visible = 1 // make visible
lole_OLE.documents.Open('C:\customer.doc')

// Add each column and then the data items as a bookmark
ll_Cols = UpperBound( ls_Columns )
FOR ll_col = 1 TO ll_Cols
                //Check if bookmark exists...
      IF lole_OLE.ActiveDocument.Bookmarks.Exists( ls_Columns[ ll_Col ]  ) THEN
            lole_OLE.Selection.Goto(TRUE,0,0,ls_Columns[ ll_Col ] )  //Goto the Bookmark
      Else
            MessageBox('Error','Bookmark not defined.')
            Exit
      End IF      

   lole_OLE.Selection.TypeText( String(GetItemAny( dw_1, 1, ls_Columns[ ll_Col ] ) ) ) //inert value from DW
 
NEXT

ls_name = 'C:\Customer-' + String(GetItemAny( dw_1, 1, ls_Columns[1 ] ) ) + '.doc'
lole_OLE.ActiveDocument.SaveAs(ls_name) //Save As document with new name...
lole_OLE.DisconnectObject()
DESTROY lole_OLE

Hope u get hints from this code...

Cheers,
Rosh
0

Featured Post

On Demand Webinar: Networking for the Cloud Era

Did you know SD-WANs can improve network connectivity? Check out this webinar to learn how an SD-WAN simplified, one-click tool can help you migrate and manage data in the cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Programmer's Notepad is, one of the best free text editing tools available, simply because the developers appear to have second-guessed every weird problem or issue a programmer is likely to run into. One of these problems is selecting and deleti…
Here is a helpful source code for C++ Builder programmers that allows you to manage and manipulate HTML content from C++ code, while also handling HTML events like onclick, onmouseover, ... Some objects defined and used in this source include: …
The viewer will learn how to use NetBeans IDE 8.0 for Windows to connect to a MySQL database. Open Services Panel: Create a new connection using New Connection Wizard: Create a test database called eetutorial: Create a new test tabel called ee…
The viewer will learn how to use and create keystrokes in Netbeans IDE 8.0 for Windows.

722 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question