11/3/2025 10:14:39 PM
 
										
										 
										 
										 
										 
										 
										 
										 
									 | 
									
									
										
											
												
													
														
															|   | 
															
																
																
																	
																		| slxdeveloper.com Community Forums | 
																		  | 
																	 
																	
																		|   | 
																		  | 
																	 
																	
																	
	| 
																		 The Forums on slxdeveloper.com are now retired. The forum archive will remain available for the time being. Thank you for your participation on slxdeveloper.com! 
	 Forum to discuss writing script in Architect plugins for SalesLogix & general SalesLogix customization topics (for Windows client only). View the code of conduct for posting guidelines. 
 | 
	
 | 
  
 
																			
																			 
																			
		
			 | 
		 
			
		 
			 | 
				
					MS Word Mail Merge  
						Posted: 20 Aug 06 11:48 AM
					 | 
				 
					fiogf49gjkf0d I search how to merge with  microsoft vbscript functions (or saleslogix functions) | 
				 
					 | 
				 
			  | 
		 
			 | 
				
					Re: MS Word Mail Merge  
						Posted: 21 Aug 06 3:13 PM
					 | 
				 
					fiogf49gjkf0d Hi,
  you can create a Word Document as a COM-Object and insert text into it via VBScript. Maybe the short example below is helpful for your first steps ...
 
  Short example:
  'Including Script - Personal:opencrms_Microsoft_Constants 'Including Script - System:SLX Database Support
  ' the script "opencrms_Microsoft_Constants" contains the definitions of all Microsoft Office Constants, e.g wdCell, wdToggle and so on (if you need it, send me an email) option explicit
  sub Main     CreateWordMailMerge end sub
  sub CreateWordMailMerge     Dim objWord, objRange, objTable     Dim sField, sTable, sWhere     Dim sFirstname     Dim i
      ' create Word as COM object     set objWord = CreateObject("Word.Application")
      ' add a blank document and make Word visible     objWord.Documents.Add     objWord.Visible = TRUE
      ' fetch firstname of current contact from CONTACT table     sField = "FIRSTNAME"     sTable = "CONTACT"     sWhere = "CONTACTID='" & Application.BasicFunctions.CurrentContactID & "'"     sFirstname = GetField (sField, sTable, sWhere)     If ErrorCheck(Application.Translator.Localize("Error fetching 'FIRSTNAME' in 'CreateWordMailMerge()':")) > 0 Then exit sub
      with objWord.Selection          ' enter 4 empty lines into the Word document           for i = 1 to 4               .TypeParagraph           next           ' greetings to the contacts firstname into the Word document           .TypeText "Hello " & trim(sFirstname)           ' enter 2 carriage return into the Word document           .TypeParagraph           .TypeParagraph           ' enter simple text into the Word document           .TypeText "How are you?"           ' enter 2 carriage return into the Word document again           .TypeParagraph           .TypeParagraph     end with
      ' create a simple table with 2 row and 3 columns     Set objRange = objWord.Selection.Range     with objWord.ActiveDocument           set objTable = .Tables.Add(objRange, 2, 3)           '.... i have deleted all my formats     end with
      ' insert data into the table     with objWord.Selection           .Font.Bold =  wdToggle      ' make the first cell bold           .TypeText "Print it bold"           .MoveRight wdCell           ' move two cells forwards           .MoveRight wdCell           .Font.Bold = wdNone           .TypeText "Now I am here.."           .MoveRight wdCell     end with
      ' set the printer properties     With objWord.ActiveDocument.PageSetup          .LineNumbering.Active = False          .Orientation = wdOrientPortrait          .TopMargin = objWord.CentimetersToPoints(2.5)          .BottomMargin = objWord.CentimetersToPoints(2)          .LeftMargin = objWord.CentimetersToPoints(2.5)          .RightMargin = objWord.CentimetersToPoints(2.5)          .Gutter = objWord.CentimetersToPoints(0)          .HeaderDistance = objWord.CentimetersToPoints(1.25)          .FooterDistance = objWord.CentimetersToPoints(1.25)          .PageWidth = objWord.CentimetersToPoints(21)          .PageHeight = objWord.CentimetersToPoints(29.7)          .FirstPageTray = wdPrinterMiddleBin          .OtherPagesTray = wdPrinterMiddleBin          .SectionStart = wdSectionNewPage          .OddAndEvenPagesHeaderFooter = False          .DifferentFirstPageHeaderFooter = False          .VerticalAlignment = wdAlignVerticalTop          .SuppressEndnotes = False          .MirrorMargins = False          .TwoPagesOnOne = False          .GutterPos = wdGutterPosLeft     End With     ' print the document     objWord.PrintOut
      ' if you want to close Word, use     ' objWord.Quit
      'destroy the Word object     set objWord = Nothing end sub
  Best regards, Thomas | 
				 
					 | 
				 
			  | 
		 
			 |  | 
		 
			 | 
				
					Re: MS Word Mail Merge  
						Posted: 22 Aug 06 2:57 PM
					 | 
				 
					fiogf49gjkf0d Thanks Thomas for your script.
  It works successfully and is very good.
 
 
  | 
				 
					 | 
				 
			  | 
		 
			 | 
				
					Re: MS Word Mail Merge  
						Posted: 22 Aug 06 5:16 PM
					 | 
				 
					fiogf49gjkf0d Hi Olivier,
  no problem - you are welcome!
  Ryan (you see, I don't reapeat my faux pas!   ), thanks for sharing the script example!
  Regards, Thomas | 
				 
					 | 
				 
			  | 
		 
			 |  | 
		 
			 | 
		 
	 
																			  You can 
																				subscribe to receive a daily forum digest in your 
																					user profile. View the site code 
																					of conduct for posting guidelines. 
																					
 
	
		
			    Forum RSS Feed - Subscribe to the forum RSS feed to keep on top of the latest forum activity!
			 |   
		 | 
		  | 
	 
 
 																					
																					
																		 | 
	  | 
 
																 
																
																
																 | 
														 
													 
												 | 
											 
										 
									 |