Odoo

Customer invoices with line details

Odoo invoice cards with totals, payment state and an inline product-line table.

Customer invoices and credit notes from Odoo's PostgreSQL model tables, with product lines embedded in the invoice Details screen. The relations and field names follow Odoo's official account invoice report source, which joins account_move, account_move_line and res_partner.

Prepare Odoo / PostgreSQL:
1. Ask the database administrator for a dedicated PostgreSQL login with SELECT only on account_move, account_move_line and res_partner.
2. Restrict network access and use TLS or a VPN. Never reuse the Odoo owner/superuser.
3. This is a database package, not Odoo JSON-RPC. Test it after every major Odoo upgrade because internal database access is version-sensitive.
Official source reference: https://github.com/odoo/odoo/blob/19.0/addons/account/report/account_invoice_report.py

Configure Cifru on iPhone/iPad:
1. Sources → Add source → PostgreSQL and enter the dedicated read-only connection.
2. Test the connection, then import the package and map its single database slot.
3. Cifru checks both statements as SELECT-only and runs a read/compatibility test before applying.
4. Plan Pro is required because this package contains custom read-only SQL.
5. The package contains no Odoo database name, host, company data or credential.

Ce creează pachetul

1 Home1 Detalii2 liste1 surse de legat
  • Home: Customer invoices
  • Detalii: Invoice lines
  • Sub-buton: Customer invoice lines

Sursele se mapează local și se verifică înainte de aplicare.

Interogări personalizatePRO2 SQL

Interogările personalizate sunt funcții PRO. Cifru repetă validarea read-only pe sursa locală înainte de execuție.

Read-only verificat static$.components.workspaceSelection.datasets.0.sqlQuery
SELECT
    m.id,
    m.name AS invoice_number,
    m.invoice_date,
    m.invoice_date_due,
    p.name AS customer_name,
    m.amount_untaxed,
    m.amount_total,
    m.amount_residual,
    m.state,
    m.payment_state,
    m.move_type
FROM account_move m
LEFT JOIN res_partner p ON p.id = m.partner_id
WHERE m.move_type IN ('out_invoice', 'out_refund')

static read-only checks passed

Read-only verificat static$.components.workspaceSelection.datasets.1.sqlQuery
SELECT
    l.id,
    l.move_id,
    l.product_id,
    l.name AS line_description,
    l.quantity,
    l.price_unit,
    l.price_subtotal,
    l.price_total
FROM account_move_line l
INNER JOIN account_move m ON m.id = l.move_id
WHERE m.move_type IN ('out_invoice', 'out_refund')
  AND (l.display_type IS NULL OR l.display_type = 'product')

static read-only checks passed

Vezi JSON-ul care se importărestrâns implicit

Conținutul portabil exact al acestei versiuni.

