CftClub.ru
Клуб специалистов ЦФТ-Банк

Печать Word

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle
Предыдущая тема :: Следующая тема  
Автор Сообщение
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеВт Ноя 08, 2011 13:00   Печать Word Ответить с цитатой
Полезность: Нет оценки
Убился уже искать ошибку, все галочки уже перепроверил со штатными ЦФТ шными отчётами Word - всё совпадает, но на моей операции выдается ошибка "Не могу открыть файл", я уже в лоб прописал его и на C:\ выложил, все равно не видит.
Где может собака порыться ещё?
Текст Клиент-Скрипта:

Код:

'#include ::[RUNTIME].[MSWORD_SCRIPT]
Public Function Main(LastControl)
   On Error Resume Next
   
   If LastControl is OK then
       f = "c:\KAV_KL_VS.doc"
      if not OpenWordDoc(WrdApp, WrdDoc, f ) then '--GetData("REPORTFILE")
         MsgBox "Не могу открыть файл!" & f
         Main = False
         Exit Function
      end if
      
      dim FieldsColl
      set FieldsColl = WrdApp.ActiveDocument.FormFields
      if FieldsColl.Count >= 1 then
   
         for Each aField in FieldsColl
            Text4Setting = GetData(aField.Name)
            if Text4Setting = "" then
               Text4Setting = " "
            end if
            if Len(Text4Setting) > 255 _
            or instr(1, Text4Setting, vbLF, vbBinaryCompare) > 0 _
            then
               Call aField.TypeText(Text4Setting)
            else
               aField.Result = Text4Setting
            end if
         next
      end If
   
      call SetWordVisible(WrdApp, WrdDoc)
   End If
   Main = True
End Function
markoff
Участник - экстремал


Вступление в Клуб: 09.06.2009
СообщениеВт Ноя 08, 2011 13:11    Ответить с цитатой
Полезность: Нет оценки
Зайдите на в форму операций и проставте кнопке OK значение CheckValidate равным true
vtar
Эксперт


Вступление в Клуб: 20.03.2009
СообщениеВт Ноя 08, 2011 13:25   Re: Печать Word Ответить с цитатой
Полезность: Нет оценки
Код:


Public Function Main(LastControl)
   On Error Resume Next
   
   If LastControl is OK then
         
            f = "c:\!\KAV_KL_VS.doc"
         Set W = GetObject(f)
         If Err.Number = 440 Or Err.Number = 432 Then
            Msg = "Проверьте правильность указания пути и имени файла"
            MsgBox Msg, , "Не удается открыть файл"
            Err.Clear
               Main = False
            Exit Function
            
         End If   
         W.Application.Visible = True
                
     MsgBox "OK!"   
       
   End If
   Main = True
End Function
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеВт Ноя 08, 2011 15:16    Ответить с цитатой
Полезность: Нет оценки
markoff пишет:
Зайдите на в форму операций и проставте кнопке OK значение CheckValidate равным true


Галка стоит. С точки зрения галок и крыжиков я всё проверил с ЦФТ шными.

vtar пишет:

Вставил Ваш код, получил ошибку:
Проверьте правильность указания пути и имени файла

Исправил f = "c:\!\KAV_KL_VS.doc" на f = "c:\KAV_KL_VS.doc" написал: OK!
Но шаблон поднялся шаблоном, без заполнения.

П.С. может ещё кто знает есть ли фукнция преобразования даты прописью. Надо "ВОСЬМОЕ НОЯБРЯ ДВЕ ТЫСЯЧИ ОДИННАДЦАТОГО ГОДА"
pas
Профи


Вступление в Клуб: 20.11.2007
СообщениеВт Ноя 08, 2011 16:31    Ответить с цитатой
Полезность: 1
yaffil пишет:
П.С. может ещё кто знает есть ли фукнция преобразования даты прописью. Надо "ВОСЬМОЕ НОЯБРЯ ДВЕ ТЫСЯЧИ ОДИННАДЦАТОГО ГОДА"

::[RUNTIME].[TMC_REPORTS].get_month_str есть что то подобное.
На основе этого можно свое накатать.

или разбить дату на три переменных DD, MM, YYYY и сравнивать
если DD=01 то первое
...
если MM=01 то января
...
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеВт Ноя 08, 2011 17:46    Ответить с цитатой
Полезность: Нет оценки
Всем спасибо, Word заработал. Проблема была на форме в ValidateName, назвал данную переменную для вывода данных как в другой форме TextData.
Хотя так и не понял почему заработало, ведь в клиент скрипте такой переменной вообще нет, почему она именно к тому названию прилипла.

::[RUNTIME].[TMC_REPORTS].get_month_str - посмотрю завтра.
Volod
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеСр Ноя 09, 2011 08:26    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
назвал данную переменную для вывода данных как в другой форме TextData.
Хотя так и не понял почему заработало, ведь в клиент скрипте такой переменной вообще нет, почему она именно к тому названию прилипла.


MSWORD_SCRIPT
yaffil
Профи


Вступление в Клуб: 18.08.2011
СообщениеСр Ноя 09, 2011 15:25    Ответить с цитатой
Полезность: Нет оценки
Volod пишет:
MSWORD_SCRIPT


Спасибо. Там нашел
Код:

Call Form1.ScriptServerValidate( TextData, ReqvName )


Очень интересная реализация - искать конкретную переменную Shocked
maestro
Профи


Вступление в Клуб: 12.10.2010
СообщениеСр Ноя 09, 2011 15:45    Ответить с цитатой
Полезность: Нет оценки
yaffil пишет:
Volod пишет:
MSWORD_SCRIPT


Спасибо. Там нашел
Код:

Call Form1.ScriptServerValidate( TextData, ReqvName )


Очень интересная реализация - искать конкретную переменную Shocked


Мне лично тож не нравится постоянно дергать сервер, требуя точечное значение.

Можешь, как вариант, формировать массив параметров, передавать его на клиента, и уже больше не обращаться к серверу..

Но тут уже нужен творческий подход.. А стандартная технология формирования вордовских отчетов в ЦФТ ВОТ ТАКАЯ!
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru