Макросы VB в slk-отчетах
Модераторы: m0p3e, edward_K, Модераторы
Re: Макросы VB в slk-отчетах
И мне, если можно : AlexandrG@smw.ru
Заранее, благодарен!
Заранее, благодарен!
-
- Местный житель
- Сообщения: 783
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: Макросы VB в slk-отчетах
Судя по всему, файл отчета создается непосредственно в интерфейсе. А как можно скомпилить этот xls-файл, чтобы не пришлось в интерфейсе рисовать красивости, а можно их было нарисовать в самом xls (slk)-Файле и скомпилить его в ресурсник???
???
Если есть примеры, народ, поделитесь плиз!
???
Если есть примеры, народ, поделитесь плиз!
Re: Макросы VB в slk-отчетах
Дейнис, Ты соственно о чем?
xl* функции работают напрямую с excel-eм. OLE там и прочая лабуда.
slk. Создается файл определенного формата (slk) и по окаонцанию формирования открывается ёкселем.
В чем вопрос?
xl* функции работают напрямую с excel-eм. OLE там и прочая лабуда.
slk. Создается файл определенного формата (slk) и по окаонцанию формирования открывается ёкселем.
В чем вопрос?
-
- Местный житель
- Сообщения: 783
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: Макросы VB в slk-отчетах
Думаю, мой вопрос будет понятен, если я уточню, что ни разу не делал отчета в Slk или Rtf формате. Все что я сделал в этой своей земной жизни ( ) это один-единственный ard отчет, который имею желание выводить в Ёксель.
О формате slk знаю то, что в нем можно делать отчеты, просто скопировав туда построчно (по Ctrl+Ins) все, что написал в обычном текстовом файле и расставив выходные fields-ы каждый в свои ячейки с помощью "^". Тогда будет вызываться именно этот slk, то есть почти Эксель. В вышеприведенном фейсе от Bypasser видно, что xls-файл создается из самого интерфейса. А я хочу не просто его создать, а сделать там красивую шапку, красивое оформление. Это значит, что кроме функции создания на диске Ёксель-файла надо еще использовать кучу функций, которые обрамляют, раскрашивают в серый цвет то, что мне нужно и т.п. Если делать по-старинке, т.е. скопировать строки Ard-отчета в slk-файл, то там можно и обрамить и выделить и проч. И цифирки и слова разные будут выводиться в тот формат, который задан у ячеек этого файла в момент компиляции. Это я так думаю.
В этом же интерфейсе (от Bypasser), как я понимаю, ёксель-файл изначально не существует, а создается в момент работы отчета. Создается соответственно пустым потом его можно наполнять чем угодно, указывая непосредственные адреса ячеек. Ни тебе красивой шапочки, ни раскрасок никаких. Или же кроме rtf и slk можно еще и xls-файлы раскрасить, скопировать туда мой код из Ard и скомпилировать в res-файл, ? ???
О формате slk знаю то, что в нем можно делать отчеты, просто скопировав туда построчно (по Ctrl+Ins) все, что написал в обычном текстовом файле и расставив выходные fields-ы каждый в свои ячейки с помощью "^". Тогда будет вызываться именно этот slk, то есть почти Эксель. В вышеприведенном фейсе от Bypasser видно, что xls-файл создается из самого интерфейса. А я хочу не просто его создать, а сделать там красивую шапку, красивое оформление. Это значит, что кроме функции создания на диске Ёксель-файла надо еще использовать кучу функций, которые обрамляют, раскрашивают в серый цвет то, что мне нужно и т.п. Если делать по-старинке, т.е. скопировать строки Ard-отчета в slk-файл, то там можно и обрамить и выделить и проч. И цифирки и слова разные будут выводиться в тот формат, который задан у ячеек этого файла в момент компиляции. Это я так думаю.
В этом же интерфейсе (от Bypasser), как я понимаю, ёксель-файл изначально не существует, а создается в момент работы отчета. Создается соответственно пустым потом его можно наполнять чем угодно, указывая непосредственные адреса ячеек. Ни тебе красивой шапочки, ни раскрасок никаких. Или же кроме rtf и slk можно еще и xls-файлы раскрасить, скопировать туда мой код из Ard и скомпилировать в res-файл, ? ???
-
- Местный житель
- Сообщения: 474
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Сибирь-матушка
- Контактная информация:
Re: Макросы VB в slk-отчетах
Деинис, раскрасить, скопировать код ты сможешь - но без толку, компилятор не поймет . Компилятор форм понимает открытые структурированные форматы RTF,SLK и текстовые(кстати, если нужны красивости с раскраской и даже картинками - то то обычную текстовую форму можно при определенном знании синтаксиса HTML переделать и просматривать в любом инет-браузере).
Вот бы полное описание функций нарыть - в DLL-ке их куча , а в доке некоторых нет
Вот бы полное описание функций нарыть - в DLL-ке их куча , а в доке некоторых нет
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
Re: Макросы VB в slk-отчетах
Дейнис.
Правильно. Файл не существует. Формируется в момент выполнения фейса. Разукрасить можно как угодно. Ну или почти как угодно. slk бедный родственник по сравнению с тем функционалом, что дают xl* функции.
Туманов О.В.
ИМХО, многие функции промежуточные.
ЗЫ Заметил что при выводе большого объема данных тормозится отчет. ( xl* ). Есть у кого-нибудь наработки? Например
26 столбцов
27000 строк
около часа. 30% заполнения формулы.
Правильно. Файл не существует. Формируется в момент выполнения фейса. Разукрасить можно как угодно. Ну или почти как угодно. slk бедный родственник по сравнению с тем функционалом, что дают xl* функции.
Туманов О.В.
ИМХО, многие функции промежуточные.
ЗЫ Заметил что при выводе большого объема данных тормозится отчет. ( xl* ). Есть у кого-нибудь наработки? Например
26 столбцов
27000 строк
около часа. 30% заполнения формулы.
-
- Местный житель
- Сообщения: 517
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Новосибирск Новосибирск
- Контактная информация:
Re: Макросы VB в slk-отчетах
для быстрого вывода юзайте матричные функции
XLCREATEMATRIX
XLCLEARMATRIX
XLFREEMATRIX
XLSTWRITETOMATRIX
XLDOWRITETOMATRIX
XLREADFROMMATRIX
XLWRITEMATRIXTOEXCEL
XLREADMATRIXFROMEXCEL
26 столбцов
27000 строк - формирование 3 минуты
правда выводил данные не из базы, а в цикле
и красоту всякую ими не получится навести, но данные и формулы выводить советую только ими - реально раз в 10 быстрее выводится.
по поводу заготовки - кто мешает создать пустой xls файл шаблон, где и параметры страницы задать и шапку сваять - потом открыть с помощью xlCreateExcelWithTemplate и работать уже с ним (всё быстрее получится, чем эту же шапку xls функциями выводить, а параметры страницы макросами настраивать)
полным описанием ф-ий никто не разжился ?
XLCREATEMATRIX
XLCLEARMATRIX
XLFREEMATRIX
XLSTWRITETOMATRIX
XLDOWRITETOMATRIX
XLREADFROMMATRIX
XLWRITEMATRIXTOEXCEL
XLREADMATRIXFROMEXCEL
26 столбцов
27000 строк - формирование 3 минуты
правда выводил данные не из базы, а в цикле
и красоту всякую ими не получится навести, но данные и формулы выводить советую только ими - реально раз в 10 быстрее выводится.
по поводу заготовки - кто мешает создать пустой xls файл шаблон, где и параметры страницы задать и шапку сваять - потом открыть с помощью xlCreateExcelWithTemplate и работать уже с ним (всё быстрее получится, чем эту же шапку xls функциями выводить, а параметры страницы макросами настраивать)
полным описанием ф-ий никто не разжился ?
[url=http://blog.gtalex.ru]Блог GTAlex[/url]
-
- На пенсии
- Сообщения: 797
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: г. Тюмень
- Контактная информация:
Re: Макросы VB в slk-отчетах
Используя макросы скорость увеличивается в 1,5-2 раза, все что ты формировал за 3 минуты, сделать можно за ~1,5-2 минуты
Жду выхода Вселенная 2.12!
-
- Местный житель
- Сообщения: 517
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Новосибирск Новосибирск
- Контактная информация:
Re: Макросы VB в slk-отчетах
допустим так - но если выводить данные не в цикле, как я делал для изучения скорости, а реальные данные из базы - как сюда приплести макросы ?
[url=http://blog.gtalex.ru]Блог GTAlex[/url]
-
- На пенсии
- Сообщения: 797
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: г. Тюмень
- Контактная информация:
Re: Макросы VB в slk-отчетах
секрет фирмы - псевдокоманды, которые распознает твой макрос
Жду выхода Вселенная 2.12!
Re: Макросы VB в slk-отчетах
Использование матрикс-функций на больших объемах данных дает ускорение в 50-150 раз. Когда получил инфу от разработчика не поверил. Когда проверил дико удивился...