Reply
 
Thread Tools Display Modes
  #1   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Andrew@AAP Andrew@AAP is offline
external usenet poster
 
Posts: 1
Default Mailmerge from Word 2003 using 2000 word template

Hi,

Ive been searching for answers for this for the last 2 days, however have
not found an answer, only reasons why the problem occurs.

We use Word Automation in one of our VB6 programs (which runs as an NT
service - completely unattended) Recently we upgraded the version of word
being referenced from 9.0 (word 2000) to word 11.0 (word 2003).

Since then i have noticed our service hangs, whenever a merge is performed
on a mailmerge document built under word 2000.

The reason appears to be due to the transition of how word links its data
source. I am aware of the transition of 2000's DDE to the JET used in 2003.

I have applied the registry update for SQLSecurityCheck. It does not work
for this problem.

The hanging is due to the program prompting for the datasource upon Opening
the word document itself (the WordApp.Documents.Open call), NOT calling the
OpenDataSource method (WordDoc.MailMerge.OpenDataSource).

WordApp.DisplayAlerts = wdAlertsNone
Set WordDoc = WordApp.Documents.Open(filename:=DocFile,
ConfirmConversions:=False, ReadOnly:=True) ', Format:=wdOpenFormatAllWord,
NoEncodingDialog:=True, Visible:=False)

' Make sure its a mailmerge document
If WordDoc.MailMerge.MainDocumentType = wdNotAMergeDocument Then
Err.Raise -1, , "This is not a valid mailmerge document."
End If

' Open the data source
If UCase(Mid(DataFile, Len(DataFile) - 2, 3)) = "XLS" Then
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
Connection:="Entire Spreadsheet", SubType:=wdMergeSubTypeWord2000
Else
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
SubType:=wdMergeSubTypeWord2000
End If

Any help appreciated. This is a big problem for us at present.
(I am also aware of Microsoft's statements warning against the use of office
automation in unattended applications)

Many Thanks,
Andrew
  #2   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Peter Jamieson Peter Jamieson is offline
external usenet poster
 
Posts: 4,582
Default Mailmerge from Word 2003 using 2000 word template

Can we take it that you are still seeing the /SQL/ message and not some
other message?

Have you applied the SQLSecurityCheck registry change to the correct user
(i.e. the user account that the service is running under) ?

Peter Jamieson
"Andrew@AAP" wrote in message
...
Hi,

Ive been searching for answers for this for the last 2 days, however have
not found an answer, only reasons why the problem occurs.

We use Word Automation in one of our VB6 programs (which runs as an NT
service - completely unattended) Recently we upgraded the version of word
being referenced from 9.0 (word 2000) to word 11.0 (word 2003).

Since then i have noticed our service hangs, whenever a merge is performed
on a mailmerge document built under word 2000.

The reason appears to be due to the transition of how word links its data
source. I am aware of the transition of 2000's DDE to the JET used in
2003.

I have applied the registry update for SQLSecurityCheck. It does not work
for this problem.

The hanging is due to the program prompting for the datasource upon
Opening
the word document itself (the WordApp.Documents.Open call), NOT calling
the
OpenDataSource method (WordDoc.MailMerge.OpenDataSource).

WordApp.DisplayAlerts = wdAlertsNone
Set WordDoc = WordApp.Documents.Open(filename:=DocFile,
ConfirmConversions:=False, ReadOnly:=True) ', Format:=wdOpenFormatAllWord,
NoEncodingDialog:=True, Visible:=False)

' Make sure its a mailmerge document
If WordDoc.MailMerge.MainDocumentType = wdNotAMergeDocument Then
Err.Raise -1, , "This is not a valid mailmerge document."
End If

' Open the data source
If UCase(Mid(DataFile, Len(DataFile) - 2, 3)) = "XLS" Then
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
Connection:="Entire Spreadsheet", SubType:=wdMergeSubTypeWord2000
Else
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
SubType:=wdMergeSubTypeWord2000
End If

