I want to create sales invoice based on multiple records of packing slips (custPackingSlipJour) for a single sales order. I found the code to create through single record of custPackingSlipJour. What changes can be done to create single invoice for multiple records.
public CustInvoiceJour postInvoice()
{
TmpFrmVirtual tmpFrmVirtual;
tmpFrmVirtual.TableNum = custPackingSlipJour.TableId;
tmpFrmVirtual.RecordNo = custPackingSlipJour.RecId;
tmpFrmVirtual.insert();
List packingSlipList = new List(Types::Record);
packingSlipList.addEnd(tmpFrmVirtual);
SalesFormLetter salesFormLetter = SalesFormLetter::construct(DocumentStatus::Invoice);
SalesTable salesTable = custPackingSlipJour.salesTable();
salesFormLetter.salesTable (salesTable);
salesFormLetter.transDate (salesParmTable.TransDate);
salesFormLetter.specQty (SalesUpdate::PackingSlip);
salesFormLetter.proforma (NoYes::No);
SalesParmUpdate salesParmUpdate = salesFormLetter.salesParmUpdate();
salesFormLetter.initParameters(salesParmUpdate, Printout::Current);
salesFormLetter.chooseLines(true);
salesFormLetter.selectFromJournal(packingSlipList.pack());
salesFormLetter.run();
return salesFormLetter.parmJournalRecord();
}