CostCarrier
CostCarrier (nośnik kosztów) to zasób reprezentujący obiekt zbierający koszty – projekt, zlecenie wewnętrzne, produkt, usługa lub centrum kosztów. Służy jako cel alokacji kosztów w rachunkowości zarządczej i controllingu. Koszty są przypisywane do nośnika przez CostAssignment. Wzorowany na SAP (Cost Center, Internal Order), Oracle (Cost Center segment), Workday (Cost Center).
Rozszerza DomainResource.
1. Zakres i zastosowanie
CostCarrier = obiekt, do którego przypisuje się koszty w celu analizy rentowności, budżetowania i raportowania zarządczego. Rodzaj nośnika wyraża pole type z DomainResource, klasyfikacje dodatkowe — category.
Koszty przypisywane są przez CostAssignment, który referuje do CostCarrier i zawiera position[] z wartością alokowaną na ośrodek kosztów. CostCarrier nie zawiera referencji do CostAssignment – relacja jednokierunkowa (CostAssignment → CostCarrier).
Właściciel: owner[] (Reference do Party) – firma prowadząca nośnik, identyfikowana NIP.
Okres: period (Period) – okres obowiązywania nośnika (start/end).
2. Zawartość (struktura)
Oprócz elementów DomainResource (id, resourceType, meta, owner[], comment, category[], status, type, contained[], attribute[]):
| Nazwa | Kard. | Typ | Opis |
|---|---|---|---|
| identifier | 0..* | Identifier | Identyfikatory nośnika (system + value) |
| name | 0..1 | string | Nazwa nośnika |
| period | 0..1 | Period | Okres obowiązywania nośnika (start/end) |
Pola dziedziczone istotne dla nośnika:
| Nazwa | Kard. | Typ | Opis |
|---|---|---|---|
| type | 0..1 | CodeableConcept | Rodzaj nośnika; słownik finance/cost-carrier-type — kody nadaje wdrożenie |
| status | 0..1 | CodeableConcept | Status nośnika — kody nadaje wdrożenie |
| owner | 0..* | Reference(Party) | Firma (identyfikator NIP: https://gov.pl/nip) |
| attribute | 0..* | Attribute | Cechy nośnika: code + value[]; system finance/cost-carrier-attribute-type. W odczycie dostarczany jest atrybut cost-carrier-symbol (symbol nośnika, valueString) |
2a. Identyfikatory
| Przestrzeń (klucz) | Znaczenie | Klucz referencyjny | Skąd system |
|---|---|---|---|
CostCarrier.Id |
Id nośnika kosztów | tak | NamingSystem; urn:oid:1.2.616.1.113769.4.<instalacja>.69 |
3. Operacje
| Metoda | Ścieżka | Opis |
|---|---|---|
| GET | /v1/cost-carriers |
Wyszukiwanie nośników kosztów (tylko odczyt) |
Odpowiedź: { "items": [...], "nextToken": null }; paginacja count (domyślnie 20) i offset (domyślnie 0).
| Parametr | Wymagany | Format | Opis |
|---|---|---|---|
identifier |
nie | system\|value |
Id nośnika w przestrzeni CostCarrier.Id |
owner |
nie | system\|value |
Firma po NIP: https://gov.pl/nip\|<NIP> |
attribute |
nie | code\|value |
cost-carrier-symbol\|<symbol> — filtr po symbolu nośnika |
Błędny format parametru → 400 Problem Details (type = https://httpstatuses.com/400).
4. Relacje
- CostAssignment – przypisanie kosztów referuje do CostCarrier (pole costCarrier); CostCarrier nie zawiera listy przydziałów.
- Party – właściciel nośnika (firma po NIP): CostCarrier.owner → Party.
- PostingInstruction – alokacja pozycji dokumentu na nośnik przez
position[].allocation.costCarrier.
5. Zgodność z systemami wzorcowymi
| System | Odpowiednik | Uwagi |
|---|---|---|
| SAP | Cost Center (CSKS/CSKT), Internal Order (AUFK/AUFT), WBS Element (PRPS) | CostCarrier z type; mapowanie przez identifier + type |
| Oracle | Cost Center (segment), Project (PA_PROJECTS), Task | Oracle używa segmentu konta dla MPK, projekt jako osobna encja; mapowanie przez identifier + type |
| Dynamics 365 | Cost Center (Financial Dimension), Project (Project Accounting) | Financial Dimensions jako klasyfikacje w category / attribute |
| Workday | Cost Center (Organization type), Spend Category | CostCarrier z type; owner → organizacja |
6. Odniesienia
- DomainResource, CostAssignment (CostAssignment.costCarrier referuje CostCarrier), Party (owner), Attribute (attribute[])
- Identifier, CodeableConcept, Reference, Period