Any help appreciated. This is a big problem for us at present.
(I am also aware of Microsoft's statements warning against the use of
office
automation in unattended applications)

Many Thanks,
Andrew


  #3   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Andrew@AAP[_2_] Andrew@AAP[_2_] is offline
external usenet poster
 
Posts: 3
Default Mailmerge from Word 2003 using 2000 word template

Forgot to add; The wordapp.documents.open method is actually throwing up the
"Select Data Source" window.

I cant find a workaround for this, particularly since this is an unattended
application its beginning to look like we need to define what versions of
word we are prepared to support.

"Andrew@AAP" wrote:

Hi,

Ive been searching for answers for this for the last 2 days, however have
not found an answer, only reasons why the problem occurs.

We use Word Automation in one of our VB6 programs (which runs as an NT
service - completely unattended) Recently we upgraded the version of word
being referenced from 9.0 (word 2000) to word 11.0 (word 2003).

Since then i have noticed our service hangs, whenever a merge is performed
on a mailmerge document built under word 2000.

The reason appears to be due to the transition of how word links its data
source. I am aware of the transition of 2000's DDE to the JET used in 2003.

I have applied the registry update for SQLSecurityCheck. It does not work
for this problem.

The hanging is due to the program prompting for the datasource upon Opening
the word document itself (the WordApp.Documents.Open call), NOT calling the
OpenDataSource method (WordDoc.MailMerge.OpenDataSource).

WordApp.DisplayAlerts = wdAlertsNone
Set WordDoc = WordApp.Documents.Open(filename:=DocFile,
ConfirmConversions:=False, ReadOnly:=True) ', Format:=wdOpenFormatAllWord,
NoEncodingDialog:=True, Visible:=False)

' Make sure its a mailmerge document
If WordDoc.MailMerge.MainDocumentType = wdNotAMergeDocument Then
Err.Raise -1, , "This is not a valid mailmerge document."
End If

' Open the data source
If UCase(Mid(DataFile, Len(DataFile) - 2, 3)) = "XLS" Then
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
Connection:="Entire Spreadsheet", SubType:=wdMergeSubTypeWord2000
Else
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
SubType:=wdMergeSubTypeWord2000
End If

Any help appreciated. This is a big problem for us at present.
(I am also aware of Microsoft's statements warning against the use of office
automation in unattended applications)

Many Thanks,
Andrew

  #4   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Peter Jamieson Peter Jamieson is offline
external usenet poster
 
Posts: 4,582
Default Mailmerge from Word 2003 using 2000 word template

Do you get this with all types of data source or a selection, e.g. the ones
that would have used DDE in Word 2000 (probably Access or Excel)?

If you open one of the "problem" documents manually, do you see the same
dialog box?

ISTR having to open mail merge main documents in Word 2002, updating all the
fields in the document, reconnecting to the data source(s) and re-saving as
Word 2002 documents, and not just because of the changes in the connection
methods. Probably the same for Word 2000-2003.

Peter Jamieson
"Andrew@AAP" wrote in message
...
Forgot to add; The wordapp.documents.open method is actually throwing up
the
"Select Data Source" window.

I cant find a workaround for this, particularly since this is an
unattended
application its beginning to look like we need to define what versions of
word we are prepared to support.

"Andrew@AAP" wrote:

Hi,

Ive been searching for answers for this for the last 2 days, however have
not found an answer, only reasons why the problem occurs.

We use Word Automation in one of our VB6 programs (which runs as an NT
service - completely unattended) Recently we upgraded the version of word
being referenced from 9.0 (word 2000) to word 11.0 (word 2003).

Since then i have noticed our service hangs, whenever a merge is
performed
on a mailmerge document built under word 2000.

The reason appears to be due to the transition of how word links its data
source. I am aware of the transition of 2000's DDE to the JET used in
2003.

I have applied the registry update for SQLSecurityCheck. It does not work
for this problem.

The hanging is due to the program prompting for the datasource upon
Opening
the word document itself (the WordApp.Documents.Open call), NOT calling
the
OpenDataSource method (WordDoc.MailMerge.OpenDataSource).

