Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Delphi +Interbase


Автор: Lagarto 14.4.2009, 13:29
Возникла проблема вывода данных в dbgrid и stringgrid на главной форме приложения. Если кто набирал данное приложение просьба помочь с решением этой проблемы или если же остались исходники кинуть на мыло lagarto_87@mail.ru

Автор: Akella 14.4.2009, 13:46
щас, так все и разбежались кидать на мыло smile 



Цитата(Lagarto @  14.4.2009,  13:29 Найти цитируемый пост)
Возникла проблема вывода данных в dbgrid и stringgrid на главной форме приложения. 

Ты покажи, как и что делал, а мы попытаемся помочь.

Автор: Данкинг 14.4.2009, 13:46
Цитата(Lagarto @  14.4.2009,  14:29 Найти цитируемый пост)
по книги Шпака SQL как дважды два

При чём тут IB и FB?

Цитата(Lagarto @  14.4.2009,  14:29 Найти цитируемый пост)
Возникла проблема вывода данных в dbgrid и stringgrid на главной форме приложения.

Прискорбно. Сочувствую. smile Главное, чтобы на подчинённой форме аналогичной проблемы не возникло.

Цитата(Lagarto @  14.4.2009,  14:29 Найти цитируемый пост)
Если кто набирал данное приложение 

Чего делал? smile Что набирал? smile Какое приложение? smile 

Цитата(Lagarto @  14.4.2009,  14:29 Найти цитируемый пост)
или если же остались исходники кинуть на мыло lagarto_87@mail.ru 

А если исходников не осталось, то на какое мыло их кинуть? smile 



Автор: Akella 14.4.2009, 13:47
Цитата(Lagarto @  14.4.2009,  13:29 Найти цитируемый пост)
Возникла проблема

Ты подожди совсем немого, щас телепаты подтянутся и угадают твою проблему!!! Далеко не убегай smile

Добавлено через 1 минуту
Lagarto, а тебе не стыдно, будущему программисту, за такое название темы безграмотное?

Добавлено через 2 минуты и 14 секунд
Ага, как раз хорошо, что ты мыло в открытом виде оставил. Щас ещё и спамеры подтянуццо smile  smile  smile 

Автор: Lagarto 14.4.2009, 17:07
Akella 

в sringgrid выводиться так , но вывода не происходит

Cells[1,1] := FieldByName('DeptShortName').AsString;

Автор: Данкинг 14.4.2009, 17:16
Цитата(Lagarto @  14.4.2009,  18:07 Найти цитируемый пост)
в sringgrid выводиться так , но вывода не происходит

Если вся твоя программа состоит из этой одной строчки, то вывода и не произойдёт. smile 
А что - совсем ничего не происходит, да? smile 

Автор: Keeper89 15.4.2009, 00:04
Цитата(Данкинг @  14.4.2009,  17:16 Найти цитируемый пост)
Если вся твоя программа состоит из этой одной строчки, то вывода и не произойдёт. smile 
А что - совсем ничего не происходит, да? smile 

 smile посмешил, спасиба

Вы толком скажите, что у вас делает приложение, и код приведите. Здесь не гильдия магов.  smile  smile  smile 

Автор: Akella 15.4.2009, 10:05
дам немогополный ответ.

Цитата(Lagarto @  14.4.2009,  17:07 Найти цитируемый пост)
Akella 

в sringgrid выводиться так , но вывода не происходит

Cells[1,1] := FieldByName('DeptShortName').AsString;


во первых так:
Код
SringGrid1.Cells[1,1] := FieldByName('DeptShortName').AsString;

Во второых
по идее в коде  ошибки нет, но... как тебе уже сказали.... эта одна строка неизвестно как и в какой момент присваивает значение поля DeptShortName

Далее. Неизвестно что, находится в поле DeptShortName активной записи набора данных, может там действительно пусто. Поставь точку останова и проверь.

Ну и если уж ты заполняешь SringGrid ручками в цикле, то давай сюда весь код. Иначе трудно гадать, в чём ошибка.

