hi @aliasadivet
all good lets do this step by step
Step 1: DataSource
I will create one that will replicate the type of data you have but in your case it will be a SharePoint List.
Add a button to you canvas and add this code to the OnSelect of the button
//creating data for the example. in your case this will be your sharepoint list
//5 entries: 1, 8, 11, 12, 8 with place being empty colRawData will be your SharePoint Data
ClearCollect(colRawData,
{score:1,place:""},
{score:8,place:""},
{score:11,place:""},
{score:12,place:""},
{score:8,place:""}
)
Add a datatable and set the data source Items = colRawData
Edit the Fields and add both columns, score and place
Below is a graphic of the datatabel selected of its data source and Fields

Once the fields has been added the data table ill display the follow: (the score with blank place)

Step 2: Sort data
Lets sort the data in descending order to get the high to low score.
Add another button and set the OnSelect = ClearCollect(colSortedData,Sort(colRawData, score, Descending))
//sort the data to have the first rown the highest score etc...
ClearCollect(
colSortedData,
Sort(colRawData, score, Descending)
)
Copy and Paste the datatable in above step and change the datasource to colSortedData. notice the second table is now sorted large to small.

Step 3: Rank the data
we need to run through all the rows and give them a rank, we know it is descending order.
Add another button and add set the OnSelect = ClearCollect(colTemp,colSortedData);
ForAll(colTemp,Patch(colSortedData,ThisRecord,{place:Max(colSortedData,place)+1}))
"this temp collection i neglected to share earlier - sorry for that"
//create the tem[porary collection
ClearCollect(
colTemp,
colSortedData
);
ForAll(
colTemp,
Patch(
colSortedData,
ThisRecord,//thisrecord refers to the current record
{
place: Max(
colSortedData,
place
) + 1
}
)
)
the data is ranked

Now lets put it all together in one button
//sort the data to have the first rown the highest score etc...
ClearCollect(
colSortedData,
Sort(colRawData /*your sharepoint linst here*/, score, Descending)
);
//create the tem[porary collection
ClearCollect(
colTemp,
colSortedData
);
ForAll(
colTemp,
Patch(
colSortedData,
ThisRecord,//thisrecord refers to the current record
{
place: Max(colSortedData,place) + 1
}
)
)
Hope that is more explanatory,
R
Ps will you have a situation where there may be more than one score of the same value?