示例#1
0
 def repairArchivedMISCache(self, as_of_date):
     path = self.mis_cache_path + "archived/" + as_of_date.strftime(
         "%Y-%m-%d") + "/"
     f = FundManager(path)
     while True:
         error = f.checkCache()
         if not error[0]:
             m_updater = MISCacheUpdater(path)
             for e in error[1]:
                 print e[0], "--- missing", e[1]
                 if e[1] == "product_rep":
                     m_updater.loadProductData(as_of_date)
                 elif e[1] == "fund_rep":
                     m_updater.loadFundData(as_of_date)
                 elif e[1] == "meeting":
                     m_updater.loadMeetingsData(as_of_date, e[0])
                 elif e[1] == "exposure":
                     m_updater.loadExposureData(as_of_date, e[0])
                 elif e[1] == "aum":
                     m_updater.loadAumData(as_of_date, e[0])
                 elif e[1] == "return":
                     m_updater.loadReturnsData(as_of_date, e[0])
                 elif e[1] == "stats":
                     m_updater.loadStatisticsData(as_of_date, e[0])
                 elif e[1] == "transactions":
                     m_updater.loadInternalTransactionData(as_of_date, e[0])
                 elif e[1] == "holding":
                     m_updater.loadHoldingsData(as_of_date, e[0])
                 elif e[1] == "trans_rep":
                     m_updater.loadTransactionData(as_of_date)
                 elif e[1] == "people_org_rep":
                     m_updater.loadContactsData(as_of_date)
         else:
             break
示例#2
0
    def __init__(self, root, props):
        self.final_funds = [
            370761, 370775, 762605, 762635, 370751, 370753, 370755, 370745,
            370759
        ]
        self.pass_through_funds = [
            571779, 571781, 572179, 764579, 571819, 763955, 571699, 763957,
            571979, 571981, 571985, 571859, 571739, 571741, 536699, 634859,
            571987, 571899, 536701
        ]
        self.def_network_cache_path = props.data['NET_CACHE_PATH']
        self.def_local_cache_path = props.data['CACHE_PATH']
        self.def_output_path = props.data['OUTPUT_PATH']
        self.root = root

        self.early_terminate = False
        self.fundman = FundManager()
        self.cache_dates = props.data['MIS_DATES']
        if len(self.cache_dates) > 0:
            self.cache_most_recent_date = self.cache_dates[0]
        else:
            self.cache_most_recent_date = "N/A"

        self.months = ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug",
                       "Sep", "Oct", "Nov", "Dec")
        self.months_rev = []
        for var in range(len(self.months) - 1, -1, -1):
            self.months_rev.append(self.months[var])
        self.years = []
        for i in range(1990, datetime.now().year + 1):
            self.years.append(i)
        self.years = tuple(self.years)
示例#3
0
    def getMISArchiveDates(self):
        path = self.mis_cache_path + "archived/"
        dir_names = os.listdir(path)
        dates = []
        other_dates = []
        for d in dir_names:
            f = FundManager(path + d)
            if f.checkCache()[0]:
                dates.append(datetime.strptime(d, "%Y-%m-%d"))
            else:
                other_dates.append(datetime.strptime(d, "%Y-%m-%d"))
        dates = sorted(dates, reverse=True)
        other_dates = sorted(other_dates, reverse=True)

        return [dates, other_dates]