コード例 #1
0
ファイル: AverageHoldingMapper.cs プロジェクト: kiquenet/B4F
        public static IList GetAverageHoldings(IDalSession session, IAccountTypeInternal account, DateTime startDate, DateTime endDate, ValuationTypesFilterOptions filterOption)
        {
            Hashtable parameters = new Hashtable(1);
            parameters.Add("account", account);
            parameters.Add("startDate", startDate);
            parameters.Add("endDate", endDate);
            string instrumentFilter = "";

            switch (filterOption)
            {
                case ValuationTypesFilterOptions.Security:
                    instrumentFilter = "and I.Key in (select S.Key from TradeableInstrument S) ";
                    break;
                case ValuationTypesFilterOptions.Monetary:
                    instrumentFilter = "and I.Key in (select C.Key from Currency C) ";
                    break;
            }

            string hql = string.Format(@"from AverageHolding A
                left join fetch A.Instrument I
                where A.Account = :account
                and (A.BeginDate between :startDate
                and :endDate ) {0}
                order by I.Key, A.BeginDate", instrumentFilter);
            return session.GetListByHQL(hql, parameters);
        }
コード例 #2
0
ファイル: ValuationMapper.cs プロジェクト: kiquenet/B4F
        public static IList<IValuation> GetValuations(IDalSession session, int accountID, DateTime[] dates, bool includeClosedPositions, ValuationTypesFilterOptions filterOption)
        {
            Hashtable parameters = new Hashtable(1);
            Hashtable parameterLists = new Hashtable(1);
            parameters.Add("accountID", accountID);
            parameterLists.Add("dates", dates);
            if (includeClosedPositions)
                parameters.Add("includeClosedPositions", 1);
            switch (filterOption)
            {
                case ValuationTypesFilterOptions.Security:
                    parameters.Add("instrumentFilterTradeableInstruments", 1);
                    break;
                case ValuationTypesFilterOptions.Monetary:
                    parameters.Add("instrumentFilterCurrencies", 1);
                    break;
            }

            return session.GetTypedListByNamedQuery<IValuation>(
                "B4F.TotalGiro.Valuations.GetValuationData",
                parameters, parameterLists);
        }