{
    "components": {
        "sourceSlots": [
            {
                "displayName": "Odoo PostgreSQL database",
                "id": "D4EDE62F-2391-503A-9ACA-50D356B0605D",
                "kind": "postgreSQL",
                "requiredObjects": [
                    "account_move",
                    "account_move_line",
                    "res_partner"
                ],
                "requiresCustomSQL": true
            }
        ],
        "workspaceSelection": {
            "commonFields": [],
            "datasets": [
                {
                    "cacheMode": "cached",
                    "calculatedFields": [],
                    "customQueryIntegrationName": "Odoo",
                    "endpointPath": "",
                    "fetchSortRules": [],
                    "id": "F891A24E-12E2-50E1-8523-AA09DB5D66D1",
                    "mappings": [
                        {
                            "commonFieldKey": "",
                            "key": "id",
                            "label": "Invoice ID",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "id",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": false
                        },
                        {
                            "commonFieldKey": "document_number",
                            "key": "invoice_number",
                            "label": "Invoice number",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "invoice_number",
                            "type": "text",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "document_date",
                            "key": "invoice_date",
                            "label": "Invoice date",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "invoice_date",
                            "type": "date",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "",
                            "key": "invoice_date_due",
                            "label": "Due date",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "invoice_date_due",
                            "type": "date",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "customer_name",
                            "key": "customer_name",
                            "label": "Customer",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "customer_name",
                            "type": "text",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "",
                            "key": "amount_untaxed",
                            "label": "Untaxed",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "amount_untaxed",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": false
                        },
                        {
                            "commonFieldKey": "",
                            "key": "amount_total",
                            "label": "Total",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "amount_total",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "",
                            "key": "amount_residual",
                            "label": "Outstanding",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "amount_residual",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "",
                            "key": "state",
                            "label": "Invoice state",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "state",
                            "type": "text",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "",
                            "key": "payment_state",
                            "label": "Payment state",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "payment_state",
                            "type": "text",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "",
                            "key": "move_type",
                            "label": "Document type",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "move_type",
                            "type": "text",
                            "visibleInDetail": true,
                            "visibleInList": false
                        }
                    ],
                    "maxRows": 1000,
                    "name": "Customer invoices",
                    "primaryKey": "id",
                    "refreshPolicy": {
                        "enabled": true,
                        "intervalMinutes": 15
                    },
                    "rootArrayPath": "",
                    "rowLimitEnabled": true,
                    "searchKeys": [
                        "id",
                        "invoice_number",
                        "invoice_date",
                        "invoice_date_due",
                        "customer_name"
                    ],
                    "sourceID": "D4EDE62F-2391-503A-9ACA-50D356B0605D",
                    "sqlQuery": "SELECT\n    m.id,\n    m.name AS invoice_number,\n    m.invoice_date,\n    m.invoice_date_due,\n    p.name AS customer_name,\n    m.amount_untaxed,\n    m.amount_total,\n    m.amount_residual,\n    m.state,\n    m.payment_state,\n    m.move_type\nFROM account_move m\nLEFT JOIN res_partner p ON p.id = m.partner_id\nWHERE m.move_type IN ('out_invoice', 'out_refund')",
                    "tableName": ""
                },
                {
                    "cacheMode": "cached",
                    "calculatedFields": [],
                    "customQueryIntegrationName": "Odoo",
                    "endpointPath": "",
                    "fetchSortRules": [],
                    "id": "484D2F56-9256-573C-BE6B-C89A238FDF04",
                    "mappings": [
                        {
                            "commonFieldKey": "",
                            "key": "id",
                            "label": "Line ID",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "id",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": false
                        },
                        {
                            "commonFieldKey": "",
                            "key": "move_id",
                            "label": "Invoice ID",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "move_id",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": false
                        },
                        {
                            "commonFieldKey": "",
                            "key": "product_id",
                            "label": "Product ID",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "product_id",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": false
                        },
                        {
                            "commonFieldKey": "product_name",
                            "key": "line_description",
                            "label": "Line",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "line_description",
                            "type": "text",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "quantity",
                            "key": "quantity",
                            "label": "Quantity",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "quantity",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "",
                            "key": "price_unit",
                            "label": "Unit price",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "price_unit",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "",
                            "key": "price_subtotal",
                            "label": "Untaxed amount",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "price_subtotal",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": true
                        },
                        {
                            "commonFieldKey": "",
                            "key": "price_total",
                            "label": "Total",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic",
                            "sourceColumn": "price_total",
                            "type": "number",
                            "visibleInDetail": true,
                            "visibleInList": true
                        }
                    ],
                    "maxRows": 5000,
                    "name": "Customer invoice lines",
                    "primaryKey": "id",
                    "refreshPolicy": {
                        "enabled": true,
                        "intervalMinutes": 15
                    },
                    "rootArrayPath": "",
                    "rowLimitEnabled": true,
                    "searchKeys": [
                        "id",
                        "move_id",
                        "product_id",
                        "line_description",
                        "quantity"
                    ],
                    "sourceID": "D4EDE62F-2391-503A-9ACA-50D356B0605D",
                    "sqlQuery": "SELECT\n    l.id,\n    l.move_id,\n    l.product_id,\n    l.name AS line_description,\n    l.quantity,\n    l.price_unit,\n    l.price_subtotal,\n    l.price_total\nFROM account_move_line l\nINNER JOIN account_move m ON m.id = l.move_id\nWHERE m.move_type IN ('out_invoice', 'out_refund')\n  AND (l.display_type IS NULL OR l.display_type = 'product')",
                    "tableName": ""
                }
            ],
            "pages": [
                {
                    "actions": [
                        {
                            "id": "6DA2C90E-6AE6-5B7F-88C9-0B06343547C2",
                            "kind": "showRelated",
                            "relatedInitiallyExpanded": true,
                            "relatedPresentation": "inline",
                            "relatedPreviewLimit": 12,
                            "relatedRowStyle": "table",
                            "relatedShowsCount": true,
                            "relationID": "693A3304-88F1-5B3A-83C4-CF028469B345",
                            "systemImage": "list.bullet.rectangle",
                            "targetDatasetID": "484D2F56-9256-573C-BE6B-C89A238FDF04",
                            "title": "Invoice lines",
                            "urlKey": ""
                        }
                    ],
                    "badgeKey": "amount_total",
                    "cardEnrichments": [],
                    "cardFieldLayout": [
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "invoice_number",
                            "label": "Invoice number",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "customer_name",
                            "label": "Customer",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "invoice_date",
                            "label": "Invoice date",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "invoice_date_due",
                            "label": "Due date",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "state",
                            "label": "Invoice state",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "payment_state",
                            "label": "Payment state",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "amount_total",
                            "label": "Total",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "amount_residual",
                            "label": "Outstanding",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        }
                    ],
                    "datasetID": "F891A24E-12E2-50E1-8523-AA09DB5D66D1",
                    "dateFilterKey": "",
                    "dateFilterLastDays": 7,
                    "dateFilterPreset": "none",
                    "detailFieldLayout": [
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "id",
                            "label": "Invoice ID",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "invoice_number",
                            "label": "Invoice number",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "invoice_date",
                            "label": "Invoice date",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "invoice_date_due",
                            "label": "Due date",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "customer_name",
                            "label": "Customer",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "amount_untaxed",
                            "label": "Untaxed",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "highlight",
                            "isVisible": true,
                            "key": "amount_total",
                            "label": "Total",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "highlight",
                            "isVisible": true,
                            "key": "amount_residual",
                            "label": "Outstanding",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "state",
                            "label": "Invoice state",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "payment_state",
                            "label": "Payment state",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "move_type",
                            "label": "Document type",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        }
                    ],
                    "fixedFilters": [],
                    "id": "5ABA3FC3-6423-55DF-8588-3D77C874A6E7",
                    "openFilters": [],
                    "pageSize": 100,
                    "requiresOpeningFilterSelection": false,
                    "showOnHome": true,
                    "sortRules": [
                        {
                            "direction": "descending",
                            "id": "11F55E83-358A-525C-92D9-59F5972A72F4",
                            "key": "invoice_date",
                            "type": "date"
                        }
                    ],
                    "subtitle": "",
                    "subtitleKey": "customer_name",
                    "systemImage": "doc.text",
                    "title": "Customer invoices",
                    "titleKey": "invoice_number"
                },
                {
                    "actions": [],
                    "badgeKey": "price_total",
                    "cardEnrichments": [],
                    "cardFieldLayout": [
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "line_description",
                            "label": "Line",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "quantity",
                            "label": "Quantity",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "price_unit",
                            "label": "Unit price",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "price_subtotal",
                            "label": "Untaxed amount",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "price_total",
                            "label": "Total",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        }
                    ],
                    "datasetID": "484D2F56-9256-573C-BE6B-C89A238FDF04",
                    "dateFilterKey": "",
                    "dateFilterLastDays": 7,
                    "dateFilterPreset": "none",
                    "detailFieldLayout": [
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "id",
                            "label": "Line ID",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "move_id",
                            "label": "Invoice ID",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "product_id",
                            "label": "Product ID",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "line_description",
                            "label": "Line",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "highlight",
                            "isVisible": true,
                            "key": "quantity",
                            "label": "Quantity",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "price_unit",
                            "label": "Unit price",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "information",
                            "isVisible": true,
                            "key": "price_subtotal",
                            "label": "Untaxed amount",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        },
                        {
                            "detailGroup": "",
                            "detailRole": "highlight",
                            "isVisible": true,
                            "key": "price_total",
                            "label": "Total",
                            "locationLabelKey": "",
                            "locationLongitudeKey": "",
                            "presentation": "automatic"
                        }
                    ],
                    "fixedFilters": [],
                    "id": "B6776FDB-9E47-5D6C-807B-3D8B1B51F97B",
                    "openFilters": [],
                    "pageSize": 100,
                    "requiresOpeningFilterSelection": false,
                    "showOnHome": false,
                    "sortRules": [],
                    "subtitle": "",
                    "subtitleKey": "",
                    "systemImage": "tablecells",
                    "title": "Customer invoice lines",
                    "titleKey": "line_description"
                }
            ],
            "relations": [
                {
                    "childDatasetID": "484D2F56-9256-573C-BE6B-C89A238FDF04",
                    "childKey": "move_id",
                    "id": "693A3304-88F1-5B3A-83C4-CF028469B345",
                    "name": "Invoice lines",
                    "parentDatasetID": "F891A24E-12E2-50E1-8523-AA09DB5D66D1",
                    "parentKey": "id"
                }
            ],
            "widgets": []
        }
    },
    "format": "cifru-configuration-package",
    "formatVersion": 1,
    "manifest": {
        "applicationName": "Odoo",
        "configurationLanguages": [
            "en"
        ],
        "countries": [
            "ALL"
        ],
        "createdAt": "2026-07-24T16:26:43Z",
        "description": "Customer invoices and credit notes from Odoo's PostgreSQL model tables, with product lines embedded in the invoice Details screen. The relations and field names follow Odoo's official account invoice report source, which joins account_move, account_move_line and res_partner.\n\nPrepare Odoo / PostgreSQL:\n1. Ask the database administrator for a dedicated PostgreSQL login with SELECT only on account_move, account_move_line and res_partner.\n2. Restrict network access and use TLS or a VPN. Never reuse the Odoo owner/superuser.\n3. This is a database package, not Odoo JSON-RPC. Test it after every major Odoo upgrade because internal database access is version-sensitive.\nOfficial source reference: https://github.com/odoo/odoo/blob/19.0/addons/account/report/account_invoice_report.py\n\nConfigure Cifru on iPhone/iPad:\n1. Sources → Add source → PostgreSQL and enter the dedicated read-only connection.\n2. Test the connection, then import the package and map its single database slot.\n3. Cifru checks both statements as SELECT-only and runs a read/compatibility test before applying.\n4. Plan Pro is required because this package contains custom read-only SQL.\n5. The package contains no Odoo database name, host, company data or credential.",
        "licenseCode": "Cifru-Community-1.0",
        "minimumCifruVersion": "1.0",
        "minimumPlan": "pro",
        "packageID": "7FC13D74-E8A1-5B91-A95F-FA3186A5D6D7",
        "rootButtonCount": 1,
        "summary": "Odoo invoice cards with totals, payment state and an inline product-line table.",
        "tags": [
            "Odoo",
            "ERP",
            "invoices",
            "PostgreSQL"
        ],
        "title": "Customer invoices with line details"
    }
}

Taguri

Recenzii

Nu există încă recenzii aprobate pentru această versiune.

Scrie o recenzie

Autentifică-te pentru a recenza