Flusso di entrata (DDT di carico)#
Panoramica#
Quando arriva merce in magazzino e si registra un DDT di carico (COGV14W), il sistema WMS assegna una locazione di arrivo (classe "A") e traccia la giacenza per ogni articolo in quella ubicazione. Da quel momento, l'APP tablet puo' gestire lo stoccaggio fisico.
Flusso passo per passo#
1. Inserimento DDT di carico#
Quando l'operatore registra un nuovo DDT di carico con gestione-tablet = "S":
- Il sistema chiede di selezionare una locazione di arrivo (classe "A") tramite la griglia di WMSW01
- Crea un record in
dfdoctescon classe"DM"estato-doc = "B"(disponibile per l'APP) - Se la locazione non ha un fornitore associato, la collega automaticamente (
loc-ana) - Per ogni riga del DDT (ogni articolo, esclusi i servizi):
- Aggiorna
dfgiacenzeloc: la giacenza nella locazione aumenta della quantita' della riga - Se il record di giacenza non esiste, lo crea
- Inserisce un movimento in
dfmovimentiloccon segno"E"(Entrata)
Condizioni per l'attivazione: la data del DDT deve essere >= 25/08/2025 e la causale del DDT non deve essere quella esclusa dalla configurazione (cau-no-aggancio-tablet).
2. L'APP tablet prende in carico il DDT#
L'APP legge il record dfdoctes con stato-doc = "B" e mostra il DDT all'operatore di magazzino. Quando l'operatore conferma lo stoccaggio fisico, l'APP scrive un movimento speciale in dfmovimentiloc con mloc-doc-key = "stock" — questo e' il segnale convenzionale di "carico stoccato".
3. Verifica stato carico (apertura DDT esistente)#
Quando si riapre un DDT di carico gia' inserito, il sistema chiama controllo-entrata per verificare:
- Se
df-dtes-fl-blocco = "S": mostra l'avviso "DDT collegato a movimentazione articoli da APP". L'operatore puo' visualizzare ma non modificare le quantita' gia' movimentate dall'APP - Restituisce la locazione assegnata e l'indicazione di esistenza movimenti (
fl-mov-loc = "S")
4. Completamento carico → creazione BDP#
Dall'interno del DDT di carico (tasto F6), l'operatore puo' richiedere il completamento carico che genera BDP per prelevare la merce dalla locazione di arrivo:
- Il sistema verifica se il carico e' gia' stato stoccato dall'APP (
carico-stoccato). Seesito = "S", blocca l'operazione con "DDT di carico gia' Stoccato con movimentazione APP Locazioni: operazione 'COMPLETA-CARICO' non abilitata" - Se non stoccato, lancia COGF64 in modalita'
COMPLETA-CARICO - COGF64 crea i BDP e per ciascuno:
- Chiama WMSW01 (operazione blank) per registrare il BDP nella locazione di partenza (
dfdoctesclasse"BDP") - Crea il raccordo
dfdocractra DDT di carico (padre "DM") e BDP (figlio "BDP") - Chiama
scarico-entrataper scaricare la locazione di arrivo: - Per ogni BDP collegato al DDT (via COGGENER tipo
"EB"):dfgiacenzeloc: la giacenza nella locazione di arrivo diminuisce della quantita' del BDPdfmovimentiloc: nuovo movimento con segno"U"(Uscita), tipo"M"(Movimento)
- Blocca il DDT di carico:
df-dtes-fl-blocco = "S"(non piu' gestibile dall'APP) - Se la giacenza nella locazione di arrivo si azzera per tutti gli articoli, libera la locazione (
loc-ana = spaces)
Schema riepilogativo#
DDT di carico (COGV14W)
│
├── dfdoctes: INSERT (classe="DM", stato-doc="B", locazione=arrivo)
├── dfgiacenzeloc: += qta per ogni riga DDT (entrata in locazione arrivo)
└── dfmovimentiloc: INSERT segno="E" per ogni riga DDT
│
│ ... APP tablet conferma stoccaggio (mloc-doc-key="stock") ...
│
▼
Completamento carico (F6 → COGF64)
│
├── Per ogni BDP creato:
│ ├── dfdoctes: INSERT (classe="BDP", locazione=partenza, stato-doc="A")
│ └── dfdocrac: INSERT (padre="DM" → figlio="BDP")
│
└── Scarico locazione arrivo:
├── dfdoctes DDT: fl-blocco="S"
├── dfgiacenzeloc: -= qta BDP (uscita dalla locazione di arrivo)
├── dfmovimentiloc: INSERT segno="U" tipo="M"
└── Se giacenza=0 → locazione liberata
Tabelle coinvolte#
| Tabella | Operazione | Quando |
|---|---|---|
dfdoctes |
INSERT (classe "DM") | Inserimento DDT |
dfdoctes |
UPDATE fl-blocco="S" | Completamento carico |
dfgiacenzeloc |
+= quantita' | Inserimento DDT (entrata) |
dfgiacenzeloc |
-= quantita' | Completamento carico (uscita da arrivo) |
dfmovimentiloc |
INSERT segno="E" | Inserimento DDT |
dfmovimentiloc |
INSERT segno="U" | Completamento carico |
dfdoctes |
INSERT (classe "BDP") | Creazione BDP |
dfdocrac |
INSERT (DM→BDP) | Collegamento DDT-BDP |
dflocazioni |
UPDATE loc-ana | Associazione fornitore (se libera) |
Vedi anche#
- Modifica e cancellazione DDT — cosa succede quando si modifica o cancella un DDT di carico
- Flusso di uscita — il percorso del BDP fino al DDT di uscita