I have bar series in which I want to set the marks style that contains both the series title and the actual value of the bar. Here's my code :
procedure TFRDept.PopulateDeptChart;
var
    Loop ,YearIndex: integer;
    DeptKey: String;
    StartBar, TotalBar, EndBar : TBarSeries;
begin
    for Loop := 0  to FDeptList.Count -1 do
    begin
        DeptKey := FDeptList.ValueFromIndex[Loop];
        StartBar :=  GetInsertedBarSeries(DeptKey+'Start', 'Start', clGreen);
        TotalBar :=  GetInsertedBarSeries(DeptKey+'Total', 'Total', clBlue);
        EndBar   :=  GetInsertedBarSeries(DeptKey+'End', 'End', clRed);
        with Dataset do
        begin
            if Locate('o_deptaddressno',DeptKey,[]) then
            begin
                While (FieldByName('o_deptaddressno').AsString = DeptKey) and not eof do
                begin
                    StartBar.AddXY(FieldByName('o_year').AsInteger,
                                                FieldByName('o_totalstart').AsInteger,
                                                FieldByName('o_year').AsString,
                                                StartBar.Color);
                   {when adding series per year for each department - the bars are not one after the other}
                    //TotalBar := GetInsertedBarSeries(DeptKey+'Total'+FieldByName('o_year').AsString, siLang.GetTextOrDefault('IDS_TOTAL'), clBlue);
                    TotalBar.AddXY(FieldByName('o_year').AsInteger,
                                                    FieldByName('o_total').AsInteger,
                                                    FieldByName('o_year').AsString,
                                                    TotalBar.Color);
                    TotalBar.Title := FieldByName('o_total').AsString + ': '+ FDeptList.Names[Loop];
                    TotalBar.Marks.Style := smsSeriesTitle;
                    TotalBar.Marks.ArrowLength := 50;
                    TotalBar.Marks.Callout.ArrowHead := ahSolid;
                    EndBar.AddXY(FieldByName('o_year').AsInteger,
                                                FieldByName('o_totalEnd').AsInteger,
                                                FieldByName('o_year').AsString,
                                                EndBar.Color);
                    Next;
                end;
            end;
        end;
    end;
    SetSeriesLegendProperties;
end;
function TFRDept.GetInsertedBarSeries(aName, aTitle: String;
  aColor: TColor): TBarSeries;
begin
    Result := TBarSeries.Create(Self);
    with Result do
    begin
        Name := 'Series' + aName;
        Title := aTitle;
        Color := aColor;
        Marks.Style := smsValue;
    end;
    Chart1.AddSeries(Result);
end;
My code generates the following bar but the values for the blue bar are not getting the appropriate values in the marks.
 Actually, my goal is to display the respective departments above each series of bars(red,green and blue). I even opted for an alternative way by trying to modify the legend with 'symbols on draw' but the event didn't trigger. Is there a possibility to display the symbols in the legend of style lsSeriesGroups with checkboxes? Then I could also set the Totalbar :
Actually, my goal is to display the respective departments above each series of bars(red,green and blue). I even opted for an alternative way by trying to modify the legend with 'symbols on draw' but the event didn't trigger. Is there a possibility to display the symbols in the legend of style lsSeriesGroups with checkboxes? Then I could also set the Totalbar :
Marks.Symbol.Visible :=  True;

 
                        
This works fine for me using this code:
Did you assgin it? For example:
There's a complete example at All Features\Welcome!\Miscellanoeus\Legend\Symbol OnDraw in the features demo available at TeeChart's program group.
I'm afraid this is not supported. Please feel free to add your features requests at Steema Software's bugzilla. The code snippet above produces this chart for me: