|
|
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: 3003 (0xbbb)
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⟧
with Io;
with Work_Order_Implementation;
with Form;
with Window_Io;
with Bounded_String;
separate (Cm_Generic)
procedure Edit (Work_Order : String := ">>ORDER NAME<<"; For_Form : Forms) is
package Woi renames Work_Order_Implementation;
use Woi;
Fr : Form_Rec renames Form_Array (For_Form);
Work_Order_Name : constant String := Work_Order_Path & '.' & Work_Order;
Iter : Form.Modification_Iterator;
Input, Output : Window_Io.File_Type;
Di : Woi.Descriptor_Info_Record;
Order_Id : Woi.Work_Order_Id;
Status : Woi.Status;
Order_Handle : Woi.Work_Order_Handle;
begin
Work_Order_Control.Find (Work_Order_Name, Order_Id, Success => Status);
Work_Order_Control.Open (The_Work_Order => Order_Id,
The_Handle => Order_Handle,
Success => Status,
Mode => Update);
if Status = 0 then
Window_Io.Open (Input, Window_Io.In_File, Forms'Image (For_Form));
Window_Io.Open (Output, Window_Io.Out_File, Forms'Image (For_Form));
Form.Create (Output, Input, Fr.The_Form, Iter);
-- for I in Defs.Bug_Items loop
-- Bs.Copy (Item_Array (I), (Form.Response (Form.Value (Iter))));
-- Form.Next (Iter);
-- end loop;
-- at this point we can do some verification ..
--
-- now fill in the bug items.
--
for I in Fr.Start_Item .. Fr.End_Item loop
declare
Item_Field : Work_Order_Field_Operations.Field;
Set_Status : Woi.Status;
begin
Work_Order_Field_Operations.Find
(Field_Name => Items'Image (I),
The_Field => Item_Field,
Success => Set_Status,
In_Work_Order => Order_Handle);
Di := Work_Order_Field_Operations.Descriptor_Info (Item_Field);
if Di.Is_Vector then
Work_Order_Field_Operations.Set_Value
(The_Field => Item_Field,
The_Handle => Order_Handle,
Index => 0,
Value => Form.Response (Form.Value (Iter)),
Success => Set_Status);
else
Work_Order_Field_Operations.Set_Value
(The_Field => Item_Field,
The_Handle => Order_Handle,
Value => Form.Response (Form.Value (Iter)),
Success => Set_Status);
end if;
Form.Next (Iter);
end;
end loop;
Window_Io.Close (File => Input);
Window_Io.Close (File => Output);
Work_Order_Control.Close (Order_Handle, Status);
else
Io.Put_Line (Io.Standard_Error, "Unable to find Work Order");
end if;
end Edit;