def testMarketFromRecordString(self):
     market = betfair.Market.fromRecordString("12~"
                                              "Market \\~ name~"
                                              "Type~"
                                              "Status~"
                                              "31536000000~"
                                              "\\Menu\\Path\\To\\Market~"
                                              "event hierarchy~"
                                              "bet delay~"
                                              "12345~"
                                              "country code~"
                                              "94608000000~"
                                              "55~"
                                              "2~"
                                              "1.234556~"
                                              "N~"
                                              "Y")
     self.assertEquals(market.Id, 12)
     self.assertEquals(market.Name, "Market \\~ name")
     self.assertEquals(market.Type, "Type")
     self.assertEquals(market.Status, "Status")
     self.assertEquals(market.StartDate, DateTime(1971, 1, 1))
     self.assertEquals(market.Path, "\\Menu\\Path\\To\\Market")
     self.assertEquals(market.EventHierarchy, "event hierarchy")
     self.assertEquals(market.BetDelay, "bet delay")
     self.assertEquals(market.ExchangeId, 12345)
     self.assertEquals(market.CountryCode, "country code")
     self.assertEquals(market.LastRefresh, DateTime(1972, 12, 31))
     self.assertEquals(market.NumberOfRunners, 55)
     self.assertEquals(market.NumberOfWinners, 2)
     self.assertEquals(market.TotalAmountMatched, 1.234556)
     self.assertEquals(market.BSPMarket, False)
     self.assertEquals(market.TurningInPlay, True)
def UpdateTOF():

    """
    <Script>
    <Author>ANK</Author>
    <Description>This script modifies scenario dates </Description>
    </Script>
    """

    scenarioFullPath = "/Group of cali/cali/Scenario of cali"
    TOF = DateTime(2014,2,1)
    SOS = TOF.AddDays(-1)
    EOS = TOF.AddDays(1)

    scmgr = app.Modules.Get("Scenario Manager")
 
    scenario = scmgr.ScenarioList.Fetch(scenarioFullPath);

    # first make sure we can set the dates without conflict (must hav SOS<=TOF<=EOS)
    scenario.SimulationStartDate = DateTime.MinValue
    scenario.SimulationTimeOfForecast = DateTime.MinValue
    scenario.SimulationEndDate = DateTime.MinValue

    # then set the dates
    scenario.SimulationEndDate = EOS
    scenario.SimulationTimeOfForecast = TOF
    scenario.SimulationStartDate = SOS
Exemple #3
0
def DataChanged(e):
    # 验证结束时间大于出差时间
    _FDateStart = this.View.BillModel.GetValue('FDateStart', e.Row)
    _FDateEnd = this.View.BillModel.GetValue('FDateEnd', e.Row)
    if e.Key == 'FDateStart':
        if _FDateStart != None and _FDateEnd != None:
            # 开始时间大于结束时间
            if DateTime.Parse(str(_FDateStart)).CompareTo(
                    DateTime.Parse(str(_FDateEnd))) == 1:
                this.View.ShowMessage('出差时间不能在结束时间之后!')
    if e.Key == 'FDateEnd':
        if _FDateStart != None and _FDateEnd != None:
            # 开始时间大于结束时间
            if DateTime.Parse(str(_FDateStart)).CompareTo(
                    DateTime.Parse(str(_FDateEnd))) == 1:
                this.View.ShowMessage('结束时间不能在出差时间之前!')

    # FAmount 为预计金额代理字段标识
    if e.Key == 'FAmount':
        # 预计费用
        PreMoney = float(this.View.BillModel.GetValue('F_ora_Amount'))
        PreMoney = convertNumToChinese(PreMoney)
        AmountDisplay = this.View.BillModel.SetValue('F_ora_AmountDisplay',
                                                     PreMoney)

    # ----------------------------------------------------------------------------------------------------
    if e.Key == 'F_ora_Cost':
        # 表体中预估费用更改时汇总到表头
        count = this.View.BillModel.GetEntryRowCount('FEntity')
        amount = sum([
            float(this.View.BillModel.GetValue('FExpectCost', row))
            for row in range(count)
        ])
        #this.View.ShowMessage(str(amount))
        this.View.BillModel.SetValue('F_ora_Amount', amount)
