Поиск:

Ответ в темуСоздание новой темы Создание опроса
> DBgrid, DataSet, Excel 
:(
    Опции темы
Пепс
Дата 30.10.2012, 09:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 13.1.2012

Репутация: нет
Всего: нет



файл прикрепил, надеюсь поможете разобраться smile 

Присоединённый файл ( Кол-во скачиваний: 2 )
Присоединённый файл  Книга1.rar 9,64 Kb
PM MAIL   Вверх
xvr
Дата 30.10.2012, 11:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Да, действительно урезано  smile 
Проверьте, что вы действительно пытаетесь пометить в Excel полные строки. Станьте дебагером на Cur.OlePropertySet("Value",Str.w_str()); и посмотрите, что у вас лежит в Str

PM MAIL   Вверх
Пепс
Дата 30.10.2012, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 13.1.2012

Репутация: нет
Всего: нет



присоединил скрин - данные передаются нормальные.
попробовал Cur.OlePropertySet("Value",Str.data()); - в каждой ячейке выгрузил "ИСТИНА" smile 

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  Новый_рисунок.jpg 122,57 Kb
PM MAIL   Вверх
xvr
Дата 30.10.2012, 21:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Странно это. Все должно работать  smile 
Попробуйте убрать присваивание в Cur.OlePropertySet("NumberFormat","@");
Еще можно попробовать записать через проперть Text (вместо Value)

PM MAIL   Вверх
Мишистик
Дата 30.10.2012, 22:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 30.10.2012

Репутация: нет
Всего: нет



  Уважаемые форумчане  подскажить  почему не работает запроос

    AnsiString q;
    ADOQuery1->Close();
    q=" SELECT row_number() over(ORDER BY id_comp, trip_no) num, trip_no, id_comp  ";
    q+= "  FROM trip  WHERE ID_comp<3 ORDER BY id_comp, trip_no";
    ADOQuery1->SQL->Clear();  ADOQuery1->SQL->Add(q);
    //  ADOQuery1->ExecSQL();
      ADOQuery1->Open();
   
           Появляется сообщение что пропущен оператор помогите разобраться
           а то с запросами слабовато. Зарание благодарен!!!
 
PM MAIL   Вверх
xvr
Дата 31.10.2012, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Цитата(Мишистик @  30.10.2012,  22:22 Найти цитируемый пост)
подскажить  почему не работает запроос

Видимо не понимает часть row_number() over(ORDER BY id_comp, trip_no) (я ее то же не понимаю  smile )

PM MAIL   Вверх
Пепс
Дата 31.10.2012, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 13.1.2012

Репутация: нет
Всего: нет



Цитата(xvr @ 30.10.2012,  21:38)
Странно это. Все должно работать  smile 
Попробуйте убрать присваивание в Cur.OlePropertySet("NumberFormat","@");
Еще можно попробовать записать через проперть Text (вместо Value)

убирал NumberFormat - отрезает строку
Text - пишет ошибку записи в ячейку (видимо, определяет как пустую строку)
ваще уже одолела smile

Добавлено @ 13:14
тут есть такая строка
Код

XLSAPP.OlePropertyGet("Range", "A1:K1000").OlePropertySet("WrapText", false);

WrapText - это перенос строки, менял значение истины на ложь и обратьно, комметнировал эту инструкцию - нифига,, все также
Я так понимаю, что приложуха передает все нормально, а уже эксель (свойство ячейки) подрезает строку.
я пробовал передать строковую константу "дповалопрщлащшилдвоазщуоро" - отображает только первые слева 16 символов.
какие еще идеи? smile 

Это сообщение отредактировал(а) Пепс - 31.10.2012, 13:18
PM MAIL   Вверх
xvr
Дата 31.10.2012, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Цитата(Пепс @  31.10.2012,  13:09 Найти цитируемый пост)
какие еще идеи?

Увы, идей больше нет. Для очистки совести - попробуйте записать Cur.OlePropertySet("Value",L"'591145001"), что получится?


Это сообщение отредактировал(а) xvr - 31.10.2012, 19:47
PM MAIL   Вверх
Мишистик
Дата 31.10.2012, 20:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 30.10.2012

Репутация: нет
Всего: нет



Разобрался row_number() over(ORDER BY id_comp, trip_no) в Builder6 ее просто нет функция работает в PHP Подскажите кто знает как запросом пронумеровать строки .  Пока в просторах инета ничего не нашлось. Пробовал создать вычисляемое поле типа avtoinc  геморойно и не надежно .



PM MAIL   Вверх
Мишистик
Дата 31.10.2012, 20:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 30.10.2012

Репутация: нет
Всего: нет



Нумеруются перебором   ADOQuery1->Next(); но это долгая песня
много записей >1000. 
PM MAIL   Вверх
Пепс
Дата 1.11.2012, 05:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 13.1.2012

Репутация: нет
Всего: нет



Цитата(xvr @  31.10.2012,  19:46 Найти цитируемый пост)
591145001

В каждой ячейке пишет ИСТИНА smile 

PM MAIL   Вверх
xvr
Дата 1.11.2012, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 48
Всего: 223



Цитата(Пепс @  1.11.2012,  05:32 Найти цитируемый пост)
В каждой ячейке пишет ИСТИНА smile 

Это сильно  smile Может ему Unicode строки не нравятся? Попробуйте Cur.OlePropertySet("Value","'591145001") (без буквы L)

PS. Builder'ы всегда не давали скучать програмистам - баги в них очень чудные и всегда в самых неожиданных местах  smile И то, что оно теперь не Borland и не Builder ситуацию не изменило - как говорится, стабильность - признак мастерства  smile 

PM MAIL   Вверх
Пепс
Дата 1.11.2012, 12:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 13.1.2012

Репутация: нет
Всего: нет



 smile 
без L все отображается ништяк!!!!!!!!!!!!!
как теперь код изменить?
PM MAIL   Вверх
Пепс
Дата 16.11.2012, 07:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 13.1.2012

Репутация: нет
Всего: нет



проблему помогли решить на соседнем форуме -  WideString(Str):
Код

 if(asText)Cur.OlePropertySet("NumberFormat","@");//Форматировать ячейку как текст
   Cur.OlePropertySet("Value",WideString(Str));

PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0930 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.