WordApp.DisplayAlerts = wdAlertsNone
Set WordDoc = WordApp.Documents.Open(filename:=DocFile,
ConfirmConversions:=False, ReadOnly:=True) ',
Format:=wdOpenFormatAllWord,
NoEncodingDialog:=True, Visible:=False)

' Make sure its a mailmerge document
If WordDoc.MailMerge.MainDocumentType = wdNotAMergeDocument Then
Err.Raise -1, , "This is not a valid mailmerge document."
End If

' Open the data source
If UCase(Mid(DataFile, Len(DataFile) - 2, 3)) = "XLS" Then
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
Connection:="Entire Spreadsheet", SubType:=wdMergeSubTypeWord2000
Else
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
SubType:=wdMergeSubTypeWord2000
End If

Any help appreciated. This is a big problem for us at present.
(I am also aware of Microsoft's statements warning against the use of
office
automation in unattended applications)

Many Thanks,
Andrew


  #5   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Andrew@AAP[_2_] Andrew@AAP[_2_] is offline
external usenet poster
 
Posts: 3
Default Mailmerge from Word 2003 using 2000 word template

Hi Peter,

Thanks for the replies.

Yes, the prompt for selecting the data source occurs for all data source
documents (excel or CSV)

I have applied the SQLSecurityCheck Registry "fix".

Quite frustrating that i now read that Office2007 has changes data
connectivity again.

Thanks,
Andrew

"Peter Jamieson" wrote:

Can we take it that you are still seeing the /SQL/ message and not some
other message?

Have you applied the SQLSecurityCheck registry change to the correct user
(i.e. the user account that the service is running under) ?

Peter Jamieson
"Andrew@AAP" wrote in message
...
Hi,

Ive been searching for answers for this for the last 2 days, however have
not found an answer, only reasons why the problem occurs.

We use Word Automation in one of our VB6 programs (which runs as an NT
service - completely unattended) Recently we upgraded the version of word
being referenced from 9.0 (word 2000) to word 11.0 (word 2003).

Since then i have noticed our service hangs, whenever a merge is performed
on a mailmerge document built under word 2000.

The reason appears to be due to the transition of how word links its data
source. I am aware of the transition of 2000's DDE to the JET used in
2003.

I have applied the registry update for SQLSecurityCheck. It does not work
for this problem.

The hanging is due to the program prompting for the datasource upon
Opening
the word document itself (the WordApp.Documents.Open call), NOT calling
the
OpenDataSource method (WordDoc.MailMerge.OpenDataSource).

WordApp.DisplayAlerts = wdAlertsNone
Set WordDoc = WordApp.Documents.Open(filename:=DocFile,
ConfirmConversions:=False, ReadOnly:=True) ', Format:=wdOpenFormatAllWord,
NoEncodingDialog:=True, Visible:=False)

' Make sure its a mailmerge document
If WordDoc.MailMerge.MainDocumentType = wdNotAMergeDocument Then
Err.Raise -1, , "This is not a valid mailmerge document."
End If

' Open the data source
If UCase(Mid(DataFile, Len(DataFile) - 2, 3)) = "XLS" Then
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
Connection:="Entire Spreadsheet", SubType:=wdMergeSubTypeWord2000
Else
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
SubType:=wdMergeSubTypeWord2000
End If

Any help appreciated. This is a big problem for us at present.
(I am also aware of Microsoft's statements warning against the use of
office
automation in unattended applications)

Many Thanks,
Andrew




  #6   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Andrew@AAP[_2_] Andrew@AAP[_2_] is offline
external usenet poster
 
Posts: 3
Default Mailmerge from Word 2003 using 2000 word template

Hi Peter,

Do you get this with all types of data source or a selection, e.g. the ones
that would have used DDE in Word 2000 (probably Access or Excel)?

Yes, all types, we allow our customers to submit CSV or Excel datasources.


