8848digital / hrms

Open Source HR and Payroll Software
https://frappe.io/hr
GNU General Public License v3.0
0 stars 1 forks source link

Server error while opening Salary Payments Based On Payment Mode Report #21

Closed balamurugan8848 closed 1 week ago

balamurugan8848 commented 1 week ago

Information about bug

At the time of opening the Salary Payments Based On Payment Mode report the below error occurs. The same error comes when accessing Salary Payments via ECS Report also.

Image

Image

Module

Payroll

Version

Frappe HR: v15.36.1 (pre-prod) ERPNext: v15.50.0 (pre-prod) Frappe Framework: v15.52.0 (pre-prod)

Installation method

None

Relevant log output / Stack trace / Full Error Message.

### App Versions

{
    "assets": "0.0.1",
    "crm": "2.0.0-dev",
    "custom_crm": "0.0.1",
    "erpnext": "15.50.0",
    "erpnext_india": "0.0.1",
    "exotel_integration": "0.0.1",
    "frappe": "15.52.0",
    "helpdesk": "1.4.0",
    "hr_addon": "0.0.1",
    "hrms": "15.36.1",
    "india_compliance": "15.15.0",
    "insights": "3.0.0",
    "payments": "0.0.1",
    "print_designer": "1.4.3",
    "projects": "0.0.1",
    "sales_commission": "0.0.1",
    "transportation": "0.0.1"
}

### Route

query-report/Salary Payments Based On Payment Mode

### Traceback

Traceback (most recent call last):
  File "apps/frappe/frappe/app.py", line 114, in application
    response = frappe.api.handle(request)
  File "apps/frappe/frappe/api/__init__.py", line 49, in handle
    data = endpoint(**arguments)
  File "apps/frappe/frappe/api/v1.py", line 36, in handle_rpc_call
    return frappe.handler.handle()
  File "apps/frappe/frappe/handler.py", line 50, in handle
    data = execute_cmd(cmd)
  File "apps/frappe/frappe/handler.py", line 86, in execute_cmd
    return frappe.call(method, **frappe.form_dict)
  File "apps/frappe/frappe/__init__.py", line 1758, in call
    return fn(*args, **newargs)
  File "apps/frappe/frappe/utils/typing_validations.py", line 31, in wrapper
    return func(*args, **kwargs)
  File "apps/hrms/hrms/payroll/report/provident_fund_deductions/provident_fund_deductions.py", line 165, in get_years
    year_list = frappe.db.sql_list(
  File "apps/frappe/frappe/database/database.py", line 416, in sql_list
    return self.sql(query, values, **kwargs, debug=debug, pluck=True)
  File "apps/frappe/frappe/database/postgres/database.py", line 326, in sql
    return super().sql(modify_query(query), modify_values(values), *args, **kwargs)
  File "apps/frappe/frappe/database/database.py", line 236, in sql
    self._cursor.execute(query, values)
psycopg2.errors.UndefinedFunction: function year(date) does not exist
LINE 1: select distinct YEAR(end_date) from "tabSalary Slip" ORDER B...
                        ^
HINT:  No function matches the given name and argument types. You might need to add explicit type casts.

### Request Data

{
    "type": "POST",
    "args": {},
    "headers": {},
    "error_handlers": {},
    "url": "/api/method/hrms.payroll.report.provident_fund_deductions.provident_fund_deductions.get_years",
    "request_id": null
}

### Response Data

{
    "exception": "",
    "exc_type": "UndefinedFunction",
    "_exc_source": "hrms (app)",
    "_debug_messages": "[\"Error in query:\\nfunction year(date) does not exist\\nLINE 1: select distinct YEAR(end_date) from \\\"tabSalary Slip\\\" ORDER B...\\n                        ^\\nHINT:  No function matches the given name and argument types. You might need to add explicit type casts.\\n\"]"
}

Code of Conduct

balamurugan8848 commented 1 week ago

@hrishikesh8848 @Satya8848

hrishikesh8848 commented 1 week ago

@balamurugan8848 it is fixed

balamurugan8848 commented 1 week ago

@hrishikesh8848 i am getting this new error now

Image

Traceback (most recent call last):
  File "apps/frappe/frappe/app.py", line 114, in application
    response = frappe.api.handle(request)
  File "apps/frappe/frappe/api/__init__.py", line 49, in handle
    data = endpoint(**arguments)
  File "apps/frappe/frappe/api/v1.py", line 36, in handle_rpc_call
    return frappe.handler.handle()
  File "apps/frappe/frappe/handler.py", line 50, in handle
    data = execute_cmd(cmd)
  File "apps/frappe/frappe/handler.py", line 86, in execute_cmd
    return frappe.call(method, **frappe.form_dict)
  File "apps/frappe/frappe/__init__.py", line 1758, in call
    return fn(*args, **newargs)
  File "apps/frappe/frappe/utils/typing_validations.py", line 31, in wrapper
    return func(*args, **kwargs)
  File "apps/frappe/frappe/__init__.py", line 909, in wrapper_fn
    retval = fn(*args, **get_newargs(fn, kwargs))
  File "apps/frappe/frappe/desk/query_report.py", line 224, in run
    result = generate_report_result(report, filters, user, custom_columns, is_tree, parent_field)
  File "apps/frappe/frappe/__init__.py", line 909, in wrapper_fn
    retval = fn(*args, **get_newargs(fn, kwargs))
  File "apps/frappe/frappe/desk/query_report.py", line 84, in generate_report_result
    res = get_report_result(report, filters) or []
  File "apps/frappe/frappe/desk/query_report.py", line 65, in get_report_result
    res = report.execute_script_report(filters)
  File "apps/frappe/frappe/core/doctype/report/report.py", line 163, in execute_script_report
    res = self.execute_module(filters)
  File "apps/frappe/frappe/core/doctype/report/report.py", line 180, in execute_module
    return frappe.get_attr(method_name)(frappe._dict(filters))
  File "apps/hrms/hrms/payroll/report/salary_payments_based_on_payment_mode/salary_payments_based_on_payment_mode.py", line 20, in execute
    data, total_rows, report_summary = get_data(filters, mode_of_payments)
  File "apps/hrms/hrms/payroll/report/salary_payments_based_on_payment_mode/salary_payments_based_on_payment_mode.py", line 73, in get_data
    entry = frappe.db.sql(
  File "apps/frappe/frappe/database/postgres/database.py", line 326, in sql
    return super().sql(modify_query(query), modify_values(values), *args, **kwargs)
  File "apps/frappe/frappe/database/database.py", line 236, in sql
    self._cursor.execute(query, values)
psycopg2.errors.UndefinedFunction: function month(date) does not exist
LINE 3: ...atus = '1'  and sal.company = '8848 Digital'  and month(sal....
                                                             ^
HINT:  No function matches the given name and argument types. You might need to add explicit type casts.
hrishikesh8848 commented 1 week ago

@balamurugan8848 This is fixed

balamurugan8848 commented 1 week ago

@hrishikesh8848 it's working fine, closing this issue.