DOCUMENT:Q153675 13-AUG-1999 [foxpro] TITLE :How To Use Code to Print a Word Document in a General Field PRODUCT :Microsoft FoxPro PROD/VER:WINDOWS: 3.0;3.0b;6.0 OPER/SYS: KEYWORDS:kbcode ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft Visual FoxPro for Windows, versions 3.0, 3.0b, 6.0 ------------------------------------------------------------------------------- SUMMARY ======= If a general field contains an embedded or linked Word document, you can print the Word document by using code and OLE automation. MORE INFORMATION ================ For more information about the behavior of embedded Word documents, please see the following articles in the Microsoft Knowledge Base: Q105714 Document Object Margins Default to Zero Inches Q121049 Wrong Page Size for Word Document Object Opened to Edit IMPORTANT: If you are using the APPEND GENERAL command, or Insert Object from the Edit menu in the general field to create a new Word document, the document may not print correctly if you do not follow the guidelines published in Microsoft Knowledge Base article Q105714 (see above). NOTE: This code sample only works with Word 95. It does not work with Word 97. Code Sample ----------- The following code demonstrates how to print the document. CREATE TABLE myword (wordfld G) APPEND BLANK APPEND GENERAL wordfld CLASS "Word.Document" ** The above lines are for demonstration only ** Normally the table will already exist and contain the document frmDummy = CREATEOBJECT("Form") frmDummy.ADDOBJECT("objWordDoc","OleBoundControl") frmDummy.objWordDoc.ControlSource = "wordfld" frmDummy.objWordDoc.DoVerb(1) &&starts an instance of Word objWordInst = GETOBJECT("","Word.Basic") &&create a reference to Word ** set paper size - see Q121049 referenced above objWordInst.FilePageSetup(,,"1","1",,"1","1","8.5 in","11 in") objWordInst.Insert("Brown Shoes Don't Make It") objWordInst.AppHide objWordInst.FilePrint WAIT WINDOW "Printing document" TIMEOUT 5 objWordInst.AppClose RELEASE objWordInst Additional query words: VFoxWin OLE automation winword ====================================================================== Keywords : kbcode Technology : kbVFPsearch kbAudDeveloper kbVFP300 kbVFP300b kbVFP600 Version : WINDOWS: 3.0;3.0b;6.0 ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 1999.