If you open one of the "problem" documents manually, do you see the same
dialog box?

Yes.
The problem is trying to program around this.
In Word 2000 you would still get this box, but not until you call
OpenDataSource.
Now it appears to occur on the Open Word document itself.
Different stage of execution that i dont see an immeadiate way of coding
around.

ISTR having to open mail merge main documents in Word 2002, updating all the
fields in the document, reconnecting to the data source(s) and re-saving as
Word 2002 documents, and not just because of the changes in the connection
methods. Probably the same for Word 2000-2003.

Peter Jamieson
"Andrew@AAP" wrote in message
...
Forgot to add; The wordapp.documents.open method is actually throwing up
the
"Select Data Source" window.

I cant find a workaround for this, particularly since this is an
unattended
application its beginning to look like we need to define what versions of
word we are prepared to support.

"Andrew@AAP" wrote:

Hi,

Ive been searching for answers for this for the last 2 days, however have
not found an answer, only reasons why the problem occurs.

We use Word Automation in one of our VB6 programs (which runs as an NT
service - completely unattended) Recently we upgraded the version of word
being referenced from 9.0 (word 2000) to word 11.0 (word 2003).

Since then i have noticed our service hangs, whenever a merge is
performed
on a mailmerge document built under word 2000.

The reason appears to be due to the transition of how word links its data
source. I am aware of the transition of 2000's DDE to the JET used in
2003.

I have applied the registry update for SQLSecurityCheck. It does not work
for this problem.

The hanging is due to the program prompting for the datasource upon
Opening
the word document itself (the WordApp.Documents.Open call), NOT calling
the
OpenDataSource method (WordDoc.MailMerge.OpenDataSource).

WordApp.DisplayAlerts = wdAlertsNone
Set WordDoc = WordApp.Documents.Open(filename:=DocFile,
ConfirmConversions:=False, ReadOnly:=True) ',
Format:=wdOpenFormatAllWord,
NoEncodingDialog:=True, Visible:=False)

' Make sure its a mailmerge document
If WordDoc.MailMerge.MainDocumentType = wdNotAMergeDocument Then
Err.Raise -1, , "This is not a valid mailmerge document."
End If

' Open the data source
If UCase(Mid(DataFile, Len(DataFile) - 2, 3)) = "XLS" Then
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
Connection:="Entire Spreadsheet", SubType:=wdMergeSubTypeWord2000
Else
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
SubType:=wdMergeSubTypeWord2000
End If

Any help appreciated. This is a big problem for us at present.
(I am also aware of Microsoft's statements warning against the use of
office
automation in unattended applications)

Many Thanks,
Andrew


  #7   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Peter Jamieson Peter Jamieson is offline
external usenet poster
 
Posts: 4,582
Default Mailmerge from Word 2003 using 2000 word template

As far as I know, the situation is that a document that is already connected
to a data source and cannot find that data source when it opens will always
prompt for the data source (even in Word 2000 AFAICR), but Word 2002/2003 is
more particular about where that data source is actually located - if you
are relying on Word 2000 finding the data source in the same folder as the
mail merge main document, I suspect that will not work in Word 2002/2003.
Even if the user manages to get Word to open some types of data source the
first time around, in some cases (e.g. where the data source has a long
pathname), when you close/re-open the mail merge main document, Word my
"lose" the data source and throw up prompts. The "can't find the data
source" problem has AFAIK always been one of the problems with automating
merges.

Unfortuately I really don't think there is any way of reliably programming
around this unless you know what the data source is supposed to be
independently of the document. i.e., you could try to use Sendkeys to get
through the Select Data Source, but then you lose all information in the
merge main document about the name of the data source, so you can't
reconnect to it. It's difficult even to suggest what you might do in future
without knowing, for example, how much your customers are willing to do to
ensure that things work, how you ensure that the data sources used are
findable on the server, and so on.

FWIW I don't think Word 2007 is that much different from Word 2003 in this
area, but you would have to have the ACE driver/provider on your server as
well as the Jet one that it "replaces", and if you have to cope with DDE
connections you would need Excel 2007 as well.

