> ## Documentation Index
> Fetch the complete documentation index at: https://www.twicecommerce.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Suunnittelumallit

> Ne muutamat rakenteelliset käyttöliittymämallit, jotka toistuvat TWICEssa kaikkialla — taulukot, välilehdet, attribuutit, suhteet ja käyttöoikeudet.

<Snippet file="definitions/fi/design-patterns-definition.mdx" />

Pieni joukko suunnittelumalleja toistuu TWICEn jokaisessa osassa. Kun tiedät, miten varastoartikkelin tietosivu toimii, tiedät jo, miten tilaus, asiakas ja listaus toimivat. Tämä sivu on kartta niihin.

## Datataulukot

Jokaisen TWICEn resurssin oletusnäkymä on datataulukko. Inventaario, katalogi, tilaukset, asiakkaat, kokoelmat — kaikki samaa komponenttia ja samaa työkalupalkkia.

<Tabs>
  <Tab title="Perusominaisuudet" icon="table">
    | Ominaisuus         | Toiminta                                                                                                      |
    | :----------------- | :------------------------------------------------------------------------------------------------------------ |
    | **Haku**           | Kokotekstihaku kaikista arvoista, sekä näkyvistä että piilotetuista sarakkeista                               |
    | **Suodatus**       | Useita suodatusehtoja yhdistettynä JA-logiikalla; operaattorit vastaavat sitä, mihin taustajärjestelmä pystyy |
    | **Järjestäminen**  | Napsauta mitä tahansa sarakeotsikkoa, niin rivit järjestyvät nousevasti tai laskevasti                        |
    | **Ryhmittely**     | Kokoa rivit minkä tahansa yhteensopivan sarakkeen mukaan (totuusarvot, valinnat, päivämäärät)                 |
    | **Sarakehallinta** | Näytä, piilota, järjestä, kiinnitä ja muuta sarakkeiden kokoa                                                 |
    | **Tiheys**         | Kolme rivikorkeutta — tiivis, vakio, väljä                                                                    |
    | **Vienti**         | Vie nykyinen näkymä CSV-muotoon — noudattaa suodattimia ja näkyviä sarakkeita                                 |
  </Tab>

  <Tab title="Tallennetut näkymät" icon="bookmark">
    Minkä tahansa suodattimien, järjestysten, ryhmittelyjen ja sarakeasetusten yhdistelmän voi tallentaa **taulukkonäkymäksi**.

    * Tallenna näkymiä omaan käyttöön tai jaa ne tiimille
    * Vaihda näkymien välillä taulukon yläreunan näkymävalitsimella
    * Aseta taulukkokohtainen oletusnäkymä
    * Kopioi tai nimeä olemassa olevia näkymiä uudelleen

    Näkymät tallennetaan käyttäjä- ja taulukkokohtaisesti; näkymän jakaminen tuo sen tiimisi saataville pakottamatta ketään käyttämään sitä.
  </Tab>

  <Tab title="Aikatietoiset ominaisuudet" icon="clock">
    Varastotaulukoissa on työkalupalkissa päivämäärävalitsin. Päivän tai aikavälin valinta piirtää taulukon uudelleen näyttämään varaston tilan kyseisellä hetkellä — menneisyydessä tai tulevaisuudessa.

    * **Saatavuustarkistukset** — mikä on vapaana tietyllä vuokra-ajalla
    * **Historiaraportointi** — mikä oli sidottuna tiettynä päivänä
    * **Ennustaminen** — arvioitu käyttöaste
  </Tab>
</Tabs>

<Note>
  Taulukkomalli on yhdenmukainen varastossa, katalogissa, tilauksissa, asiakastiedoissa ja kokoelmissa. Kerran opittuna se pätee kaikkialla.
</Note>

Lue lisää: [Taulukot](/docs/fi/admin/tables) · [Käyttömallit](/docs/fi/concepts/repeating-patterns/usage-patterns)

## Tietosivut ja välilehdet

Napsauta riviä missä tahansa taulukossa, ja päädyt sen tietosivulle. Tietosivut noudattavat yhdenmukaista asettelua: otsikkoalue, jossa on kohteen yksilöivät kentät ja päätoiminnot, ja sen alla vaakasuora välilehtirivi kaikelle muulle.

Välilehtijoukko vaihtelee kohdetyypeittäin mutta noudattaa ennakoitavaa rytmiä:

