I do resolve it like this :
CREATE MAIN TICKET
-----------------------------
ClearCollect(
colTicket,
{
ID: If(
IsBlank(Last(Sort(colTicketData, ID,SortOrder.Ascending)).ID),
100,
Last(Sort(colTicketData, ID, SortOrder.Ascending)).ID + 100
),
SubID: 0,
Unit: inp_Unit_2.Text,
TicketNumber: TicketNumber_2.Text
}
);
Collect(colTicketData, Sort(colTicket, ID, SortOrder.Ascending))
SUB TICKET
----------------
ClearCollect(
colTicket,
{
ID: ThisItem.ID,
SubID: If(
Last(Sort(colTicketData, ID, SortOrder.Ascending)).SubID = 0,
ThisItem.ID + 1,
Last(Sort(colTicketData, ID, SortOrder.Ascending)).SubID + 1
),
Unit: inp_Unit_2.Text,
TicketNumber: TicketNumber_2.Text
}
);
Collect(colTicketData, Sort(colTicket, ID, SortOrder.Ascending))
SAVE
-------
If(
IsError(
ForAll(
Gallery2_1.AllItems As G2,
Patch(
TicketList,
Defaults(TicketList),
{
Unit: G2.inp_Unit_2.Text,
TicketNumber: G2.TicketNumber_2.Text
}
)
)
),
NotificationType.Error,
NotificationType.Success
);
Clear(colTicketData);