{
  "title": "Codeunit 2310 O365 Sales Invoice Mgmt",
  "url": "https://jonas-paprotka.de/ref/codeunit/2310-o365-sales-invoice-mgmt/",
  "author": "Jonas Paprotka",
  "license": "Content © 2026 Jonas Paprotka. Quote freely with attribution and a link.",
  "subject": "Microsoft Dynamics 365 Business Central",
  "checked": "2026-09-20",
  "source": {
    "feed": "https://dynamicssmb2.pkgs.visualstudio.com/DynamicsBCPublicFeeds/_packaging/MSSymbols/nuget/v3/index.json",
    "package": "Microsoft.BaseApplication.symbols.437dbf0e-84ff-417a-965d-ed2bb9650972",
    "build": "23.5.16502.31399",
    "code": {},
    "note": "Presence per major, highest build of each; 17 is the oldest major on the feed. Local procedures are not listed."
  },
  "object": {
    "type": "codeunit",
    "id": 2310,
    "name": "O365 Sales Invoice Mgmt",
    "app": "Base Application",
    "appByVersion": [
      {
        "app": "Base Application",
        "from": 17
      }
    ],
    "nameByVersion": [
      {
        "name": "O365 Sales Invoice Mgmt",
        "from": 17
      }
    ],
    "namespace": "",
    "versions": "17-23",
    "majors": [
      17,
      18,
      19,
      20,
      21,
      22,
      23
    ],
    "extends": null,
    "sourceTable": null,
    "sourceFile": "Invoicing/O365SalesInvoiceMgmt.Codeunit.al",
    "obsolete": {
      "state": "Pending",
      "tag": "21.0",
      "reason": "Microsoft Invoicing has been discontinued."
    },
    "obsoleteSeenFrom": 21,
    "byVersion": {
      "17": {
        "app": "base-application",
        "name": "O365 Sales Invoice Mgmt",
        "ns": "",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 46,
          "values": 0
        },
        "stub": false
      },
      "18": {
        "app": "base-application",
        "name": "O365 Sales Invoice Mgmt",
        "ns": "",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 46,
          "values": 0
        },
        "stub": false
      },
      "19": {
        "app": "base-application",
        "name": "O365 Sales Invoice Mgmt",
        "ns": "",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 46,
          "values": 0
        },
        "stub": false
      },
      "20": {
        "app": "base-application",
        "name": "O365 Sales Invoice Mgmt",
        "ns": "",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 47,
          "values": 0
        },
        "stub": false
      },
      "21": {
        "app": "base-application",
        "name": "O365 Sales Invoice Mgmt",
        "ns": "",
        "obsolete": {
          "state": "Pending",
          "tag": "21.0",
          "reason": "Microsoft Invoicing has been discontinued."
        },
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 47,
          "values": 0
        },
        "stub": false
      },
      "22": {
        "app": "base-application",
        "name": "O365 Sales Invoice Mgmt",
        "ns": "",
        "obsolete": {
          "state": "Pending",
          "tag": "21.0",
          "reason": "Microsoft Invoicing has been discontinued."
        },
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 46,
          "values": 0
        },
        "stub": false
      },
      "23": {
        "app": "base-application",
        "name": "O365 Sales Invoice Mgmt",
        "ns": "",
        "obsolete": {
          "state": "Pending",
          "tag": "21.0",
          "reason": "Microsoft Invoicing has been discontinued."
        },
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 46,
          "values": 0
        },
        "stub": false
      }
    },
    "fields": [],
    "keys": [],
    "procedures": [
      {
        "name": "GetCustomerEmail",
        "sig": "(Code[20])",
        "returns": "Text[80]",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Text[80]",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ConfirmKeepOrDeleteDocument",
        "sig": "(var Record Sales Header)",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "IsCustomerCompanyContact",
        "sig": "(Code[20])",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "FindCountryCodeFromInput",
        "sig": "(Text)",
        "returns": "Code[10]",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Code[10]",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "UpdateAddress",
        "sig": "(var Record Sales Header, var Text, var Code[10])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "UpdateSellToAddress",
        "sig": "(var Record Sales Header, Record Customer)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "CalcInvoiceDiscountAmount",
        "sig": "(var Record Sales Header, var Decimal, var Text, var Decimal, var Boolean)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "UpdateNoOfAttachmentsLabel",
        "sig": "(Integer, var Text)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "OnAfterGetSalesHeaderRecord",
        "sig": "(var Record Sales Header, var Text, var Text[50], var Text, var Text)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": 20,
        "spans": [
          {
            "from": 17,
            "to": 19,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 20,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Replaced with OnAfterGetSalesHeaderRecordFullLengthTaxAreaDesc.",
              "tag": "21.0"
            }
          },
          {
            "from": 21,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "LookupCustomerName",
        "sig": "(var Record Sales Header, Text, var Text[100], var Text[80])",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "UpdateCustomerFields",
        "sig": "(Record Sales Header, var Text[100], var Text[80], var Boolean)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateCustomerName",
        "sig": "(var Record Sales Header, var Text[100], var Text[80])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "CreateCustomer",
        "sig": "(var Record Sales Header, Record Customer, var Text[100], var Text[80])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateCustomerEmail",
        "sig": "(var Record Sales Header, Text[80])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateCustomerAddress",
        "sig": "(Text[100], Code[20])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateCustomerAddress2",
        "sig": "(Text[50], Code[20])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateCustomerCity",
        "sig": "(Text[30], Code[20])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateCustomerPostCode",
        "sig": "(Code[20], Code[20])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateCustomerCounty",
        "sig": "(Text[30], Code[20])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateCustomerCountryRegion",
        "sig": "(Code[10], Code[20])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "EditCustomerCardFromSalesHeader",
        "sig": "(var Record Sales Header, var Text, var Code[10])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "OnQueryCloseForSalesHeader",
        "sig": "(var Record Sales Header, Boolean, Text[100])",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ShowInvoiceDiscountNotification",
        "sig": "(var Notification, RecordId)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "LookupDescription",
        "sig": "(var Record Sales Line, Text, var Boolean)",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ConstructCurrencyFormatString",
        "sig": "(var Record Sales Line, var Text)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetValueWithinBounds",
        "sig": "(Decimal, Decimal, Decimal, var Boolean, RecordId)",
        "returns": "Decimal",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Decimal",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "OpenNewPaymentInstructionsCard",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetPaymentInstructionsName",
        "sig": "(Integer, var Text[20])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetDefaultPaymentInstructionsId",
        "sig": "()",
        "returns": "Integer",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Integer",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetPaymentInstructionsFromPostedInvoice",
        "sig": "(Record Sales Invoice Header)",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21
        ],
        "range": "17-21",
        "first": 17,
        "last": 21,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 21,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "SendOutsideRangeNotification",
        "sig": "(var Boolean, RecordId)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "LookupContactFromSalesHeader",
        "sig": "(var Record Sales Header)",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "SendCustomerHasBeenBlockedNotification",
        "sig": "(Text[100])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "UndoItemCreation",
        "sig": "(var Notification)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "UndoCustomerCreation",
        "sig": "(var Notification)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetInvoiceDiscountCaption",
        "sig": "(Decimal)",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "EnforceCustomerTemplateIntegrity",
        "sig": "(var Record Customer)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateItemDescription",
        "sig": "(var Record Sales Line, var Boolean)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateItemUnitOfMeasure",
        "sig": "(var Record Sales Line)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "CreateUnitOfMeasure",
        "sig": "(Code[10], Text[50])",
        "returns": "Code[10]",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Code[10]",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "TryFindUnitOfMeasure",
        "sig": "(var Record Unit of Measure, Text[50])",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateItemPrice",
        "sig": "(var Record Sales Line)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "ValidateVATRate",
        "sig": "(var Record Sales Line)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "IsCustomerBlocked",
        "sig": "(Code[20])",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetCustomerStatus",
        "sig": "(Record Customer, var Text)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "IsBusinessCenterExperience",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "OnAfterGetSalesHeaderRecordFullLengthTaxAreaDesc",
        "sig": "(var Record Sales Header, var Text, var Text[100], var Text, var Text)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          20,
          21,
          22,
          23
        ],
        "range": "20-23",
        "first": 20,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 20,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      }
    ],
    "events": [],
    "values": []
  }
}