Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос

iloer

  • 2
    вклад
  • 2
    вопроса
  • 7
    ответов
  • 29%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Как удалить динамически созданные компоненты Delphi fmx?

    iloer @iloer
    Вполне себе все удаляется
    var
      pArray: array[0..10] of TPanel;
    procedure TForm2.Button1Click(Sender: TObject);
    var
      I: Integer;
      panel: TPanel;
    begin
            for I := 0 to 9 do
            begin
              Panel:=Tpanel.create(form2);
              Panel.parent:=Vertscrollbox1;
              pArray[i] := panel;
            end;
    end;
    
    procedure TForm2.Button2Click(Sender: TObject);
    var
      I: Integer;
    begin
      for I := 0 to 9 do
            begin
              FreeAndNil(pArray[i]);
            end;
    end;
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Какого типа данных должна быть переменная?

    iloer @iloer
    Входной параметр должен быть того же типа что и используемый Query,
    (для FireDAC - TFDQuery
    для BDE - TQuery
    для dbgo - TADOQuery - )
    Ответ написан более трёх лет назад
    15 комментариев
    15 комментариев
  • Какой метод создания форм правильнее?

    iloer @iloer
    Если форма главная (MainForm) то её нужно инициализировать с помощью Application.CreateForm(TForm1, Form1);
    для всех остальных особой разницы в инициализации не будет, можно создавать любым удобным методом.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Связь таблиц в TADOQuery?

    iloer @iloer
    Ну вообще SQL-запросы писать иногда приходится.<Сарказм>
    А если по делу, то я так понимаю что это связанно с вашим вторым вопросом Как связать таблицы в ADOQuery в Delphi?
    и так как у ADOQuery нет свойства MasterSource то и реализуемая вами связь Master-Detail работать не будет.
    Попробуйте использовать более актуальные компоненты доступа к данным, такие как FireDac(AnyDac) или UniDac.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как связать таблицы в ADOQuery в Delphi?

    iloer @iloer
    Для главной таблицы обработайте событие AfterScroll, примерно так:

    Master query
    select id, Article, name from Goods

    Detail query
    select * from GoodProp where goodId=:id

    procedure TForm1.ADOQuery1AfterScroll(DataSet: TDataSet);
    begin
      ADOQuery2.Close;
      ADOQuery2.Parameters[0].Value := ADOQuery1.FieldByName('id').Value;
      ADOQuery2.Open;
    end;


    Попробуйте как-то так
    Ответ написан более трёх лет назад
    9 комментариев
    9 комментариев
  • С помощью какого инструмента отображать динамические элементы в Delphi?

    iloer @iloer
    Попробуй использовать библиотеку GDI+
    www.delphikingdom.com/asp/viewitem.asp?catalogid=772
    www.bilsen.com/gdiplus/index.shtml
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как составить SQL - запрос, правильно на объявление данных в базе *dbf?

    iloer @iloer
    ну во первых
    dmContanierIcon.quAdmissionProduct.SQL.Text := 'UPDATE dbt_AdmissionProduct SET p_id = '+IntToStr(varFirstRecId)+' WHERE p_product = "'+varArticleUpdateId+'"';

    было бы корректнее записать как:
    dmContanierIcon.quAdmissionProduct.SQL.Text := UPDATE dbt_AdmissionProduct SET p_id = :varFirstRecId WHERE p_product = :varArticleUpdateId;
    dmContanierIcon.quAdmissionProduct.ParamByName('varFirstRecId').AsInteger := varFirstRecId;
    dmContanierIcon.quAdmissionProduct.ParamByName('varArticleUpdateId').AsString := varArticleUpdateId;
    dmContanierIcon.quAdmissionProduct.ExecSQL;


    а по поводу ошибки, то зачем вам после Update делать Next? метод ExecSQL не возвращает Dataset. об этом Delphi вам и сообщает.
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
Оценили как «Нравится»
Самые активные сегодня
  • vabka
    Василий Банников
    • 6 ответов
    • 0 вопросов
  • Drno
    • 6 ответов
    • 0 вопросов
  • scoffs
    Семён Окулов
    • 5 ответов
    • 0 вопросов
  • Justa Gain
    • 4 ответа
    • 0 вопросов
  • Debian KDE
    • 2 ответа
    • 2 вопроса
  • delphinpro
    Сергей delphinpro
    • 4 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации