Hi,
I am trying to duplicate a record that has related child records which in turn has child records of its own. All is fine for the first loop of child records, but I am not sure how to implement the second loop.
Any help would be much appreciated I am starting to pull my hair out.
//**********************************************************************************************
//duplicate record details
var vHasSubQuotes = databaseManager.hasRecords(quotes_to_sub_quotes)//check for sub-quote status
if(vHasSubQuotes)
{
var fs = foundset; //load current foundset
var relatedFsArray = new Array('quotes_to_sub_quotes'); //load related foundset as a array
var dup = fs.getRecord(fs.duplicateRecord(false,false)); // Duplicate master record
//*********************************************************************************************
//load data from original record for later
var dupNumber = dup.quotesid;
var vQuoteNum = dup.quote_number;
var repI = dup.quote_sales_rep_int;
var quoteID = dup.quotesid;
databaseManager.saveData() //save data
//*********************************************************************************************
//loop through related records and duplicate
for(var k=0;k<relatedFsArray.length;k++)
{
var related = fs[relatedFsArray[k]];
for(var i=1;i<=related.getSize();i++)
{
var relatedOriginal = related.getRecord(i);
var relatedWorkSheet = new Array('quotes_to_sub_quotes.quotes_to_workorder_line_items');
var relatedWs = fs[relatedWorkSheet[k]];
for(var i=1;i<=relatedWorkSheet.getSize();i++)
{
//do something
}
var relatedDub = dup[relatedFsArray[k]].getRecord(dup[relatedFsArray[k]].newRecord(false,false));
databaseManager.copyMatchingColumns(relatedOriginal, relatedDub);
//********************************************************************************
//change status on duplicated quote to reflect a sub-quote
relatedDub.sub_quote_related_id = quoteID //set related record
relatedDub.sub_quote = 1 //set related record to be a sub quote
var vSubCount = relatedOriginal.sub_quote_count //set quote count from original record
relatedDub.sub_quote_number = repI + '' + vQuoteNum + '/' + vSubCount; //set complete quote number
databaseManager.saveData() //save data
}
currentcontroller.saveData();
};
};
else
{
globals.duplicateRecord(foundset, new Array('quotes_to_workorder_line_items'));
};