Hi there,
I'm trying to build a "serial numer", but need a conditional, until today I did it using "CountRows(Filter(", but I have the problem with non delegable formulas.
So I think maybe is possible do it with Max funtion, but I don't know how I can do it.
My alternative code that I'm trying is:
Max(Filter('[dbo].[tbPO]';IdProject = proyecto).Line)+1
If not possible, How I can do it to avoid the issues with non delegable functions?
Thank you.
Solved! Go to Solution.
I missed the FIRST function. Include this:
Sort(First(Filter('[dbo].[tbPO]';IdProject = proyecto),Line, Descending)).Line+1
---
Please click "Accept as Solution" if my post answered your question so that others may find it more quickly. If you found this post helpful consider giving it a "Thumbs Up."
Thank you @mdevaney your formula doen't work, but I understood your idea and I found that only was an order error. Finally works with this one:
If(FormPO.Mode = FormMode.New ; First(Sort(Filter('[dbo].[tbPO]';IdProject = proyecto);Line; Descending)).Line+1;DataTablePO.Selected.Line)
Thank you for your help.
Regards.
@Manarjomar
MAX cannot be delegated: so just use a Sort function instead. It does the same thing.
Sort(Filter('[dbo].[tbPO]';IdProject = proyecto),Line, Descending).Line+1
Note: I assume 'Line' is a number type.
---
Please click "Accept as Solution" if my post answered your question so that others may find it more quickly. If you found this post helpful consider giving it a "Thumbs Up."
Try:
Max('[dbo].[tbPO]';IdProject)+1
Max(Datasource,Column)+1
------------
If you like this post, give a Thumbs up. Where it solved your request, Mark it as a Solution to enable other users find it.
Hi@mdevaney ,
Yes, you are right, "Line" is a number, but the function doesn't work:
My last function was:
Regards.
I missed the FIRST function. Include this:
Sort(First(Filter('[dbo].[tbPO]';IdProject = proyecto),Line, Descending)).Line+1
---
Please click "Accept as Solution" if my post answered your question so that others may find it more quickly. If you found this post helpful consider giving it a "Thumbs Up."
Thank you @mdevaney your formula doen't work, but I understood your idea and I found that only was an order error. Finally works with this one:
If(FormPO.Mode = FormMode.New ; First(Sort(Filter('[dbo].[tbPO]';IdProject = proyecto);Line; Descending)).Line+1;DataTablePO.Selected.Line)
Thank you for your help.
Regards.