You can write your topic however you want, but you need to answer these questions:
What do you want to achieve? Keep it simple and clear!
I want to get more than 100 values from the datastore if its possible
The code below is what I’ve been trying to use but no success
local orderedDataStore = game:GetService("DataStoreService"):GetOrderedDataStore("Playergrave")
local allKeys = {}
local pageNumber = 10
local pageSize = 100
local lastKeyProcessed = nil
repeat
local keys = orderedDataStore:GetSortedAsync(pageNumber, pageSize, nil, lastKeyProcessed)
local currentPage, nextKey = keys:GetCurrentPage()
for _, key in ipairs(currentPage) do
table.insert(allKeys, key.key)
lastKeyProcessed = key.key
end
if nextKey == nil then
break
end
pageNumber = pageNumber + 1
keys:AdvanceToNextPageAsync()
until false
print("All keys:")
for _, key in ipairs(allKeys) do
print(key)
end
print("Total count: " .. #allKeys)
I figured it out, in case anyone else needs it I will post it here
local orderedDataStore = game:GetService("DataStoreService"):GetOrderedDataStore("Datastorename")
local allKeys = {}
local pageNumber = 1
local pageSize = 100
local lastKeyProcessed = nil
repeat
local keys = orderedDataStore:GetSortedAsync(pageNumber, pageSize, nil, lastKeyProcessed)
while true do
local data = keys:GetCurrentPage()
for _, entry in pairs(data) do
table.insert(allKeys, entry.key)
lastKeyProcessed = entry.key
end
if keys.IsFinished then
break
else
keys:AdvanceToNextPageAsync()
end
end
pageNumber = pageNumber + 1
until keys.IsFinished
print("All keys:")
for _, key in ipairs(allKeys) do
print(key)
end
print("Total count: " .. tostring(#allKeys))
I would also recommend putting a wait function in there