public List <LivestockDTO> GetLivestockInCorrals(string client, string auctionDate) { Recordset recordset = null; var parameters = new Dictionary <string, string>(); var livestockInCorrals = new List <LivestockDTO>(); DistributionDAO distributionDAO = new DistributionDAO(); try { var query = this.GetSQL("GetLivestock").Inject(parameters); var location = distributionDAO.GetUserDefaultWarehouse(); parameters.Add("Location", location); query = ReplaceQueryConditions("AuctionDate", auctionDate, "AND T1.ExpDate = '{AuctionDate}'", parameters, query); query = ReplaceQueryConditions("CardCode", client, "AND T5.CardCode = '{CardCode}'", parameters, query); recordset = (Recordset)DIApplication.Company.GetBusinessObject(BoObjectTypes.BoRecordset); recordset.DoQuery(query.Inject(parameters)); if (recordset.RecordCount > 0) { for (int i = 0; i < recordset.RecordCount; i++) { var livestock = new LivestockDTO(); Parallel.ForEach(recordset.Fields.OfType <Field>(), field => { livestock.GetType().GetProperty(field.Name).SetValue(livestock, field.Value); }); livestockInCorrals.Add(livestock); recordset.MoveNext(); } } } catch (Exception ex) { HandleException(ex, "GetLivestockInCorrals"); } return(livestockInCorrals.OrderBy(l => l.Name).ToList()); }
/// <summary> /// Get Distribution of Livestock /// </summary> /// <param name="pStrCardCode"></param> /// <param name="type"></param> /// <returns></returns> public List <LivestockDTO> GetDistributedLiveStock(string pStrCardCode, string type) { Recordset lObjRecordset = null; var lLstLovestock = new List <LivestockDTO>(); var lDicParameters = new Dictionary <string, string>(); try { string lStrQuery = this.GetSQL("GetLivestock" + type); string lStrLocation = distributionDAO.GetUserDefaultWarehouse(); lDicParameters.Add("CardCode", pStrCardCode); lDicParameters.Add("Location", lStrLocation); lObjRecordset = (Recordset)DIApplication.Company.GetBusinessObject(BoObjectTypes.BoRecordset); lObjRecordset.DoQuery(lStrQuery.Inject(lDicParameters)); if (lObjRecordset.RecordCount > 0) { for (int i = 0; i < lObjRecordset.RecordCount; i++) { var livestock = new LivestockDTO(); Parallel.ForEach(lObjRecordset.Fields.OfType <SAPbobsCOM.Field>(), field => { livestock.GetType().GetProperty(field.Name).SetValue(livestock, field.Value); }); lLstLovestock.Add(livestock); lObjRecordset.MoveNext(); } } } catch (Exception e) { HandleException(e, "GetDistributedLiveStock"); } finally { MemoryUtility.ReleaseComObject(lObjRecordset); } return(lLstLovestock); }