I don''t think I can get you any further on this one, sorry.

Peter Jamieson

"Andrew@AAP" wrote in message
...
Hi Peter,

Do you get this with all types of data source or a selection, e.g. the
ones
that would have used DDE in Word 2000 (probably Access or Excel)?

Yes, all types, we allow our customers to submit CSV or Excel datasources.


If you open one of the "problem" documents manually, do you see the same
dialog box?

Yes.
The problem is trying to program around this.
In Word 2000 you would still get this box, but not until you call
OpenDataSource.
Now it appears to occur on the Open Word document itself.
Different stage of execution that i dont see an immeadiate way of coding
around.

ISTR having to open mail merge main documents in Word 2002, updating all
the
fields in the document, reconnecting to the data source(s) and re-saving
as
Word 2002 documents, and not just because of the changes in the
connection
methods. Probably the same for Word 2000-2003.

Peter Jamieson
"Andrew@AAP" wrote in message
...
Forgot to add; The wordapp.documents.open method is actually throwing
up
the
"Select Data Source" window.

I cant find a workaround for this, particularly since this is an
unattended
application its beginning to look like we need to define what versions
of
word we are prepared to support.

"Andrew@AAP" wrote:

Hi,

Ive been searching for answers for this for the last 2 days, however
have
not found an answer, only reasons why the problem occurs.

We use Word Automation in one of our VB6 programs (which runs as an NT
service - completely unattended) Recently we upgraded the version of
word
being referenced from 9.0 (word 2000) to word 11.0 (word 2003).

Since then i have noticed our service hangs, whenever a merge is
performed
on a mailmerge document built under word 2000.

The reason appears to be due to the transition of how word links its
data
source. I am aware of the transition of 2000's DDE to the JET used in
2003.

I have applied the registry update for SQLSecurityCheck. It does not
work
for this problem.

The hanging is due to the program prompting for the datasource upon
Opening
the word document itself (the WordApp.Documents.Open call), NOT
calling
the
OpenDataSource method (WordDoc.MailMerge.OpenDataSource).

WordApp.DisplayAlerts = wdAlertsNone
Set WordDoc = WordApp.Documents.Open(filename:=DocFile,
ConfirmConversions:=False, ReadOnly:=True) ',
Format:=wdOpenFormatAllWord,
NoEncodingDialog:=True, Visible:=False)

' Make sure its a mailmerge document
If WordDoc.MailMerge.MainDocumentType = wdNotAMergeDocument Then
Err.Raise -1, , "This is not a valid mailmerge document."
End If

' Open the data source
If UCase(Mid(DataFile, Len(DataFile) - 2, 3)) = "XLS" Then
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
Connection:="Entire Spreadsheet", SubType:=wdMergeSubTypeWord2000
Else
WordDoc.MailMerge.OpenDataSource Name:=DataFile,
ConfirmConversions:=False, ReadOnly:=True, LinkToSource:=False,
SubType:=wdMergeSubTypeWord2000
End If

Any help appreciated. This is a big problem for us at present.
(I am also aware of Microsoft's statements warning against the use of
office
automation in unattended applications)

Many Thanks,
Andrew



Reply
Thread Tools
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Word 2003 MailMerge with SQL Server 2000 problem crm Mailmerge 3 October 9th 06 05:32 PM
Word 2000/2003 Autotext-Template Compatibility John Gregory Microsoft Word Help 2 June 25th 05 04:32 PM
MS Word 2000 & 2003 Template Location Duane Haas Microsoft Word Help 4 May 17th 05 07:02 PM
Word 2003 Mailmerge problem - works in Word 2000 Rick Robinson Mailmerge 2 April 28th 05 10:16 AM
MailMerge Word 2003 to Access 2000 query blank data BCool Mailmerge 1 January 15th 05 12:31 AM


All times are GMT +1. The time now is 12:41 PM.

Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 Microsoft Office Word Forum - WordBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Word"