How to cal duration with start end dates - Printable Version +- TACTIC Open Source (http://forum.southpawtech.com) +-- Forum: TACTIC Open Source (http://forum.southpawtech.com/forumdisplay.php?fid=3) +--- Forum: TACTIC Discussion (http://forum.southpawtech.com/forumdisplay.php?fid=4) +--- Thread: How to cal duration with start end dates (/showthread.php?tid=104) |
How to cal duration with start end dates - EricTsuei - 04-27-2020 How to cal duration with start end dates? is there some exp like @GET(.bid_start_date) - @GET(.bid_end_date)? or like excel @NETWORKDAYS(@GET(.bid_start_date) , @GET(.bid_end_date)) RE: How to cal duration with start end dates - remkonoteboom - 04-27-2020 It should have been possible to just subtract the dates: @GET(.bid_end_date) - @GET(.bid_start_date) However, I found that there is a bug in the code, in src/pyasm/biz/expression.py 1050 # convert result to seconds if it is a timedelta 1051 if isinstance(result, datetime.timedelta): 1052 result = results.seconds This doesn't take days into account and should maybe have been: 1052 result = result.days*24*3600 + result.seconds However, looking at it now, I think it should return a timedelta and that this conversion to seconds is incorrect. This was probably done a while ago when datetime and timedelta were not so well supported in Python2 (yes, there was a time when lots of things didn't handle dates very well). I think the best solution would be to comment out 1051 and 1052 completely. I am not sure what code would break if that's the case. Note: this does not do the same as @NETWORKDAYS which calculate business days. All the date tools for calculating this are in TACTIC code but have not been mapped to the expression language. RE: How to cal duration with start end dates - listy - 04-28-2020 Sorry. But what is @NETWORKDAYS ? Doe this even exists??? RE: How to cal duration with start end dates - remkonoteboom - 04-28-2020 @NETWORKDAYS is an Microsoft Excel function (which is actually where we got the @ notation from). It is not a TACTIC expression language function. What it does in excel is give the business days between two dates (not including weekends and holidays). RE: How to cal duration with start end dates - EricTsuei - 04-29-2020 ok, I have comment out #if isinstance(result, datetime.timedelta): #result = results.seconds but I get this result, "2 days, 0:00:00" (see attachment) how can I only get the days in int format? RE: How to cal duration with start end dates - listy - 04-29-2020 May be it would be easier to you to write custom class for your column? RE: How to cal duration with start end dates - gilesfinance - 05-16-2022 (04-27-2020, 02:10 PM)remkonoteboom Wrote: It should have been possible to just subtract the dates: |