Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.12.2011, 16:15   #1
mansuetudo
Пользователь
 
Регистрация: 08.11.2011
Сообщений: 46
По умолчанию В excel выгружаются не все строки запроса

Добрый день. Помогите пожалуйста разобраться.
1) выбираю запросом данные из таблиц;
2) результат запроса выгружаю в excel.
Поставщик данных - Microsoft OLE DB Provider for SQL Server.
В процессе выгрузки оказывается, что из 411 выбранных строк загружается только 155. Никаких ошибок не выдаётся, файл создайтся, но данные содержит не все. Запрос проверяла отдельно через Enterprise Manager - отрабатывает нормально.

Текст запроса:
Код:
SQL.Add('select o.dte, c.cathedra, l.name, o.class 
 from equipment e, orderofequipment o, cathedra c, lecturers l 
  where (e.name='+QuotedStr(Text)+') 
     and (e.id=o.itemid) 
     and (o.lecturerid=l.id) 
     and (l.cathedraid=c.id) 
     and (o.dte between '+QuotedStr(D1)+' and '+QuotedStr(D2)+') 
 order by l.name');
Здесь QuotedStr(Text) - значение, выбираемое из списка на форме, а QuotedStr(D1) и QuotedStr(D2) - даты.

Текст программы - заполнение отчёта данными запроса:
Код:
RepQuery.First;
 for j:=0 to RepQuery.RecordCount-1 do begin
  for i:=0 to RepQuery.FieldCount-1 do begin
//   RepExcel.Rows[j+4].Font.Name:='Times New Roman';
   RepExcel.Cells[j+4,i+1].value:=TrimRight(RepQuery.Fields.Fields[i].AsString);
  end;
  RepQuery.Next;
 end;
RepQuery - TADOQuery.

Подозреваю, что, может, что-то не учла на стадии заполнения файла данными, но вот что? С формированием отчёта в excel разбиралась на основании примеров с форума. Самостоятельно найти решение проблемы не получается, подскажите пожалуйста, в чём может быть дело. Заранее спасибо.
mansuetudo вне форума Ответить с цитированием
Старый 08.12.2011, 11:28   #2
mansuetudo
Пользователь
 
Регистрация: 08.11.2011
Сообщений: 46
По умолчанию

Всё. Разобралась сама. Ошибка была в объявлении переменных цикла - взяла этот кусок из примера и не обратила внимание, что тип переменных byte. Замена на integer полностью решила вопрос.
mansuetudo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Импорт перекрестного запроса в Excel VNZ Microsoft Office Excel 4 18.10.2011 22:27
Даны строки S и S0. Удалить из строки S все подстроки, совпадающие с S0 . Если совпадающих подстрок нет, Шпунюся Помощь студентам 1 16.12.2010 21:02
поля запроса в excel Окоча Юра Microsoft Office Excel 1 27.08.2010 14:36
Как удалить все строки в Excel содержащие.. Dux Microsoft Office Excel 15 11.09.2009 04:41
Значение 1С запроса в на лист Excel GoodFellow Microsoft Office Excel 0 12.03.2008 13:13