Exemple #4
0
def f2_2_11():
    # monitorType = 11
    tunnelId = 24
    installId = 3

    from System import DateTime
    startDate = DateTime(2017, 2, 6)
    endDate = DateTime(2018, 2, 6)

    view = _log(monitorSrv.QueryWebView11)(tunnelId, installId, startDate,
                                           endDate)

    print '\n地質資訊'
    print view.InstallInfo

    print '\n監測資料'
    showTable(view.GeoDefRecords)

    print '\nGoogle Map 測站資料'
    showTable(view.GeoDefMarksRecords)

    print '\n歷時曲線圖(East)'
    showChart(view.TimeChartEast)

    print '\n歷時曲線圖(North)'
    showChart(view.TimeChartNorth)

    print '\n歷時曲線圖(Up)'
    showChart(view.TimeChartUp)

    return view
Exemple #5
0
    def test_should_not_write_end_time_when_already_exists_in_report(self):
        self.accessor.read_end_time = DateTime.Parse("17:00")

        self.writer.write(new_workinghours("08:15", "16:15"))

        assert len(self.accessor.hours_written) == 1
        assert self.accessor.hours_written[0] == DateTime.Parse("8:15")
Exemple #6
0
    def __init__(self):
        """MonthCalendarSample class init function."""

        # setup title
        self.Text = "MonthCalendar control"

        # setup monthcalendar
        self.monthcalendar = MonthCalendar()
        # set one days that can be selected in a month calendar control
        self.monthcalendar.MaxSelectionCount = 2
        self.monthcalendar.ShowWeekNumbers = True
        #NOTE: Strongwind tests depend on this date setting! Make sure to update them if you change it
        initialRange = SelectionRange(DateTime.Parse("1/23/2008"),
                                      DateTime.Parse("1/23/2008"))
        self.monthcalendar.SelectionRange = initialRange
        self.monthcalendar.DateChanged += self.date_select

        # setup label
        self.label = Label()
        self.label.Width = 200
        self.label.Height = 50
        self.label.Location = Point(5, 170)
        self.label.Text = (
            "Your selection is:\n" +
            (self.monthcalendar.SelectionRange.Start).ToString('o')[:10])

        # add controls
        self.Controls.Add(self.monthcalendar)
        self.Controls.Add(self.label)
Exemple #7
0
    def setUp(self):
        temp_dir = DirectoryInfo(Environment.GetEnvironmentVariable("TEMP"))
        #       myDocuments = DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments))
        self.temp_dir = temp_dir.CreateSubdirectory('tempDir')
        self.temp_dir_path = self.temp_dir.ToString()

        self.file1 = FileInfo(self.temp_dir_path + '\\file1.txt')
        self.file2 = FileInfo(self.temp_dir_path + '\\file2.txt')
        self.file3 = FileInfo(self.temp_dir_path + '\\file3.txt')

        sw = self.file1.CreateText()
        sw.WriteLine("Hello1")
        sw.Close()

        sw = self.file2.CreateText()
        sw.WriteLine("Hello2")
        sw.Close()

        sw = self.file3.CreateText()
        sw.WriteLine("Hello3")
        sw.Close()

        today = DateTime.Now
        one_day_old = today.AddDays(-1).ToString("yyyy.MM.dd")
        two_days_old = today.AddDays(-2).ToString("yyyy.MM.dd")
        self.file1.CreationTime = DateTime.Parse(today.ToString("yyyy.MM.dd"))
        self.file2.CreationTime = DateTime.Parse(one_day_old)
        self.file3.CreationTime = DateTime.Parse(two_days_old)

        print "\r myDocuments temp path = [%s]" % self.temp_dir_path
        print "CreationTime file1 = [%s]" % self.file1.CreationTime
        print "CreationTime file2 = [%s]" % self.file2.CreationTime
        print "CreationTime file3 = [%s]" % self.file3.CreationTime
