|
|
|
Открытие экселя из TMemoryStream
|
|||
|---|---|---|---|
|
#18+
Доброе утро. Вы простите, случаем не клон? А-то у нас один товарищ есть, почти Ваш тёзка. > Можно поподробнее на счет " или можно делать CreateOleObject, но раньше"? Если я правильно понял о чём Вы - то вызвать CreateOleObject, что создаст экземпляр сервера, в который и "зальётся" документ из потока. Вы лучше опишите Вашу задачу и приведите код. P.S. Бессмертная тема, ей-Богу, даже в личку по поводу неё писали. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2019, 09:17 |
|
||
|
Открытие экселя из TMemoryStream
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам, да я вроде человек. Про тезку не в курсе. То есть OleLoad "заливает" объект содержащийся в FStorage в первый попавшийся ему экземпляр сервера? Задача: Имеется шаблон XLS который хранится в базе данных. Необходимо для конкретного документа заполнить шаблон значениями и сохранить на диск. Ранее это было реализовано через сохранение шаблона на диск во временный каталог пользователя с последующим FExcelApp:= CreateOleObject('Excel.Application'); FExcelApp.Workbooks.Add(FileNameXLS); Наткнулся на эту тему и захотел переделать. Код ниже не дает желаемого эффекта. после FExcelApp := StreamToExcel(filestream); в FExcelApp экземпляр сервера с пустой книгой. Как заставить OleLoad залить содержимое хранилища в открытый экземпляр сервера? Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2019, 13:01 |
|
||
|
Открытие экселя из TMemoryStream
|
|||
|---|---|---|---|
|
#18+
Владимир Золотарёв> Задача: Имеется шаблон XLS который хранится в базе данных. Владимир Золотарёв> Необходимо для конкретного документа заполнить шаблон значениями Тупо берёте код из приведённого примера и подставляете в него BLOBToExcel(ВашаBLOBStreamПеременная). Всё. Владимир Золотарёв> после FExcelApp := StreamToExcel(filestream); Владимир Золотарёв> в FExcelApp экземпляр сервера с пустой книгой. Значит, Вы что-то сделали неправильно, там должен быть Ваш шаблон. Владимир Золотарёв> Как заставить OleLoad залить содержимое хранилища в открытый экземпляр сервера? В один из нескольких открытых или как? И в уже открытую книгу или создать новую? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2019, 13:57 |
|
||
|
Открытие экселя из TMemoryStream
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам Тупо берёте код из приведённого примера и подставляете в него BLOBToExcel(ВашаBLOBStreamПеременная). Всё. Собственно почти так и сделал авторЗначит, Вы что-то сделали неправильно, там должен быть Ваш шаблон. Код: pascal 1. 2. 3. 4. 5. 6. В result пустая книга. Если OleLoad "заливает" объект содержащийся в FStorage в первый попавшийся ему экземпляр сервера то где-то ошибка. Вот понять где не могу. Вроде все верно написано. авторВ один из нескольких открытых или как? И в уже открытую книгу или создать новую? В один конкретный. Который создался через Код: pascal 1. авторИ в уже открытую книгу или создать новую? Это не критично. Книгу можно и до этого создать. Можно в новую, можно в активную. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2019, 14:25 |
|
||
|
Открытие экселя из TMemoryStream
|
|||
|---|---|---|---|
|
#18+
Владимир Золотарёв> Собственно почти так и сделал Если у меня работает, а у Вас нет - значит, не так. > В один конкретный. Который создался через В конкретный - без доп.телодвижений не получится. > Книгу можно и до этого создать. Можно в новую, можно в активную. В уже существующую загрузить шаблон (или книгу) - точно не получится, ибо сам Эксель такого не умеет. Скопировать в том или ином виде - можно, но после. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2019, 15:32 |
|
||
|
Открытие экселя из TMemoryStream
|
|||
|---|---|---|---|
|
#18+
Так на чём Вы остановились? С пом. BLOBToExcel не получилось? А-то НГ на носу, не до Вас будет. :) Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2019, 12:26 |
|
||
|
Открытие экселя из TMemoryStream
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам, Увы, пока не получилось. Сейчас разбираюсь с IPersistStorage. По сути OleLoad c ним же и работает. После праздников постараюсь сделать тестовый пример с BLOBToExcel, что бы было легче понять чего нет у меня и есть у вас. Спасибо за помощь и с наступающим. ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2019, 18:01 |
|
||
|
Открытие экселя из TMemoryStream
|
|||
|---|---|---|---|
|
#18+
Владимир Золотарёв Увы, пока не получилось. После праздников постараюсь сделать тестовый пример с BLOBToExcel Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. работает ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2019, 13:40 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39907728&tid=2038723]: |
0ms |
get settings: |
4ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
204ms |
get topic data: |
20ms |
get forum data: |
3ms |
get page messages: |
77ms |
get tp. blocked users: |
2ms |
| others: | 203ms |
| total: | 534ms |

| 0 / 0 |
