Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Removed |../../index.htm#lansa/frmeng01_0335.htm]
You are here:

...

1.

...

1.  Create a New / Form /Basic Form      Name

     Name: iiiUseWorkList

     Description     Description: Using a Working List

 2.  Select the Layout ribbon and add a Table Layout with 2 rows and 2 columns. Adjust the columns as shown:
Image Removed

Image Added

3.  From the Controls tab, drop a List View onto row 1, column 1.

     a.  Change the List View's Name property to Employs.

     b.  On the Layout ribbon, change the list's Size to Fit Both. It will expand to fit this table cell.

4.  Drop a Status Bar (from the All Controls tab) onto row 2, column 1. It will expand to fit the width of the form and attach to the bottom of the form. This is controlled by its AutoLayout property.

     Your form should look like the following:
Image Removed

Image Added

5.  On the Repository tab, locate the table xEmployee and expand its definition. Drag the fields xEmployeeIdentification, xEmployeeSurname, xEmployeeGivenNames and xEmployeeSalary into the list.

     Set      Set up the columns as shown in the table. Select a column by clicking on the column heading. The Details tab then shows this column's properties. Alternatively, use the components dropdown at the top of the Details tab.


Field / column

Property

Value

xEmployeeIdentification

Caption

Code

 


CaptionType

Caption

xEmployeeSalary

Caption

Salary

 


CaptionType

Caption

 


WidthType

Remainder


 |
     Resize the fields to display their content. Your List View should look like the following:
Image Removed

Image Added

6.  Add code to the form's CreateInstance event routine to clear and then fill the Employs list view from the table xEmployee. Your code should look like the following:

     Evtroutine Handling(#com_owner.CreateInstance)
     Set Com(#com_owner) Caption(*component_desc)
     Clr_List Named(#Employs)
     Select Fields(#Employs) From_File(xEmployee)
     Add_Entry To_List(#Employs)
     Endselect
     Endroutine 
 
7.  Create a field in the Repository called iiiTotalSalary.

     a.  Define it as a Decimal (15,2) field and open it in the editor.

     b.  Give it an Edit Mask of J ( a format of 1,234,567.89-).

     c.  Save the field definition.

8.  Drop the field iiiTotalSalary into Row 1, Column 2 Row 1, Column 2.

     a.  On the Layout ribbon, give it an Alignment of Bottom Center and Flow of Up.

     b.  Give it a margin Bottom of 10.

     c.  On the Details tab, change its LabelPosition to Top.

     d.  Change its Width to 120.

     e.  Adjust the width of Column 2 Column 2 if necessary.

         Your design should look like the following:

Image Added Image Removed

9.  Select the Employs list view. On the Details tab, notice that the List View has a default SelectionStyle of Multiple. Create an event routine for ItemGotSelection and ItemLostSelection.

10. In the ItemGotSelection event, add code to add xEmployeeSalary to iiiTotalSalary.

11. In the ItemLostSelection event add code to subtract xEmployeeSalary from iiiTotalSalary. Your code should look like the following:

     Evtroutine Handling(#Employs.ItemGotSelection) Options(*NOCLEARMESSAGES *NOCLEARERRORS)
     #iiiTotalSalary += #xEmployeeSalary
     Endroutine
     Evtroutine Handling(#Employs.ItemLostSelection) Options(*NOCLEARMESSAGES *NOCLEARERRORS)
     #iiiTotalSalary -= #xEmployeeSalary
     Endroutine  

12. Compile and test your form. Select multiple entries in the List View (hold down the Control key). Total Salary should show the correct total for selected employees.
Image Removed
[ Image Removed |../../index.htm#lansa/frmeng01_0335.htm]

Image Added