Exemple #8
0
    def test_should_not_write_starting_hours_when_hours_exist(self):
        self.accessor.read_start_time = DateTime.Parse("09:00")

        self.writer.write(new_workinghours("08:15", "16:15"))

        assert len(self.accessor.hours_written) == 1
        assert self.accessor.hours_written[0] == DateTime.Parse("16:15")
Exemple #9
0
    def test_System_DateTime_binding(self):
        pydt = datetime.datetime(2015, 4, 25, 8, 39, 54)
        netdt = DateTime(2015, 4, 25, 9, 39, 54)

        result = netdt.Subtract(pydt)
        expected = TimeSpan(1, 0, 0)

        self.assertEqual(expected, result)
Exemple #10
0
def setup_date_mapping():
    date_from = dict()
    #dt = DateTime(DateTime.Today.Year, DateTime.Today.Month, 1)
    dt = DateTime(2024, DateTime.Today.Month, 1)
    date_from['HenryHub'] = dt
    date_from['Contract1'] = dt.AddMonths(1)
    date_from['Contract2'] = dt.AddMonths(2)
    date_from['Contract3'] = dt.AddMonths(3)
    date_from['Contract4'] = dt.AddMonths(4)
    return date_from
 def testDateTimeFromPosix(self):
     self.assertEquals(DateTime(1970, 1, 1), betfair.DateTimeFromPosix(0))
     self.assertEquals(DateTime(1970, 1, 1, 1, 0, 0),
                       betfair.DateTimeFromPosix(3600000))
     self.assertEquals(DateTime(1970, 1, 2),
                       betfair.DateTimeFromPosix(3600000 * 24))
     self.assertEquals(DateTime(1971, 1, 1),
                       betfair.DateTimeFromPosix(3600000 * 24 * 365))
     self.assertEquals(DateTime(1979, 12, 30),
                       betfair.DateTimeFromPosix(3600000 * 24 * 365 * 10))
Exemple #12
0
def Get_TStoExport(exportSpreadsheetPath, startExportDate, endExportDate):
    """
    <Script>
    <Author>admin</Author>
    <Description>Paradis perdu</Description>
    <Parameters>
    <Parameter name="exportSpreadsheetPath" type="string">spreadsheet_full_path</Parameter>
    <Parameter name="startExportDate" type="string">Time of the start export</Parameter>
    <Parameter name="endExportDate" type="string">Time of the end export.</Parameter>
    </Parameters>
    <ReturnValue type="Dictionary[string, List[data]]" >time series to export </ReturnValue>
    </Script>
    """
    exportInfoList = LoadExportSpreadsheet(exportSpreadsheetPath);
    
    
    exportData = {}
    
    timeSeriesManager = app.Modules.Get('Time series Manager');
    if timeSeriesManager == None:
        raise Exception('Can''t obtain a reference to Time series Manager.');
        
    for exportInfo in exportInfoList:
        print 'fichier exporté =', exportInfo.TsToExport;
        print 'dossier MIKE Opération =',exportInfo.OutputPath;

    start = DateTime.ParseExact(startExportDate, 'MM/dd/yyyy HH:mm:ss', CultureInfo.InvariantCulture); 
    end = DateTime.ParseExact(endExportDate, 'MM/dd/yyyy HH:mm:ss', CultureInfo.InvariantCulture);
  
    count = 1;
    
    for exportInfo in exportInfoList:
        
        ts = timeSeriesManager.TimeSeriesList.Fetch(exportInfo.TsToExport);
        exportData = ts.GetAll();
        if (ts == None):
            message = 'Time series ' + exportInfo.TsPath + ' must be created before import.';
            WriteError(message);
               
                                    
            tsMgr = app.Modules.Get('Time series Manager')
            
        outputPath =exportInfo.OutputPath;
        stationId = exportInfo.StationCode;
        type=exportInfo.Type;
        timeOfSimulationRun = start;
        firstTimeStep = startExportDate;
        lastTimeStep = endExportDate;
        
        if count <2:
            WriteExportTs(ts, outputPath, stationId, type, timeOfSimulationRun,firstTimeStep, lastTimeStep);
            count += 1;
            
        WriteExportTs_2(ts, outputPath, stationId, type, timeOfSimulationRun,firstTimeStep, lastTimeStep,startExportDate, endExportDate);        
