|
|
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
Создаю прайс-лист в ворде с помощью OLE. При небольшом количестве записей все удовлетворительно работает, но при количестве записей больше 5000, работать все начинает очень медленно. Может быть кто нибудь наступал на подобные грабли и знает как это преодолеть. Мне кажется все проблема в распределении памяти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2006, 12:35 |
|
||
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
http://forum.foxclub.ru/read.php?32,177179,177221#msg-177221 Обрати внимание в какой момент выдается Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2006, 12:51 |
|
||
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
я делаю его видимым после того как весь докумень будет заполнен и отформатирован. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2006, 13:26 |
|
||
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
Попробуйте перегнать данные в буфер обмена, переключить раскладку на русский через API функции, открыть word и через paste передать данные в файл. Выигрыш во времени от 5 до 10 раз. Закомментировано формирование колонтитулов и форматирование листа, может пригодится. fontf="courier new" fontr=10 hlayout = loadkeyboardlayout(kbdru, 0) && переключение раскладки activatekeyboardlayout(hlayout, 0) SELECT _p1 clp='' GO TOP SCAN clp=clp+strk+CHR(13) && формируем готовый вид строки ENDSCAN *!* #DEFINE wdfielddate 31 *!* #DEFINE wdfieldtime 32 *!* #DEFINE wdfieldnumpages 26 *!* #DEFINE wdfieldpage 33 PUBL tword,odoc LOCAL tword AS WORD.APPLICATION tword = CREATEOBJECT("Word.application") odoc=tword.documents.ADD('normal', .T.) *!* tword.activewindow.activepane.VIEW.TYPE= 3 && wdPrintView *!* WITH tword.activedocument *!* WITH .pagesetup *!* .ORIENTATION =0 && wdOrientPortrait *!* .topmargin = 30 &&30 *!* .bottommargin = 30 &&30 *!* .leftmargin = 30 &&40 &&60 *!* .rightmargin = 30 &&30 && *!* ENDWITH *!* .RANGE.FONT.NAME =fontf &&"courier new" *!* .RANGE.FONT.SIZE =fontr &&10 *!* .SAVEAS(sb1) *!* ENDWITH *!* tword.activewindow.activepane.VIEW.seekview = 10 && wdSeekCurrentPageFooter *!* WITH tword.SELECTION *!* .FONT.SIZE =7 *!* .FONT.italic =1 *!* .typetext(CHR(13)) *!* .FIELDS.ADD(tword.SELECTION.RANGE,wdfielddate) *!* .typetext(' ') *!* .FIELDS.ADD(tword.SELECTION.RANGE,wdfieldtime) *!* .typetext(' ') *!* .FONT.bold=1 *!* ENDWITH *!* tword.normaltemplate.autotextentries("Ïîëíîå èìÿ ôàéëà").INSERT(tword.SELECTION.RANGE, .T.) *!* tword.SELECTION.FONT.bold=0 *!* tword.SELECTION.typetext(SPACE(100)) *!* tword.normaltemplate.autotextentries("Ñòð. <¹> èç <âñåãî>").INSERT(tword.SELECTION.RANGE,.T.) *!* tword.activewindow.activepane.VIEW.seekview = 9 && wdSeekCurrentPageHeader = 10 && wdSeekCurrentPageFooter *!* tword.SELECTION.FONT.bold =1 *!* tword.SELECTION.FONT.SIZE =fontr *!* twoRd.SELECTION.paragraphformat.ALIGNMENT = 1 && wdAlignParagraphCenter = 2 && wdAlignParagraphRight *!* FOR EACH a10 IN zag *!* IF !EMPTY(a10) *!* tword.SELECTION.typetext(a10+crlf) && ðèñóåì øàïêó èç ìàññèâà *!* ENDIF *!* ENDFOR *!* tword.activewindow.activepane.VIEW.seekview = 0 && wdSeekMainDocument óáðàòü ïàíåëü êîëîíòèòóëà *!* tword.activedocument.RANGE.FONT.bold =0 tword.SELECTION.paste *tword.activewindow.activepane.verticalpercentscrolled = 100 tword.activedocument.SAVE tword.QUIT hlayout = loadkeyboardlayout(kbden, 0) && переключение раскладки activatekeyboardlayout(hlayout, 0) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2006, 13:04 |
|
||
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
PaulWisthttp://forum.foxclub.ru/read.php?32,177179,177221#msg-177221 Обрати внимание в какой момент выдается Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2006, 08:32 |
|
||
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
Извиняюсь. Что-то не сработало. :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2006, 08:33 |
|
||
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
DaEVILСоздаю прайс-лист в ворде с помощью OLE. За это убивать надо (шутка). :) Прайс-лист НУЖНО делатьв Экселе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 09:32 |
|
||
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
А как его из Экселя интегрировать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2006, 21:45 |
|
||
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
AleksMed DaEVILСоздаю прайс-лист в ворде с помощью OLE. За это убивать надо (шутка). :) Прайс-лист НУЖНО делатьв Экселе. Дык если длинный прайс, и несильная машиня в экселе тоже долго... разве нет???? Не спорю в ВОРДе еще дольше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 09:17 |
|
||
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
dudochkinА как его из Экселя интегрировать? Не надо его ни с кем интегрировать. Он просто должен весь быть в Экселе. Для работы менеджера он погибче будет, чем Вордовский прайс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 09:31 |
|
||
|
Проблема с MS Word
|
|||
|---|---|---|---|
|
#18+
а genrep не пробовал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2006, 11:33 |
|
||
|
|

start [/forum/topic.php?fid=41&fpage=232&tid=1590670]: |
0ms |
get settings: |
6ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 215ms |
| total: | 354ms |

| 0 / 0 |
