separate (Tracker.Report_Generator.List_By_Milestone)


procedure Print_Ms_Total is
    ----------------------------------------------------------------------
    --|  NAME:  PRINT_MS_TOTAL
    --|
    --|  OVERVIEW:
    --|    This procedure prints out the total statics for a milestone. This
    --|    includes the total remaining man-hours of work to complete this
    --|    milestone, the total original size, the total current size, and
    --|    the average complexity.
    --|
    --|  EXCEPTIONS HANDLED:
    --|    others   an error message is printed and execution continues
    --|
    --|  HISTORY:
    --|    written by   Bonnie Burkhardt   March 1985
    ----------------------------------------------------------------------

begin
    -- underline columns
    Set_Col (Report_File, 84);
    Put (Report_File, Header_Lines (84 .. 132));
    New_Line (Report_File);

    -- print totals
    Set_Col (Report_File, 74);
    Put (Report_File, "TOTALS");
    Set_Col (Report_File, 84);
    Put (Report_File, Tot_Orig, 7);
    Set_Col (Report_File, 93);
    Put (Report_File, Tot_Currnt, 7);
    Set_Col (Report_File, 102);
    Put (Report_File, Tot_Eq_New, 7);

    if Ele_In_Ms > 0 then
        Set_Col (Report_File, 119);
        Put (Report_File, Tot_Cpxy / Float (Ele_Count), 3, 2, 0);
    end if;

    Set_Col (Report_File, 125);
    Put (Report_File, Tot_Hours, 6, 1, 0);
    New_Line (Report_File);

    -- reset counters
    Ele_Count := 0;
    Tot_Currnt := 0;
    Tot_Eq_New := 0;
    Tot_Orig := 0;
    Tot_Cpxy := 0.0;
    Tot_Hours := 0.0;
exception
    when others =>
        Put_Line ("exception raised in PRINT_MS_TOTAL");
end Print_Ms_Total;