Free and Open Source Enterprise Resource Planning (ERP)
This report summarizes scanner evidence for frappe/erpnext, a Python project with 39,985 GitHub stars. SynthScan examined 967,254 lines of code across 5580 source files, recording 10231 pattern matches distributed across 19 syntactic categories. The legacy adjusted pattern signal is 10.7 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 9485 finding(s).
Are imports declared and package/API names verified? 297 finding(s).
Are wrappers, guards, and repeated structures necessary? 9157 finding(s).
Which changes need focused human review? 10231 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 10231 distinct pattern matches across 19 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | banking/src/hooks/useMultiFileUploadProgress.ts | 4 | export function useMultiFileUploadProgress() { | CODE |
| LOW | erpnext/__init__.py | 77 | def is_perpetual_inventory_enabled(company): | CODE |
| LOW | erpnext/__init__.py | 211 | def _is_within_user_permissions(doctype: str, name) -> bool: | CODE |
| LOW | erpnext/deprecation_dumpster.py | 130 | def taxes_and_totals_get_itemised_taxable_amount(items): | CODE |
| LOW | erpnext/deprecation_dumpster.py | 148 | def get_pos_profile_item_details(company, ctx, pos_profile=None, update_data=False): | CODE |
| LOW | erpnext/deprecation_dumpster.py | 172 | def project_update_daily_reminder(): | CODE |
| LOW | erpnext/deprecation_dumpster.py | 224 | def project_update_email_sending( | CODE |
| LOW | erpnext/edi/doctype/code_list/code_list_import.py | 51 | def import_genericode_from_url( | CODE |
| LOW | erpnext/edi/doctype/code_list/code_list_import.py | 68 | def get_uploaded_genericode_file() -> tuple[bytes, str | None]: | CODE |
| LOW | erpnext/edi/doctype/code_list/code_list_import.py | 94 | def fetch_genericode_from_url(url: str) -> bytes: | CODE |
| LOW | erpnext/edi/doctype/code_list/code_list_import.py | 100 | def import_genericode_content( | CODE |
| LOW | erpnext/edi/doctype/code_list/code_list_import.py | 156 | def process_genericode_import( | CODE |
| LOW | erpnext/edi/doctype/code_list/code_list_import.py | 178 | def get_genericode_columns_and_examples(root): | CODE |
| LOW⚡ | erpnext/edi/doctype/code_list/test_code_list.py | 45 | def test_version_key_orders_integers_and_iso_dates(self): | CODE |
| LOW⚡ | erpnext/edi/doctype/code_list/test_code_list.py | 53 | def test_canonical_uri_resolves_to_latest_version(self): | CODE |
| LOW⚡ | erpnext/edi/doctype/code_list/test_code_list.py | 56 | def test_name_resolves_to_itself(self): | CODE |
| LOW⚡ | erpnext/edi/doctype/code_list/test_code_list.py | 60 | def test_name_takes_precedence_over_canonical_uri(self): | CODE |
| LOW⚡ | erpnext/edi/doctype/code_list/test_code_list.py | 73 | def test_unknown_uri_resolves_to_none(self): | CODE |
| LOW⚡ | erpnext/edi/doctype/code_list/test_code_list.py | 76 | def test_lookups_are_empty_for_unknown_code_list(self): | CODE |
| LOW⚡ | erpnext/edi/doctype/code_list/test_code_list.py | 82 | def test_default_code_follows_latest_version(self): | CODE |
| LOW | erpnext/edi/doctype/code_list/test_code_list_import.py | 54 | def test_import_genericode_rejects_remote_file_url(self): | STRING |
| LOW | erpnext/edi/doctype/code_list/test_code_list_import.py | 65 | def test_import_genericode_rejects_file_scheme_url(self): | STRING |
| LOW | erpnext/edi/doctype/code_list/test_code_list_import.py | 76 | def test_import_genericode_from_trusted_url(self): | STRING |
| LOW⚡ | erpnext/edi/doctype/code_list/test_code_list_import.py | 99 | def test_import_genericode_from_trusted_url_propagates_fetch_errors(self): | STRING |
| LOW⚡ | erpnext/edi/doctype/code_list/test_code_list_import.py | 107 | def test_import_genericode_from_uploaded_file_returns_metadata(self): | STRING |
| LOW⚡ | erpnext/edi/doctype/code_list/test_code_list_import.py | 116 | def test_process_genericode_import_reads_file_doc_content(self): | STRING |
| LOW | erpnext/edi/doctype/code_list/test_code_list_import.py | 137 | def test_import_genericode_from_local_file_url(self): | STRING |
| LOW | erpnext/edi/doctype/common_code/common_code.py | 37 | def validate_distinct_references(self): | CODE |
| LOW | …type/bulk_transaction_log/test_bulk_transaction_log.py | 35 | def test_load_raises_when_no_detail_rows(self): | CODE |
| LOW | …type/bulk_transaction_log/test_bulk_transaction_log.py | 46 | def test_load_succeeds_and_aggregates_after_detail_inserted(self): | CODE |
| LOW | …type/bulk_transaction_log/test_bulk_transaction_log.py | 66 | def test_load_isolated_per_date(self): | CODE |
| LOW | …n/doctype/bulk_transaction_log/bulk_transaction_log.py | 106 | def serialize_transaction_log(data): | CODE |
| LOW | erpnext/portal/utils.py | 22 | def create_customer_or_supplier(): | CODE |
| LOW | erpnext/buying/test_utils.py | 39 | def test_permitted_role_can_fetch_linked_material_requests(self): | CODE |
| LOW | erpnext/buying/test_utils.py | 47 | def test_populated_result_is_a_flat_list_of_rows(self): | CODE |
| LOW⚡ | erpnext/buying/test_utils.py | 63 | def test_empty_result_is_a_flat_empty_list(self): | CODE |
| LOW⚡ | erpnext/buying/test_utils.py | 72 | def test_a_single_item_code_is_treated_as_one_code(self): | CODE |
| LOW⚡ | erpnext/buying/test_utils.py | 81 | def test_items_that_are_not_item_codes_are_rejected(self): | CODE |
| LOW⚡ | erpnext/buying/test_utils.py | 97 | def test_manufacturing_manager_can_fetch_linked_material_requests(self): | CODE |
| LOW⚡ | erpnext/buying/test_utils.py | 107 | def test_unpermitted_role_cannot_fetch_linked_material_requests(self): | CODE |
| LOW⚡ | erpnext/buying/test_utils.py | 113 | def test_role_with_only_select_permission_cannot_fetch_linked_material_requests(self): | CODE |
| LOW⚡ | erpnext/buying/test_utils.py | 122 | def test_results_are_restricted_by_user_permissions(self): | CODE |
| LOW | erpnext/buying/utils.py | 14 | def update_last_purchase_rate(doc, is_submit) -> None: | CODE |
| LOW | erpnext/buying/utils.py | 104 | def validate_item_and_get_basic_data(row) -> dict: | CODE |
| LOW | erpnext/buying/utils.py | 117 | def validate_stock_item_warehouse(row, item) -> None: | CODE |
| LOW | erpnext/buying/utils.py | 126 | def check_on_hold_or_closed_status(doctype, docname) -> None: | CODE |
| LOW | erpnext/buying/utils.py | 141 | def get_linked_material_requests(items: str | list): | CODE |
| LOW | …ying/report/procurement_tracker/procurement_tracker.py | 194 | def get_ordered_stock_qty_by_request_item(purchase_order_entry): | CODE |
| LOW | …ying/report/procurement_tracker/procurement_tracker.py | 284 | def get_hidden_order_statuses(filters): | CODE |
| LOW | …report/procurement_tracker/test_procurement_tracker.py | 28 | def test_report_executes_and_lists_po(self): | CODE |
| LOW | …report/procurement_tracker/test_procurement_tracker.py | 39 | def test_request_item_ordered_on_two_lines_is_estimated_once(self): | CODE |
| LOW | …report/procurement_tracker/test_procurement_tracker.py | 52 | def test_filtered_out_order_keeps_its_share_of_the_estimate(self): | CODE |
| LOW | …report/procurement_tracker/test_procurement_tracker.py | 64 | def test_each_po_line_is_a_row(self): | CODE |
| LOW | …report/procurement_tracker/test_procurement_tracker.py | 85 | def test_actual_cost_adds_up_every_invoice(self): | CODE |
| LOW | …report/procurement_tracker/test_procurement_tracker.py | 95 | def test_unordered_rows_of_a_partly_ordered_request_are_listed(self): | CODE |
| LOW | …report/procurement_tracker/test_procurement_tracker.py | 108 | def test_billed_receipt_keeps_actual_delivery_date(self): | CODE |
| LOW | …report/procurement_tracker/test_procurement_tracker.py | 116 | def test_cost_center_and_project_filters_both_apply(self): | CODE |
| LOW⚡ | …report/procurement_tracker/test_procurement_tracker.py | 130 | def test_transfer_request_is_not_listed(self): | CODE |
| LOW⚡ | …report/procurement_tracker/test_procurement_tracker.py | 137 | def test_quantity_is_shown_in_its_order_unit(self): | CODE |
| LOW⚡ | …report/procurement_tracker/test_procurement_tracker.py | 145 | def test_completed_and_closed_orders_are_shown_on_request(self): | CODE |
| 8592 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …n/doctype/bulk_transaction_log/bulk_transaction_log.py | 116 | CODE | |
| LOW | erpnext/portal/utils.py | 4 | CODE | |
| LOW | erpnext/buying/utils.py | 14 | CODE | |
| LOW | erpnext/buying/doctype/purchase_order/mapper.py | 239 | CODE | |
| LOW | erpnext/buying/doctype/purchase_order/purchase_order.py | 617 | CODE | |
| LOW | erpnext/buying/doctype/purchase_order/purchase_order.py | 370 | CODE | |
| LOW | …ying/doctype/purchase_order/services/subcontracting.py | 17 | CODE | |
| LOW | …doctype/request_for_quotation/request_for_quotation.py | 394 | CODE | |
| LOW | erpnext/selling/page/point_of_sale/point_of_sale.py | 685 | CODE | |
| LOW | …next/selling/report/sales_analytics/sales_analytics.py | 155 | CODE | |
| LOW | …next/selling/report/sales_analytics/sales_analytics.py | 542 | CODE | |
| LOW | …on_item_group/item_group_wise_sales_target_variance.py | 155 | CODE | |
| LOW | …for_packing_items/available_stock_for_packing_items.py | 12 | CODE | |
| LOW | …sition_and_loyalty/customer_acquisition_and_loyalty.py | 98 | CODE | |
| LOW | …ng/report/address_and_contacts/address_and_contacts.py | 80 | CODE | |
| LOW | …or_sales_order/payment_terms_status_for_sales_order.py | 99 | CODE | |
| LOW | …or_sales_order/payment_terms_status_for_sales_order.py | 287 | CODE | |
| LOW | …chase_request/pending_so_items_for_purchase_request.py | 77 | CODE | |
| LOW | erpnext/selling/doctype/quotation/quotation.py | 312 | CODE | |
| LOW | erpnext/selling/doctype/sales_order/sales_order.py | 775 | CODE | |
| LOW | erpnext/selling/doctype/sales_order/sales_order.py | 871 | CODE | |
| LOW | erpnext/selling/doctype/sales_order/sales_order.py | 435 | CODE | |
| LOW | erpnext/selling/doctype/sales_order/mapper.py | 38 | CODE | |
| LOW | erpnext/selling/doctype/sales_order/mapper.py | 194 | CODE | |
| LOW | erpnext/selling/doctype/sales_order/mapper.py | 243 | CODE | |
| LOW | …xt/selling/doctype/sales_order/services/reservation.py | 35 | CODE | |
| LOW | …selling/doctype/sales_order/services/subcontracting.py | 14 | CODE | |
| LOW | erpnext/selling/doctype/sms_center/sms_center.py | 44 | CODE | |
| LOW | …ty_management/doctype/quality_review/quality_review.py | 68 | CODE | |
| LOW | …agement/doctype/quality_procedure/quality_procedure.py | 78 | CODE | |
| LOW | …agement/doctype/quality_procedure/quality_procedure.py | 113 | CODE | |
| LOW | …patches/v16_0/mirror_select_perms_to_custom_docperm.py | 579 | CODE | |
| LOW | …6_0/set_not_applicable_on_german_item_tax_templates.py | 163 | CODE | |
| LOW | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 1056 | CODE | |
| LOW | …atches/v16_0/mirror_release_perms_to_custom_docperm.py | 77 | CODE | |
| LOW | …atches/v16_0/mirror_release_perms_to_custom_docperm.py | 129 | CODE | |
| LOW | …_0/repost_stock_ledger_entries_for_target_warehouse.py | 8 | CODE | |
| LOW | …hes/v12_0/set_purchase_receipt_delivery_note_detail.py | 6 | CODE | |
| LOW | …hes/v12_0/set_purchase_receipt_delivery_note_detail.py | 23 | CODE | |
| LOW | …hes/v12_0/set_purchase_receipt_delivery_note_detail.py | 66 | CODE | |
| LOW | …ext/patches/v12_0/fix_percent_complete_for_projects.py | 5 | CODE | |
| LOW | erpnext/patches/v12_0/set_priority_for_support.py | 31 | CODE | |
| LOW | erpnext/patches/v12_0/set_priority_for_support.py | 72 | CODE | |
| LOW | erpnext/patches/v12_0/set_serial_no_status.py | 5 | CODE | |
| LOW | …xt/patches/v12_0/move_item_tax_to_item_tax_template.py | 102 | CODE | |
| LOW | …es/v12_0/move_credit_limit_to_customer_credit_limit.py | 20 | CODE | |
| LOW | …/v12_0/update_end_date_and_status_in_email_campaign.py | 5 | CODE | |
| LOW | …t/patches/v15_0/recalculate_amount_difference_field.py | 11 | CODE | |
| LOW | …pnext/patches/v15_0/link_purchase_item_to_asset_doc.py | 48 | CODE | |
| LOW | …15_0/migrate_old_item_wise_tax_detail_data_to_table.py | 32 | CODE | |
| LOW | …15_0/migrate_old_item_wise_tax_detail_data_to_table.py | 301 | CODE | |
| LOW | …15_0/migrate_old_item_wise_tax_detail_data_to_table.py | 178 | CODE | |
| LOW | …s/v15_0/update_total_number_of_booked_depreciations.py | 8 | CODE | |
| LOW | …/move_item_defaults_to_child_table_for_multicompany.py | 8 | CODE | |
| LOW | erpnext/patches/v11_0/add_item_group_defaults.py | 8 | CODE | |
| LOW | erpnext/patches/v11_0/update_delivery_trip_status.py | 8 | CODE | |
| LOW | …atches/v14_0/set_packed_qty_in_draft_delivery_notes.py | 8 | CODE | |
| LOW | erpnext/patches/v14_0/migrate_gl_to_payment_ledger.py | 99 | CODE | |
| LOW | erpnext/patches/v13_0/update_sla_enhancements.py | 8 | CODE | |
| LOW | erpnext/patches/v13_0/delete_orphaned_tables.py | 9 | CODE | |
| 483 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | erpnext/buying/doctype/purchase_order/purchase_order.js | 285 | this.frm.fields_dict.items_section.wrapper.addClass("hide-border"); | CODE |
| CRITICAL | erpnext/buying/doctype/purchase_order/purchase_order.js | 287 | this.frm.fields_dict.items_section.wrapper.removeClass("hide-border"); | CODE |
| CRITICAL | erpnext/selling/page/point_of_sale/pos_controller.js | 52 | dialog.fields_dict.balance_details.df.data.push({ mode_of_payment, opening_amount: "0" }); | CODE |
| CRITICAL | erpnext/selling/doctype/sales_order/sales_order.js | 269 | dialog.fields_dict.items.df.data.forEach((row) => { | CODE |
| CRITICAL | erpnext/selling/doctype/sales_order/sales_order.js | 306 | dialog.fields_dict.items.df.data.forEach((row) => { | CODE |
| CRITICAL | erpnext/selling/doctype/sales_order/sales_order.js | 313 | dialog.fields_dict.items.df.data.push({ | CODE |
| CRITICAL | erpnext/selling/doctype/sales_order/sales_order.js | 447 | dialog.fields_dict.items.df.data.push({ | CODE |
| CRITICAL | erpnext/selling/doctype/sales_order/sales_order.js | 471 | dialog.fields_dict.items.df.data.push({ | CODE |
| CRITICAL | erpnext/selling/doctype/sales_order/sales_order.js | 579 | dialog.fields_dict.sr_entries.df.data.push({ | CODE |
| CRITICAL | erpnext/selling/doctype/sales_order/sales_order.js | 731 | frm.schedule_dialog.fields_dict.delivery_schedule.df.data.push({ | CODE |
| CRITICAL | erpnext/selling/doctype/sales_order/sales_order.js | 780 | frm.schedule_dialog.fields_dict.delivery_schedule.df.data.push({ | CODE |
| CRITICAL | erpnext/selling/doctype/sales_order/sales_order.js | 803 | frm.schedule_dialog.fields_dict.delivery_schedule.df.data.push({ | CODE |
| CRITICAL | erpnext/selling/doctype/sales_order/sales_order.js | 1438 | this.frm.fields_dict.items.grid.toggle_reqd( | CODE |
| CRITICAL | erpnext/manufacturing/doctype/bom/bom.js | 573 | dialog.fields_dict.items.df.data.push({ | CODE |
| CRITICAL | erpnext/manufacturing/doctype/bom/bom.js | 1294 | frm._bom_rm_dialog.fields_dict.items.df.data.push({ | CODE |
| CRITICAL | erpnext/manufacturing/doctype/bom/bom.js | 1301 | frm._bom_rm_dialog.fields_dict.items.grid.refresh(); | CODE |
| CRITICAL | erpnext/manufacturing/doctype/work_order/work_order.js | 539 | dialog.fields_dict.operations.df.data.push({ | CODE |
| CRITICAL | erpnext/public/js/stock_reservation.js | 183 | dialog.fields_dict.items.df.data.push(args); | CODE |
| CRITICAL | erpnext/public/js/stock_reservation.js | 258 | dialog.fields_dict.sr_entries.df.data.push({ | CODE |
| CRITICAL | erpnext/public/js/utils.js | 772 | dialog.fields_dict.alternative_items.df.data.push({ | CODE |
| CRITICAL | erpnext/public/js/utils.js | 898 | const row = dialog.fields_dict.trans_items.df.data.find( | CODE |
| CRITICAL | erpnext/public/js/utils.js | 946 | dialog.fields_dict.trans_items.df.data.some((doc) => { | CODE |
| CRITICAL | …/public/js/bom_configurator/bom_configurator.bundle.js | 345 | this.layout.fields_dict.items.grid.data.forEach((row) => { | CODE |
| CRITICAL | …/public/js/bom_configurator/bom_configurator.bundle.js | 349 | this.layout.fields_dict.items.grid.refresh(); | CODE |
| CRITICAL | erpnext/public/js/utils/serial_no_batch_selector.js | 818 | this.dialog.fields_dict.entries.df.data.push(d); | CODE |
| CRITICAL | erpnext/public/js/utils/serial_no_batch_selector.js | 821 | this.dialog.fields_dict.entries.grid.refresh(); | CODE |
| CRITICAL | erpnext/public/js/controllers/transaction.js | 1772 | this.frm.fields_dict.items.grid.toggle_enable( | CODE |
| CRITICAL | erpnext/public/js/controllers/buying.js | 148 | this.frm.fields_dict.supplied_items.grid.update_docfield_property( | CODE |
| CRITICAL | …ctype/payment_reconciliation/payment_reconciliation.js | 243 | const selected_invoices = this.frm.fields_dict.invoices.grid.get_selected_children(); | CODE |
| CRITICAL | …ctype/payment_reconciliation/payment_reconciliation.js | 244 | const selected_payments = this.frm.fields_dict.payments.grid.get_selected_children(); | CODE |
| CRITICAL | …ctype/payment_reconciliation/payment_reconciliation.js | 285 | let payments = this.frm.fields_dict.payments.grid.get_selected_children(); | CODE |
| CRITICAL | …ctype/payment_reconciliation/payment_reconciliation.js | 289 | let invoices = this.frm.fields_dict.invoices.grid.get_selected_children(); | CODE |
| CRITICAL | …ctype/payment_reconciliation/payment_reconciliation.js | 404 | dialog.fields_dict.allocation.df.data.push({ | CODE |
| CRITICAL | erpnext/accounts/doctype/pos_invoice/pos_invoice.js | 256 | dialog.fields_dict.payments.df.data.some((d) => { | CODE |
| CRITICAL | …/accounts/doctype/purchase_invoice/purchase_invoice.js | 211 | this.frm.fields_dict.items.grid.update_docfield_property( | CODE |
| CRITICAL | …g/doctype/subcontracting_order/subcontracting_order.js | 308 | dialog.fields_dict.items.df.data.push({ | CODE |
| CRITICAL | …g/doctype/subcontracting_order/subcontracting_order.js | 412 | dialog.fields_dict.sr_entries.df.data.push({ | CODE |
| CRITICAL | erpnext/stock/doctype/stock_entry/stock_entry.js | 1430 | this.frm.fields_dict.items.grid.get_field("item_code").get_query = function () { | CODE |
| CRITICAL | erpnext/stock/doctype/stock_entry/stock_entry.js | 1459 | this.frm.fields_dict.items.grid.get_field("expense_account").get_query = function () { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | erpnext/hooks.py | 757 | # ------------ | STRING |
| MEDIUM | erpnext/hooks.py | 772 | # ----------- | STRING |
| MEDIUM⚡ | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 467 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 469 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 1231 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 1233 | # ============================================================================= | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 294 | # ============================================================================= | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 296 | # ============================================================================= | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 350 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 352 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 561 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 563 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 803 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 805 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 864 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 866 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 897 | # ============================================================================= | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 899 | # ============================================================================= | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 1051 | # ============================================================================= | COMMENT |
| MEDIUM | erpnext/patches/v16_0/migrate_tax_withholding_data.py | 1053 | # ============================================================================= | COMMENT |
| MEDIUM | erpnext/manufacturing/doctype/job_card/job_card.js | 638 | // ── Determine which action buttons to show ──────────────────────── | COMMENT |
| MEDIUM | erpnext/manufacturing/doctype/job_card/job_card.js | 686 | // ── Timer color reflects job state ──────────────────────────────── | COMMENT |
| MEDIUM | erpnext/manufacturing/doctype/job_card/job_card.js | 693 | // ── Action button HTML ──────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/manufacturing/doctype/job_card/job_card.js | 719 | // ── Render widget ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/manufacturing/doctype/job_card/job_card.js | 745 | // ── Wire up button click handlers ───────────────────────────────── | COMMENT |
| MEDIUM | erpnext/manufacturing/doctype/job_card/job_card.js | 803 | // ── Timer tick ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 72 | // ── App shell ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 262 | // ── Manager board ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 440 | // ── Operator pane ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 699 | // ── Operator actions (unchanged behaviour, reload() instead of load()) ───── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 978 | // ── Inline Quality Check ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 1211 | // ── Timers ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 1250 | // ── Realtime + lifecycle ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 1284 | // ── Keyboard ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 1478 | // ── Scanner ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 1588 | // ── Route options (e.g. the Work Order "Shop Floor" button) ──────────────── | COMMENT |
| MEDIUM | erpnext/public/js/shop_floor/shop_floor.js | 1606 | // ── Styles ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | erpnext/accounts/test/test_pre_submit_validation.py | 220 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | erpnext/accounts/test/test_pre_submit_validation.py | 222 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | …counts/doctype/payment_request/test_payment_request.py | 1693 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | …counts/doctype/payment_request/test_payment_request.py | 1695 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | …counts/doctype/payment_request/test_payment_request.py | 1853 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | …counts/doctype/payment_request/test_payment_request.py | 1855 | # ============================================================================ | COMMENT |
| MEDIUM | …counts/doctype/payment_request/test_payment_request.py | 1292 | # ============================================================================ | COMMENT |
| MEDIUM | …counts/doctype/payment_request/test_payment_request.py | 1294 | # ============================================================================ | COMMENT |
| MEDIUM | …counts/doctype/payment_request/test_payment_request.py | 1539 | # ============================================================================ | COMMENT |
| MEDIUM | …counts/doctype/payment_request/test_payment_request.py | 1541 | # ============================================================================ | COMMENT |
| MEDIUM | …counts/doctype/payment_request/test_payment_request.py | 1917 | # ============================================================================ | COMMENT |
| MEDIUM | …counts/doctype/payment_request/test_payment_request.py | 1919 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 47 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 49 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 207 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 209 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 362 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 364 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 1137 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 1139 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 1379 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 1381 | # ============================================================================ | COMMENT |
| MEDIUM | …e/financial_report_template/financial_report_engine.py | 1932 | # ============================================================================ | COMMENT |
| 18 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …t/buying/doctype/purchase_order/test_purchase_order.py | 1033 | except Exception: | CODE |
| HIGH | erpnext/patches/v12_0/stock_entry_enhancements.py | 35 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …15_0/unset_incorrect_additional_discount_percentage.py | 77 | except Exception: | CODE |
| HIGH | …/move_item_defaults_to_child_table_for_multicompany.py | 37 | except Exception: | CODE |
| HIGH | …es/v11_0/create_department_records_for_each_company.py | 33 | except frappe.DuplicateEntryError: | CODE |
| HIGH | erpnext/patches/v11_0/uom_conversion_data.py | 19 | except frappe.LinkExistsError: | CODE |
| HIGH | …t/patches/v11_0/set_user_permissions_for_department.py | 21 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …te_accounting_dimensions_in_subcontracting_doctypes.py | 42 | except Exception: | CODE |
| HIGH | erpnext/patches/v14_0/delete_non_profit_doctypes.py | 44 | except frappe.LinkExistsError: | CODE |
| HIGH | erpnext/patches/v13_0/reset_corrupt_defaults.py | 28 | except Exception: | CODE |
| HIGH | erpnext/patches/v13_0/reset_corrupt_defaults.py | 22 | except Exception: | CODE |
| HIGH | …atches/v13_0/create_accounting_dimensions_in_orders.py | 37 | except Exception: | CODE |
| HIGH | erpnext/setup/install.py | 173 | except frappe.ValidationError: | CODE |
| HIGH | erpnext/setup/install.py | 155 | except frappe.ValidationError: | CODE |
| HIGH | erpnext/setup/demo.py | 240 | except frappe.exceptions.DoesNotExistError: | CODE |
| HIGH | erpnext/setup/setup_wizard/operations/taxes_setup.py | 127 | except (ImportError, AttributeError): | CODE |
| HIGH | erpnext/setup/doctype/employee/employee.py | 256 | except frappe.DuplicateEntryError: | CODE |
| HIGH | erpnext/setup/doctype/company/company.py | 999 | except ImportError: | CODE |
| HIGH | …octype/production_plan/services/work_order_planning.py | 222 | except OverProductionError: | CODE |
| HIGH | …_integrations/doctype/plaid_settings/plaid_settings.py | 292 | except KeyError: | CODE |
| HIGH | erpnext/utilities/naming.py | 30 | except NamingSeriesNotSetError: | CODE |
| HIGH | erpnext/accounts/utils.py | 1564 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …unts/doctype/bank_transaction/test_bank_transaction.py | 255 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …unts/doctype/bank_transaction/test_bank_transaction.py | 267 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …unts/doctype/bank_transaction/test_bank_transaction.py | 360 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …unts/doctype/bank_transaction/test_bank_transaction.py | 380 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …unts/doctype/bank_transaction/test_bank_transaction.py | 406 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …unts/doctype/bank_transaction/test_bank_transaction.py | 418 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …unts/doctype/bank_transaction/test_bank_transaction.py | 449 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …financial_report_template/financial_report_template.py | 114 | except (json.JSONDecodeError, KeyError): | CODE |
| HIGH | …unts/doctype/purchase_invoice/test_purchase_invoice.py | 330 | except Exception: | CODE |
| HIGH | …t/accounts/doctype/payment_entry/test_payment_entry.py | 156 | except Exception: | CODE |
| HIGH | erpnext/accounts/doctype/budget/test_budget.py | 779 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …ontracting_inward_order/subcontracting_inward_order.py | 326 | except OverProductionError: | CODE |
| HIGH | erpnext/stock/doctype/pick_list/test_pick_list.py | 128 | except EmptyStockReconciliationItemsError: | CODE |
| HIGH | erpnext/stock/doctype/pick_list/test_pick_list.py | 218 | except EmptyStockReconciliationItemsError: | CODE |
| HIGH | erpnext/stock/doctype/pick_list/test_pick_list.py | 238 | except EmptyStockReconciliationItemsError: | CODE |
| HIGH | erpnext/stock/doctype/pick_list/test_pick_list.py | 321 | except EmptyStockReconciliationItemsError: | CODE |
| HIGH | erpnext/stock/doctype/pick_list/test_pick_list.py | 593 | except EmptyStockReconciliationItemsError: | CODE |
| HIGH | …tock/doctype/item_alternative/test_item_alternative.py | 559 | except EmptyStockReconciliationItemsError: | CODE |
| HIGH | …type/stock_reconciliation/test_stock_reconciliation.py | 2732 | except EmptyStockReconciliationItemsError: | CODE |
| HIGH | …erial_and_batch_bundle/test_serial_and_batch_bundle.py | 2514 | except (frappe.ValidationError, frappe.PermissionError): | CODE |
| HIGH | …type/asset_capitalization/test_asset_capitalization.py | 543 | except EmptyStockReconciliationItemsError: | CODE |
| HIGH | erpnext/assets/doctype/asset/test_asset.py | 2428 | except frappe.DuplicateEntryError: | CODE |
| HIGH | erpnext/assets/doctype/asset/test_asset.py | 2327 | except frappe.DuplicateEntryError: | CODE |
| HIGH | …t/assets/doctype/asset_category/test_asset_category.py | 31 | except frappe.DuplicateEntryError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …uying/doctype/supplier_quotation/supplier_quotation.py | 0 | if permitted in settings and any item has 0 qty, the so has unit price items. | STRING |
| HIGH | erpnext/buying/doctype/purchase_order/purchase_order.py | 0 | if permitted in settings and any item has 0 qty, the so has unit price items. | STRING |
| HIGH | …doctype/request_for_quotation/request_for_quotation.py | 0 | if permitted in settings and any item has 0 qty, the so has unit price items. | STRING |
| HIGH | erpnext/selling/doctype/quotation/quotation.py | 0 | if permitted in settings and any item has 0 qty, the so has unit price items. | STRING |
| HIGH | erpnext/selling/doctype/sales_order/sales_order.py | 0 | if permitted in settings and any item has 0 qty, the so has unit price items. | STRING |
| HIGH | erpnext/buying/doctype/purchase_order/purchase_order.py | 0 | update requested qty (before ordered_qty is updated) | STRING |
| HIGH | …xt/selling/doctype/sales_order/services/reservation.py | 0 | update requested qty (before ordered_qty is updated) | STRING |
| HIGH | …ext/stock/doctype/material_request/material_request.py | 0 | update requested qty (before ordered_qty is updated) | STRING |
| HIGH | erpnext/selling/doctype/sales_order/sales_order.py | 0 | creates stock reservation entries for sales order items. | STRING |
| HIGH | …xt/selling/doctype/sales_order/services/reservation.py | 0 | creates stock reservation entries for sales order items. | STRING |
| HIGH | …ype/stock_reservation_entry/stock_reservation_entry.py | 0 | creates stock reservation entries for sales order items. | STRING |
| HIGH | erpnext/selling/doctype/sales_order/sales_order.py | 0 | returns events for gantt / calendar view rendering. :param start: start date-time. :param end: end date-time. :param fil | STRING |
| HIGH | erpnext/projects/doctype/timesheet/timesheet.py | 0 | returns events for gantt / calendar view rendering. :param start: start date-time. :param end: end date-time. :param fil | STRING |
| HIGH | erpnext/setup/doctype/holiday_list/holiday_list.py | 0 | returns events for gantt / calendar view rendering. :param start: start date-time. :param end: end date-time. :param fil | STRING |
| HIGH | erpnext/selling/doctype/customer/customer.py | 0 | hook to return the target email address for notifications. | STRING |
| HIGH | erpnext/crm/doctype/opportunity/opportunity.py | 0 | hook to return the target email address for notifications. | STRING |
| HIGH | erpnext/crm/doctype/prospect/prospect.py | 0 | hook to return the target email address for notifications. | STRING |
| HIGH | erpnext/crm/doctype/lead/lead.py | 0 | hook to return the target email address for notifications. | STRING |
| HIGH | …atches/v13_0/delete_report_requested_items_to_order.py | 0 | check for one or multiple auto email reports and delete | STRING |
| HIGH | erpnext/patches/v13_0/delete_old_purchase_reports.py | 0 | check for one or multiple auto email reports and delete | STRING |
| HIGH | erpnext/patches/v13_0/delete_old_sales_reports.py | 0 | check for one or multiple auto email reports and delete | STRING |
| HIGH | erpnext/setup/doctype/item_group/item_group.py | 0 | check whether tax rate is not entered twice for same tax type | STRING |
| HIGH | …ccounts/doctype/item_tax_template/item_tax_template.py | 0 | check whether tax rate is not entered twice for same tax type | STRING |
| HIGH | erpnext/stock/doctype/item/item.py | 0 | check whether tax rate is not entered twice for same tax type | STRING |
| HIGH | erpnext/manufacturing/report/test_reports.py | 0 | test that all script report in stock modules are executable with supported filters | STRING |
| HIGH | erpnext/accounts/test/test_reports.py | 0 | test that all script report in stock modules are executable with supported filters | STRING |
| HIGH | erpnext/stock/report/test_reports.py | 0 | test that all script report in stock modules are executable with supported filters | STRING |
| HIGH | erpnext/accounts/report/financial_statements.py | 0 | returns a dict like { "account": [gl entries], ... } | STRING |
| HIGH | …inancial_statement/consolidated_financial_statement.py | 0 | returns a dict like { "account": [gl entries], ... } | STRING |
| HIGH | …eport/profitability_analysis/profitability_analysis.py | 0 | returns a dict like { "account": [gl entries], ... } | STRING |
| HIGH | …nsolidated_trial_balance/consolidated_trial_balance.py | 0 | return columns and data for the report. this is the main entry point for the report. it accepts the filters as a diction | STRING |
| HIGH | …eport/invalid_ledger_entries/invalid_ledger_entries.py | 0 | return columns and data for the report. this is the main entry point for the report. it accepts the filters as a diction | STRING |
| HIGH | …_and_batch_bundle/incorrect_serial_and_batch_bundle.py | 0 | return columns and data for the report. this is the main entry point for the report. it accepts the filters as a diction | STRING |
| HIGH | …/report/negative_batch_report/negative_batch_report.py | 0 | return columns and data for the report. this is the main entry point for the report. it accepts the filters as a diction | STRING |
| HIGH | …next/accounts/report/gross_profit/test_gross_profit.py | 0 | helper function to populate default values in sales invoice | STRING |
| HIGH | …/payment_reconciliation/test_payment_reconciliation.py | 0 | helper function to populate default values in sales invoice | STRING |
| HIGH | …type/payment_ledger_entry/test_payment_ledger_entry.py | 0 | helper function to populate default values in sales invoice | STRING |
| HIGH | erpnext/controllers/tests/test_accounts_controller.py | 0 | helper function to populate default values in sales invoice | STRING |
| HIGH | …/payment_reconciliation/test_payment_reconciliation.py | 0 | helper function to populate default values in payment entry | STRING |
| HIGH | …type/payment_ledger_entry/test_payment_ledger_entry.py | 0 | helper function to populate default values in payment entry | STRING |
| HIGH | erpnext/controllers/tests/test_accounts_controller.py | 0 | helper function to populate default values in payment entry | STRING |
| HIGH | erpnext/stock/utils.py | 0 | keep a company-restricted caller inside their own companies; a no-op for everyone else. | STRING |
| HIGH | erpnext/stock/doctype/pick_list/pick_list.py | 0 | keep a company-restricted caller inside their own companies; a no-op for everyone else. | STRING |
| HIGH | erpnext/assets/doctype/asset/asset.py | 0 | keep a company-restricted caller inside their own companies; a no-op for everyone else. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …lier_scorecard_criteria/supplier_scorecard_criteria.py | 44 | except Exception: | CODE |
| LOW | erpnext/buying/doctype/purchase_order/mapper.py | 256 | except Exception as e: | CODE |
| LOW⚡ | …t/buying/doctype/purchase_order/test_purchase_order.py | 1033 | except Exception: | CODE |
| LOW | …supplier_scorecard_period/supplier_scorecard_period.py | 93 | except Exception: | CODE |
| LOW | …supplier_scorecard_period/supplier_scorecard_period.py | 113 | except Exception: | CODE |
| MEDIUM | …supplier_scorecard_period/supplier_scorecard_period.py | 108 | def calculate_weighted_score(self, weighing_function): | CODE |
| LOW | …type/supplier/patches/migrate_supplier_portal_users.py | 12 | except Exception: | CODE |
| MEDIUM | …type/supplier/patches/migrate_supplier_portal_users.py | 8 | def execute(): | CODE |
| LOW | …uying/doctype/supplier_scorecard/supplier_scorecard.py | 211 | except Exception: | CODE |
| LOW | erpnext/selling/doctype/sales_order/test_sales_order.py | 2439 | except Exception: | CODE |
| LOW | erpnext/selling/doctype/customer/customer_overview.py | 43 | except Exception: | CODE |
| LOW | …s/v16_0/remove_all_role_from_payment_terms_template.py | 30 | except Exception: | CODE |
| LOW | …patches/v16_0/mirror_select_perms_to_custom_docperm.py | 635 | except Exception: | CODE |
| LOW | …16_0/set_posting_datetime_for_sabb_and_drop_indexes.py | 30 | except Exception: | CODE |
| LOW | …atches/v16_0/mirror_release_perms_to_custom_docperm.py | 187 | except Exception: | CODE |
| LOW | …atches/v16_0/mirror_release_perms_to_custom_docperm.py | 210 | except Exception: | CODE |
| LOW | …pnext/patches/v4_2/update_requested_and_ordered_qty.py | 32 | except Exception: | CODE |
| LOW | …atches/v12_0/move_bank_account_swift_number_to_bank.py | 19 | except Exception: | CODE |
| LOW | erpnext/patches/v15_0/drop_sle_indexes.py | 16 | except Exception: | CODE |
| LOW | …_task_assignee_email_field_in_asset_maintenance_log.py | 17 | except Exception: | CODE |
| LOW | …t_based_on_num_days_in_month_to_daily_prorata_based.py | 19 | except Exception as e: | CODE |
| MEDIUM | …t_based_on_num_days_in_month_to_daily_prorata_based.py | 8 | def execute(): | CODE |
| LOW | …n_to_depreciation_amount_based_on_num_days_in_month.py | 19 | except Exception as e: | CODE |
| MEDIUM | …n_to_depreciation_amount_based_on_num_days_in_month.py | 8 | def execute(): | CODE |
| LOW | …15_0/migrate_old_item_wise_tax_detail_data_to_table.py | 305 | except Exception: | CODE |
| LOW | …/patches/v15_0/drop_index_posting_datetime_from_sle.py | 15 | except Exception: | CODE |
| LOW | erpnext/patches/v15_0/remove_exotel_integration.py | 20 | except Exception: | CODE |
| LOW | …15_0/unset_incorrect_additional_discount_percentage.py | 77 | except Exception: | CODE |
| MEDIUM | …15_0/unset_incorrect_additional_discount_percentage.py | 74 | def get_semantic_version(version): | CODE |
| LOW | …/move_item_defaults_to_child_table_for_multicompany.py | 37 | except Exception: | CODE |
| LOW | erpnext/patches/v14_0/crm_ux_cleanup.py | 21 | except Exception as e: | CODE |
| LOW | …es/v14_0/migrate_deferred_accounts_to_item_defaults.py | 8 | except Exception: | CODE |
| MEDIUM | …es/v14_0/migrate_deferred_accounts_to_item_defaults.py | 4 | def execute(): | CODE |
| LOW | erpnext/patches/v14_0/migrate_gl_to_payment_ledger.py | 187 | except Exception as err: | CODE |
| LOW | …atches/v14_0/rename_ongoing_status_in_sla_documents.py | 20 | except Exception: | CODE |
| LOW | …te_accounting_dimensions_in_subcontracting_doctypes.py | 42 | except Exception: | CODE |
| LOW | …/patches/v10_0/rename_price_to_rate_in_pricing_rule.py | 12 | except Exception as e: | CODE |
| LOW | erpnext/patches/v13_0/drop_unused_sle_index_parts.py | 9 | except Exception: | CODE |
| MEDIUM | erpnext/patches/v13_0/drop_unused_sle_index_parts.py | 6 | def execute(): | CODE |
| LOW | …pnext/patches/v13_0/trim_whitespace_from_serial_nos.py | 68 | except Exception: | CODE |
| LOW | erpnext/patches/v13_0/reset_corrupt_defaults.py | 22 | except Exception: | CODE |
| LOW | erpnext/patches/v13_0/reset_corrupt_defaults.py | 28 | except Exception: | CODE |
| LOW | …t/patches/v13_0/modify_invalid_gain_loss_gl_entries.py | 63 | except Exception: | CODE |
| LOW | …atches/v13_0/create_accounting_dimensions_in_orders.py | 37 | except Exception: | CODE |
| LOW | erpnext/patches/v13_0/job_card_status_on_hold.py | 18 | except Exception: | CODE |
| LOW | …t/patches/v13_0/add_missing_fg_item_for_stock_entry.py | 92 | except Exception: | CODE |
| LOW | erpnext/crm/frappe_crm_api.py | 29 | except Exception: | CODE |
| LOW | erpnext/crm/frappe_crm_api.py | 102 | except Exception: | CODE |
| LOW | erpnext/crm/frappe_crm_api.py | 160 | except Exception: | CODE |
| LOW | erpnext/crm/frappe_crm_api.py | 172 | except Exception: | CODE |
| LOW⚡ | erpnext/crm/frappe_crm_api.py | 218 | except Exception: | CODE |
| LOW⚡ | erpnext/crm/frappe_crm_api.py | 232 | except Exception: | CODE |
| MEDIUM | erpnext/crm/frappe_crm_api.py | 208 | def remove_allowed_users_on_crm_install(): | CODE |
| MEDIUM | erpnext/crm/frappe_crm_api.py | 222 | def disable_frappe_crm_data_synchronization_on_crm_uninstall(): | CODE |
| LOW | erpnext/crm/doctype/opportunity/opportunity.py | 213 | except Exception: | CODE |
| LOW | erpnext/crm/doctype/email_campaign/email_campaign.py | 167 | except Exception: | CODE |
| LOW | erpnext/crm/doctype/email_campaign/email_campaign.py | 264 | except Exception: | CODE |
| LOW | erpnext/setup/utils.py | 155 | except Exception: | CODE |
| LOW | erpnext/setup/demo.py | 30 | except Exception: | CODE |
| LOW | erpnext/setup/demo.py | 73 | except Exception: | CODE |
| 106 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | erpnext/edi/doctype/code_list/code_list_import.py | 1 | CODE | |
| LOW | erpnext/edi/doctype/code_list/code_list.py | 12 | CODE | |
| LOW | erpnext/buying/utils.py | 5 | CODE | |
| LOW | …uying/doctype/supplier_quotation/supplier_quotation.py | 7 | CODE | |
| LOW | erpnext/buying/doctype/supplier_quotation/mapper.py | 4 | CODE | |
| LOW | erpnext/buying/doctype/purchase_order/purchase_order.py | 5 | CODE | |
| LOW | erpnext/buying/doctype/purchase_order/purchase_order.py | 9 | CODE | |
| LOW | …doctype/request_for_quotation/request_for_quotation.py | 10 | CODE | |
| LOW | erpnext/buying/doctype/request_for_quotation/mapper.py | 4 | CODE | |
| LOW | erpnext/selling/page/point_of_sale/point_of_sale.py | 5 | CODE | |
| LOW | erpnext/selling/doctype/quotation/quotation.py | 8 | CODE | |
| LOW | erpnext/selling/doctype/quotation/mapper.py | 4 | CODE | |
| LOW | …pnext/selling/doctype/product_bundle/product_bundle.py | 10 | CODE | |
| LOW | erpnext/selling/doctype/sales_order/sales_order.py | 5 | CODE | |
| LOW | erpnext/selling/doctype/sales_order/sales_order.py | 11 | CODE | |
| LOW | erpnext/selling/doctype/customer/customer.py | 5 | CODE | |
| LOW | …_0/crm_settings_handle_allowed_users_for_frappe_crm.py | 1 | CODE | |
| LOW | erpnext/projects/doctype/project/project.py | 691 | CODE | |
| LOW | erpnext/projects/doctype/task/task.py | 5 | CODE | |
| LOW | erpnext/projects/doctype/timesheet/timesheet.py | 5 | CODE | |
| LOW | erpnext/crm/frappe_crm_api.py | 1 | CODE | |
| LOW | …ext/crm/doctype/contract_template/contract_template.py | 5 | CODE | |
| LOW | erpnext/crm/doctype/opportunity/opportunity.py | 5 | CODE | |
| LOW | erpnext/crm/doctype/opportunity/opportunity.py | 10 | CODE | |
| LOW | erpnext/crm/doctype/lead/mapper.py | 5 | CODE | |
| LOW | erpnext/setup/install.py | 6 | CODE | |
| LOW | erpnext/setup/doctype/holiday_list/holiday_list.py | 5 | CODE | |
| LOW | …p/doctype/terms_and_conditions/terms_and_conditions.py | 5 | CODE | |
| LOW | …doctype/authorization_control/authorization_control.py | 20 | CODE | |
| LOW | erpnext/setup/doctype/department/department.py | 5 | CODE | |
| LOW | erpnext/tests/bootstrap_test_data.py | 3 | CODE | |
| LOW | erpnext/manufacturing/scheduling/test_plan_adapter.py | 6 | CODE | |
| LOW | erpnext/manufacturing/scheduling/models.py | 4 | CODE | |
| LOW | erpnext/manufacturing/scheduling/engine.py | 4 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 9 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 10 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 26 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 26 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 26 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 26 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 38 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 38 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 38 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 38 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 38 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 38 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 38 | CODE | |
| LOW | erpnext/manufacturing/doctype/bom/bom.py | 672 | CODE | |
| LOW | erpnext/manufacturing/doctype/job_card/job_card.py | 42 | CODE | |
| LOW | …facturing/doctype/bom_update_log/bom_updation_utils.py | 10 | CODE | |
| LOW | erpnext/manufacturing/doctype/work_order/mapper.py | 11 | CODE | |
| LOW | erpnext/manufacturing/doctype/work_order/work_order.py | 4 | CODE | |
| LOW | erpnext/manufacturing/doctype/work_order/work_order.py | 9 | CODE | |
| LOW | erpnext/manufacturing/doctype/work_order/work_order.py | 12 | CODE | |
| LOW | erpnext/manufacturing/doctype/work_order/work_order.py | 30 | CODE | |
| LOW | erpnext/manufacturing/doctype/work_order/work_order.py | 30 | CODE | |
| LOW | erpnext/manufacturing/doctype/work_order/work_order.py | 30 | CODE | |
| LOW | erpnext/manufacturing/doctype/work_order/work_order.py | 30 | CODE | |
| LOW | erpnext/manufacturing/doctype/work_order/work_order.py | 30 | CODE | |
| LOW | erpnext/manufacturing/doctype/work_order/work_order.py | 30 | CODE | |
| 182 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | erpnext/edi/doctype/code_list/code_list_import.py | 117 | # Create a new Code List document with the extracted name | COMMENT |
| MEDIUM | …t/buying/doctype/purchase_order/test_purchase_order.py | 1541 | # Create a Purchase Order and Fully Bill it | COMMENT |
| MEDIUM | erpnext/buying/doctype/request_for_quotation/mapper.py | 58 | # This method is used to make supplier quotation from supplier's portal. | COMMENT |
| MEDIUM | …pe/request_for_quotation/test_request_for_quotation.py | 140 | # Create a Purchase Taxes and Charges Template for testing | COMMENT |
| MEDIUM⚡ | …t_sales_partner_target_variance_based_on_item_group.py | 21 | # Create a Target Distribution | COMMENT |
| MEDIUM⚡ | …t_sales_partner_target_variance_based_on_item_group.py | 29 | # Create a Sales Invoice for the Partner | COMMENT |
| MEDIUM | …st_sales_person_target_variance_based_on_item_group.py | 17 | # Create a Target Distribution | COMMENT |
| MEDIUM | …st_sales_person_target_variance_based_on_item_group.py | 28 | # Create a Sales Order with 50-50 contribution between both Sales people | COMMENT |
| MEDIUM | erpnext/selling/doctype/sales_order/test_sales_order.py | 1466 | # Create the Material Request from the sales order for the Packing Items | COMMENT |
| MEDIUM | erpnext/selling/doctype/sales_order/test_sales_order.py | 2865 | # Create a advance payment against that Sales Order | COMMENT |
| MEDIUM | erpnext/setup/setup_wizard/operations/taxes_setup.py | 267 | # Create a new group account named 'Duties and Taxes' or 'Tax Assets' just | COMMENT |
| MEDIUM | …saction_deletion_record/transaction_deletion_record.py | 665 | # This method is the entry point for the chain of events that follow | COMMENT |
| MEDIUM | erpnext/tests/bootstrap_test_data.py | 1 | # This file is solely to trigger BootStrapTestData from CI | COMMENT |
| MEDIUM | erpnext/manufacturing/doctype/job_card/test_job_card.py | 856 | # Create a corrective operation against it | COMMENT |
| MEDIUM | …xt/manufacturing/doctype/work_order/test_work_order.py | 2642 | # Create a work order | COMMENT |
| MEDIUM | …xt/manufacturing/doctype/work_order/test_work_order.py | 2661 | # Create a stock entry to manufacture the item | COMMENT |
| MEDIUM | …turing/doctype/production_plan/test_production_plan.py | 4192 | # Create the shared phantom BOM | COMMENT |
| MEDIUM | erpnext/www/book_appointment/index.py | 120 | # Create a appointment document from form | COMMENT |
| MEDIUM | …report/accounts_receivable/test_accounts_receivable.py | 928 | # Create a list of customer groups, e.g., ["Group1", "Group2"] | COMMENT |
| MEDIUM | …counts/doctype/payment_request/test_payment_request.py | 1135 | # Create a customer with contact and address to ensure assertions run | COMMENT |
| MEDIUM | …t/accounts/doctype/sales_invoice/test_sales_invoice.py | 4714 | # Create a sales order | COMMENT |
| MEDIUM⚡ | …ext/accounts/doctype/subscription/test_subscription.py | 361 | # Create a non pre-billed subscription, processing should not create | COMMENT |
| MEDIUM | …counts/doctype/loyalty_program/test_loyalty_program.py | 201 | # Create a new loyalty program with multiple tiers | COMMENT |
| MEDIUM⚡ | …unts/doctype/purchase_invoice/test_purchase_invoice.py | 132 | # Create a Purchase Invoice with update_stock=True | COMMENT |
| MEDIUM | …unts/doctype/purchase_invoice/test_purchase_invoice.py | 2676 | # Create a Supplier | COMMENT |
| MEDIUM | …e/bank_reconciliation_tool/bank_reconciliation_tool.py | 173 | # Create a new journal entry based on the bank transaction | COMMENT |
| MEDIUM | …e/bank_reconciliation_tool/bank_reconciliation_tool.py | 340 | # Create a new payment entry based on the bank transaction | COMMENT |
| MEDIUM | …e/bank_reconciliation_tool/bank_reconciliation_tool.py | 765 | # Create a new journal entry based on the bank transaction | COMMENT |
| MEDIUM | …doctype/repost_item_valuation/repost_item_valuation.py | 818 | # This function is called every 15 minutes via hooks.py as a recovery net; | COMMENT |
| MEDIUM | …doctype/repost_item_valuation/repost_item_valuation.py | 900 | # This function is called every hour via hooks.py | COMMENT |
| MEDIUM | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4816 | # Create a Purchase Receipt and Fully Bill it | COMMENT |
| MEDIUM | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 7716 | # Create a Company without Stock Accounts Linked. | COMMENT |
| MEDIUM | erpnext/stock/doctype/stock_entry/test_stock_entry.py | 4227 | # Create a Material Request for Material Transfer | COMMENT |
| MEDIUM | erpnext/controllers/tests/test_accounts_controller.py | 849 | # Create a Sales Taxes and Charges Template | COMMENT |
| MEDIUM | erpnext/controllers/tests/test_accounts_controller.py | 865 | # Create a Sales Invoice | COMMENT |
| MEDIUM | erpnext/controllers/tests/test_accounts_controller.py | 881 | # Create a Sales Invoice | COMMENT |
| MEDIUM | erpnext/controllers/tests/test_accounts_controller.py | 2190 | # Create a sales order with discount amount | COMMENT |
| MEDIUM | erpnext/controllers/tests/test_accounts_controller.py | 2226 | # Create a purchase order with discount amount | COMMENT |
| MEDIUM | erpnext/controllers/tests/test_accounts_controller.py | 2262 | # Create a sales order with discount amount | COMMENT |
| MEDIUM | erpnext/controllers/tests/test_accounts_controller.py | 2300 | # Create a sales order with discount percentage instead of amount | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | erpnext/buying/utils.py | 14 | def update_last_purchase_rate(doc, is_submit) -> None: | CODE |
| LOW | erpnext/buying/utils.py | 81 | def set_stock_levels(row) -> None: | CODE |
| LOW | …ying/doctype/purchase_order/services/subcontracting.py | 47 | def set_service_items_for_finished_goods(self) -> None: | CODE |
| LOW⚡ | …ying/doctype/purchase_order/services/subcontracting.py | 89 | def update_subcontracting_order_status(self) -> None: | CODE |
| LOW | …xt/buying/doctype/purchase_order/services/drop_ship.py | 14 | def update_dropship_received_qty(self, data: list[dict]) -> None: | CODE |
| LOW | …xt/buying/doctype/purchase_order/services/drop_ship.py | 74 | def update_delivered_qty_in_sales_order(self) -> None: | CODE |
| LOW | …xt/buying/doctype/purchase_order/services/drop_ship.py | 88 | def set_received_qty_to_zero_for_drop_ship_items(self) -> None: | CODE |
| LOW | …pnext/buying/doctype/purchase_order/services/status.py | 23 | def update_status(self, status: str) -> None: | CODE |
| LOW⚡ | …pnext/buying/doctype/purchase_order/services/status.py | 59 | def update_receiving_percentage(self) -> None: | CODE |
| LOW | erpnext/selling/doctype/sales_order/mapper.py | 923 | def set_delivery_date(items: list, sales_order: str) -> None: | CODE |
| LOW | erpnext/selling/doctype/sales_order/mapper.py | 1085 | def update_item_quantity(source, target, source_parent) -> None: | CODE |
| LOW | erpnext/selling/doctype/sales_order/mapper.py | 1097 | def update_packed_item_qty(source, target, source_parent) -> None: | CODE |
| LOW | …xt/selling/doctype/sales_order/services/reservation.py | 35 | def update_reserved_qty(self, so_item_rows: list | None = None) -> None: | CODE |
| LOW⚡ | …ling/doctype/sales_order/services/delivery_schedule.py | 65 | def update_delivery_date_based_on_schedule(self, child_row, first_delivery_date) -> None: | CODE |
| LOW | …selling/doctype/sales_order/services/subcontracting.py | 57 | def update_subcontracting_order_status(self) -> None: | CODE |
| LOW | erpnext/selling/doctype/sales_order/services/status.py | 20 | def set_default_statuses(self) -> None: | CODE |
| LOW | erpnext/selling/doctype/sales_order/services/status.py | 29 | def update_status(self, status: str) -> None: | CODE |
| LOW | erpnext/selling/doctype/sales_order/services/status.py | 59 | def update_delivery_percentage(self, update_modified: bool = True) -> None: | CODE |
| LOW | erpnext/selling/doctype/sales_order/services/status.py | 74 | def update_billing_percentage(self, update_modified: bool = True) -> None: | CODE |
| LOW | erpnext/selling/doctype/sales_order/services/status.py | 95 | def update_delivery_status(self) -> None: | CODE |
| LOW | erpnext/selling/doctype/sales_order/services/status.py | 125 | def update_picking_status(self) -> None: | CODE |
| LOW | erpnext/selling/doctype/sales_order/services/status.py | 154 | def set_indicator(self) -> None: | CODE |
| LOW | …t/selling/doctype/proforma_invoice/proforma_invoice.py | 57 | def set_item_values(self) -> None: | CODE |
| LOW | …t/selling/doctype/proforma_invoice/proforma_invoice.py | 81 | def set_rate_and_amount(self, item, sales_order_rate: float) -> None: | CODE |
| LOW | …t/selling/doctype/proforma_invoice/proforma_invoice.py | 110 | def set_total_qty(self) -> None: | CODE |
| LOW | erpnext/projects/doctype/task/task.py | 518 | def set_missing_values(source: dict, target: dict) -> None: | CODE |
| LOW | …ring/report/process_loss_report/process_loss_report.py | 122 | def update_data_with_total_pl_value(data: Data) -> None: | CODE |
| LOW | …facturing/doctype/bom_update_log/bom_updation_utils.py | 46 | def update_cost_in_level(doc: "BOMUpdateLog", bom_list: list[str], batch_name: int | str) -> None: | CODE |
| LOW | …facturing/doctype/bom_update_log/bom_updation_utils.py | 99 | def update_new_bom_in_bom_items(unit_cost: float, current_bom: str, new_bom: str) -> None: | CODE |
| LOW | …facturing/doctype/bom_update_log/bom_updation_utils.py | 119 | def update_cost_in_boms(bom_list: list[str]) -> None: | CODE |
| LOW | …facturing/doctype/bom_update_log/bom_updation_utils.py | 210 | def set_values_in_log(log_name: str, values: dict[str, Any], commit: bool = False) -> None: | CODE |
| LOW | …t/manufacturing/doctype/blanket_order/blanket_order.py | 73 | def update_status(self, status: str) -> None: | CODE |
| LOW | erpnext/utilities/transaction_base.py | 396 | def set_fetched_values(self, item_obj: object, item_details: dict) -> None: | CODE |
| LOW | erpnext/utilities/transaction_base.py | 461 | def set_rate_based_on_price_list(self, item_obj: object, item_details: dict) -> None: | CODE |
| LOW | erpnext/utilities/transaction_base.py | 523 | def set_item_rate_and_discounts(self, item_obj: object, item_details: dict) -> None: | CODE |
| LOW⚡ | erpnext/accounts/utils.py | 2887 | def update_subscription_on_invoice_update(doc: "Document", method: str | None = None) -> None: | CODE |
| LOW | erpnext/accounts/services/advances.py | 27 | def set_advances(doc) -> None: | CODE |
| LOW | erpnext/accounts/services/advances.py | 128 | def set_advance_gain_or_loss(doc) -> None: | CODE |
| LOW | erpnext/accounts/services/advances.py | 162 | def set_total_advance_paid(doc) -> None: | CODE |
| LOW | erpnext/accounts/services/advances.py | 177 | def set_advance_payment_status(doc) -> None: | CODE |
| LOW | erpnext/accounts/services/taxes.py | 26 | def set_taxes(self) -> None: | CODE |
| LOW | erpnext/accounts/services/taxes.py | 49 | def set_taxes_and_charges(self) -> None: | CODE |
| LOW⚡ | erpnext/accounts/services/taxes.py | 111 | def set_other_charges(self) -> None: | CODE |
| LOW | erpnext/accounts/services/taxes.py | 398 | def set_child_tax_template_and_map(item, child_item, parent_doc) -> None: | CODE |
| LOW | erpnext/accounts/services/internal_transfer.py | 36 | def set_account(self) -> None: | CODE |
| LOW | erpnext/accounts/services/child_item_update.py | 523 | def update_bin_on_delete(row, doctype: str) -> None: | CODE |
| LOW | erpnext/accounts/services/child_item_update.py | 698 | def update_child_item_uom_and_weight(child_item, new_data) -> None: | CODE |
| LOW | erpnext/accounts/services/exchange_gain_loss.py | 210 | def set_transaction_currency_and_rate_in_gl_map(doc, gl_entries: list) -> None: | CODE |
| LOW | erpnext/accounts/services/payment_schedule.py | 18 | def set_payment_schedule(self) -> None: | CODE |
| LOW | erpnext/accounts/services/payment_schedule.py | 210 | def set_due_date(self) -> None: | CODE |
| LOW | erpnext/accounts/doctype/sales_invoice/services/pos.py | 36 | def _set_default_change_amount_account(self) -> None: | CODE |
| LOW | erpnext/accounts/doctype/sales_invoice/services/pos.py | 105 | def _set_selling_price_list(self, pos) -> None: | CODE |
| LOW | erpnext/accounts/doctype/sales_invoice/services/pos.py | 123 | def _set_update_stock_from_profile(self, pos) -> None: | CODE |
| LOW | erpnext/accounts/doctype/sales_invoice/services/pos.py | 141 | def _set_terms_and_taxes(self, pos) -> None: | CODE |
| LOW | erpnext/accounts/doctype/sales_invoice/services/pos.py | 151 | def update_paid_amount(self) -> None: | CODE |
| LOW | erpnext/accounts/doctype/sales_invoice/services/pos.py | 169 | def set_account_for_mode_of_payment(self) -> None: | CODE |
| LOW | erpnext/accounts/doctype/sales_invoice/services/pos.py | 339 | def update_multi_mode_option(doc, pos_profile) -> None: | CODE |
| LOW | …counts/doctype/sales_invoice/services/inter_company.py | 76 | def update_linked_doc(doctype: str, name: str, inter_company_reference: str | None) -> None: | CODE |
| LOW⚡ | …ccounts/doctype/sales_invoice/services/fixed_assets.py | 72 | def set_income_account_for_fixed_assets(self) -> None: | CODE |
| LOW | …ccounts/doctype/sales_invoice/services/fixed_assets.py | 124 | def _update_asset(self) -> None: | CODE |
| 55 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | erpnext/buying/utils.py | 42 | # Check if item code is present | COMMENT |
| LOW | …t/buying/doctype/purchase_order/test_purchase_order.py | 1553 | # Check if the billed amount reduced | COMMENT |
| LOW | …t/buying/doctype/purchase_order/test_purchase_order.py | 1566 | # Check if the billed amount stayed the same | COMMENT |
| LOW | …ort/customer_credit_balance/customer_credit_balance.py | 15 | # Check if customer id is according to naming series or customer name | COMMENT |
| LOW | erpnext/selling/doctype/quotation/mapper.py | 248 | # Check if a Customer already exists for the Lead or Prospect. | COMMENT |
| LOW⚡ | erpnext/selling/doctype/sales_order/test_sales_order.py | 763 | # Check if payment terms are copied from sales order to sales invoice | COMMENT |
| LOW⚡ | erpnext/selling/doctype/sales_order/test_sales_order.py | 779 | # Check if payment terms are not copied from sales order to sales invoice | COMMENT |
| LOW | erpnext/selling/doctype/sales_order/test_sales_order.py | 2294 | # Check if Work Orders were raised | COMMENT |
| LOW | …agement/doctype/quality_procedure/quality_procedure.py | 56 | # Check if any child process belongs to another parent. | COMMENT |
| LOW | …pnext/patches/v15_0/link_purchase_item_to_asset_doc.py | 64 | # Check if the asset is grouped | COMMENT |
| LOW | erpnext/patches/v13_0/update_member_email_address.py | 15 | # Check if email_id already exists | COMMENT |
| LOW | erpnext/crm/doctype/appointment/appointment.py | 166 | # Set status to "Unverified" for new Appointments. | COMMENT |
| LOW | …saction_deletion_record/transaction_deletion_record.py | 411 | # Check if doctype exists and is not a child table or virtual | COMMENT |
| LOW | …saction_deletion_record/transaction_deletion_record.py | 555 | if "company" in db_company_fields: # Check if 'company' is a valid field | CODE |
| LOW | erpnext/manufacturing/doctype/job_card/test_job_card.py | 377 | # Check if 'For Quantity' is negative | COMMENT |
| LOW | erpnext/www/book_appointment/index.py | 77 | # Check if holiday | COMMENT |
| LOW | …ort/customer_ledger_summary/customer_ledger_summary.py | 283 | # Check if this is a direct return invoice (most specific condition first) | COMMENT |
| LOW | …ort/customer_ledger_summary/customer_ledger_summary.py | 286 | # Check if this entry is against a return invoice | COMMENT |
| LOW | erpnext/accounts/report/balance_sheet/balance_sheet.py | 189 | # Check if previous year balance sheet closed | COMMENT |
| LOW | …ce_creation_tool/test_opening_invoice_creation_tool.py | 56 | # Check if update stock is not enabled | COMMENT |
| LOW | …ce_creation_tool/test_opening_invoice_creation_tool.py | 96 | # Check if missing debit account error raised | COMMENT |
| LOW | …unts/doctype/bank_transaction/test_bank_transaction.py | 136 | # Check if ERPNext can correctly filter a linked payments based on the debit/credit amount | COMMENT |
| LOW | …bank_statement_import_log/bank_statement_import_log.py | 1153 | # Check if there's an amount column | COMMENT |
| LOW | …/payment_reconciliation/test_payment_reconciliation.py | 1036 | # Check if difference journal entry gets generated for difference amount after reconciliation | COMMENT |
| LOW | …/payment_reconciliation/test_payment_reconciliation.py | 1209 | # Check if difference journal entry gets generated for difference amount after reconciliation | COMMENT |
| LOW | …t/accounts/doctype/sales_invoice/test_sales_invoice.py | 2475 | # Check if SO is unlinked/replaced by SI in PE & if SO advance paid is 0 | COMMENT |
| LOW | …t/accounts/doctype/sales_invoice/test_sales_invoice.py | 3566 | # Check if adjustment entry is created | COMMENT |
| LOW | …t/accounts/doctype/sales_invoice/test_sales_invoice.py | 4731 | # Check if loyalty points are applied correctly | COMMENT |
| LOW | …/cost_center_allocation/test_cost_center_allocation.py | 95 | # Check if any child cost center is used as main cost center in any other existing allocation | COMMENT |
| LOW⚡ | …ctype/cost_center_allocation/cost_center_allocation.py | 69 | # Check if GLE exists against the main cost center | COMMENT |
| LOW | …ctype/cost_center_allocation/cost_center_allocation.py | 89 | # Check if there are any future existing allocation records against the main cost center | COMMENT |
| LOW | …ctype/cost_center_allocation/cost_center_allocation.py | 143 | # Check if child cost center is used as main cost center in any existing allocation | COMMENT |
| LOW | erpnext/accounts/doctype/tax_rule/test_tax_rule.py | 379 | # Check if accounts heads and rate fetched are also fetched from tax template or not | COMMENT |
| LOW | …doctype/bank_transaction_rule/bank_transaction_rule.py | 98 | # Set priority to 1 if no rules exist, otherwise increment by 1 | COMMENT |
| LOW⚡ | …unts/doctype/purchase_invoice/test_purchase_invoice.py | 138 | # Check if the received quantity is updated in Material Request | COMMENT |
| LOW | …/accounts/doctype/purchase_invoice/purchase_invoice.py | 801 | # Check if there exists any item with cwip accounting enabled in it's asset category | COMMENT |
| LOW | …/accounts/doctype/purchase_invoice/purchase_invoice.py | 968 | # Check if outstanding amount is 0 due to debit note issued against invoice | COMMENT |
| LOW | erpnext/accounts/doctype/account/test_account.py | 170 | # Check if renamed in children | COMMENT |
| LOW | erpnext/accounts/doctype/account/account.py | 481 | # Check if any previous balance exists | COMMENT |
| LOW | …e/bank_reconciliation_tool/bank_reconciliation_tool.py | 794 | # Check if this account is a Income or Expense Account | COMMENT |
| LOW⚡ | …ype/service_level_agreement/service_level_agreement.py | 106 | # Check if repeated priority | COMMENT |
| LOW | …ype/service_level_agreement/service_level_agreement.py | 79 | # Check if response and resolution time is set for every priority | COMMENT |
| LOW | …type/maintenance_schedule/test_maintenance_schedule.py | 68 | # Check if item is mapped in visit. | COMMENT |
| LOW | erpnext/regional/italy/utils.py | 86 | # Check if stamp duty (Bollo) of 2 EUR exists. | COMMENT |
| LOW⚡ | …type/stock_reconciliation/test_stock_reconciliation.py | 341 | # Check if Serial No from Stock Reconcilation is intact | COMMENT |
| LOW⚡ | …type/stock_reconciliation/test_stock_reconciliation.py | 345 | # Check if Serial No from Stock Entry is Unlinked and Inactive | COMMENT |
| LOW | erpnext/stock/doctype/batch/test_batch.py | 197 | # Set user to session user | COMMENT |
| LOW | erpnext/stock/doctype/item/item.py | 993 | # Check if old attributes were removed from the list | COMMENT |
| LOW | …next/stock/doctype/delivery_note/test_delivery_note.py | 376 | # Check if Original DN updated | COMMENT |
| LOW | …next/stock/doctype/delivery_note/test_delivery_note.py | 384 | # Check if unreturned amount is mapped in 2nd return | COMMENT |
| LOW | …next/stock/doctype/delivery_note/test_delivery_note.py | 445 | # Check if Original DN updated | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 6365 | # Check if Original PR updated | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 6374 | # Check if the first partial debit billing percentage got updated | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 6384 | # Check if the second partial debit note billing percentage got updated | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 503 | # Check if Original PR updated | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 512 | # Check if unreturned amount is mapped in 2nd return | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 568 | # Check if Original PR updated | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4828 | # Check if the billed amount reduced | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4841 | # Check if the billed amount stayed the same | COMMENT |
| LOW | erpnext/stock/doctype/item_price/test_item_price.py | 180 | # Check if none/empty values are not compared during insert validation | COMMENT |
| 6 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ents/features/BankReconciliation/MatchAndReconcile.tsx | 837 | // We need to check if the following details match: | COMMENT |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 22 | ### Step 1: Update remarks in GL Entries | COMMENT |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 25 | ### Step 2: Update remarks in Payment Ledger Entries | COMMENT |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 28 | ### Step 3: Update remarks in Sales Invoice | COMMENT |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 55 | ### Step 1: Update remarks in GL Entries | STRING |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 58 | ### Step 2: Update remarks in Payment Ledger Entries | STRING |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 61 | ### Step 3: Update remarks in Purchase Invoice | STRING |
| LOW⚡ | erpnext/manufacturing/doctype/bom/test_bom.py | 1061 | # Step 1: Create BOM | COMMENT |
| LOW⚡ | erpnext/manufacturing/doctype/bom/test_bom.py | 1080 | # Step 2: Uncheck is_active field | COMMENT |
| LOW⚡ | erpnext/manufacturing/doctype/bom/test_bom.py | 1086 | # Step 3: Check is_active field | COMMENT |
| LOW⚡ | …_withholding_category/test_tax_withholding_category.py | 2911 | # Step 1: Create a Payment Entry with over withheld amount at 10% rate | COMMENT |
| LOW⚡ | …_withholding_category/test_tax_withholding_category.py | 2919 | # Step 2: Create Purchase Invoice with partial adjustment and manual rate change | COMMENT |
| LOW⚡ | …_withholding_category/test_tax_withholding_category.py | 3032 | # Step 1: Create a Payment Entry with over withheld amount at 10% rate | COMMENT |
| LOW⚡ | …_withholding_category/test_tax_withholding_category.py | 3040 | # Step 2: Create Purchase Invoice with partial adjustment and manual rate change | COMMENT |
| LOW | …_withholding_category/test_tax_withholding_category.py | 2964 | # Step 3: Verify the tax withholding entries | COMMENT |
| LOW | …_withholding_category/test_tax_withholding_category.py | 3085 | # Step 3: Verify the tax withholding entries | COMMENT |
| LOW | …_withholding_category/test_tax_withholding_category.py | 3188 | # Step 3: Verify the tax withholding entries on invoice | COMMENT |
| LOW | …ancial_report_template/test_financial_report_engine.py | 2077 | # Step 1: opening JV in current year (FY 2024) — must be posted before PCV | COMMENT |
| LOW | …ancial_report_template/test_financial_report_engine.py | 2091 | # Step 2: opening JV in next year (FY 2025) | COMMENT |
| LOW | …ancial_report_template/test_financial_report_engine.py | 2104 | # Step 3: book Period Closing Voucher for previous year (FY 2023) | COMMENT |
| LOW | …/subcontracting_receipt/test_subcontracting_receipt.py | 1663 | # Step 1: Create Subcontracting Receipt with rejected quantity | COMMENT |
| LOW | …/subcontracting_receipt/test_subcontracting_receipt.py | 1677 | # Step 2: Create Subcontract Return from Rejected Warehouse | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 3982 | # Step 1: Create Item | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 3985 | # Step 2: Create Stock Entry (Material Receipt) | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4134 | # Step 2: Create Stock Entry (Material Receipt) | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4187 | # Step 1: Create Purchase Receipt with valuation rate 100 | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4197 | # Step 2: Create One more Purchase Receipt with valuation rate 200 | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4207 | # Step 3: Create Purchase Return for 2 qty | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4702 | # Step 1: Create Purchase Receipt | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 3997 | # Step 3: Create Delivery Note with Internal Customer | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4012 | # Step 4: Create Internal Purchase Receipt | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4026 | # Step 5: Test Over Receipt Allowance | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4145 | # Step 3: Create Delivery Note with Internal Customer | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4160 | # Step 4: Create Internal Purchase Receipt | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4237 | # Step 1: Create Purchase Receipt with valuation rate 100 | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4742 | # Step 2: Create Purchase Receipt | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 5426 | # Step 1: Create Purchase Receipt with valuation rate 100 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 22 | ### Step 1: Update remarks in GL Entries | COMMENT |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 25 | ### Step 2: Update remarks in Payment Ledger Entries | COMMENT |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 28 | ### Step 3: Update remarks in Sales Invoice | COMMENT |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 55 | ### Step 1: Update remarks in GL Entries | STRING |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 58 | ### Step 2: Update remarks in Payment Ledger Entries | STRING |
| LOW⚡ | erpnext/patches/v15_0/update_invoice_remarks.py | 61 | ### Step 3: Update remarks in Purchase Invoice | STRING |
| LOW⚡ | erpnext/manufacturing/doctype/bom/test_bom.py | 1061 | # Step 1: Create BOM | COMMENT |
| LOW⚡ | erpnext/manufacturing/doctype/bom/test_bom.py | 1080 | # Step 2: Uncheck is_active field | COMMENT |
| LOW⚡ | erpnext/manufacturing/doctype/bom/test_bom.py | 1086 | # Step 3: Check is_active field | COMMENT |
| LOW⚡ | …_withholding_category/test_tax_withholding_category.py | 2911 | # Step 1: Create a Payment Entry with over withheld amount at 10% rate | COMMENT |
| LOW⚡ | …_withholding_category/test_tax_withholding_category.py | 2919 | # Step 2: Create Purchase Invoice with partial adjustment and manual rate change | COMMENT |
| LOW⚡ | …_withholding_category/test_tax_withholding_category.py | 3032 | # Step 1: Create a Payment Entry with over withheld amount at 10% rate | COMMENT |
| LOW⚡ | …_withholding_category/test_tax_withholding_category.py | 3040 | # Step 2: Create Purchase Invoice with partial adjustment and manual rate change | COMMENT |
| LOW | …_withholding_category/test_tax_withholding_category.py | 2964 | # Step 3: Verify the tax withholding entries | COMMENT |
| LOW | …_withholding_category/test_tax_withholding_category.py | 3085 | # Step 3: Verify the tax withholding entries | COMMENT |
| LOW | …_withholding_category/test_tax_withholding_category.py | 3188 | # Step 3: Verify the tax withholding entries on invoice | COMMENT |
| LOW | …ancial_report_template/test_financial_report_engine.py | 2077 | # Step 1: opening JV in current year (FY 2024) — must be posted before PCV | COMMENT |
| LOW | …ancial_report_template/test_financial_report_engine.py | 2091 | # Step 2: opening JV in next year (FY 2025) | COMMENT |
| LOW | …ancial_report_template/test_financial_report_engine.py | 2104 | # Step 3: book Period Closing Voucher for previous year (FY 2023) | COMMENT |
| LOW | …/subcontracting_receipt/test_subcontracting_receipt.py | 1663 | # Step 1: Create Subcontracting Receipt with rejected quantity | COMMENT |
| LOW | …/subcontracting_receipt/test_subcontracting_receipt.py | 1677 | # Step 2: Create Subcontract Return from Rejected Warehouse | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 3982 | # Step 1: Create Item | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 3985 | # Step 2: Create Stock Entry (Material Receipt) | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4134 | # Step 2: Create Stock Entry (Material Receipt) | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4187 | # Step 1: Create Purchase Receipt with valuation rate 100 | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4197 | # Step 2: Create One more Purchase Receipt with valuation rate 200 | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4207 | # Step 3: Create Purchase Return for 2 qty | COMMENT |
| LOW⚡ | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4702 | # Step 1: Create Purchase Receipt | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 3997 | # Step 3: Create Delivery Note with Internal Customer | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4012 | # Step 4: Create Internal Purchase Receipt | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4026 | # Step 5: Test Over Receipt Allowance | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4145 | # Step 3: Create Delivery Note with Internal Customer | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4160 | # Step 4: Create Internal Purchase Receipt | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4237 | # Step 1: Create Purchase Receipt with valuation rate 100 | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 4742 | # Step 2: Create Purchase Receipt | COMMENT |
| LOW | …tock/doctype/purchase_receipt/test_purchase_receipt.py | 5426 | # Step 1: Create Purchase Receipt with valuation rate 100 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ort/purchase_order_analysis/purchase_order_analysis.py | 108 | CODE | |
| LOW | …next/patches/v14_0/update_pos_return_ledger_entries.py | 16 | CODE | |
| LOW | …timesheet_billing_summary/timesheet_billing_summary.py | 124 | CODE | |
| LOW | erpnext/projects/doctype/task/test_task.py | 488 | CODE | |
| LOW | erpnext/projects/doctype/timesheet/test_timesheet.py | 826 | CODE | |
| LOW | erpnext/crm/utils.py | 243 | CODE | |
| LOW | …ort/work_order_stock_report/work_order_stock_report.py | 112 | CODE | |
| LOW | erpnext/utilities/product.py | 148 | CODE | |
| LOW | erpnext/accounts/utils.py | 66 | CODE | |
| LOW | erpnext/accounts/utils.py | 99 | CODE | |
| LOW | erpnext/accounts/utils.py | 200 | CODE | |
| LOW | erpnext/accounts/utils.py | 1263 | CODE | |
| LOW | erpnext/accounts/utils.py | 2540 | CODE | |
| LOW | erpnext/accounts/party.py | 79 | CODE | |
| LOW | erpnext/accounts/party.py | 118 | CODE | |
| LOW | erpnext/accounts/party.py | 480 | CODE | |
| LOW | …e/account_balance_timeline/account_balance_timeline.py | 15 | CODE | |
| LOW | erpnext/accounts/report/financial_statements.py | 688 | CODE | |
| LOW | …lance_report/dimension_wise_accounts_balance_report.py | 80 | CODE | |
| LOW | erpnext/accounts/report/trial_balance/trial_balance.py | 149 | CODE | |
| LOW | …nsolidated_trial_balance/consolidated_trial_balance.py | 217 | CODE | |
| LOW | …n_invoice_date/payment_period_based_on_invoice_date.py | 189 | CODE | |
| LOW | …pnext/accounts/report/general_ledger/general_ledger.py | 161 | CODE | |
| LOW | …eport/profitability_analysis/profitability_analysis.py | 95 | CODE | |
| LOW | erpnext/accounts/services/base_gl_composer.py | 129 | CODE | |
| LOW | erpnext/accounts/services/base_gl_composer.py | 250 | CODE | |
| LOW | …xt/accounts/doctype/payment_request/payment_request.py | 1398 | CODE | |
| LOW | …ctype/payment_reconciliation/payment_reconciliation.py | 570 | CODE | |
| LOW | erpnext/accounts/doctype/sales_invoice/mapper.py | 542 | CODE | |
| LOW | …ctype/period_closing_voucher/period_closing_voucher.py | 913 | CODE | |
| LOW | erpnext/accounts/doctype/journal_entry/journal_entry.py | 1299 | CODE | |
| LOW | …e/bank_reconciliation_tool/bank_reconciliation_tool.py | 161 | CODE | |
| LOW | …e/bank_reconciliation_tool/bank_reconciliation_tool.py | 327 | CODE | |
| LOW | …e/bank_reconciliation_tool/bank_reconciliation_tool.py | 1381 | CODE | |
| LOW | …e/bank_reconciliation_tool/bank_reconciliation_tool.py | 1421 | CODE | |
| LOW | …ccounts/doctype/pos_closing_entry/pos_closing_entry.py | 290 | CODE | |
| LOW | …ccounts/doctype/pos_closing_entry/pos_closing_entry.py | 373 | CODE | |
| LOW | …ervice_level_agreement/test_service_level_agreement.py | 412 | CODE | |
| LOW | erpnext/stock/stock_ledger.py | 2337 | CODE | |
| LOW | erpnext/stock/stock_ledger.py | 2471 | CODE | |
| LOW | erpnext/stock/get_item_details.py | 223 | CODE | |
| LOW | …rehouse_wise_stock_value/warehouse_wise_stock_value.py | 14 | CODE | |
| LOW | …stock_value_by_item_group/stock_value_by_item_group.py | 18 | CODE | |
| LOW | …t_serial_no_valuation/incorrect_serial_no_valuation.py | 27 | CODE | |
| LOW | …_and_batch_bundle/incorrect_serial_and_batch_bundle.py | 102 | CODE | |
| LOW | …_and_batch_bundle/incorrect_serial_and_batch_bundle.py | 134 | CODE | |
| LOW | …transaction/incorrect_balance_qty_after_transaction.py | 25 | CODE | |
| LOW | erpnext/stock/report/reserved_stock/reserved_stock.py | 83 | CODE | |
| LOW | …eport/available_batch_report/available_batch_report.py | 79 | CODE | |
| LOW | …ype/stock_reservation_entry/stock_reservation_entry.py | 1910 | CODE | |
| LOW | erpnext/stock/doctype/batch/batch.py | 272 | CODE | |
| LOW | erpnext/stock/doctype/item/test_item.py | 1403 | CODE | |
| LOW | erpnext/stock/doctype/stock_entry/stock_entry_utils.py | 18 | CODE | |
| LOW | …ype/serial_and_batch_bundle/serial_and_batch_bundle.py | 3529 | CODE | |
| LOW | erpnext/controllers/stock_controller.py | 444 | CODE | |
| LOW | erpnext/controllers/tests/test_accounts_controller.py | 254 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | banking/src/lib/namespace/sync.js | 61 | } | COMMENT |
| LOW | erpnext/edi/doctype/common_code/common_code.js | 1 | // Copyright (c) 2024, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …_transaction_log_detail/bulk_transaction_log_detail.js | 1 | // Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …/delivery_schedule_item/test_delivery_schedule_item.py | 1 | # Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and Contributors | COMMENT |
| LOW | …ctype/delivery_schedule_item/delivery_schedule_item.js | 1 | // Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …p/doctype/terms_and_conditions/terms_and_conditions.js | 1 | // Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors | COMMENT |
| LOW | erpnext/setup/doctype/incoterm/incoterm.js | 1 | // Copyright (c) 2022, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | erpnext/setup/doctype/uom/uom.js | 1 | // Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors | COMMENT |
| LOW | …ccount/test_workstation_operating_component_account.py | 1 | # Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and Contributors | COMMENT |
| LOW | …ent_account/workstation_operating_component_account.js | 1 | // Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …ting_component/test_workstation_operating_component.py | 1 | # Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and Contributors | COMMENT |
| LOW | …operating_component/workstation_operating_component.js | 1 | // Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …ring/doctype/workstation_cost/test_workstation_cost.py | 1 | # Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and Contributors | COMMENT |
| LOW | …facturing/doctype/workstation_cost/workstation_cost.js | 1 | // Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | erpnext/public/js/shop_floor/shop_floor.js | 1 | // Shop Floor — an immersive, keyboard-first operator/manager interface. | COMMENT |
| LOW | erpnext/public/js/utils/barcode_scanner.js | 21 | // shouldn't cap further scans. | COMMENT |
| LOW | erpnext/public/scss/erpnext.scss | 621 | COMMENT | |
| LOW | …ated_discount_mismatch/calculated_discount_mismatch.js | 1 | // Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …unts/report/accounts_receivable/accounts_receivable.py | 21 | get_advance_payment_doctypes, | COMMENT |
| LOW | …s/doctype/process_subscription/process_subscription.js | 1 | // Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …doctype/ledger_health_monitor/ledger_health_monitor.js | 1 | // Copyright (c) 2024, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …ts/doctype/pegged_currencies/test_pegged_currencies.py | 1 | # Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and Contributors | COMMENT |
| LOW | …ccounts/doctype/pegged_currencies/pegged_currencies.js | 1 | // Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | erpnext/accounts/doctype/ledger_health/ledger_health.js | 1 | // Copyright (c) 2024, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …doctype/subscription_settings/subscription_settings.js | 1 | // Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …s/doctype/bank_account_balance/bank_account_balance.js | 1 | // Copyright (c) 2026, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | erpnext/accounts/doctype/bisect_nodes/bisect_nodes.js | 1 | // Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …doctype/tax_withholding_group/tax_withholding_group.js | 1 | // Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …s/doctype/subscription_invoice/subscription_invoice.js | 1 | // Copyright (c) 2018, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …/accounts/doctype/account_category/account_category.js | 1 | // Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …unts/doctype/account_category/test_account_category.py | 1 | # Copyright (c) 2025, Frappe Technologies Pvt. Ltd. and Contributors | COMMENT |
| LOW | erpnext/support/doctype/issue/issue.js | 141 | COMMENT | |
| LOW | erpnext/support/doctype/issue/issue.js | 161 | // frappe.set_route("Form", "Help Article", doc.name); | COMMENT |
| LOW | …doctype/stock_closing_balance/stock_closing_balance.js | 1 | // Copyright (c) 2024, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …/doctype/stock_ledger_entry/test_stock_ledger_entry.py | 861 | # Run assertions | COMMENT |
| LOW | …/doctype/stock_ledger_entry/test_stock_ledger_entry.py | 881 | # ) | COMMENT |
| LOW | …/doctype/stock_ledger_entry/test_stock_ledger_entry.py | 901 | # old3 = make_stock_entry( | COMMENT |
| LOW | …/doctype/stock_ledger_entry/test_stock_ledger_entry.py | 921 | # self.assertSLEs( | COMMENT |
| LOW | …/doctype/stock_ledger_entry/test_stock_ledger_entry.py | 941 | # "actual_qty": 10, | COMMENT |
| LOW | …/doctype/stock_ledger_entry/test_stock_ledger_entry.py | 961 | # }, | COMMENT |
| LOW | …/doctype/stock_ledger_entry/test_stock_ledger_entry.py | 981 | # item_code=item_code, source=warehouse, qty=10, batch_no=batches[1] | COMMENT |
| LOW | erpnext/startup/__init__.py | 1 | # ERPNext - web based ERP (http://erpnext.com) | COMMENT |
| LOW | erpnext/assets/doctype/asset_activity/asset_activity.js | 1 | // Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | …ssets/doctype/asset_shift_factor/asset_shift_factor.js | 1 | // Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and contributors | COMMENT |
| LOW | erpnext/shopping_cart/__init__.py | 1 | # Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors | COMMENT |
| LOW | .github/workflows/sync-hotfix-translations.yml | 1 | # Orchestrator — lives on develop only. | COMMENT |
| LOW | .github/helper/start-db.sh | 1 | #!/bin/bash | COMMENT |
| LOW | .github/helper/install.sh | 1 | #!/bin/bash | COMMENT |
| LOW | .github/helper/hydrate.sh | 1 | #!/bin/bash | COMMENT |
| LOW | .github/helper/hydrate.sh | 21 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | erpnext/selling/doctype/customer/test_customer.py | 596 | first, middle, last = parse_full_name("John Doe") | CODE |
| LOW⚡ | …projects/doctype/project_update/test_project_update.py | 71 | receive_reply(project_update, "admin@example.com", "Done with design") | CODE |
| LOW⚡ | …projects/doctype/project_update/test_project_update.py | 79 | receive_reply(project_update, "admin@example.com", "Done with design") | CODE |
| LOW⚡ | …projects/doctype/project_update/test_project_update.py | 81 | receive_reply(project_update, "admin@example.com", "Done with design") | CODE |
| LOW⚡ | …projects/doctype/project_update/test_project_update.py | 92 | receive_reply(project_update, "admin@example.com", "Done with design") | CODE |
| LOW⚡ | …projects/doctype/project_update/test_project_update.py | 103 | receive_reply(project_update, "admin@example.com", "Done with design") | CODE |
| LOW | erpnext/setup/setup_wizard/data/sample_blog_post.html | 3 | <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore m | CODE |
| LOW | erpnext/setup/setup_wizard/data/sample_blog_post.html | 3 | <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore m | CODE |
| LOW | …report/accounts_receivable/test_accounts_receivable.py | 983 | "customer_name": "Jane Doe", | CODE |
| LOW | …report/accounts_receivable/test_accounts_receivable.py | 1202 | "customer_name": "Jane Doe", | CODE |
| LOW | …counts/doctype/payment_request/test_payment_request.py | 249 | recipient_id="user@example.com", | CODE |
| LOW | …counts/doctype/payment_request/test_payment_request.py | 274 | recipient_id="user@example.com", | CODE |
| LOW | …counts/doctype/payment_request/test_payment_request.py | 293 | recipient_id="user@example.com", | CODE |
| LOW | …counts/doctype/payment_request/test_payment_request.py | 1788 | "address_line1": "123 Main St", | CODE |
| LOW | …counts/doctype/payment_request/test_payment_request.py | 1811 | self.assertEqual(address.get("address_line1"), "123 Main St") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …_quotation_comparison/supplier_quotation_comparison.py | 162 | group_entries = group_wise_map[group] # all entries pertaining to item/supplier | CODE |
| MEDIUM | erpnext/selling/page/sales_funnel/test_sales_funnel.py | 40 | # Baseline before creating anything (robust against pre-existing rows). | COMMENT |
| MEDIUM | …selling/report/sales_analytics/test_sales_analytics.py | 203 | # robust to any pre-existing rows in the historical window. | COMMENT |
| LOW | erpnext/accounts/general_ledger.py | 237 | # if there is already an entry in this account then just add it | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | erpnext/hooks.py | 263 | "condition": "eval: frappe.boot.sysdefaults.demo_company && frappe.boot.sysdefaults.demo_company.length > 0", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …saction_deletion_record/transaction_deletion_record.py | 612 | def execute_task(self, task_to_execute: str | None = None): | CODE |