1 (edited by Игоревич 2016-06-08 05:17:42)

Topic: Подскажите пож. что в этом скрипте не так.

Кто силен в скриптах подскажите пож где в скрипте ошибка. Пытаюсь построить график, скрипт выдает ошибку "failed TabObekt"

procedure FormGlavn_bBarUpdate_OnClick (Sender: string; var Cancel: boolean);

   var
    Results: TDataSet;
    //DateValue: Double;
    TabObektValue: string;
    ZadachaValue: string;
    QtyValue: string;
    x: integer;
begin
    ChartBar.Series[0].Clear;
    x := 0;

    SQLQuery('SELECT TabObekt.Ob_name,TabOtkaz.id FROM TabOtkaz LEFT OUTER JOIN TabObekt ON TabOtkaz.id_TabObekt=TabObekt.id WHERE '+
             'date(Date) >= date('+FormGlavn.dtFrom.sqlDate+') AND '+
             'date(Date) <= date('+FormGlavn.dtTo.sqlDate+') GROUP BY Ob_name', Results);

    while not Results.Eof do
    begin
        TabObektValue := Results.FieldByName('TabObekt').asString;
        QtyValue := Results.FieldByName('count(*)').asString;

        if ValidInt(QtyValue) then ChartBar.Series[0].AddXY(x, StrToInt(QtyValue), TabObektValue);
        Inc(x);
        Results.Next;
    end;
end;

Re: Подскажите пож. что в этом скрипте не так.

        TabObektValue := Results.FieldByName('TabObekt').asString;
        QtyValue := Results.FieldByName('count(*)').asString;

Вы пытаетесь получить значения полей, которых нет в запросе. В вашем SQL запросе есть только поля Ob_name и id

Dmitry.