| Kohde            | Välilehdet                                                                                                                     |
| :--------------- | :----------------------------------------------------------------------------------------------------------------------------- |
| Varastoartikkeli | Yleiset · Attribuutit · Tulot ja kulut · Keräily · Dokumentit · Tapahtumat · Toimintoloki                                      |
| SKU              | Yleiset · Attribuutit · Varastoartikkelit · Dokumentit · Toimintoloki                                                          |
| Listaus          | Yleiset · Attribuutit · Hinnoittelu · Markkinointi · Variantit · Dokumentit · Julkaisu · Toimintoloki                          |
| Asiakas          | Yleiset · Attribuutit · Tilaukset · Varastoartikkelit · Dokumentit · Toimintoloki                                              |
| Tilaus           | Yhteenveto · Rivitiedot · Asiakkaat · Varastoartikkelit · Keräily ja palautus · Maksut · Kommentit · Dokumentit · Toimintoloki |
| Sijainti         | Yhteystiedot · Aikavyöhyke · Keräily · Myyntikanavat · Aukioloajat · Sähköpostit · Dokumentit                                  |

Kaksi välilehteä esiintyy lähes kaikkialla:

* **Attribuutit** — mukautetut kentät järjestettynä [attribuuttiryhmiin](/docs/fi/concepts/admin/attribute-groups)
* **Toimintoloki** — pyyntötason kirjausketju tähän kohteeseen rajattuna

Välilehtien järjestys, merkit ja näkyvyys noudattavat kaikki käyttäjän käyttöoikeuksia — välilehdet, joihin käyttäjällä ei ole pääsyä, piilotetaan, ei harmaanneta.

## Paneeli vai koko sivu

Kevyissä luonti- ja muokkausprosesseissa TWICE käyttää oikealta liukuvaa **paneelia**. Paneeli pitää sinut nykyisessä luettelossa, joten asiayhteys ei katoa. Raskaammat prosessit — sijainnin lisäys, listauksen määritys — avautuvat **koko sivun editoriin**, koska ne tarvitsevat enemmän tilaa ja jakautuvat omaan välilehtirakenteeseensa.

Nyrkkisäännöt:

| Malli              | Milloin                                                                            |
| :----------------- | :--------------------------------------------------------------------------------- |
| **Paneeli**        | Yhden lomakkeen muokkaukset, nopeat luonnit, attribuutin määritys                  |
| **Modaali-ikkuna** | Vahvistukset, poistot, yksinkertaiset kahden kentän lomakkeet                      |
| **Koko sivu**      | Monivälilehtiset editorit (sijainti, listaus), useasta osiosta koostuvat prosessit |

## Attribuuttijärjestelmä

Jokaiselle kohteelle voi antaa mukautettuja kenttiä [attribuuttien](/docs/fi/concepts/admin/attributes) avulla. Muotojoukko on kiinteä — teksti, numero, totuusarvo, päivämäärä, päivämäärä ja aika, valinta, monivalinta ja kaava — mutta voit määrittää niin monta attribuuttia resurssia kohti kuin tarvitset.

### Missä attribuutit näkyvät

| Paikka       | Toiminta                                                                             |
| :----------- | :----------------------------------------------------------------------------------- |
| Datataulukot | Näkyvät suodatettavina ja järjestettävinä sarakkeina                                 |
| Tietosivut   | Muokattavia kenttiä Attribuutit-välilehdellä, ryhmiteltyinä attribuuttiryhmän mukaan |
| Viennit      | Näkyvät attribuuttisarakkeet sisältyvät CSV-vientiin                                 |
| Työnkulut    | Käytettävissä käynnistysehtoina ja toimintojen kohteina                              |
| API          | Palautetaan jokaisen tietueen `attributes`-kartassa                                  |

Lue lisää: [Attribuutit](/docs/fi/concepts/admin/attributes) · [Attribuuttiryhmät](/docs/fi/concepts/admin/attribute-groups)

## Suhdemallit

TWICE järjestää kaupankäyntidatan neljäksi toisiinsa kytketyksi resurssityypiksi. Jokainen viittaa muihin — siiloja ei ole.

