---
title: "ManagedExactDecimal · types"
url: https://developers.dagio.ai/fr/reference/types-managed-exact-decimal/
---

# ManagedExactDecimal · types

   
                                    
                                                                             
                                             
                  
           
          
   

Les types ci-dessous définissent les objets nommés et leurs relations. Les propriétés héritées sont incluses dans les tableaux. Les types dérivés d’un schéma renvoient à sa structure; une déclaration TypeScript ne remplace pas les contrôles sémantiques du compilateur.

## ManagedExactDecimalFormat

Explicit base-ten precision and scale; this is not the historical approximate number Field.

| Champ | Options / valeurs attendues | Description |
| --- | --- | --- |
| `precision` | `number` | **Requis.** Définit « precision » pour cet objet. Respecter le type, les variantes et les limites de la colonne Options. |
| `scale` | `number` | **Requis.** Définit « scale » pour cet objet. Respecter le type, les variantes et les limites de la colonne Options. |

```typescript
export interface ManagedExactDecimalFormat {
  readonly precision: number;
  readonly scale: number;
}
```

## ManagedExactDecimalRounding

Rounding is an explicit calculation point, never an implicit value-admission coercion.

```typescript
export type ManagedExactDecimalRounding =
  | 'half-even'
  | 'half-up'
  | 'toward-zero'
  | 'away-from-zero'
  | 'floor'
  | 'ceiling';
```

```typescript
type ManagedExactDecimalRounding = "half-even" | "half-up" | "toward-zero" | "away-from-zero" | "floor" | "ceiling";
```

## ManagedExactDecimalOperand

Each operand retains its declared format instead of borrowing an approximate number type.

| Champ | Options / valeurs attendues | Description |
| --- | --- | --- |
| `format` | `ManagedExactDecimalFormat` | **Requis.** Format de présentation compatible avec le type de la valeur. |
| `value` | `string` | **Requis.** Valeur effective interprétée selon le type et le discriminant du contexte parent. |

```typescript
export interface ManagedExactDecimalOperand {
  readonly format: ManagedExactDecimalFormat;
  readonly value: string;
}
```

## ManagedExactDecimalOutput

A null rounding point requires an exactly representable result at the declared output scale.

| Champ | Options / valeurs attendues | Description |
| --- | --- | --- |
| `format` | `ManagedExactDecimalFormat` | **Requis.** Format de présentation compatible avec le type de la valeur. |
| `rounding` | `ManagedExactDecimalRounding \| null` | **Requis.** Définit « rounding » pour cet objet. Respecter le type, les variantes et les limites de la colonne Options. |

```typescript
export interface ManagedExactDecimalOutput {
  readonly format: ManagedExactDecimalFormat;
  readonly rounding: ManagedExactDecimalRounding | null;
}
```

## ManagedNumericFieldValueDefinition

Value admission uses only the immutable numerical declaration, independent of any schema library.

| Champ | Options / valeurs attendues | Description |
| --- | --- | --- |
| `repeatable` | `boolean` | **Requis.** Indique si plusieurs valeurs ou instances sont admises. |
| `minimum` | `string \| undefined` | Facultatif. Borne de cardinalité ou de budget pour la ressource nommée. Les dépassements sont refusés; null signifie une absence de borne uniquement lorsque le schéma l’admet. |
| `maximum` | `string \| undefined` | Facultatif. Borne de cardinalité ou de budget pour la ressource nommée. Les dépassements sont refusés; null signifie une absence de borne uniquement lorsque le schéma l’admet. |
| `precision` | `number` | **Requis.** Définit « precision » pour cet objet. Respecter le type, les variantes et les limites de la colonne Options. |
| `scale` | `number` | **Requis.** Définit « scale » pour cet objet. Respecter le type, les variantes et les limites de la colonne Options. |

```typescript
export interface ManagedNumericFieldValueDefinition extends ManagedExactDecimalFormat {
  readonly repeatable: boolean;
  readonly minimum?: string | undefined;
  readonly maximum?: string | undefined;
}
```

## ManagedNumericFieldDeclaration

Declaration validation shares the value engine without requiring any schema library at runtime.

| Champ | Options / valeurs attendues | Description |
| --- | --- | --- |
| `default` | `string \| readonly string[] \| undefined` | Facultatif. Valeur initiale conforme au type déclaré; ne remplace pas une valeur déjà enregistrée. |
| `repeatable` | `boolean` | **Requis.** Indique si plusieurs valeurs ou instances sont admises. |
| `minimum` | `string \| undefined` | Facultatif. Borne de cardinalité ou de budget pour la ressource nommée. Les dépassements sont refusés; null signifie une absence de borne uniquement lorsque le schéma l’admet. |
| `maximum` | `string \| undefined` | Facultatif. Borne de cardinalité ou de budget pour la ressource nommée. Les dépassements sont refusés; null signifie une absence de borne uniquement lorsque le schéma l’admet. |
| `precision` | `number` | **Requis.** Définit « precision » pour cet objet. Respecter le type, les variantes et les limites de la colonne Options. |
| `scale` | `number` | **Requis.** Définit « scale » pour cet objet. Respecter le type, les variantes et les limites de la colonne Options. |

```typescript
export interface ManagedNumericFieldDeclaration extends ManagedNumericFieldValueDefinition {
  readonly default?: string | readonly string[] | undefined;
}
```

[Toutes les références](https://developers.dagio.ai/fr/reference/)

<!-- surface-examples:start -->

## Exemples appliqués : Texte requis et choix métier

Entreprise utilise une saisie texte obligatoire; État réutilise une liste de valeurs déclarées.

### Configuration

Fragment à placer dans `forms[].fields[]`. [Propriétés et valeurs admises](https://developers.dagio.ai/fr/reference/workspace-model-foundation/).

```json
{
  "contract": "WorkspaceFormControl@2",
  "repeatable": false,
  "key": "company",
  "label": "Entreprise",
  "input": "text",
  "binding": {
    "kind": "field",
    "fieldKey": "company"
  },
  "required": true,
  "ruleKeys": [],
  "options": []
}
```

### Variante et raccordement

Fragment à placer dans `forms[].fields[]`. [Propriétés et valeurs admises](https://developers.dagio.ai/fr/reference/workspace-model-foundation/).

```json
{
  "contract": "WorkspaceFormControl@2",
  "repeatable": false,
  "key": "status",
  "label": "État",
  "input": "choice",
  "binding": {
    "kind": "field",
    "fieldKey": "status"
  },
  "required": true,
  "ruleKeys": [],
  "options": [
    "prospect",
    "active"
  ]
}
```

### Exemple de disposition UI

La disposition illustrative ci-dessous situe cette configuration dans l’app Clients/Soumissions. Chaque fragment s’insère à l’emplacement indiqué; ses références aux Fields, Queries et Actions correspondent aux déclarations du Model.

1. Identité du client
2. Notes et suivi
3. Paramètres
4. Soumissions liées

<!-- surface-examples:end -->
