Douglas, I tried what you said and I got the same error about inserting Warehouse more than once. Below is the updated code (to make sure I have what you asked me to do) and the error.
void clicked()
{
Query query;
QueryRun queryRun;
QueryBuildDataSource qbds;
QueryBuildRange qbr;
QueryBuildFieldList qbdsFldList;
Map targetToSourceMap = new Map(Types::String, Types::Container);
ALTLoadDetailsData altLoadData;
ALTLoadDetailsDataFiltered altLoadFiltered;
int dataSourceUniqueId;
// Clear the temp table to be used for the grid.
delete_from altLoadFiltered;
query = new Query();
qbds = query.addDataSource(tableNum(ALTLoadDetailsData));
if ( Warehouse.checked() )
{
qbr = qbds.addRange( fieldNum(ALTLoadDetailsData,Warehouse));
qbr.value(SysQuery::value(FilterOptions_Warehouse.valueStr()));
}
if ( LoadStatus.checked() )
{
qbr = qbds.addRange( fieldNum(ALTLoadDetailsData,LoadStatus));
qbr.value(SysQuery::value(FilterOptions_LoadStatus.valueStr()));
}
if ( Direction.checked() )
{
qbr = qbds.addRange( fieldNum(ALTLoadDetailsData,Direction));
qbr.value(SysQuery::value(FilterOptions_Direction.valueStr()));
}
if ( Site.checked() )
{
qbr = qbds.addRange(fieldNum(ALTLoadDetailsData,Site));
qbr.value(SysQuery::value(FilterOptions_Site.valueStr()));
}
if ( DateRange.checked() )
{
qbr = qbds.addRange(fieldNum(ALTLoadDetailsData, loadShippedConfirmationDateTime));
qbr.value(SysQuery::range(DateTimeUtil::newDateTime(FromDate.DateValue(),0), DateTimeUtil::newDateTime(ToDate.DateValue(),0)));
}
if ( DeliveryTerms.checked() )
{
qbr = qbds.addRange(fieldNum(ALTLoadDetailsData,DeliveryTerms));
qbr.value(SysQuery::value(FilterOptions_DeliveryTerms.valueStr()));
}
//dataSourceUniqueId = qbds.uniqueId();
/*
qbds.fields().clearFieldList();
qbdsFldList = qbds.fields();
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, AccountNumber));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, BillingGroupId));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, CarrierService));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, CustomerFreightCharge));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, DelayedShipmentDays));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, DeliveryTerms));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, Direction));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, FreightBill));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, FreightBillInvoice));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, FreightRevenue));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, LoadId));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, LoadShippedConfirmationDateTime));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, LoadStatus));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, LoadTemplateId));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, LoadWeight));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, Mode));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, OrderNumber));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, ProductWeightTBD));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, ProNumber));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, Route));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, ScheduledLoadShippingDateTime));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, ShipFromPostalCode));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, ShipmentId));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, ShippingCarrier));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, ShipToPostalCode));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, Site));
qbdsFldList.addField(fieldNum(ALTLoadDetailsData, Warehouse));
qbdsFldList.dynamic(QueryFieldListDynamic::No);
*/
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, AccountNumber));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, BillingGroupId));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, CarrierService));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, CustomerFreightCharge));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, DelayedShipmentDays));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, DeliveryTerms));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, Direction));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, FreightBill));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, FreightBillInvoice));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, FreightRevenue));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, LoadId));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, LoadShippedConfirmationDateTime));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, LoadStatus));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, LoadTemplateId));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, LoadWeight));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, Mode));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, OrderNumber));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, ProductWeightTBD));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, ProNumber));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, Route));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, ScheduledLoadShippingDateTime));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, ShipFromPostalCode));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, ShipmentId));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, ShippingCarrier));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, ShipToPostalCode));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, Site));
qbds.addSelectionField(fieldNum(ALTLoadDetailsData, Warehouse));
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, AccountNumber), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, AccountNumber)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, BillingGroupId), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, BillingGroupId)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, CarrierService), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, CarrierService)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, CustomerFreightCharge), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, CustomerFreightCharge)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, DelayedShipmentDays), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, DelayedShipmentDays)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, DeliveryTerms), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, DeliveryTerms)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, Direction), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, Direction)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, FreightBill), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, FreightBill)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, FreightBillInvoice), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, FreightBillInvoice)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, FreightRevenue), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, FreightRevenue)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, LoadId), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, LoadId)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, LoadShippedConfirmationDateTime), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, LoadShippedConfirmationDateTime)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, LoadStatus), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, LoadStatus)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, LoadTemplateId), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, LoadTemplateId)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, LoadWeight), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, LoadWeight)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, Mode), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, Mode)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, OrderNumber), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, OrderNumber)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, ProductWeightTBD), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, ProductWeightTBD)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, ProNumber), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, ProNumber)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, Route), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, Route)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, ScheduledLoadShippingDateTime), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, ScheduledLoadShippingDateTime)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, ShipFromPostalCode), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, ShipFromPostalCode)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, ShipmentId), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, ShipmentId)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, ShippingCarrier), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, ShippingCarrier)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, ShipToPostalCode), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, ShipToPostalCode)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, Site), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, Site)]);
targetToSourceMap.insert(fieldStr(ALTLoadDetailsDataFiltered, Warehouse), [qbds.uniqueId(), fieldStr(ALTLoadDetailsData, Warehouse)]);
ttsBegin;
Query::insert_recordset(altLoadFiltered, targetToSourceMap, query);
ttsCommit;
/*
// Run Query
queryRun = new QueryRun(query);
// Retrieves the next record from the query.
while(queryRun.next())
{
altLoadData = queryRun.get(tableNum(ALTLoadDetailsData));
altLoadFiltered.AccountNumber = altLoadData.AccountNumber;
altLoadFiltered.BillingGroupId = altLoadData.BillingGroupId;
altLoadFiltered.CarrierService = altLoadData.CarrierService;
altLoadFiltered.CustomerFreightCharge = altLoadData.CustomerFreightCharge;
altLoadFiltered.DelayedShipmentDays = altLoadData.DelayedShipmentDays;
altLoadFiltered.DeliveryTerms = altLoadData.DeliveryTerms;
altLoadFiltered.Direction = altLoadData.Direction;
altLoadFiltered.FreightBill = altLoadData.FreightBill;
altLoadFiltered.FreightBillInvoice = altLoadData.FreightBillInvoice;
altLoadFiltered.FreightRevenue = altLoadData.FreightRevenue;
altLoadFiltered.LoadId = altLoadData.LoadId;
altLoadFiltered.LoadShippedConfirmationDateTime = altLoadData.LoadShippedConfirmationDateTime;
altLoadFiltered.LoadStatus = altLoadData.LoadStatus;
altLoadFiltered.LoadTemplateId = altLoadData.LoadTemplateId;
altLoadFiltered.LoadWeight = altLoadData.LoadWeight;
altLoadFiltered.Mode = altLoadData.Mode;
altLoadFiltered.OrderNumber = altLoadData.OrderNumber;
altLoadFiltered.ProductWeightTBD = altLoadData.ProductWeightTBD;
altLoadFiltered.ProNumber = altLoadData.ProNumber;
altLoadFiltered.Route = altLoadData.Route;
altLoadFiltered.ScheduledLoadShippingDateTime = altLoadData.ScheduledLoadShippingDateTime;
altLoadFiltered.ShipFromPostalCode = altLoadData.ShipFromPostalCode;
altLoadFiltered.ShipmentId = altLoadData.ShipmentId;
altLoadFiltered.ShippingCarrier = altLoadData.ShippingCarrier;
altLoadFiltered.ShipToPostalCode = altLoadData.ShipToPostalCode;
altLoadFiltered.Site = altLoadData.Site;
altLoadFiltered.Warehouse = altLoadData.Warehouse;
altLoadFiltered.insert();
// Show AccountNum
//info("Account Number: " + altLoadFiltered.AccountNumber);
}
*/
ALTLoadDetailsDataFiltered_ds.research();
ALTLoadDetailsDataFiltered_ds.refresh();
}