```mermaid theme={null}
%%{init: {'flowchart': {'nodeSpacing': 30, 'rankSpacing': 50}}}%%
flowchart LR
    subgraph Inventory["Inventaario"]
        SKU["SKU"]
        StockItem["Varastoartikkeli"]
    end

    subgraph Catalog["Katalogi"]
        Listing["Listaus"]
        Collection["Kokoelma"]
    end

    subgraph Orders["Tilaukset"]
        Order["Tilaus"]
        LineItem["Rivitieto"]
    end

    subgraph Customers["Asiakkaat"]
        Customer["Asiakas"]
    end

    SKU -->|"seurataan"| StockItem
    SKU -->|"esitetään"| Listing
    Listing -->|"ryhmitellään"| Collection
    Customer -->|"tekee"| Order
    Order -->|"sisältää"| LineItem
    LineItem -->|"varaa"| StockItem
    LineItem -->|"viittaa"| Listing

    style Inventory fill:#3b82f633,stroke:#3b82f6,stroke-width:2px
    style Catalog fill:#10b98133,stroke:#10b981,stroke-width:2px
    style Orders fill:#f59e0b1a,stroke:#f59e0b,stroke-width:2px
    style Customers fill:#a855f71a,stroke:#a855f7,stroke-width:2px
    style SKU fill:#3b82f61a,stroke:#3b82f6,stroke-width:1px
    style StockItem fill:#3b82f61a,stroke:#3b82f6,stroke-width:1px
    style Listing fill:#10b9811a,stroke:#10b981,stroke-width:1px
    style Collection fill:#10b9811a,stroke:#10b981,stroke-width:1px
    style Order fill:#f59e0b1a,stroke:#f59e0b,stroke-width:1px
    style LineItem fill:#f59e0b1a,stroke:#f59e0b,stroke-width:1px
    style Customer fill:#a855f71a,stroke:#a855f7,stroke-width:1px
```

| Suhde                        | Suunta       | Kuvaus                                                          |
| :--------------------------- | :----------- | :-------------------------------------------------------------- |
| SKU > varastoartikkeli       | Yksi moneen  | SKU määrittää tuotteen; varastoartikkelit ovat fyysiset yksiköt |
| SKU > listaus                | Yksi yhteen  | Listaus esittää SKU:n asiakkaille                               |
| Listaus > kokoelma           | Monta moneen | Listaukset ryhmitellään kokoelmiin myynnin tueksi               |
| Asiakas > tilaus             | Yksi moneen  | Asiakas tekee tilauksia ajan mittaan                            |
| Tilaus > rivitieto           | Yksi moneen  | Tilaus sisältää rivitietoja                                     |
| Rivitieto > varastoartikkeli | Yksi yhteen  | Rivitieto varaa tietyn varastoartikkelin                        |
| Rivitieto > listaus          | Monta yhteen | Rivitieto viittaa listaukseen, jonka asiakas valitsi            |

Näiden suhteiden ansiosta voit siirtyä mistä tahansa kohteesta sen liittyviin tietueisiin — varastoartikkeli näyttää SKU:n, johon se kuuluu, sen esittävän listauksen ja jokaisen tilauksen, joka on varannut sen.

## Status ja tila

Jokaisella ensisijaisella kohteella on **status** (elinkaaren vaihe) ja useimmilla myös **tila** (toiminnallinen kunto). Arvot ovat kohdekohtaisia, eivät yleisiä:

| Kohde            | Status-arvot                                      | Tila-arvot                           |
| :--------------- | :------------------------------------------------ | :----------------------------------- |
| Varastoartikkeli | In use / Out of use / Lost / Sold                 | In / Out                             |
| Tilaus           | Odottaa / Luonnos / Avoin / Aktiivinen / Suljettu | Maksun ja keräilyn tilat (merkinnät) |
| Listaus          | Julkinen / Luonnos                                | —                                    |

Arkistoitu ei ole minkään näistä status-arvo. Se, onko resurssi arkistoitu, on erillinen akseli, joka on yhteinen kaikille keskeisille resursseille — katso [Arkistointi ja poistaminen](/docs/fi/concepts/repeating-patterns/archiving-and-deletion).

Lue lisää: [Status ja tila](/docs/fi/concepts/repeating-patterns/status-vs-state)

## Massatoiminnot

Useimmat taulukot tukevat rivien valintaa vasemmanpuoleisimman valintaruutusarakkeen kautta. Yhden tai useamman rivin valinta tuo esiin massatoimintopalkin:

