示例#1
0
        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());
        }
示例#2
0
        /// <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);
        }