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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.01.2011, 11:45   #1
sergiucz
 
Регистрация: 31.01.2009
Сообщений: 5
По умолчанию Работа с QuickReport!

Всем привет!
У меня такая ситуация.
Не получается выводить в превиев ту запись которую нахожу с Locate.

Начну по порядку.
У меня есть пару таблиц. Нахожу их и выбираю так. (Это кусок поискового кода)
Код:
If FindFirst('C:\juris\bazele\resp\*.dbf', faAnyFile, SearchRec)=0 then
 repeat
table1.Active:=false;
nume:=SearchRec.Name;
delete(nume,length(nume)-21,22);
{ //stergerea caracterelor ".dbf"
delete(nume,length(nume)-3,4);    }
table1.DatabaseName:='C:\juris\bazele\resp\';
table1.TableName:=nume;
table1.Active:=true;
table1.First;
i:=0;
mc:=0;
tnum:=table1.FieldByName('IDNP');
while not table1.Eof do begin
 mc:=length(tnum.AsString);
 tnume:=tnum.AsString;
 delete(tnume,length(ed3)+1,mc);

if ed3=tnume then  begin
i:=i+1;
AdvStringGrid1.AddRow;
AdvStringGrid1.Cells[0,i]:=table1.FieldByName('NUMELE').AsString;
AdvStringGrid1.Cells[1,i]:=table1.FieldByName('PRENUMELE').AsString;
AdvStringGrid1.Cells[2,i]:=table1.FieldByName('IDNP').AsString;
AdvStringGrid1.Cells[3,i]:=nume;

end;
 table1.Next;

end;

until FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;
и добавляю в стринггрид. Из стринг грида уже сохраняю данные в текст фаил.
Код:
procedure Tcautdeb.AdvStringGrid1DblClickCell(Sender: TObject; ARow,
  ACol: Integer);
  var nume,prenume,idnp,baza:string;
   f:textfile;
begin
nume:=AdvStringGrid1.Cells[0,Arow];
prenume:=AdvStringGrid1.Cells[1,Arow];
idnp:=AdvStringGrid1.Cells[2,Arow];
baza:=AdvStringGrid1.Cells[3,Arow];
if (nume='') and (prenume='') and (idnp='') and (baza='') then ShowMessage('Lista este goala!Mai incercati o data!')
else begin
assignfile(f,'c:\juris\curdeb.jur');
rewrite(f);
writeln(f,nume);
writeln(f,prenume);
writeln(f,idnp);
writeln(f,baza);
closefile(f);
vizdeb.show;
end;
end;
Потом загружаю эти данные из фаила в другую форму

и там есть битбуттон и я там вывожу printer.QuickRep1.Preview;

в форме принт.
Код:
var nume,prenume,idnp,baza:string;
f:textfile;
begin
if FileExists('c:\juris\curdeb.jur') then  begin
assignfile(f,'c:\juris\curdeb.jur');
reset(f);
readln(f,nume);
readln(f,prenume);
readln(f,idnp);
readln(f,baza);
closefile(f);
delete(baza,length(baza)-3,4);
table1.Active:=false;
table1.DatabaseName:='C:\juris\bazele\resp\';
table1.TableName:=baza+'.dbf';
table1.Active:=true;
Поиск я делаю так
Код:
if (nume<>'')and (prenume<>'')and(idnp<>'')and (baza<>'') then   begin
Table1.Locate('NUMELE;PRENUMELE;IDNP',VarArrayOf([nume,prenume,idnp]),[loCaseInsensitive, loPartialKey]);

QuickRep1.DataSet:=Table1;
QuickRep1.Bands.HasDetail:=true;
QRDBText1.DataField:='NUMELE';
QRDBImage1.DataField:='IMAGE';
Проблема в том что , показывает не ту запись которую записалась через DBLclik из СТринг грида.
Есть кокието идеей?

Последний раз редактировалось Stilet; 08.01.2011 в 11:48.
sergiucz вне форума Ответить с цитированием
Старый 08.01.2011, 11:52   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Есть кокието идеей?
Для начала срочно учить Русский язык.
Во-вторых, Locate находит первую из совпадающих. С чего ты решил что запись, которую ты дописываешь уже не имеется в таблице?
В-третьих, как можно что-то сказать не видя таблицы? Одни догадки.
Да и потом, где видно как твой QReport настроен? На какой набор данных.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 08.01.2011, 12:19   #3
sergiucz
 
Регистрация: 31.01.2009
Сообщений: 5
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Для начала срочно учить Русский язык.
Во-вторых, Locate находит первую из совпадающих. С чего ты решил что запись, которую ты дописываешь уже не имеется в таблице?
В-третьих, как можно что-то сказать не видя таблицы? Одни догадки.
Да и потом, где видно как твой QReport настроен? На какой набор данных.
Дорогой Белик Виталий

Я русский язык сам учил, и уже 5-6 лет не разговаривал на нем.
Извини за неграмотность.

Я выложу весь код программы.
http://uploadbox.com/files/829521ae5d/

надо разахивировать на диск C:\
sergiucz вне форума Ответить с цитированием
Старый 08.01.2011, 17:42   #4
sergiucz
 
Регистрация: 31.01.2009
Сообщений: 5
Печаль

Да я знаю что Локате тока первую найдёт. Но мне это и надо.
Локате позиционируется на эту запись как я помню.

Других совпадении и не будет потому что я ищу по 3 критериями.
и 3 критерии это персональный код из паспорта.

я об другом. Вот локате нашел запись и позиционировался на эту запись.
а почему Quick Report. Дает другую запись.
sergiucz вне форума Ответить с цитированием
Старый 08.01.2011, 18:31   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Дорогой Белик Виталий
Дорогой, извини не знаю по имени отчеству, автор. На будущее - я очень рекомендую не использовать сторонних компонентов в программе, она становится труднопереносимой. Толку от того что ты залил программу если я и думаю многие здесь не могут ее открыть поскольку ты на форме использовал нестандартный компонент.
Цитата:
Других совпадении и не будет потому что я ищу по 3 критериями.
и 3 критерии это персональный код из паспорта.
Ага. Призрачная надежда

Теперь по теме - проверяй на что у тебя настроен QReport, на что настроены его компоненты. Между прочим отчетные компоненты не всегда подчиняются общим правилам BDE компонентов, потому что их задача вывести отчет зачастую полностью.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.01.2011, 15:33   #6
sergiucz
 
Регистрация: 31.01.2009
Сообщений: 5
По умолчанию

Нашел ответ!
Огромное спасибо !!
sergiucz вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
QuickReport Romich41 БД в Delphi 1 04.01.2011 03:11
Quickreport WALL БД в Delphi 3 30.10.2010 16:08
QuickReport Trech Общие вопросы Delphi 1 26.09.2008 04:15
Quickreport 4.05 dars73 Помощь студентам 0 02.12.2007 18:40
QuickReport zzss БД в Delphi 2 23.10.2007 18:06