Показать сообщение отдельно
Старый 28.05.2004, 15:49   #1  
Кирилл
Гость
 
n/a
;) Excel быстрый вывод
Вывод целой строкой много обсуждался, но готового рецепта я не нашел.
После экспериментов выкладываю работающий вариант (а то не по себе уже стало, что все спрашиваю, а пользы сообществу аксаптеров не приношу).
Это для еще более начинающих чем я.

PHP код:
Переменнные:
    
ComExcelDocument_RU     doc;
    
int  CurRow;
    array 
arr = new array (types::class);

Кусок кода с выводом таблицы:

CurRow с какой строки начинаем выводить
while select Таблица1
{
      
// Допустим хотим вывести 11 полей строчного типа
      
arr.value(1,COMVariant::createFromStr(Таблица1.Поле1));
      ...
      
arr.value(11,COMVariant::createFromStr(Таблица1.Поле11));
      
// в  COMVariant есть много всяких  createFrom, так что можно свои типы подобрать
      // или сначала в строку преобразовать

      // Сам вывод целой строки (с первой колонки ) 
      // этот кусок кода был в осуждении _http://www.axforum.info/forums/showthread.php?s=&threadid=1957 (только без пояснений)
     
doc.findRange(strfmt("A%1:",CurRow) +
     
COMExcelDocument_RU::numToNameCell(Arr.lastIndex(),CurRow)).value2
     
(COMVariant::createFromArray(Arr));

      
CurRow++;
//while select Таблица1 
У меня строк 300 секунд за 30 выводилось, а если с форматированием ячеек, то помедленнее.