Exemple #13
0
def HandlBtnClick(sender, e):
    try:
        url = None

        # button for changing session-stored location was pressed
        if sender.ID == 'btn_select_slct_loctn':
            countryCode = tool.ui.getCtrl('sel_country').SelectedValue
            cityIdentifier = tool.ui.getCtrl('txbx_city').Text
            lcDfnr.setLocByInpt(countryCode, cityIdentifier)

            if lcDfnr.getValidLoctn() is None:
                tool.errorMessage(
                    ' <br />Es wurde keine Stadt oder Postleitzahl gefunden! <br />Hast du das richtige Land ausgew&auml;hlt?<br />'
                )
                return

        # go to data-projector
        elif 'btn_show_loctn_map' in sender.ID:
            url = WebConfigurationManager.AppSettings[
                "debateMap"]  # go to the map on 'openMap'
        elif 'btn_show_loctn_list' in sender.ID:
            url = WebConfigurationManager.AppSettings[
                "debateProjector"]  # go to the list with all infos on 'openList'

        # buil URL-parameter for data-filtering
        param = '?' + lcDfnr.getLoctnPrmtr()

        #http://localhost:3463/njb_2/projector_DebateMap.aspx?SliceActive=0&CrsCmd=&ResultLength=2500&ItemType=map&Loc=DE,&City=erkelenz&StartDate=2013-11-23&EndDate=2013-11-30&SrchMd=OR&Tags=,hashtagtest&
        #&StartDate=2013-11-23
        #&EndDate=2013-11-30
        strtTime = tool.ui.getCtrl('txbx_timeFrom').Text.strip()
        endTime = tool.ui.getCtrl('txbx_timeTo').Text.strip()

        if len(strtTime) > 0:
            startDt = DateTime.ParseExact(strtTime, "dd.MM.yyyy",
                                          CultureInfo.InvariantCulture)
            param += '&StartDate=' + startDt.ToString('yyyy-MM-dd')

        if len(endTime) > 0:
            endDt = DateTime.ParseExact(endTime, "dd.MM.yyyy",
                                        CultureInfo.InvariantCulture)
            param += '&EndDate=' + endDt.ToString('yyyy-MM-dd')

        # param = Page.Server.UrlEncode( param )

        url += param
        tool.log.w2lgDvlp('search_rubric_handle_button . Url Param : ' + param)

    except Exception, e:
        tool.log.w2lgError(traceback.format_exc())
        return
Exemple #14
0
def WriteExportTs_2(ts, outputPath, stationId, type, timeOfSimulationRun,firstTimeStep, lastTimeStep, startExportDate, endExportDate):
    """
    <Script>
    <Author>admin</Author>
    <Description>Saves a time series to a txt file.</Description>
    <Parameters>
    <Parameter name="ts" type="IDataSeries">Time series to export.</Parameter>    
    <Parameter name="outputPath" type="string">The full path to the CSV file.</Parameter>    
    <Parameter name="stationId" type="string">The id of the forecast station.</Parameter>    
    <Parameter name="type" type="string">The name of the forecast station.</Parameter>    
    <Parameter name="timeOfSimulationRun" type="datetime">The datetime of the simulation run.</Parameter>
    <Parameter name="firstTimeStep" type="datetime">DateTime of the start export.</Parameter>
    <Parameter name="lastTimeStep" type="datetime">DateTime of the end export.</Parameter>
    <Parameter name="startExportDate" type="string">Time of the start export</Parameter>
    <Parameter name="endExportDate" type="string">Time of the end export.</Parameter>
    </Parameters>       
    </Script>
    """
    fileName = 'Export'+ '.txt';
       
       
    # Create new file and overwrite if it already exists.
    strBuilder = System.Text.StringBuilder();       
    
    currentDateTimeString = timeOfSimulationRun.ToString('yyyyMMddHHmm');
    ExportDateTimeString = System.DateTime.Now. ToString('yyyyMMddHHmm');
    
    start = DateTime.ParseExact(startExportDate, 'MM/dd/yyyy HH:mm:ss', CultureInfo.InvariantCulture); 
    end = DateTime.ParseExact(endExportDate, 'MM/dd/yyyy HH:mm:ss', CultureInfo.InvariantCulture);

    
    #Write each time step.
   
    timeSteps = ts.GetAll();
    
    for timeStep in timeSteps:
        if timeStep.XValue > start and timeStep.XValue < end:
            valueString = None;
            if (timeStep.YValue <> None):
                valueString = timeStep.YValue.ToString(System.Globalization.CultureInfo.InvariantCulture);
                if type == 'debit':
                   timeStepString = System.String.Format('{0};{1};{2};{3};{4};{5};{6}', 'CQT', stationId, timeStep.XValue.ToString('yyyyMMdd'),timeStep.XValue.ToString('HHmm'), valueString, '2', '9');
                   strBuilder.AppendLine(timeStepString);
                    
                else: 
                    timeStepString = System.String.Format('{0};{1};{2};{3};{4};{5};{6}', 'NGF', stationId, timeStep.XValue.ToString('yyyyMMdd'),timeStep.XValue.ToString('HHmm'), valueString, '2', '9');
                    strBuilder.AppendLine(timeStepString);
    FileName = System.IO.Path.Combine(outputPath, fileName);
    System.IO.File.AppendAllText(FileName, strBuilder.ToString());
    return;
