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

⟦59712edc9⟧ TextFile

    Length: 4109 (0x100d)
    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

with Io;
with String_Utilities;
with Time_Utilities;
with Calendar;
with Table_Formatter;
with Work_Order_Implementation;
separate (Cm_Generic)
procedure Show_Work_Orders (For_Work_List : String := ">>WORK LIST<<") is
    package Tb is new Table_Formatter (6);
    package Woi renames Work_Order_Implementation;
    use Woi;

    List_Path : constant String := Work_Order_Path & '.' & For_Work_List;

    List_Handle : Woi.Work_Order_List_Handle;
    List_Id     : Woi.Work_Order_List_Id;
    List_Status : Woi.Status;

    procedure Visit (Value : Work_Order_Id) is
        use Work_Order_Operations;

        Order_Handle       : Woi.Work_Order_Handle;
        Status             : Woi.Status;
        Number_Of_Versions : Natural;

        procedure Visit (The_Configuration : Configuration_Object;
                         The_Element       : Element_Name;
                         The_Generation    : Generation;
                         The_Time          : Calendar.Time) is

            use Time_Utilities;
        begin
            Tb.Item ("");
            Tb.Item ("");
            Tb.Item (The_Element);
            Tb.Item (Integer'Image (The_Generation));
            Tb.Item (Time_Utilities.Image
                        (Time_Utilities.Convert_Time (The_Time),
                         Day_Month_Year, Military));
            Tb.Item ("");

        end Visit;
        procedure Look_At_Versions is
           new Work_Order_Operations.Traverse_Versions (Visit);

    begin
        Work_Order_Control.Open (The_Work_Order => Value,
                                 The_Handle     => Order_Handle,
                                 Success        => Status,
                                 Mode           => Read);
        if Status = 0 then
            declare
                Full_Name    : constant String :=
                   Work_Order_Control.Full_Name (Order_Handle);
                Dot          : Natural := String_Utilities.Reverse_Locate
                                             ('.', Full_Name) + 1;
                Order_Status : Work_Order_Operations.Status_Enumeration;
            begin
                Tb.Item (Full_Name (Dot .. Full_Name'Last));
                Work_Order_Operations.Get_Status (The_Order => Order_Handle,
                                                  Result    => Order_Status,
                                                  Success   => Status);

                Tb.Item (Work_Order_Operations.Status_Enumeration'Image
                            (Order_Status));
                Tb.Item ("");
                Tb.Item ("");
                Tb.Item ("");
                Tb.Item (Work_Order_Operations.Get_Notes
                            (For_Order => Order_Handle));
            end;

            Work_Order_Operations.Count_Versions
               (For_Work_Order => Order_Handle,
                Versions       => Number_Of_Versions,
                Success        => Status);

            if Number_Of_Versions > 0 then
                Look_At_Versions (Order_Handle, Status);
            end if;
        end if;
        Work_Order_Control.Close
           (The_Handle => Order_Handle, Success => Status);



    end Visit;

    procedure Look_At_Orders is new Work_Order_List_Operations.Traverse (Visit);

begin
    Work_Order_List_Control.Find
       (List_Name => List_Path, Result => List_Id, Success => List_Status);

    Work_Order_List_Control.Open
       (The_List => List_Id, The_Handle => List_Handle, Success => List_Status);

    if List_Status = 0 then
        Tb.Header ("SPR");
        Tb.Header ("Status");
        Tb.Header ("Module");
        Tb.Header ("Generation");
        Tb.Header ("Time");
        Tb.Header ("Notes");

        Look_At_Orders (List_Handle, List_Status);
        Io.Put_Line ("SPR's for " &
                     String_Utilities.Upper_Case (For_Work_List));
        Io.Put_Line (Time_Utilities.Image (Time_Utilities.Get_Time));
        Io.New_Line;

        Tb.Display (Io.Standard_Output);
    else
        Io.Put_Line ("Unable to show SPR's for " & For_Work_List);
    end if;

end Show_Work_Orders;