foundset problem

I want to delete a record in another form when a method is called. In order to do this I need to search through all the records in that form. What I did was get the foundset of a table for that form. However my foundset is empty. I need someone to tell me where I went wrong. Here is the code

var index = designplan_to_activities.getSelectedIndex()
var size = designplan_to_activities.getSize()
var projNum = designplan_to_activities.getDataProviderValue(‘proj_num’)

var pFoundSet = databaseManager.getFoundSet(forms.Projects.controller.getServerName(), forms.Projects.controller.getTableName())
var pRec

for(var i = 1; i < pFoundSet.getSize(); i ++)
{
pRec = pFoundSet.getRecord(i)

application.output('pRec ’ + projNum)
application.output('size ’ + pFoundSet.getSize())
if(pRec.proj_num == projNum)
{
pRec.deleteRecord()
pFoundSet.loadAllRecords()
forms.Projects.controller.loadAllRecords()

break;
}
}

designplan_to_activities.deleteRecord()

for(var j=index; j < size; j++)
{
designplan_to_activities.getRecord(j).activity_number = j
}

thanks.

You first have to load something into your foundset if you use databaseManager.getFoundSet(). So for example you could do

var pFoundSet = databaseManager.getFoundSet(forms.Projects.controller.getServerName(), forms.Projects.controller.getTableName()) 
pFoundSet.loadAllRecords()

or

var pFoundSet = databaseManager.getFoundSet(forms.Projects.controller.getServerName(), forms.Projects.controller.getTableName()) 
pFoundSet.loadRecords(whateverArguments)

Hi nani,

Not sure where you are initiating this method from but I assume that it is not projects

In that case there may not be any foundset applicable to the projects table and so Servoy does not know what you want loaded.

You may want to think about preparing the projects table first by running either a search or a getDatSetByQuery() on it to give you some result to loop across

Cheers
Harry

thanks,
my foundset is not empty anymore. However I have another problem. How do I get a value of an element for a specific record after I do a found.getRecord(index)??

var index = designplan_to_activities.getSelectedIndex()
var size = designplan_to_activities.getSize()
var projNum = controller.getDataProviderValue(‘proj_num’)
var pFoundset = databaseManager.getFoundSet(forms.Engineers.engineers_to_projects.getServerName(), forms.Engineers.engineers_to_projects.getTableName())
pFoundset.loadAllRecords()
application.output(‘size’ + ’ ’ + pFoundset.getSize())
for(var i=1; i<= pFoundset.getSize(); i++)
{
eRec = pFoundset.getRecord(i)

taskNum =eRec.getDataProviderValue(‘proj_num’)
application.output(‘taskNum’ + ’ ’ + i + ’ ’ + taskNum)
}

for(var i=index; i <= size ; i++)
{
designplan_to_activities.getRecord(i).activity_number = i
designplan_to_activities.getRecord(i).proj_num = projNum + ‘.’ + (i)*100
}

designplan_to_activities.setSelectedIndex(index)

i’ve figured out the solution.

=)