def wait_until_ready():
   '''
   Waits until a fixed amount of time has passed since this function was 
   last called.  Returns immediately if that much time has already passed.
   '''
   global __next_query_time_ms, __QUERY_DELAY_MS 
   time_ms = (DateTime.Now-DateTime(1970,1,1)).TotalMilliseconds
   wait_ms = __next_query_time_ms - time_ms
   if wait_ms > 0:
      t = Thread(ThreadStart(lambda x=0: Thread.CurrentThread.Sleep(wait_ms)))
      t.Start()
      t.Join()
   time_ms = (DateTime.Now-DateTime(1970,1,1)).TotalMilliseconds
   __next_query_time_ms = time_ms + __QUERY_DELAY_MS
def DataChanged(e):
    if str(this.Context.ClientType) != 'Mobile':
        if e.Key == 'FType':
            # 1=>工作日加班;2=>节假日加班;3=>双休日加班
            # 支付方式:1付费;2调休
            ftype = this.View.Model.GetValue('FType')
            if ftype in ('1', '3'):
                this.View.Model.SetValue('FPayType', 2)
                this.View.StyleManager.SetEnabled("FPayType", "", False)
            elif ftype == '2':
                this.View.StyleManager.SetEnabled("FPayType", "", True)

        # 加班时间选择时提醒
        if e.Key == 'F_SDatetime' or e.Key == 'F_EDatetime':
            _FStart = this.View.Model.GetValue('F_SDatetime', e.Row)
            _FEnd = this.View.Model.GetValue('F_EDatetime', e.Row)
            if _FStart != None and _FEnd != None:

                #sql = 'select * from T_ENG_WorkCalData where FDay='.format()
                #DBUtils.ExecuteDataSet(this.Context, sql).Tables[0]

                ## 如果开始在17:30之前,结束在18:00后
                #if _FStart.CompareTo(DateTime.Parse('17:30:00')) in (-1, 0) and _FEnd.CompareTo(DateTime.Parse('18:00:00')) in (0, 1):
                #	_FStart = DateTime.Parse('18:00:00')

                #从表单默认加载的时间有误差,此处校准
                _FStart = DateTime(_FStart.Year, _FStart.Month, _FStart.Day,
                                   _FStart.Hour, _FStart.Minute,
                                   _FStart.Second)

                hours = float(
                    _FEnd.ToUniversalTime().Ticks -
                    _FStart.ToUniversalTime().Ticks) / 10000000 / 3600
                if hours > 0:
                    floor = lambda x: int(str(x).split('.')[0]) + 0.5 if float(
                        '0.' + str(x).split('.')[1]) >= 0.5 else int(
                            str(x).split('.')[0])
                    last_hours = floor(hours - NoonCrt(_FStart, _FEnd))

                    this.View.Model.SetValue('F_ora_PreTime', last_hours,
                                             e.Row)
                    this.View.Model.SetValue('F_ora_RealTime', last_hours,
                                             e.Row)
                else:
                    this.View.ShowMessage('加班结束日期不能小于开始日期')
                    #this.View.BillModel.SetValue('F_ora_EndTime', _FStart, e.Row)
                    this.View.Model.SetValue('F_ora_PreTime', 0, e.Row)
                    this.View.Model.SetValue('F_ora_RealTime', 0, e.Row)
