Leave calculation mistake odoo - python-2.7

Hi i want to calculate half day leave for an employee. when applying for leave, the duration is set as 1/05/2018 18:30 -1/05/2018 23:30. ie 1.00pm to 6.00pm (ist).the day's calculation shows as 0.5 days. Working hour is scheduled as 9.00-18.00. But when generating payslip for the same employee total working days is shown as 31 days and working hours as 279. Odoo does not calculate the half day leave. how can i fix this? i have a doubt about specifying the time in duration while applying for leave. is it should be converted to utc?

Related

I need to CALCULATE() the total number of hours throughout the years, but what I what I get is a ridiculous number

I need to calculate the total of hours from the table 'Time Report[HH'] reardless of the date. The problem is that the result is much higher that what it actually is (4774 vs 68K (named REALESV2)).
Also, you can see how the curve drops after december :(
picture showing just 2022
picture showing 2022 and 2023
Thank you for your help!

Creating new calculation to sum a Dax Calculated Measure in Power BI

I have a promised hours calculation that looks at two dates (Coalesce) and gets the number of weeks in the month and then multiply it by the max promised hours for an employee which has a row for every week of the month. The employee could have 5 rows for every entry a week and the promised hours shows up the same as for example 40 for that week, thus why I have to take the max instead of do a sum. But at the end I need to show the total number of promised hours per week for whatever timeframe is chosen in the date slicer per employee.
Promised Hours Calc = CALCULATE(WEEKNUM(Max([CoalesceActualStart_AbsenceStart]),1)-WEEKNUM(MIN([CoalesceActualStart_AbsenceStart]),1))*MAX(FSLData[PromisedHours])
I then need it to do a sum for every employee on the above calculation.
I am getting all sorts of errors trying to do a sum on the calculation as a whole.
What you write is confusing and incomprehensible. That's why you get the errors. As soon as you are able to formulate your problem in such a way that others can understand it, you will understand it yourself and the errors will go away.

Why does powerbi average/day calculation become inaccurate over longer timespan?

I am trying to create a power BI calculation as an average per day of how many times a code was tripped. The dax calculcation that I have
Count Trips average per Day =
AVERAGEX(
KEEPFILTERS(VALUES('ruledata (2)'[Date].[Day])),
CALCULATE([Count Trips])
)
works fine when the average is being calculated over a couple days. I double checked this by hand and can confirm that it is accurate until at least 2 weeks. However once the time range increases to include months the average starts getting ridiculous and begins displaying average trips /day values that are much higher than the highest number of trips on a single day. I have confirmed that the data in the graph is correct
So I know that the values should reflect what is in the graph. In this two month example the DAX formula calculated the average to be 149.03 but the actual average/day should have been 82.8.
In general is there some sort of error in the DAX formula that I am using that could cause this?
I guess that 'ruledata (2)'[Date].[Day] is the day of the month. So if you take the average it will be wrong because when you take the average of e.g. March and April you will divide the total trips by 31, and not by 61 (30+31). So use 'ruledata (2)'[Date].[Date] instead.

Power Bi DAX: Reset Value past a date

Run into a problem.
I need to have a yearly reset on an entitlement value but the reset point is a different date for each person. A person gets entitlement 6 months after their start date, so that +6months date is when they should have a reset. Here is the +6months column i made:
+6m = DATE(YEAR('Employee List'[Emp. Dates]),
MONTH('Employee List'[Emp. Dates])+6,
DAY('Employee List'[Emp. Dates]))
I ran into this problem when i saw that the excess was taking away a persons entitlement by the amount of days took throughout their entire time at the company. Here is the measure for Excess:
Excess Days = CALCULATE(SUM('Employee List'[Entitlement]) -
SUM('Leave combined'[Duration1]))
This is taking away all recorded days even from a few years ago.
Can i make a measure that pretty much says if we are past the +6months date (DD/MM(Year doesnt matter i just need the same time every year)), then it will take away their entitlement from that +6months date and will not pick up any days from before the +6months reset?
e.g. if the +6months is March 1 2015, currently it is taking all the days took from their start to today, i want it to reset at every year on March 1 so it would only take data from March 1 2019 - today and will reset once we past March 1 2020. If a person has took 25 days a year on average and they only have 20 days entitlement, it should show they 5 excess days but for me now it is taking the total days took away from their entitlement.
I understand this is hard to explain and you may not get it but i am happy enough to explain.
Dummy Sheet
It is easier to create a calculated column to do this. Perhaps something like:
Calc =
VAR Person = TableA[Person]
VAR Date1 = EDATE(Entitlement[Start Date],6)
RETURN IF(TableA[Start]<Date1,0,TableA[Duration])
This column will make the duration 0, wherever the start date is lesser than the +6m date from entitlement. Once this column is created you can simply sum up the field at whatever level required, to get the desired output. Hope this helps.

Calculate Daily Average Month To Date in PowerBI

In Power Bi my average matters per day is not stopping on the current day.
Avg Per Day = DIVIDE([Matters],SUM(Dates[IsWorkday]))
where IsWorkday = IF(ISBLANK(Dates[Holiday]),IF(Dates[DayOfWeekNumber]>1&&Dates[DayOfWeekNumber]<7,1,0),0)
and Matters = COUNT(BillingData[Item])
So today is the 27th of the month so 18 of 20 work days are completed for the
month. So need [matters]/18, not [matters]/20.
How do I factor that in to my average and not affect previous months.
Any help appreciated.
Sounds like you need to just add one more condition to your if statement to add in that the date is less than todays date. Check out this post. I think it might have the solution to your problem or at least give you the idea you need to solve the issue.
https://community.powerbi.com/t5/Desktop/Networkdays-DAX-function/td-p/38044