|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 4696 (0x1258)
Types: TextFile
Names: »B«
└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
└─⟦5cb1d1d7f⟧ »DATA«
└─⟦3b1ee7bd8⟧
└─⟦this⟧
separate (Tracker.Report_Generator.List_By_Milestone)
procedure Print_An_Element is
----------------------------------------------------------------------
--| NAME: PRINT_AN_ELEMENT
--|
--| OVERVIEW:
--| This procedure prints out an element line. This line of data
--| includes the remaining man-hours of work to complete this
--| element, the original size, the current size, the complexity, and
--| the remaining man-hours of work to completion.
--|
--| EXCEPTIONS HANDLED:
--| others an error message is printed and execution continues
--|
--| HISTORY:
--| written by Bonnie Burkhardt March 1985
----------------------------------------------------------------------
All_Pr_Printed : constant array (1 .. Num_Of_Activities) of Boolean :=
(others => True);
Pr_Printing_Done : array (1 .. Num_Of_Activities) of Boolean :=
(others => False);
Next_Person : Integer range 1 .. Num_Of_Activities := 1;
Done : Boolean := True;
begin
-- print out element
Set_Col (Report_File, 2);
Put (Report_File, Ele_Ptr.Priority, 2);
Set_Col (Report_File, 5);
Put (Report_File, Ele_Ptr.Subsystem_Name);
Set_Col (Report_File, 17);
Put (Report_File, Ele_Ptr.Description);
Set_Col (Report_File, 53);
Put (Report_File, Ele_Ptr.Desc_Key);
if not Ele_Ptr.More_Than_One_Person then
Set_Col (Report_File, 60);
Put (Report_File, Ele_Ptr.Person_Initials);
Set_Col (Report_File, 64);
for Ac_Index in 1 .. Num_Of_Activities loop
Put (Report_File, Convert
(Ele_Ptr.Activity_Completeness (Ac_Index)));
Put (Report_File, ' ');
end loop;
else
-- print out the first person assigned
Set_Col (Report_File, 60);
Put (Report_File, Ele_Ptr.People_Initials (1));
Set_Col (Report_File, 64);
for Ac_Index in 1 .. Num_Of_Activities loop
if Ele_Ptr.People_Initials (Ac_Index) =
Ele_Ptr.People_Initials (1) then
Put (Report_File,
Convert (Ele_Ptr.Activity_Completeness (Ac_Index)));
Put (Report_File, ' ');
Pr_Printing_Done (Ac_Index) := True;
else
Put (Report_File, "* ");
end if;
end loop;
end if;
Set_Col (Report_File, 85);
Put (Report_File, Ele_Ptr.Original_Size, 6);
Set_Col (Report_File, 94);
Put (Report_File, Ele_Ptr.Current_Size, 6);
Set_Col (Report_File, 103);
Put (Report_File, Ele_Ptr.Current_Size - Ele_Ptr.Size_Done_At_Start, 6);
Set_Col (Report_File, 110);
Put (Report_File, Ele_Ptr.Date_Size_Verified.Month, 2);
Put (Report_File, '/');
Put (Report_File, Ele_Ptr.Date_Size_Verified.Day, 2);
Put (Report_File, '/');
Put (Report_File, Ele_Ptr.Date_Size_Verified.Year mod 100, 2);
Set_Col (Report_File, 119);
Put (Report_File, Ele_Ptr.Complexity, 3, 2, 0);
Set_Col (Report_File, 126);
Put (Report_File, Ele_Ptr.Hours_To_Complete, 5, 1, 0);
New_Line (Report_File);
-- print out additional lines if the element is assigned to more than
-- one person
if Ele_Ptr.More_Than_One_Person then
loop
Done := True;
for Ac_Index in 1 .. Num_Of_Activities loop
Done := Done and Pr_Printing_Done (Ac_Index);
end loop;
exit when Done;
-- find the next person to be printed
Next_Person := 1;
while Pr_Printing_Done (Next_Person) loop
Next_Person := Next_Person + 1;
end loop;
Set_Col (Report_File, 60);
Put (Report_File, Ele_Ptr.People_Initials (Next_Person));
-- print out the activity percent complete for this person
Set_Col (Report_File, 64);
for Ac_Index in 1 .. Num_Of_Activities loop
if Ele_Ptr.People_Initials (Ac_Index) =
Ele_Ptr.People_Initials (Next_Person) then
Put (Report_File,
Convert (Ele_Ptr.Activity_Completeness (Ac_Index)));
Put (Report_File, ' ');
Pr_Printing_Done (Ac_Index) := True;
else
Put (Report_File, "* ");
end if;
end loop;
Line_Count := Line_Count + 1;
New_Line (Report_File);
end loop;
end if;
Pr_Printing_Done := (others => False);
exception
when others =>
Put_Line ("exception raised in MS PRINT_AN_ELEMENT");
end Print_An_Element;