Exemple #17
0
def GetDateTimeUtcFromISO8601FormattedDate(isoFormattedDate):
    return DateTime.ParseExact(
            isoFormattedDate,
            ISO8601_FORMAT_UTC,
            CultureInfo.InvariantCulture,
            DateTimeStyles.AdjustToUniversal
        )
    def fetch_unsent_items_from_InsCalibrationStatus(cursor):
        unsent_ins_cal_status = []
        if cursor:
            cursor.execute("SELECT * FROM InsCalibrationStatus WHERE Sent = 0")
            rows = cursor.fetchall()
            for row in rows:
                cal = ins_calibration_status()
                cal.Curve = row['Curve']
                cal.FitRate = row['FitRate']
                cal.LotNo = row['LotNo']
                cal.ReagentLotNo = row['ReagentLotNo']
                cal.ResultDate = DateTime.Parse(row['ResultDate'])
                
                cal.State = CalibrationStateType.Unkown
                if 'Pass' == row['State']:
                    cal.State = CalibrationStateType.Pass
                elif 'Fail' == row['State']:
                    cal.State = CalibrationStateType.Failed
                cal.TestCode = row['TestCode']
                cal.TtlNums = int(row['TtlNums'])
                cal.Sent = row['Sent']
                cal.ID = row['ID']
                cal.uuid = row['uuid']

                unsent_ins_cal_status.append(cal)
        return unsent_ins_cal_status
Exemple #19
0
    def test_System_DateTime_conversion(self):
        example = datetime.datetime(2015, 4, 25, 8, 39, 54)
        result = clr.Convert(example, DateTime)
        self.assertIsInstance(result, DateTime)

        expected = DateTime(2015, 4, 25, 8, 39, 54)
        self.assertEqual(expected, result)
Exemple #20
0
 def to_date(self, date):
     """
     Turn datetime object into a C# datetime object
     """
     return DateTime(
         date.year, date.month, date.day, date.hour, date.minute, date.second
     )
Exemple #21
0
    def onUpdate():
        if NetworkInterface.GetIsNetworkAvailable():
            try:
                response = None
                stream = None

                try:
                    response = request.GetResponse()
                    stream = response.GetResponseStream()
                    doc = XmlDocument()
                    doc.Load(stream)

                    for entryXmlNode in doc.GetElementsByTagName("entry"):
                        entry = Entry()

                        for xmlNode in entryXmlNode.ChildNodes:
                            if xmlNode.Name.Equals("title"):
                                entry.Title = xmlNode.InnerText
                            elif xmlNode.Name.Equals("issued"):
                                entry.Created = DateTime.Parse(
                                    xmlNode.InnerText)
                            elif xmlNode.Name.Equals("modified"):
                                entry.Modified = DateTime.Parse(
                                    xmlNode.InnerText)
                            elif xmlNode.Name.Equals("link"):
                                for attribute in xmlNode.Attributes:
                                    if attribute.Name.Equals("href"):
                                        entry.Resource = Uri(attribute.Value)
                            elif xmlNode.Name.Equals("author"):
                                for childXmlNode in xmlNode.ChildNodes:
                                    if childXmlNode.Name.Equals("name"):
                                        entry.Author = childXmlNode.InnerText

                        entry.Image = Uri(
                            "http://www.google.co.jp/options/icons/gmail.gif")
                        entryList.Add(entry)

                finally:
                    if stream is not None:
                        stream.Close()

                    if response is not None:
                        response.Close()

            except Exception, e:
                Trace.WriteLine(e.clsException.Message)
                Trace.WriteLine(e.clsException.StackTrace)
