# Leer BOM

Esta función permite la lectura de un listado de materiales de un producto, o BOM, previamente agregado al sistema. Si no se especifica el código del BOM mediante un parámetro en la URL, se leerán todos los BOM del sistema.

### URL
`/CTNEAT/BOM/READ/{tkn}`
### Método HTTP

<span style="background-color: RGB(49,213,254); color: white; font-weight: bold; padding: 8px;">GET</span>


### Parámetros de la solicitud

| Nombre del parámetro | Tipo de dato | Descripción del parámetro | Obligatorio | Posibles valores |
| -------------------- | ------------ | ------------------------ | ----------- | ----------- |
|   BOMCode               |  cadena      |    Código de la BOM  |       No (Si el código de BOM no se especifica, la API devolverá todas las BOM del sistema)      | Cualquiera |
|   BOMDATE     |  número   |    Fecha del BOM  |       No (Si el código de BOM no se especifica, la API devolverá todas las BOM del sistema)      | Cualquiera con formato YYYYMMDDHHmmSS |

### Encabezados de la solicitud

| Nombre del encabezado | Descripción del encabezado | Obligatorio |
| --------------------- | -------------------------- | ----------- |

### Cuerpo de la solicitud

No se requiere un cuerpo de solicitud para este método HTTP.

### Parámetros de la respuesta

| Nombre del parámetro | Tipo de dato | Descripción del parámetro |
| -------------------- | ------------ | ------------------------ |
|        Result              |      JSON        |       Json con la descripción del resultado de la operación                   |
##### Elementos de Result
- Result.NRecords: Valor numérico que indica el número de registros en la matriz Result.Data.
- Result.Data: Matriz que contiene uno o más objetos (Cantidad de registrios leídos).
- Result.Data[x].BOMCode: Representa el código de la BOM.
- Result.Data[x].Description: Descripción de la BOM.
- Result.Data[x].Disabled: Estado de la BOM.
- Result.Data[x].NOfItems: Número de artículos diferentes de la BOM.
- Result.Data[x].BOM: Matríz que contiene los diferentes artículos de la BOM.
- Result.Data[x].BOM[n].ItemCode: Código interno del artículo.
- Result.Data[x].BOM[n].Units: Unidades del artículo en la BOM.

### Códigos de estado de la respuesta

| Código de estado | Descripción del código de estado | Posibles razones |
| ---------------- | -------------------------------- | ---------------- |
|     200             |            OK                      |     La solicitud fue exitosa             |
|     400             |            Petición errónea                      |     	Alguno de los parámetros pasados no es correcto             |
|     500             |            Error interno                      |     	Error en el servidor             |
|     401             |            Unauthorized                      |     	El usuario no está autenticado             |

###  Ejemplo de consulta
`http://ctincoming/BOM/READ/2CB5C9AE031E4E0B2A98143637EBCAEF77B2E606F03975C67C3B30584BBEEFAF?BOMCode=BOM_API_1`
### Ejemplo de respuesta
```json
{
  "NRecords": 1,
  "Data": [
    {
      "BOMCode": "BOM_API_1",
      "Description": "BOM MODIFIED FROM API",
      "CreationDate": "20230510",
      "Disabled": false,
      "NOfItems": 2,
      "BOM": [
        {
          "ItemCode": "CODIGO_PN",
          "Units": 0
        },
        {
          "ItemCode": "CODIGO_PN_2",
          "Units": 3
        }
      ]
    }
  ]
}

```