А я пока перенесу тему в Delphi+базы данных smile 

Автор: Lagarto 20.4.2009, 19:19
Код


procedure TfmMain.dsStaffDataChange(Sender: TObject; Field: TField);
begin
  with dmStaff_.sidsStaffMid, sgData do
  begin
    paCount.Caption := IntToStr(RecNo) + '/' +
      IntToStr(RecordCount);
    paCount.Caption := IntToStr(RecNo) + '/' +
    IntToStr(RecordCount);
    btnDeleteEmp.Enabled := RecNo > 0;
    btnEmpData.Enabled := btnDeleteEmp.Enabled;
    pmiDeleteEmp.Enabled := btnDeleteEmp.Enabled;
    pmiEmpData.Enabled := btnEmpData.Enabled;
    Cells[0,0] := 'Должностные данные';
    Cells[0,1] := 'Подразделение';
    Cells[0,2] := 'Должность';
    Cells[0,3] := 'Табельный номер';
    Cells[0,4] := 'Зарплата';
    Cells[0,5] := 'Личные данные';
    Cells[0,6] := 'Дата рождения';
    Cells[0,7] := 'Место рождения';
    Cells[0,8] := 'идентификационный код';
    Cells[0,9] := 'Паспорт';
    Cells[0,10] := 'Выдан';
    Cells[0,11] := 'Адрес';
    Cells[0,12] := 'Индекс';
    Cells[0,13] := 'Область/край';
    Cells[0,14] := 'Район';
    Cells[0,15] := 'Населенный пункт';
    Cells[0,16] := 'Улица, номер дома';
    Cells[0,17] := 'Телефон';
    Cells[1,1] := FieldByName('DeptShortName').AsString;
    Cells[1,2] := FieldByName('PosShortName').AsString;
    Cells[1,3] := FieldByName('TabNum').AsString;
    Cells[1,4] := FloatToStrF(FieldByName('Salary').AsFloat,ffCurrency, 15, 2);
    if FieldByName('BirthDate').IsNull
    then Cells[1,6] := ''
    else Cells[1,6] := DateToStr(FieldByName('BirthDate').AsDateTime);
    Cells[1,7] := FieldByName('BornPlace').AsString;
    Cells[1,8] := FieldByName('IdCode').AsString;
    if FieldByName('PasspNum').isNull
    then begin
      cells[1,9] := '';
      cells[1,10] := '';
    end else
    begin
      cells[1,9] :=
      FieldByName('PasspNum').AsString + ' от ' +
                     DateToStr(FieldByName('PasspDate').AsDateTime);
      cells[1,10] := FieldByName ('PasspOrg').AsString;
    end;
    Cells[1,12] := IntToStr(FieldByName('Zip').AsInteger);
    Cells[1,13] := FieldByName('Area').AsString;
    Cells[1,14] := FieldByName('Region').AsString;
    Cells[1,15] := FieldByName('City').AsString;
    Cells[1,15] := FieldByName('Street').AsString + ', '+
    FieldByName('House').AsString;
    Cells[1,17] := FieldByName('Tel').AsString;
  end;
end;


где sidsStaffMid - компонент tsimpledataset (dataset.commandtext ='select * from fulllist') fullist - представление которое прописано в ib
sgData - stringgrid

присоединил исходники и базу

Автор: Lagarto 21.4.2009, 07:04
в верхнем сообщении я уже пытался решить проблему вывода, но в изночальном варианте было так

Код

procedure TfmMain.dsStaffDataChange(Sender: TObject; Field: TField);
begin
  with dmStaff_.sidsStaff, sgData do
...


где sidsStaff - компонент tsimpledataset (dataset.commandtext ='select * from fulllist') fullist - представление которое прописано в ib

а, sidsstaffmid - это компонент tsimpledataset (dataset.commandtext ='select * from staff') staff - таблица

ниже прикрепил отредактированный исходник

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)