Exemple #22
0
def f2_3_8():
    tunnelId = 5  # 雪山隧道
    structureId = 24  # 南下線
    projectId = 2000  # 2050年TEST_2050測試專案

    from System import DateTime
    startDate = DateTime(2018, 1, 1)
    endDate = DateTime(2018, 12, 31)

    view = _log(inspectSrv.QueryWebView8)(
        structureId, projectId, startDate, endDate)

    print '排水設施資料表'
    showTable(view.Records)
    print

    return view
def gettestendDate(startDate, numofDays):
    import clr
    from System import DateTime
    endDate = None
    if startDate is not None:
        parsedDate = DateTime.Parse(startDate)
        endDate = parsedDate.AddDays(numofDays)
    return endDate
Exemple #24
0
 def __init__(self, pandasSeries):
     t = str(pandasSeries.name)[:10].split("-")
     self.Date = DateTime(int(t[0]), int(t[1]), int(t[2]))
     self.Open = Decimal(float(pandasSeries["Open"]))
     self.High = Decimal(float(pandasSeries["High"]))
     self.Low = Decimal(float(pandasSeries["Low"]))
     self.Close = Decimal(float(pandasSeries["Close"]))
     self.Volume = Decimal(float(pandasSeries["Volume"]))
Exemple #25
0
def switch_data_to_date(args, arg_opt):
    '''
    Pull a date from the command line
    '''
    try:
        return DateTime.Parse(switch_data(args, arg_opt))
    except:
        return None
def ImportTimeseriesFromTextFile():
    """
    <Script>
    <Author>AUG</Author>
    <Description>This script imports timeseries from text files.</Description>
    </Script>
    """
    
    # Set parameters
    folderPath = 'C:\\Data' # the folder where the files to import are located
    targetTimeseriesGroupName = '/Output' # the group where the timeseries will be created / updated
    datetimeFormat = "dd.MM.yyyy  HH:mm" # tge date time format
    fileExtention="*.txt" # the extention of the input files
    variable = "Rainfall Depth" # the variable type
    valueType = DataSeriesValueType.Step_Accumulated # the value type
    firstLine = 11 # the first line with value (start at zero. 11 means 12th line)
    valueLength = 3 # the number of characters describing the value (e.g. "0.2" -> 3 characters, "11.248" -> 6 characters)
    
    # Set variables
    count = 0
    tmgr = app.Modules.Get('Time series Manager');
    
    # import
    files = Directory.GetFiles(folderPath, fileExtention, SearchOption.AllDirectories)
    group = tmgr.TimeSeriesGroupList.Fetch(targetTimeseriesGroupName)
    if group == None:
        group = tmgr.TimeSeriesGroupList.CreateNew(targetTimeseriesGroupName)
        tmgr.TimeSeriesGroupList.Add(group)
    for file in files:
            filename = Path.GetFileNameWithoutExtension(file)
            ts = tmgr.TimeSeriesList.Fetch(targetTimeseriesGroupName + "/" + filename)
            if ts == None:
                ts = tmgr.TimeSeriesList.CreateNew()
                ts.Name = filename
                ts.YAxisVariable = variable
                ts.ValueType = valueType
                ts.GroupId = group.Id
                tmgr.TimeSeriesList.Add(ts)
                lastTimestep = DateTime.MinValue
            else:
                timestepts = ts.FetchAll()
                if(timestepts.Count > 0):
                    lastTimestep = timestepts[timestepts.Count - 1].XValue
                else:
                    lastTimestep = DateTime.MinValue
            lines = File.ReadAllLines(file);
            for line in lines:
                if count >= firstLine:
                    date = DateTime.ParseExact(line[0:datetimeFormat.Length], datetimeFormat, CultureInfo.InvariantCulture)
                    if date > lastTimestep:
                        value = float(line[-valueLength:])
                        step = ts.CreateNew()
                        step.XValue = date
                        step.YValue = value
                        ts.Add(step)
                count+=1
            tmgr.TimeSeriesList.Update(ts)
