Вопросы по работе с MS Word из Clarion 6.0
Добавлено: 26 Январь 2013, 10:39
Здравствуйте Все.
На Кларионе пишу давно, но очень периодически. Ole никогда не применял до этого случая. Поэтому ответы, если можно , разжуйте побольше
Из Clarion 6.0 данные выводятся в шаблон word/
За основу взял пример Андрея Попова
loc:WordFileName='C:\atest.doc'
d=DAY(today())&MONTH(today())&YEAR(today())
loc:SaveWordFileName='C:\atest '&d&' .doc'
feqOLE=create(0,CREATE:Ole)
feqOLE{Prop:Create}='Word.Application'
feqOLE{Prop:ReportException}=TRUE
feqOLE{'Visible'}=1
feqOLE{'Documents.Open("'&clip(loc:WordFileName)&'")'}
loc:FindStr='[DATA:obr]'
loc:ReplaceString=SPS:obr !строка из базы
feqOLE{'Selection.Find.ClearFormatting'}
feqOLE{'Selection.Find.Replacement.ClearFormatting'}
feqOLE{'Application.Selection.Find.Execute("'&clip(loc:FindStr)&'", , , , , , 1, 1, , "'&clip(loc:ReplaceString)&'", 2)'}
На этом уровне все работает, но есть вопросы:
1. Где мне найти описание, например, строки
feqOLE{'Application.Selection.Find.Execute("'&clip(loc:FindStr)&'", , , , , , 1, 1, , "'&clip(loc:ReplaceString)&'", 2)'}
А то никак не понимаю почему "это" является поиском и заменой метки до конца документа.
2. Нужно вставить большой текст (например 1000 символов). Один из путей - срастить несколько string из базы.
Как это будет выглядеть? Какие варианты еще есть? Ну там BLOB может можно использовать?
Просто в интернете встретил инфу об ограничении ReplaceString в 256 символов
3. В Шаблоне есть таблица.
Нужно добавлять строки.
Можно поставить в последнюю ячейку метку и имитировать нажатие Tab.
Но как? Или есть более простой путь?
Где скачать шаблоны SoftMasters не нашел. Может с ними было бы все проще
На Кларионе пишу давно, но очень периодически. Ole никогда не применял до этого случая. Поэтому ответы, если можно , разжуйте побольше
Из Clarion 6.0 данные выводятся в шаблон word/
За основу взял пример Андрея Попова
loc:WordFileName='C:\atest.doc'
d=DAY(today())&MONTH(today())&YEAR(today())
loc:SaveWordFileName='C:\atest '&d&' .doc'
feqOLE=create(0,CREATE:Ole)
feqOLE{Prop:Create}='Word.Application'
feqOLE{Prop:ReportException}=TRUE
feqOLE{'Visible'}=1
feqOLE{'Documents.Open("'&clip(loc:WordFileName)&'")'}
loc:FindStr='[DATA:obr]'
loc:ReplaceString=SPS:obr !строка из базы
feqOLE{'Selection.Find.ClearFormatting'}
feqOLE{'Selection.Find.Replacement.ClearFormatting'}
feqOLE{'Application.Selection.Find.Execute("'&clip(loc:FindStr)&'", , , , , , 1, 1, , "'&clip(loc:ReplaceString)&'", 2)'}
На этом уровне все работает, но есть вопросы:
1. Где мне найти описание, например, строки
feqOLE{'Application.Selection.Find.Execute("'&clip(loc:FindStr)&'", , , , , , 1, 1, , "'&clip(loc:ReplaceString)&'", 2)'}
А то никак не понимаю почему "это" является поиском и заменой метки до конца документа.
2. Нужно вставить большой текст (например 1000 символов). Один из путей - срастить несколько string из базы.
Как это будет выглядеть? Какие варианты еще есть? Ну там BLOB может можно использовать?
Просто в интернете встретил инфу об ограничении ReplaceString в 256 символов
3. В Шаблоне есть таблица.
Нужно добавлять строки.
Можно поставить в последнюю ячейку метку и имитировать нажатие Tab.
Но как? Или есть более простой путь?
Где скачать шаблоны SoftMasters не нашел. Может с ними было бы все проще