InventoryDocumentPosition
InventoryDocumentPosition (pozycja dokumentu ruchu magazynowego) to typ opisujący jedną pozycję w ramach InventoryDocument (tablica position[]). Każda pozycja reprezentuje zmianę: product (co), quantity (delta ilości – ze znakiem: + przy receipt, − przy issue), fromLocation / toLocation (skąd / dokąd). Opcjonalnie attribute[] (partia, seria, data ważności). Uczestnicy (dostawca, odbiorca) są na nagłówku dokumentu w participant. InventoryDocumentPosition nie jest osobnym zasobem (DomainResource) – jest typem zagnieżdżonym w InventoryDocument.
1. Zakres i zastosowanie
InventoryDocumentPosition = jedna linia ruchu: product (Reference ProductDefinition lub Product), quantity (Quantity – delta: wartość dodatnia przy przyjęciu, ujemna przy wydaniu; przy transferze zwykle dodatnia, kierunek z from/to), fromLocation (wymagane przy issue i transfer), toLocation (wymagane przy receipt i transfer). Opcjonalnie attribute[] (np. batch, serial), status.
- Receipt (PZ): toLocation, quantity > 0.
- Issue (WZ): fromLocation, quantity < 0 lub wartość bezwzględna z konwencji.
- Transfer: fromLocation i toLocation, quantity (zwykle dodatnia).
2. Zawartość (struktura)
| Nazwa | Kard. | Typ | Opis |
|---|---|---|---|
| positionNo | 1..1 | integer | Numer pozycji w dokumencie (od 1) |
| product | 1..1 | Reference(ProductDefinition lub Product) | Produkt – definicja lub instancja (partia/seria) |
| quantity | 1..1 | Quantity | Delta ilości (value ze znakiem: + receipt, − issue; jednostka w unit, UCUM) |
| fromLocation | 0..1 | Reference(Location) | Lokalizacja źródłowa (wymagane przy issue i transfer) |
| toLocation | 0..1 | Reference(Location) | Lokalizacja docelowa (wymagane przy receipt i transfer) |
| attribute | 0..* | Attribute | Cechy pozycji (partia, seria, data ważności – code + value*; np. batch-number, serial-number) |
| status | 0..1 | CodeableConcept | Status pozycji (np. completed, cancelled) |
Uwaga: Gdy nagłówek InventoryDocument ma fromLocation/toLocation wspólne dla wszystkich pozycji, pozycja może je pominąć lub nadpisać. Partia/seria: product → Product (productDefinition + attribute) lub attribute[] na pozycji z code=batch-number, serial-number.
3. Odniesienia
- InventoryDocument (pozycja w position[]), ProductDefinition, Product (product), Location (fromLocation, toLocation).
- Quantity, Reference, Attribute, CodeableConcept.