` Send report output to word (Kevin Erskine ) - Icetips Article
Icetips - Templates, Tools & Utilities for Clarion Developers

Templates, Tools and Utilities
for Clarion Developers

Icetips Article

Back to article list   Search Articles     Add Comment     Printer friendly     Direct link  

Par2: Send report output to word
2001-11-23 -- Kevin Erskine
 
When report done call this procedure (in AskPreview, Priority 4000) ... Word:SendReport PROCEDURE(REPORT p_Report , | PreviewQueue p_PreviewQueue) WordOle LONG PageCnt LONG PageNo LONG CODE !--- ENDPAGE(p_Report) !--- PageCnt = RECORDS(p_PreviewQueue) IF PageCnt = 0 RETURN END !--- !! IF MESSAGE('Do you also want to write this report to a WORD file?','Confirmation...', | !! ICON:Question,BUTTON:Yes+BUTTON:No,BUTTON:Yes)= BUTTON:No !! RETURN !! END !--- WordOle = CREATE(0,CREATE:Ole) WordOle{PROP:Create} = 'Word.Document' !'Word.Document.8' IF WordOle{PROP:Ole} = FALSE MESSAGE('Could not locate MS Word on your computer. Request Cancelled!','Notification...', | ICON:Exclamation,BUTTON:Cancel) DESTROY(WordOle) RETURN END !WordOle{PROP:ReportException } = TRUE !--- WordOle{PROP:DoVerb } = -3 ! DOVERB:Hide WordOle{'Application.Visible' } = False WordOle{'Application.Documents.Add'} !--- IF p_Report{PROP:LandScape} WordOle{'Application.ActiveDocument.PageSetup.Orientation' } = 1 WordOle{'Application.ActiveDocument.PageSetup.PageWidth' } = 11.00 WordOle{'Application.ActiveDocument.PageSetup.PageHeight' } = 8.50 !- WordOle{'Application.ActiveDocument.PageSetup.TopMargin' } = 0.25 WordOle{'Application.ActiveDocument.PageSetup.BottomMargin'} = 0.50 WordOle{'Application.ActiveDocument.PageSetup.LeftMargin' } = 0.25 WordOle{'Application.ActiveDocument.PageSetup.RightMargin' } = 0.25 ELSE WordOle{'Application.ActiveDocument.PageSetup.Orientation' } = 0 WordOle{'Application.ActiveDocument.PageSetup.PageWidth' } = 8.50 WordOle{'Application.ActiveDocument.PageSetup.PageHeight' } = 11.00 !- WordOle{'Application.ActiveDocument.PageSetup.TopMargin' } = 0.25 WordOle{'Application.ActiveDocument.PageSetup.BottomMargin'} = 0.50 WordOle{'Application.ActiveDocument.PageSetup.LeftMargin' } = 0.25 WordOle{'Application.ActiveDocument.PageSetup.RightMargin' } = 0.25 END !--- LOOP PageNo = 1 TO PageCnt GET(p_PreviewQueue,PageNo) WordOle{'Application.Selection.InlineShapes.AddPicture ("'& Clip(p_PreviewQueue.Filename) &'")'} END !--- WordOle{'Application.Visible'} = True WordOle{PROP:DeActivate } !--- DESTROY(WordOle) !--- RETURN


Today is April 28, 2024, 10:25 am
This article has been viewed 35124 times.



Back to article list   Search Articles   Add Comment   Printer friendly

Login

User Name:

Password: