DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: B T

⟦b82ad1b62⟧ TextFile

    Length: 4633 (0x1219)
    Types: TextFile
    Names: »B«

Derivation

└─⟦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⟧ 

TextFile

separate (Tracker.Report_Generator.All_Elmnt_Status_Rep)

procedure Print_El is
    ----------------------------------------------------------------------
    --|  NAME:  PRINT_EL
    --|
    --|  OVERVIEW:
    --|    This report prints out an element to the report file.  If the
    --|    element has more than one person assigned to it, one additional
    --|    line is printed for each extra person.  This line lists only the
    --|    initials of the person assigned and the percent complete by
    --|    activity.  If the person is not assigned to a particular activity,
    --|    a '*' is printed in that column.
    --|
    --|  EXCEPTIONS HANDLED:
    --|    none
    --|
    --|  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
    Set_Col (Report_File, 2);
    Put (Report_File, Ele_Ptr.Milestone_Num, 2);
    Set_Col (Report_File, 5);
    Put (Report_File, Ele_Ptr.Priority, 2);
    Set_Col (Report_File, 8);
    Put (Report_File, Ele_Ptr.Subsystem_Name);
    Set_Col (Report_File, 20);
    Put (Report_File, Ele_Ptr.Description);
    Set_Col (Report_File, 56);
    Put (Report_File, Ele_Ptr.Desc_Key);

    if not Ele_Ptr.More_Than_One_Person then
        Set_Col (Report_File, 63);
        Put (Report_File, Ele_Ptr.Person_Initials);
        Set_Col (Report_File, 67);

        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, 63);
        Put (Report_File, Ele_Ptr.People_Initials (1));
        Set_Col (Report_File, 67);

        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, 91);
    Put (Report_File, Ele_Ptr.Original_Size, 6);
    Set_Col (Report_File, 100);
    Put (Report_File, Ele_Ptr.Current_Size, 6);
    Set_Col (Report_File, 109);
    Put (Report_File, Ele_Ptr.Current_Size - Ele_Ptr.Size_Done_At_Start, 6);
    Set_Col (Report_File, 117);
    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, 127);
    Put (Report_File, Ele_Ptr.Complexity, 2, 3, 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, 63);
            Put (Report_File, Ele_Ptr.People_Initials (Next_Person));

            -- print out the activity percent complete for this person
            Set_Col (Report_File, 67);

            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);
end Print_El;