Показать сообщение отдельно
  #1  
Старый 15.01.2010, 12:56
Vl@dimir Vl@dimir вне форума
Прохожий
 
Регистрация: 15.01.2010
Сообщения: 1
Репутация: 10
По умолчанию Здравствуйте помогите пожалуйста, заморочился на ровном месте.

На запущеннном приложении, при открытии формы вылетает ошибка
raised exception class EAccessViolation with message 'Access violation at address 004D62D6 in module 'PolicyMove.exe'. Read of address 00000000'

Это если на запускаемой форме есть код:
Код:
procedure TfrmGRDSAddEdt.FormCreate(Sender: TObject);
begin
  qSeries.Open; <- Ошибка
//  qPolicy.Open;
  if oUnit.IsADD then
  begin
//    ClearFields;
//    DisableControls;
  end;
  if oUnit.IsEDT then
  begin
    fldSeries.KeyValue := oUnit.Series_Id;
    fldNumber.Text     := oUnit.PolicyNum;
  end;
  CreateQuery(qPolicy); 
end;

Сама форма запускаеться следующим образом:
procedure TfrmGRDS.NEdtClick(Sender: TObject);
begin
  if not View.IsEmpty then
  begin
    if not RLock(tnPolicy, View.KeyValue) then Exit;
    oUnit.Id        := View.KeyValue;
    oUnit.Series_Id := View.FieldValues['Series_Id'];
    oUnit.PolicyNum := View.FieldValues['PolicyNum'];
//    Sys.CreateModalForm(TfrmGRDSAddEdt, frmGRDSAddEdt);
    Application.CreateForm(TfrmGRDSAddEdt, frmGRDSAddEdt);
    frmGRDSAddEdt.Visible := False; 
    frmGRDSAddEdt.ShowModal;
  end
  else
  begin
    InfoMes('Нет записей для изменения.');
  end;
end;
Admin: Пользуемся тегами!

ПС. Воспользуйся отладчиком, посмотри значение переменных, место где возникает ошибка и т.п.
Ответить с цитированием