Выгрузка в Word

Тема в разделе "OLE технологии", создана пользователем allex, 19 янв 2007.

  1. allex

    allex Гость

    Данный код демострирует как выгрузить данные в Word, используя для этого поля Word'a.
    Этот код я использовал для формирования договора. Что оказалось удобным способом для автоматического формирования текста договора (где как правило меняеются данные в одном и том же месте текста договора)


    Код (LotusScript):
    Dim s As New notessession
     
    Dim todaydate As New notesdatetime("Today")
     
     
    Dim word As Variant
     
    Dim wordoc As Variant
     
     
    Dim todaysdate As String
     
    Dim orderid As String
     
    Dim producedby As String
     
    Dim storeid As String
     
    Dim customername As String
     
    Dim address As String
     
    Dim citytown As String
     
    Dim postcode As String
     
    Dim daytimeno As String
     
    Dim eveningno As String
     
     
    'Присваивание значений пересенным (Lotus)
     
    todaysdate = todaydate.localtime
     
    orderid = "2183763248"
     
    producedby = s.username
     
    storeid = "12345"
     
    customername = "John Doe"
     
    address = "Apartment 5c, 5 Test Avenue"
     
    citytown = "Testtown"
     
    postcode = "XX5 5XX"
     
    daytimeno = "1234567890"
     
    eveningno = "0987654321"
     
     
    'Создание Word-документа
    Set word = CreateObject("Word.Application") 'Создание объекта Word'a
    Call word.documents.add("Return and Uplift.dot") 'Создание нового документа по шаблону Return and Uplift.dot
    Set worddoc = word.activedocument 'Активация объекта
     
    'Присваивание полям-Word'a значений из полей notes-документа
    worddoc.FormFields(1).result = todaysdate
    worddoc.FormFields(2).result = orderid
    worddoc.FormFields(3).result = producedby
    worddoc.FormFields(4).result = storeid
    worddoc.FormFields(5).result = customername
    worddoc.FormFields(6).result = address
    worddoc.FormFields(7).result = citytown
    worddoc.FormFields(8).result = postcode
    worddoc.FormFields(9).result = daytimeno
    worddoc.FormFields(10).result = eveningno
     
    worddoc.saveas(customername) 'сохранение документа-Word'a с именем файла "John Doe.doc"
    word.visible = True 'Сделать видимым окно Word'a
    'word.quit 'закрытие Word'a
     
    zip архив с шаблоном Word
     

    Вложения:

    #1 allex, 19 янв 2007
    Последнее редактирование: 24 фев 2015
  2. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    в теме Проблема при вставке данных в поля Word поднимают вопрос об ограничении на длину вставляемых данных (~255 символов) и предлагают вставить в закладки ворда:

    Код (LotusScript):
    If WordDoc.Bookmarks.Exists( "Название закладки" )=True Then ' проверка что закладка есть в документе
    Call vWordAppCPR.Selection.GoTo( -1,,, "Название закладки" ) ' переходим на указанную закладку
     
    Call vWordAppCPR.Selection.TypeText( "Строка любой длины")
    end if
    Добавлено: Аналогичный вариант пробегал в теме: Microsoft Word: (слишком длинная строка)

    Еще пример в теме [post="165286"]Lotus и Word[/post]

    Пример работы с MSOffice с NotesNet - http://www.notesnet.ru/library/docid/5E77A5 :
    Код (LotusScript):
    ' TmpDocName – путь на диске к документу-шаблону
    ' bookmark01 – имя закладки определенной в MS Word
    wObj =CreateObject("Word.Application") 'Создание объекта Word'a
    wObj.Documents.Add TmpDocName ' работа с шаблоном (открытие файла)
    wObj.Selection.GoTo wdGoToBookmark, , , bookmark01 'переход к закладке
    wObj.Selection.Delete wdCharacter, 1 ' удаление закладки и текста закладки, курсор остается на месте закладки
    wObj.Selection.TypeText doc.ResultField(0) ' вывод информации в текущую позицию курсора
     
    #2 hosm, 19 янв 2010
    Последнее редактирование модератором: 24 фев 2015
  3. Eugen

    Eugen Well-Known Member

    Регистрация:
    22 мар 2012
    Сообщения:
    172
    Симпатии:
    0
    День добрый.
    А возможно ли сделать так, чтобы вордовый шаблон хранился не на локальной машине, где-нибудь в лотусовой базе?
     
  4. beloff

    beloff Well-Known Member

    Регистрация:
    24 июл 2012
    Сообщения:
    103
    Симпатии:
    0
    конечно можно. у нас так и реализовано - шаблон приклеен к документу
     
Загрузка...

Поделиться этой страницей