Here is one way to solve the problem; I created a formula that whenever a new value of Lot is found, it calculates when the first occurrence of Lot appeared.
If( :Lot != Lag( :Lot ),
currLot = :Lot;
begin = :Box[Min( Current Data Table() << get rows where( :Lot == currLot ) )];
);
begin;
If you want to iterate in open code, the following code can be used
For Each Row(
If( :Lot != Lag( :Lot ),
currLot = :Lot;
begin = :Box[Min( Current Data Table() << get rows where( :Lot == currLot ) )];
);
Show( begin );
);
Jim