Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 12.03.2013, 14:45
HeavyHairy HeavyHairy вне форума
Прохожий
 
Регистрация: 12.03.2013
Сообщения: 2
Репутация: 10
По умолчанию Ошибка при компиляции

Дорогие друзья! Очень нужна ваша помощь. Делфи сообщает о множестве ошибок. Я делал всё, основываясь на вот этой статье http://basicsprog.ucoz.ru/blog/2011-11-14-11
Помогите, пожалуйста, может я чего то не догоняю, но всё вроде правильно, от чего могут быть ошибки? Вот код
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, ADODB, DBCtrls;

type
  TForm1 = class(TForm)
    DBLookupComboBox1: TDBLookupComboBox;
    DBLookupComboBox2: TDBLookupComboBox;
    DBLookupComboBox3: TDBLookupComboBox;
    DBLookupComboBox4: TDBLookupComboBox;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    kladr_raion: TADOQuery;
    kladr_gorod: TADOQuery;
    kladr_street: TADOQuery;
    ADOConnection1: TADOConnection;
    region_source: TDataSource;
    raion_source: TDataSource;
    gorod_source: TDataSource;
    street_source: TDataSource;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    kladr_region: TADOQuery;
    procedure DBLookupComboBox1CloseUp(Sender: TObject);
    procedure DBLookupComboBox2CloseUp(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.DBLookupComboBox1CloseUp(Sender: TObject);
begin
 street.Active:=false;
 kladr_gorod.Active:=false;
 kladr_raion.Active:=false;
 kladr_raion.SQL.Clear;
 kladr_raion.Parameters.AddParameter.Name:='a';
 kladr_raion.ParamByName('a').DataType:=ftWideString;
 kladr_raion.Parameters.AddParameter.Name:='b';
 kladr_raion.ParamByName('b').DataType:=ftWideString;
 kladr_raion.Parameters.AddParameter.Name:='c';
 kladr_raion.ParamByName('c').DataType:=ftWideString;
 kladr_raion.SQL.Add('SELECT *');
 kladr_raion.SQL.Add('FROM KLADR');
 kladr_raion.SQL.Add('WHERE(((KLADR.CODE Like:a Or KLADR.CODE Like:c))And Not((KLADR.CODE) like:b));');
 kladr_raion.Parameters.ParamByName('a').Value:=copy(region_source.DataSet.FieldByName('CODE').Value,1,2)+'___000000__';
 kladr_raion.Parameters.ParamByName('b').Value:=copy(region_source.DataSet.FieldByName('CODE').Value,1,2)+'000000000__';
 kladr_raion.Parameters.ParamByName('c').Value:=copy(region_source.DataSet.FieldByName('CODE').Value,1,2)+'000________';
 kladr_raion.Active:=true;
 street.Active:=false;
 street.SQL.Clear;
 street.Parameters.AddParameter.Name:='a';
 street.Parameters.ParamByName('a').DataType:=ftWideString;
 street.SQL.Add('SELECT *')
 street.SQL.Add('FROM STREET');
 street.SQL.Add('WHERE(((STREET.CODE) Like:a));');
 street.Parameters.ParamByName('a').Value:=copy(region_source.DataSet.FieldByName('CODE').Value,1,11)+'______';
 street.Active:=true;
end;

procedure TForm1.DBLookupComboBox2CloseUp(Sender: TObject);
begin
street.Active:=false;
kladr_gorod.Active:=false;
if copy(raion_source.DataSet.FieldByName('CODE').Value,3,3)<>'000' then
begin
kladr_gorod.SQL.Clear;
kladr_gorod.Parameters.AddParameter.Name:='a';
kladr_gorod.Parameters.ParamByName('a').DataType:=ftWideString;
kladr_gorod.Parameters.AddParameter.Name:='b';
kladr_gorod.Parameters.ParamByName('b').DataType:=ftWideString;
kladr_gorod.SQL.Add('SELECT *');
kladr_gorod.SQL.Add('FROM KLADR');
kladr_gorod.SQL.Add('WHERE ((KLADR.CODE Like :a And Not ((KLADR.CODE) Like :b)));');
kladr_gorod.Parameters.ParamByName('a').Value:=copy(raion_source.DataSet.FieldByName('CODE').Value,1,5)+'________';
kladr.gorod.Parameters.ParamByName('b').Value:=copy(raion_source.DataSet.FieldByName('CODE').Value,1,5)+'000000__';
kladr_gorod.Active:=true;
end;
street.Active.false;
stree.SQL.Clear;
street.Parameters.AddParameter.Name:='a';
street.Parameters.ParamByName('a').DataType:=ftWideString;
street.SQL.Add('SELECT *');
street.SQL.Add('FROM STREET');
street.SQL.Add('WHERE (((STREET.CODE) Like :a));');
street.Parameters.ParamByName('a').Value:=copy(raion_source.DataSet.FieldByName('CODE').Value,1,11)+'______';
street.Active:=true;
end;
Админ: Пользуемся тегами для оформления кода!

Последний раз редактировалось Admin, 12.03.2013 в 14:47.
Ответить с цитированием
  #2  
Старый 12.03.2013, 15:52
Аватар для BBBCat
BBBCat BBBCat вне форума
Новичок
 
Регистрация: 10.03.2013
Сообщения: 73
Репутация: 10
По умолчанию

А кто такой street? Помощь тебе вообще не нужна. Не всё сделал, основываясь на статье Просто пройдись по коду, поставь точки с запятой, объекты используй объявленные и т.д. "end." в конце поставь в конце концов (во у меня какой стиль письма! ) Повнимательнее просто посмотри на код. Неужели Delphi не прописывает причину ошибок компиляции???

Последний раз редактировалось BBBCat, 12.03.2013 в 16:26.
Ответить с цитированием
  #3  
Старый 12.03.2013, 16:25
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Цитата:
Сообщение от BBBCat
А кто такой street?
Очевидно Query.

street.Active.false; заменить на street.Active := false; ну и объявить его разумеется.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #4  
Старый 12.03.2013, 16:27
Аватар для BBBCat
BBBCat BBBCat вне форума
Новичок
 
Регистрация: 10.03.2013
Сообщения: 73
Репутация: 10
По умолчанию

Цитата:
Сообщение от M.A.D.M.A.N.
Очевидно Query.

street.Active.false; заменить на street.Active := false; ну и объявить его разумеется.

Да нет у него никакого street, в том-то и фикус. Стопудово это kladr_street.
Ответить с цитированием
  #5  
Старый 12.03.2013, 16:49
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Давали бы за такие темы по доллару, можно было бы обогатиться.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #6  
Старый 12.03.2013, 17:12
HeavyHairy HeavyHairy вне форума
Прохожий
 
Регистрация: 12.03.2013
Сообщения: 2
Репутация: 10
По умолчанию

Заменил street на kladr_street, компилятор выдаёт ошибки "Undeclared identifier "ParamByName"" и "Missing operator or semicolon"
Ответить с цитированием
  #7  
Старый 12.03.2013, 17:15
Аватар для BBBCat
BBBCat BBBCat вне форума
Новичок
 
Регистрация: 10.03.2013
Сообщения: 73
Репутация: 10
По умолчанию

О боже! Ведь надо было просто внимательно пройтись по коду. Я понятия не имею, что делает эта программа, но у меня при компиляции она даже хинтов не выдала.
Код:
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, ADODB, DBCtrls;
 
type
  TForm1 = class(TForm)
    DBLookupComboBox1: TDBLookupComboBox;
    DBLookupComboBox2: TDBLookupComboBox;
    DBLookupComboBox3: TDBLookupComboBox;
    DBLookupComboBox4: TDBLookupComboBox;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    kladr_raion: TADOQuery;
    kladr_gorod: TADOQuery;
    kladr_street: TADOQuery;
    ADOConnection1: TADOConnection;
    region_source: TDataSource;
    raion_source: TDataSource;
    gorod_source: TDataSource;
    street_source: TDataSource;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    kladr_region: TADOQuery;
    procedure DBLookupComboBox1CloseUp(Sender: TObject);
    procedure DBLookupComboBox2CloseUp(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.DBLookupComboBox1CloseUp(Sender: TObject);
begin
 kladr_street.Active:=false;
 kladr_gorod.Active:=false;
 kladr_raion.Active:=false;
 kladr_raion.SQL.Clear;
 kladr_raion.Parameters.AddParameter.Name:='a';
 kladr_raion.Parameters.ParamByName('a').DataType:=ftWideString;
 kladr_raion.Parameters.AddParameter.Name:='b';
 kladr_raion.Parameters.ParamByName('b').DataType:=ftWideString;
 kladr_raion.Parameters.AddParameter.Name:='c';
 kladr_raion.Parameters.ParamByName('c').DataType:=ftWideString;
 kladr_raion.SQL.Add('SELECT *');
 kladr_raion.SQL.Add('FROM KLADR');
 kladr_raion.SQL.Add('WHERE(((KLADR.CODE Like:a Or KLADR.CODE Like:c))And Not((KLADR.CODE) like:b));');
 kladr_raion.Parameters.ParamByName('a').Value:=copy(region_source.DataSet.FieldByName('CODE').Value,1,2)+'___000000__';
 kladr_raion.Parameters.ParamByName('b').Value:=copy(region_source.DataSet.FieldByName('CODE').Value,1,2)+'000000000__';
 kladr_raion.Parameters.ParamByName('c').Value:=copy(region_source.DataSet.FieldByName('CODE').Value,1,2)+'000________';
 kladr_raion.Active:=true;
 kladr_street.Active:=false;
 kladr_street.SQL.Clear;
 kladr_street.Parameters.AddParameter.Name:='a';
 kladr_street.Parameters.ParamByName('a').DataType:=ftWideString;
 kladr_street.SQL.Add('SELECT *');
 kladr_street.SQL.Add('FROM STREET');
 kladr_street.SQL.Add('WHERE(((STREET.CODE) Like:a));');
 kladr_street.Parameters.ParamByName('a').Value:=copy(region_source.DataSet.FieldByName('CODE').Value,1,11)+'______';
 kladr_street.Active:=true;
end;
 
procedure TForm1.DBLookupComboBox2CloseUp(Sender: TObject);
begin
kladr_street.Active:=false;
kladr_gorod.Active:=false;
if copy(raion_source.DataSet.FieldByName('CODE').Value,3,3)<>'000' then
begin
kladr_gorod.SQL.Clear;
kladr_gorod.Parameters.AddParameter.Name:='a';
kladr_gorod.Parameters.ParamByName('a').DataType:=ftWideString;
kladr_gorod.Parameters.AddParameter.Name:='b';
kladr_gorod.Parameters.ParamByName('b').DataType:=ftWideString;
kladr_gorod.SQL.Add('SELECT *');
kladr_gorod.SQL.Add('FROM KLADR');
kladr_gorod.SQL.Add('WHERE ((KLADR.CODE Like :a And Not ((KLADR.CODE) Like :b)));');
kladr_gorod.Parameters.ParamByName('a').Value:=copy(raion_source.DataSet.FieldByName('CODE').Value,1,5)+'________';
kladr_gorod.Parameters.ParamByName('b').Value:=copy(raion_source.DataSet.FieldByName('CODE').Value,1,5)+'000000__';
kladr_gorod.Active:=true;
end;
kladr_street.Active:=false;
kladr_street.SQL.Clear;
kladr_street.Parameters.AddParameter.Name:='a';
kladr_street.Parameters.ParamByName('a').DataType:=ftWideString;
kladr_street.SQL.Add('SELECT *');
kladr_street.SQL.Add('FROM STREET');
kladr_street.SQL.Add('WHERE (((STREET.CODE) Like :a));');
kladr_street.Parameters.ParamByName('a').Value:=copy(raion_source.DataSet.FieldByName('CODE').Value,1,11)+'______';
kladr_street.Active:=true;
end;
end.
Кстати, действительно не разбирался в коде. Проверь логику после моих исправлений.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 11:31.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter