
Hello Everyone!
I'm having some issues designing my filters for my Gallery on Power Apps conected to Sharepoint.
I have a Gallery that I expect to have more than 2,000 items and I need it to have two multi selection combo box (as shown in the image) and one search text input that search in three colums (ID, Paciente(text), Institucion(Search)).
Everything works perfect, except that I'm having a Delegation warning with the StartWith in the ID colum.
Any idea how can I improve it to get rid off that warning?
Here my Code in the Items Gallery property
Switch(
varSortColumn;
"ID";
SortByColumns(
Filter(
'Formulario Solicitudes de Pedido';
StartsWith(
NombrePaciente;
BuscarPaciente.Text)
|| StartsWith(
ID;
BuscarPaciente.Text)
|| StartsWith(
Institucion.Value;
BuscarPaciente.Text
); Or(
IsBlank(Drop_Status.SelectedItems);
IsEmpty(Drop_Status.SelectedItems);
Status.Value = Last(FirstN(Drop_Status.SelectedItems;1)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;2)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;3)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;4)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;5)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;6)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;7)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;8)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;9)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;10)).Value
) && Or(
IsBlank(Drop_Linea.SelectedItems);
IsEmpty(Drop_Linea.SelectedItems);
LineaProductoCopy = Last(FirstN(Drop_Linea.SelectedItems;1)).Value;
LineaProductoCopy = Last(FirstN(Drop_Linea.SelectedItems;2)).Value;
LineaProductoCopy = Last(FirstN(Drop_Linea.SelectedItems;3)).Value;
LineaProductoCopy = Last(FirstN(Drop_Linea.SelectedItems;4)).Value;
LineaProductoCopy = Last(FirstN(Drop_Linea.SelectedItems;5)).Value
) && (Status.Value = "Cotización Aprobada" || Status.Value = "Pendiente" || Status.Value = "En Proceso" || Status.Value = "Atendido" || Status.Value = "Picking En Proceso" || Status.Value = "Picking Terminado" || Status.Value = "En ruta" || Status.Value = "Entregado" || Status.Value = "Recojo Programado" || Status.Value = "Recojo Ejecutado" || Status.Value = "Rechazado" || Status.Value = "Finalizado" || Status.Value = "Cancelado" || Status.Value = "Entrega Final" || Status.Value = "Entrega Parcial" || Status.Value = "Consumo Total" || Status.Value = "Devolución Parcial" || Status.Value = "Devolución Total" || Status.Value = "GuÃa Generada" || Status.Value = "Entrega Final Venta Directa" || Status.Value = "Facturado Venta Directa" || Status.Value="Liquidación Parcial")
);
"ID";
If(
varSortDirection = SortOrder.Ascending;
SortOrder.Ascending;
SortOrder.Descending
)
);
"FechaCirugia";
Sort(
SortByColumns(
Filter(
'Formulario Solicitudes de Pedido';
StartsWith(
NombrePaciente;
BuscarPaciente.Text)
|| StartsWith(
ID;
BuscarPaciente.Text)
|| StartsWith(
Institucion.Value;
BuscarPaciente.Text
); Or(
IsBlank(Drop_Status.SelectedItems);
IsEmpty(Drop_Status.SelectedItems);
Status.Value = Last(FirstN(Drop_Status.SelectedItems;1)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;2)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;3)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;4)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;5)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;6)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;7)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;8)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;9)).Value;
Status.Value = Last(FirstN(Drop_Status.SelectedItems;10)).Value
) && Or(
IsBlank(Drop_Linea.SelectedItems);
IsEmpty(Drop_Linea.SelectedItems);
LineaProductoCopy = Last(FirstN(Drop_Linea.SelectedItems;1)).Value;
LineaProductoCopy = Last(FirstN(Drop_Linea.SelectedItems;2)).Value;
LineaProductoCopy = Last(FirstN(Drop_Linea.SelectedItems;3)).Value;
LineaProductoCopy = Last(FirstN(Drop_Linea.SelectedItems;4)).Value;
LineaProductoCopy = Last(FirstN(Drop_Linea.SelectedItems;5)).Value
) && (Status.Value = "Cotización Aprobada" || Status.Value = "Pendiente" || Status.Value = "En Proceso" || Status.Value = "Atendido" || Status.Value = "Picking En Proceso" || Status.Value = "Picking Terminado" || Status.Value = "En ruta" || Status.Value = "Entregado" || Status.Value = "Recojo Programado" || Status.Value = "Recojo Ejecutado" || Status.Value = "Rechazado" || Status.Value = "Finalizado" || Status.Value = "Cancelado" || Status.Value = "Entrega Final" || Status.Value = "Entrega Parcial" || Status.Value = "Consumo Total" || Status.Value = "Devolución Parcial" || Status.Value = "Devolución Total" || Status.Value = "GuÃa Generada" || Status.Value = "Entrega Final Venta Directa" || Status.Value = "Facturado Venta Directa" || Status.Value="Liquidación Parcial")
);
"FechaCirugia";
If(
varSortDirection = SortOrder.Ascending;
SortOrder.Ascending;
SortOrder.Descending
)
);
FechaCirugia >= Today();
SortOrder.Descending
)
)
Hey Thanks for the answer!
I still have the delegation warning, even using the in operator. Any idea what could be happening?