Option Strict Off
Imports Word = Microsoft.Office.Interop.Word
Imports System
Imports System.IO
Imports System.Text
Imports System.Xml
Imports DBMySql = MySql.Data.MySqlClient
Public Class frmWord
Private Sub btnStampaUnione_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnStampaUnione.Click
Dim wrdSelection As Word.Selection
Dim wrdMailMerge As Word.MailMerge
Dim wrdMergeFields As Word.MailMergeFields
Dim strSql As String, strLettera As String = ""
Dim strConnessione As String = "Persist Security Info=False;" & _
"Database=" & My.Settings.myDB & ";" & _
"Data Source=" & My.Settings.myServer & ";" & _
"User Id=" & My.Settings.myUsername & ";" & _
"Password=" & My.Settings.myPassword & ";" & _
"Connect Timeout=15;"
Dim myCommand As New DBMySql.MySqlCommand(), myCmdLet As New DBMySql.MySqlCommand()
Dim objConnessione As New DBMySql.MySqlConnection(strConnessione)
Dim objConnLett As New DBMySql.MySqlConnection(strConnessione)
Dim ds As New Data.DataSet
Dim intPagPrec As Int16, intPagLet As Int16, intTotPag As Int16
If txtPeriodoRif.Text = "" Then
MsgBox("Inserire periodo di riferimento per la generazione dei file", MsgBoxStyle.Information, "Periodo Riferimento")
txtPeriodoRif.Focus()
Exit Sub
End If
txtFileWord.Text = "D:\Progetti\NET\Mpx\Test\Invio_" & txtPeriodoRif.Text & "\Lettere_" & txtPeriodoRif.Text & ".doc"
' Create an instance of Word and make it visible.
wrdApp = CreateObject("Word.Application")
wrdApp.Visible = True
wrdDoc = wrdApp.Documents.Open(txtLettera.Text)
wrdDoc.Select()
wrdMailMerge = wrdDoc.MailMerge()
' Create MailMerge Data file.
strSql = "SELECT ENV_IDLOTTO, ENV_IDLETTERA, ENV_TIPOLETT, ENV_PRATICA, ENV_ADDRESSLINE1," & _
" ENV_ADDRESSLINE2, ENV_ADDRESSLINE3, ENV_CITY," & _
" ENV_CAP, ENV_LOCALCODE" & _
" FROM mpx_envelope" & _
" WHERE ENV_IDLOTTO = '" & txtIDLotto.Text & "'"
wrdDoc.MailMerge.OpenDataSource(Name:="", Connection:="DSN=MPX_TEST;", SQLStatement:=strSql, SubType:=Word.WdMergeSubType.wdMergeSubTypeWord200 0)
wrdMailMerge.Destination = Word.WdMailMergeDestination.wdSendToNewDocument
wrdMailMerge.Execute(False)
' Chiudo il documento originale
wrdDoc.Close(False)
wrdDoc = Nothing
' Salvo il documento con le lettere
wrdDoc = wrdApp.Documents(1)
wrdDoc.SaveAs(txtFileWord.Text)
' Memorizzo il numero totale di pagine del documento
MsgBox(wrdApp.Application.ActiveDocument.BuiltInDo cumentProperties(14))
intTotPag = TryCast(wrdApp.ActiveDocument.BuiltInDocumentPrope rties(Word.WdBuiltInProperty.wdPropertyPages), Short)
.......
End Sub
End Class