# SalesInvoiceByNumber: Twinfield Sales invoice by number
## Documentation
The head of one sales invoice. An invoice is not a transaction: it carries the customer, the addresses it was sent to and the texts above and below the lines. Its lines are answered by SalesInvoiceLinesByNumber and its VAT by SalesInvoiceVatLinesByNumber.
- Catalog: `Twinfield`
- Schema: `Settings`
- Label: Sales invoice by number
The data in this table is partitioned per value of the `COMPANY_CODE` column.
This is a read-only table function. The Twinfield API may not support changing the data or the Invantive UniversalSQL driver for Twinfield does not cover it. In the latter case, please use the table NativePlatformScalarRequests to upload data to the Twinfield API.
## Parameters of Table Function
The following parameters can be used to control the behaviour of the table function `SalesInvoiceByNumber`. A value must be provided at all times for required parameters, but optional parameters in general do not need to have a value and the execution will default to a pre-defined behaviour. Values can be specified by position and by name. In both cases, all parameters not specified will be evaluated using their default values.
Value specification by position is done by listing all values from the first to the last needed value. For example: a `select * from table(value1, value2, value3)` on a table with four parameters will use the default value for the fourth parameter and the specified values for the first three.
Value specification by name is done by listing all values that require a value. For example with `select * from table(name1 => value1, name3 => value3)` on the same table will use the default values for the second and fourth parameters and the specified values for the first and third.
| Name | Data Type | Required | Default Value | Documentation |
|---|:---:|:---:|:---:|---|
| `code` | `` | ☑ | | Code of the invoice type, such as FACTUUR. |
| `COMPANY_CODE` | `` | ☑ | | Code of company. |
| `invoicenumber` | `` | ☑ | | Number of the invoice. |
## Columns of Table Function
The columns of the table function `SalesInvoiceByNumber` are shown below. Each column has an SQL data type.
| Name | Data Type | Label | Required | Documentation |
|---|:---:|---|:---:|---|
| `BANK` | `varchar2` | Bank | ☐ | |
| `COMPANY_CODE` | `varchar2` | Company ID | ☑ | |
| `COMPANY_NAME` | `varchar2` | Company Name | ☑ | |
| `CURRENCY` | `varchar2` | Currency | ☐ | |
| `CUSTOMER` | `varchar2` | Customer | ☐ | |
| `DELIVERADDRESSNUMBER` | `int32` | Delivery address number | ☐ | |
| `DUEDATE` | `datetime` | Due date | ☐ | |
| `FOOTERTEXT` | `varchar2` | Footer text | ☐ | |
| `HEADERTEXT` | `varchar2` | Header text | ☐ | |
| `INVOICEADDRESSNUMBER` | `int32` | Invoice address number | ☐ | |
| `INVOICEDATE` | `datetime` | Invoice date | ☐ | |
| `INVOICENUMBER` | `varchar2` | Invoice number | ☐ | |
| `INVOICETYPE` | `varchar2` | Invoice type | ☐ | |
| `OFFICE` | `varchar2` | Office | ☐ | |
| `PAYMENTMETHOD` | `varchar2` | Payment method | ☐ | One of cash, bank, cheque, cashondelivery or da. |
| `PERFORMANCEDATE` | `datetime` | Performance date | ☐ | |
| `PERIOD` | `varchar2` | Period | ☐ | |
| `STATUS` | `varchar2` | Status | ☐ | One of default, concept or final. |