* **Muokkaa** — tee sama attribuuttimuutos jokaiselle valitulle riville
* **Merkitse / poista merkintä** — lisää tai poista tunnisteita joukolle
* **Arkistoi** — ota valitut tietueet pois käytöstä sen jälkeen, kun arkistoinnin vaikutukset on kartoitettu
* **Poista** — käytettävissä arkistonäkymässä kohdassa [Asetukset → Arkistoidut resurssit](/docs/fi/settings/archived-assets); tietueen poistaminen muualla arkistoi sen
* **Vie** — vie valitut rivit CSV-muodossa

Massatoiminnot noudattavat käyttöoikeuksia — käyttäjille, joilla ei ole vastaavaa oikeutta, massatoimintopalkki ei näy.

## Käyttöoikeuskerrokset

Pääsynhallinta koostuu kolmesta toisistaan riippumattomasta kerroksesta:

| Kerros               | Mitä ohjaa                                  | Arvot                                          |
| :------------------- | :------------------------------------------ | :--------------------------------------------- |
| **Rooli**            | Perusoikeustaso                             | Owner, Admin, Manager, Member                  |
| **Näkyvyys**         | Mitkä osiot, taulukot ja välilehdet näkyvät | Osiokohtaiset kytkimet                         |
| **Käyttöoikeustaso** | Mitä toimintoja näkyvälle datalle voi tehdä | Manage (täysi CRUD) tai Edit (luku + päivitys) |

Käyttäjän tosiasialliset oikeudet ovat näiden kolmen leikkaus. Malli pätee yhdenmukaisesti — varasto, katalogi, tilaukset, asiakkaat ja asetukset käyttävät kaikki samaa mallia.

<Note>
  Välilehdet ja massatoiminnot piiloutuvat automaattisesti sen sijaan, että näkyisivät poissa käytöstä. Jos jokin ominaisuus ei näy, tarkista käyttäjän rooli ja näkyvyysasetukset ennen kuin oletat ominaisuuden puuttuvan.
</Note>

## Esimerkki: miten mallit yhdistyvät

Tavallinen varastoartikkelin API-vastaus näyttää yllä kuvatut mallit yhdessä paketissa — datataulukon identiteetin, mukautetut attribuutit, liittyvät viittaukset, elinkaaren statuksen ja käyttäjän oikeuden muuttaa sitä.

```json theme={null}
{
  "id": "stk_abc123",
  "skuId": "sku_xyz789",
  "status": "active",
  "binLocation": "A-12",
  "serviceLocationId": "loc_def456",
  "attributes": {
    "attr_color": "Navy",
    "attr_condition": "good",
    "attr_serialNumber": "BK-2024-0011"
  },
  "sku": {
    "id": "sku_xyz789",
    "name": "Classic Jacket",
    "code": "JCK-CLS"
  },
  "tags": [{ "id": "tag_winter", "name": "Winter pool" }],
  "createdAt": "2026-01-15T09:22:00.000Z"
}
```

Vastaus sisältää kaiken, mitä näit käyttöliittymässä — kohteen identiteetin, sen [attribuutit](/docs/fi/concepts/admin/attributes), sen suhteet SKU:hun ja sijaintiin, sen elinkaaren [statuksen](/docs/fi/concepts/inventory/stock-item-status) sekä siihen liitetyt tunnisteet.

## Aiheeseen liittyvää

<CardGroup cols={2}>
  <Card title="Taulukot" icon="table" href="/docs/fi/admin/tables">
    Datataulukoiden ominaisuudet ja toiminnot
  </Card>

  <Card title="Attribuutit" icon="tags" href="/docs/fi/concepts/admin/attributes">
    Mukautetut kentät, jotka laajentavat tietomallia
  </Card>

  <Card title="Status ja tila" icon="arrows-rotate" href="/docs/fi/concepts/repeating-patterns/status-vs-state">
    Kohdekohtaiset status- ja tilamatriisit
  </Card>

  <Card title="Käyttömallit" icon="hand-pointer" href="/docs/fi/concepts/repeating-patterns/usage-patterns">
    Päivittäiset vuorovaikutusmallit
  </Card>

  <Card title="Käyttöjärjestelmäajattelu" icon="microchip" href="/docs/fi/concepts/os-approach">
    Alustafilosofia näiden mallien taustalla
  </Card>

  <Card title="Toimintolokit" icon="clock-rotate-left" href="/docs/fi/concepts/admin/activity-logs">
    Kirjausketju jokaisella tietosivulla
  </Card>
</CardGroup>