Exemple #27
0
    def onUpdate():
        if NetworkInterface.GetIsNetworkAvailable():
            try:
                response = None
                stream = None

                try:
                    response = request.GetResponse()
                    stream = response.GetResponseStream()
                    doc = XmlDocument()
                    doc.Load(stream)

                    for itemXmlNode in doc.GetElementsByTagName("item"):
                        entry = Entry()
                        epicenter = None
                        maxLevel = None

                        for xmlNode in itemXmlNode.ChildNodes:
                            if xmlNode.Name.Equals("link"):
                                entry.Resource = Uri(xmlNode.InnerText)
                            elif xmlNode.Name.Equals("description"):
                                entry.Description = xmlNode.InnerText
                            elif xmlNode.Name.Equals("tenkiJP:earthquake"):
                                for attribute in xmlNode.Attributes:
                                    if attribute.Name.Equals("epicenter"):
                                        epicenter = attribute.Value
                                    elif attribute.Name.Equals("max_level"):
                                        maxLevel = attribute.Value
                                    elif attribute.Name.Equals(
                                            "outbreak_datetime"):
                                        entry.Created = entry.Modified = DateTime.Parse(
                                            attribute.Value)

                        if epicenter is not None:
                            if String.IsNullOrEmpty(maxLevel):
                                maxLevel = "N/A"

                            if CultureInfo.CurrentCulture.Equals(
                                    CultureInfo.GetCultureInfo("ja-JP")):
                                entry.Title = String.Format(
                                    "震度{0} - {1}", maxLevel, epicenter)
                            else:
                                entry.Title = String.Format(
                                    "Intensity {0} - {1}", maxLevel, epicenter)

                            entryList.Add(entry)

                finally:
                    if stream is not None:
                        stream.Close()

                    if response is not None:
                        response.Close()

            except Exception, e:
                Trace.WriteLine(e.clsException.Message)
                Trace.WriteLine(e.clsException.StackTrace)
Exemple #28
0
def fromPlatformIndDateTime(dt):
    dt = str(dt)

    (date, time) = dt.split("_")
    (day, month, year) = date.split("/")
    (hour, minute, second) = time.split(":")

    return DateTime(int(year), int(month), int(day), int(hour), int(minute),
                    int(second))
Exemple #29
0
def from_datetime_like(datetime_like, time_period_type):
    """ Converts either a pandas Period, datetime or date to a .NET Time Period"""

    if (hasattr(datetime_like, 'hour')):
        time_args = (datetime_like.hour, datetime_like.minute,
                     datetime_like.second)
    else:
        time_args = (0, 0, 0)

    date_time = DateTime(datetime_like.year, datetime_like.month,
                         datetime_like.day, *time_args)
    return TimePeriodFactory.FromDateTime[time_period_type](date_time)
Exemple #30
0
def getFilesYoungerThan(dir, younger_than=0):
    if exists(dir):
        files = Directory.GetFiles(dir)
        date_to_check = DateTime.Parse(
            DateTime.Now.AddDays(-younger_than).ToString("yyyy.MM.dd"))
        files_of_age = []
        for file in files:
            file = FileInfo(file)
            print file
            result = DateTime.Compare(file.CreationTime, date_to_check)

            if result < 0:
                relationship = "is earlier than %s" % date_to_check
            elif result == 0:
                relationship = "is the same time as %s" % date_to_check
                files_of_age.append(file)
            else:
                relationship = "is later than %s" % date_to_check
                files_of_age.append(file)
            print relationship
        return files_of_age
    def get_slave_reports_since_startup(self, slave, job):
        slave_info = RepositoryUtils.GetSlaveInfo(slave, True)
        slave_run_time = slave_info.SlaveRunningTime
        slave_reports = RepositoryUtils.GetSlaveReports(slave)
        error_reports = slave_reports.GetErrorReports()
        job_error_reports = []

        slave_start_time = DateTime.get_Now().AddSeconds(-slave_run_time)

        for report in error_reports:

            # Report time doesn't match local time zone
            # This is obviously f****d...add 85 minutes to the reported time
            # TODO: resolve this time offset nonsense

            report_time = report.ReportDateTimeOf
            if report.ReportJobName == job.JobName:
                if DateTime.op_GreaterThan(slave_start_time, report_time):
                    continue
                job_error_reports.append(report)

        return job_error_reports