DBF100 - Import/export documenti di magazzino

Navigation:  »No topics above this level«

DBF100 - Import/export documenti di magazzino

Return to chapter overview

Posizione nel menu

Programma non a menu

 

Linkage section

 

UTILDBFPRG - Linkage comune

 

Nome processo: CONTATTI

 

Tabella: DFDOCTES - Testata documenti + DFDOCDET - Dettaglio documenti

 

Logica generale

 

Sincronizzazione dei documenti di magazzino tra AREA e il DB frontiera.

 

Questo processo funziona in IMPORT e EXPORT

 

Configurazioni possibili

 

Gruppo

Parametro

Note

dbfront

sincro-attiva

 

dbfront

email-segnalazioni

 

dbfront

db-tipo

 

dbfront

db-conn-string

 

dbfront

db-log-level

 

dbfront

inverto-segno-sconti

 

dbfront

magazzino-esp-interventi

Usato per modificare il magazzino dei documenti la cui sede è il magazzino configurato

dbfront

periferica-stampa-ricevimenti

 

 

Elaborazione

 

Tipi di segnalazione:

Vedi Tipi di segnalazione

 

A - Controllo di esecuzione

Vedi Controllo di esecuzione

 

A.1 - Controllo log COGTESBO

Per l'esecuzione di questo programma è necessario aver attivato il log sul file COGTESBO, altrimenti risulta impossibile tracciare le cancellazioni dei documenti. Di conseguenza, il log del file si potrà usare anche per tracciare gli inserimenti e le variazioni.

 

Quindi se il dato TLF-CO-LOG (7) è diverso da "X", inviare una Segnalazione grave e chiudere.

 

 

B - Apertura

 

B.1 Apertura tabelle

 

Tentare l'apertura della tabella da sincronizzare: DFDOCTES. Se fallita inviare una Segnalazione grave e chiudere.

Tentare l'apertura della tabella da sincronizzare: DFDOCDET. Se fallita inviare una Segnalazione grave e chiudere.

Tentare l'apertura della tabella semaforo: DFSEMAFORO. Se fallita inviare una Segnalazione grave e chiudere.

 

B.2 Blocco semaforo

 

Lettura del record DFSEMAFORO:

 

Nome campo

Note

DF_SMF_TABELLA

DFDOCTES

 

Se il record non esiste inserirlo. Se risulta bloccato dal gestonale host (DF_SMF_USO_HOST = 1) Informazione sul log e chiudere.

 

Dopodichè aggiornare il semaforo impostando:

 

Nome campo

Note

DF_SMF_USO_AREA

1

DF_SMF_VERSIONE

Versione attuale: 1

 

Ripetere l'operazione per la tabella DFDOCDET

 

B.3 Aggiornamento stato

 

Aggiornamento dello stato sul record specifico; in particolare:

 

Dato

Contenuto

DBFST-STATO

"I"

DBFST-ATT-DATA

Data sistema

DBFST-ATT-ORA

Ora sistema

DBFST-SCHED-DATA

Sommare il tempo di attesa a data/ora sistema

DBFST-SCHED-ORA

DBFST-ERRORI

0

DBFST-MSG-ERRORE

" "

DBFST-LOG-PROCEDURA

" "

 

 

C - Sincronizzazione (Importazione)

 

Se DBFST-FL-ATTIVAZIONE = 'E' (solo esportazione). segnalare Informazione sul log e skippare questa fase.

 

C.1 Selezione documenti da importare

 

Tramite un comando SQL specifico, estrazione di tutte le testate dei documenti aggiornati dall'HOST:

SELECT * FROM DFDOCTES WHERE DF_DTES_AGG_HOST = 1 and DF_DTES_CLASSE = 'DM'

 

I documenti trovati in questo modo potrebbero essere:

Documenti inseriti dall'HOST

Documenti inseriti dall'HOST e successivamente variati

Documenti inseriti su AREA che sono stati acquisiti dall'HOST e successivamente variati: potrà essere effettuata una variazione in funzione della presenza del raccordo su COGGENER (vedi sotto)

 

C.2 Controllo record di testata

 

Per ciascun record letto, verificare la correttezza delle informazioni contenute

 

Controllo DF_DTES_VAL

Questo campo potrà contenere "C" o " " altrimenti segnalare Errore e skippare: "DF_DTES_KEY con DF_DTES_VAL errato: DF_DTES_VAL".

Se un record risulta cancellato skippare tutti i controlli successivi, e passare direttamente alla fase di cancellazione come spiegato sotto.

 

 

Controllo DF_DTES_KEY_HOST

Questa informazione, in fase di importazione deve essere significativa, altrimenti segnalare Errore .

 

Controllo DF_DTES_ORIGINE

Questa informazione potrà contenere "A" o "H", altrimenti segnalare Errore e skippare: "DF_DTES_KEY con DF_DTES_ORIGINE errato: DF_DTES_ORIGINE".

 

Se contiene "A" significa che il documento è stato generato da AREA; per il momento ignoriamo le variazioni su questi documenti, quindi Informazione sul log e skippare il record.

 

Controllo DF_DTES_CLASSE

La classe documento attualmente potrà essere solo "DM", altrimenti segnalare Errore e skippare: "DF_DTES_KEY con DF_DTES_CLASSE errato: DF_DTES_CLASSE".

 

Controllo DF_DTES_KEY_AREA

Se presente, significa che il documento è già stato acquisito da AREA, e siamo in caso di variazione: verificare quindi l'esistenza su COGTESBO del documento: se manca, segnalare Errore: "DF_DTES_KEY; DF_DTES_KEY_AREA non esistente: DF_DTES_KEY_AREA"

IMPORTANTE

in alcuni casi, il gestionale host in caso di variazione non è in grado di mantenere il raccordo con il nostro documento scritto qui. Per questo motivo, prima di considerare un documento come "Nuovo" si dovrà controllare l'esistenza di un eventuale raccordo su COGGENER, con GNR-TIPO = "DH"

 

Controllo DF_DTES_DATA

Data documento: questo campo dovrà essere significativo e contenere una data valida, altrimenti segnalare Errore e skippare.

 

Controllo DF_DTES_MAG_MAIN_HOST

Campo obbligatorio.

Si dovrà cercare su COGMAGAG se esiste già un magazzino con MAGG-CODICE-HOST = DF_DTES_MAG_MAIN_HOST. Se non esiste, segnalare Errore e skippare: "DF_DTES_KEY con DF_DTES_MAG_MAIN_HOST non esistente: DF_DTES_MAG_MAIN_HOST".

 

Controllo DF_DTES_MAG_TRASF_HOST

Campo non obbligatorio.

Se presente, si dovrà cercare su COGMAGAG se esiste già un magazzino con MAGG-CODICE-HOST = DF_DTES_MAG_TRASF_HOST. Se non esiste, segnalare Errore e skippare: "DF_DTES_KEY con DF_DTES_MAG_TRASF_HOST non esistente: DF_DTES_MAG_TRASF_HOST".

 

Controllo DF_DTES_CAUSALE

Campo obbligatorio.

Si dovrà cercare sulla tabella causali se ne esiste una con EUTA-CB-CODICE-HOST = DF_DTES_CAUSALE. Se non esiste, segnalare Errore e skippare: "DF_DTES_KEY con DF_DTES_CAUSALE non esistente: DF_DTES_CAUSALE".

 

Controllo DF_DTES_PAGAMENTO

Campo non obbligatorio.

Se indicato dovrà corrispondere ad un codice raccordato con i nostri "tipo e codice pagamento, vedi DBF001.

 

Controllo DF_DTES_ANA_FAT_HOST

Questa informazione potrebbe non essere significativa (in caso di documento interno tipo "prima nota magazzino". Se significativa, cercare se corrisponde ad un cliente o fornitore, con una ricerca su COGANAPP.AAP2-CHIA2, impostando

AAP2-RACCORDO = DF_DTES_ANA_FAT_HOST

Se il raccordo:

Esiste: il documento sarà collegato all'anagrafica trovata; il tipo anagrafico dovrà essere congruente con il tipo anagrafico della causale bolla (vedi COGV14W o COGV50W)

Non esiste: l'anagrafica a cui è collegati il contatto non è stato ancora acquisita: Informazione e skippare: "DF_DTES_KEY collegato ad anagrafica non ancora importata : DF_DTES_ANA_FAT_HOST"

 

Controllo DF_DTES_ANA_DST_HOST

Come sopra

 

Controllo DF_DTES_IND_HOST

Se indicato dovrà corrispondere ad un indirizzo di spedizione presente in DFINDIR (fare la ricerca su DF_IND_KEY_HOST). Se non presente segnalare Errore e skippare. Se presente questo indirizzo deve essere già stato importato e collegato su AREA: dovrà quindi avere DF_IND_AREA_PROG valorizzato. Altrimenti segnalare Informazione e skippare: "DF_DTES_KEY collegato ad indirizzo non ancora importata : DF_DTES_IND_HOST"

 

Controllo DF_DTES_VAL

Questo campo potrà contenere "C" o " " altrimenti segnalare Errore e skippare: "DF_DTES_KEY con DF_DTES_VAL errato: DF_DTES_VAL".

 

Controllo DF_DTES_DIVISA

Se vale "EU" diventerà "E" e viceversa

 

 

C.3 Controlli dettaglio documento

 

Tramite un comando SQL specifico, estrazione di tutte le righe del documento in elaborazione:

SELECT * FROM DFDOCDET WHERE DF_DDET_KEY_HOST = DF_DTES_KEY_HOST

 

Per ciascun record letto i controlli sono i seguenti:

 

Controllo DF_DDET_SEGNO

Questo campo potrà contenere "E" o "U" altrimenti segnalare Errore e skippare: "Riga: DF_DDET_KEY_HOST : DF_DDET_RIG_HOST con DF_DDET_SEGNO errato: DF_DDET_SEGNO".

 

Controllo DF_DDET_MPR_HOST

questa informazione contiene il codice merce avanzato di una merce (che corrisponde al codice articolo HOST)..

Quindi, cercare su COGRACMC; se non esiste segnalare Errore ""Riga: DF_DDET_KEY_HOST : DF_DDET_RIG_HOST; merce non esistente: DF_DDET_MPR_HOST"

 

C.4 Importazione record

 

Se tutti i controlli sono superati, proseguire con l'inserimento/aggiornamento del documento.

 

Se DF_DTES_KEY_AREA è vuoto, cercare il raccordo su AREA, su COGGENER, usando GNR-CHIA2, impostando:

Nome campo

Contenuto

GNR-TIPO

"DH"

GNR-PARTE-2

DF_DTES_KEY_HOST

Se il record

esiste, GNR-PARTE-1 conterrà il riferimento ad un documento di AREA; cercarne quindi l'esistenza su COGTESBO:

ose non esiste, cancellare il record, e procedere con l'inserimento

ose esiste, siamo in caso di Variazione

non esiste, siamo in Inserimento

 

Riepilogo situazioni possibili

 

DF_DTES_KEY_HOST

Raccordo COGGENER

Situazione

Vuoto

Esiste, GNR-PARTE-2 esiste

Variazione

Vuoto

Esiste, GNR-PARTE-2 non esiste

Cancellazione raccordo su COGGENER

Inserimento

Vuoto

Non esiste

Inserimento

Non vuoto

/

Variazione

 

 

C.4.1 Cancellazione

 

Nel caso in cui DF_DTES_VAL = 'C' è necessario cercare e cancellare l'intero documento di magazzino:

 

C.4.1.1 Cancellazione di documento non importato

 

Se DF_DTES_KEY_AREA è vuoto: significa che il documento non era mai stato importato: marcare il record come "elaborato":

 

Nome campo

Contenuto

DF_DTES_AGG_HOST

0

DF_DTES_AGG_AREA

0

 

segnalare Informazione e skippare: "DF_DTES_KEY documento cancellato ma non ancora importato"

 

C.4.1.2 Cancellazione di documento importato

 

Se DF_DTES_KEY_AREA non è vuoto: significa che il documento era già stato importato;

 

Cercare su COGTESBO, usando DF_DTES_KEY_AREA. Se non esiste segnalare Errore e skippare: "DF_DTES_KEY documento da cancellare non esistente: DF_DTES_KEY_AREA"

 

Altrimenti effettuare la cancellazione usando COGU11

NB: COGU11 è nato per la cancellazione di DDT, in realtà dovrebbe essere possibile usarlo anche per la cancellazione di altri documenti come entrate di magazzino o prime note magazzino. Provare anche con documenti di questi tipi.

 

Dopodichè marcare il record come "elaborato":

 

Nome campo

Contenuto

DF_DTES_AGG_HOST

0

DF_DTES_AGG_AREA

0

DF_DTES_KEY_AREA

" "

 

C.4.2 Inserimento

 

Come prima cosa dobbiamo determinare quale tipo documento creare, a seconda della causale e della presenza di una anagrafica collegata.

 

 

DF_DTES_ANA_FAT_HOST

EUTA-CB-FL-EU

Tipo documento

Presente (Cliente)

"U"

DDT tipo "I"

Presente (Cliente)

"E"

DDT entrata tipo "R"

Presente (Fornitore)

"U"

DDT tipo "I"

Presente (Fornitore)

"E"

DDT entrata tipo "C"

Non presente

Ininfluente

Prima nota "P"

 

Per l'inserimento del documento useremo COGS26

 

C.4.2.1 Linkage (dati di testata)

 

Dato

Contenuto

COGS26-OPE

"Inserimento"

COGS26-NOTE-1

DF_DTES_NOTE

COGS26-NOTE-2

COGS26-DATA

DF_DTES_DATA

COGS26-MAG

Il codice magazzino collegato a DF_DTES_MAG_MAIN_HOST

COGS26-FL-LINK

"N"

S26-FL-GIA

"S"

S26-DOCUMENTO-LINK

" "

S26-DOCUMENTO-CANC

" "

S26-QTA-PRD

0

S26-FL-PROD

"N"

S26-ANA-RIF

Dati anagrafici da passare al documento quando necessario

S26-ANA-TIP

Tipo e codice anagrafico collegato a DF_DTES_ANA_FAT_HOST

S26-ANA-NONNO

S26-ANA-PADRE

Codice anagrafico collegato a DF_DTES_ANA_DST_HOST

S26-ANA-FIGLIO

0

S26-FL-MATRICOLE

" "

S26-PROD-RAPIDA

"N"

S26-TRS-ID

" "

S26-CAUSALE

Causale collegata a DF_DTES_CAUSALE

S26-USA-PREZZI

"S"

S26-FL-TRASFERIMENTO

"N"

S26-DOC-TIPO

Il tipo documento ricavato dalla tabella qui sopra (I/R/C/P)

S26-PAG-TIP

Tipo e codice pagamento ricavati da DF_DTES_PAGAMENTO

S26-PAG-COD

S26-DST-IDX

Id destinazione ricavato da DF_DTES_IND_HOST

S26-DIVISA

DF_DTES_DIVISA

 

C.4.2.2 TRAN-S26 (movimenti)

 

Tabella: TRAN-S26

Nome campo

Note

TRS-S26-RIGA

Progressivo di riga

TRS-S26-MERCE

La merce collegata a DF_DDET_MPR_HOST

TRS-S26-QTA

DF_DDET_QTA

TRS-S26-SEGNO

DF_DDET_SEGNO

TRS-S26-PREZZO

DF_DDET_PREZZO_NETTO

TRS-S26-SCO-1

DF_DDET_SCONTO_1

TRS-S26-SCO-2

DF_DDET_SCONTO_2

Se DF_DDET_SCONTO_3 è significativo, accorparlo allo sconto 2

TRS-S25-SCO-2 = 100-(100-sco1)*((100-sco2)/100)

Se inverto-segno-sconti vale "S", invertire il segno dello sconto

TRS-S26-PREZZO-LORDO

DF_DDET_PREZZO_LORDO

TRS-S26-IMPORTO

DF_DDET_IMPORTO

Se non significativo, ottenerlo moltiplicando DF_DDET_QTA * DF_DDET_PREZZO_NETTO e arrotondando

 

Al termine aggiornare il record di testata documento:

 

Nome campo

Contenuto

DF_DTES_AGG_HOST

0

DF_DTES_AGG_AREA

0

DF_DTES_KEY_AREA

Chiave del documento creato

 

C.4.2.3 Raccordo su COGGENER

 

Creare un raccordo su COGENER

 

Nome campo

Contenuto

GNR-TIPO

"DH"

GNR-PARTE-1

DF_DTES_KEY_AREA

GNR-PARTE-2

DF_DTES_KEY_HOST

GNR-PROG

0

 

C.4.3 Aggiornamento

 

Se DF_DTES_KEY_AREA non è vuoto:  significa che il documento era già stato importato; quindi si dovrà procedere con un aggiornamento:

 

Cancellazione: come al punto C.4.1

Inserimento: come al punto C.4.2, passando però a COGS26 il riferimento al numero documento da creare.

 

C.4.4 Modula

 

In tutti i casi di aggiornamento di un documento (inserimento/variazione/cancellazione), effettuare le chiamate a COGD53 - Invio liste a Modula, seguendo le indicazioni spiegate in "Nuova logica di funzionamento"

 

C.4.5 Stampa documento

 

Se il documento inserito o aggiornato è di entrata (tipo "C" o "R"), e la configurazione periferica-stampa-ricevimenti è significativa, effettuare la stampa dell'entrata usando COGD42.

 

 

D - Sincronizzazione (esportazione)

 

Se DBFST-FL-ATTIVAZIONE = 'I' (solo importazione). segnalare Informazione sul log e skippare questa fase.

 

D.1 Documenti cancellati

 

In questa fase dovremo controllare i documenti di magazzino che sono stati cancellati, usando il log su COGTESBO.

 

Quindi, si dovrà scorrere LOGAGREC usando LGR-CHIA3, a partire dall'ultimo aggiornamento effettuato.

 

Nome campo

Contenuto

LGR-FILE

"cogtesbo"

LGR-DATA

DBFST-UA-DATA

LGR-ORA

DBFST-UA-ORA

 

Per ciascun record letto cerchiamo il corrispondente record LOGIDREC:

 

Nome campo

Contenuto

LRR-FILE

"cogtesbo"

LGR-ID

LGR-ID-RECORD

 

In LRR-CHIAVE troveremo la chiave del documento, corrispondente a TES-CHIA3.

 

Consideriamo i record con LGR-OPERAZIONE = "C" (cancellazione).

 

Verifichiamo se il documento cancellato è già stato esportato, con una ricerca diretta su DFDOCTES, usando DF_DTES_CHIA3, impostando:

 

Nome campo

Contenuto

DF_DTES_CLASSE

"DM"

DF_DTES_KEY_AREA

TES-CHIA3

 

Se il record non esiste, allora il documento non è mai stato esportato, Informazione sul log e skippare.

 

Se il record esiste, allora è già stato esportato: però se è stato generato dall'HOST (DF_DTES_ORIGINE = "H") lo dobbiamo ignorare: Informazione sul log e skippare.

Altrimenti dovremo aggiornare DFDOCTES:

 

Nome campo

Contenuto

DF_DTES_VAL

"C"

DF_DTES_AGG_AREA

1

 

D.2 Esportazione

 

Loop su COGTESAP usando TSA-CHIA2, impostando

Nome campo

Contenuto

TSA-FL-ESPORTATO

" "

 

Ciascun record letto corrisponde ad un documento da trattare.

 

D.2.1 Controllo se esportare il documento

 

Se è configurato il magazzino magazzino-esp-interventi, significa che per il gestionale host i magazzini collegati a questo non esistono; sono i magazzino dove MAGZ-SEDE = magazzino-esp-interventi

 

Quindi, non dovranno essere esportati i trasferimenti tra:

Sede <-> magazzino collegato alla sede

Magazzino collegato alla sede <-> Magazzino collegato alla sede

 

Prima di procedere, verificare se il documento è un trasferimento; se si cercare il documento collegato, e se il trasferimento cade in una di queste due casistiche, skippare il record marcando il documento come esportato.

 

D.2.2 Esportazione singolo documento

 

Verifichiamo se il documento inserito/aggiornato è già stato esportato, con una ricerca diretta su DFDOCTES, usando DF_DTES_CHIA3, impostando:

 

Nome campo

Contenuto

DF_DTES_CLASSE

"DM"

DF_DTES_KEY_AREA

TES-CHIA3

 

Se il record esiste, allora è già stato esportato: però se è stato generato dall'HOST (DF_DTES_ORIGINE = "H") lo dobbiamo ignorare: Informazione sul log e skippare.

Altrimenti dovremo aggiornare DFDOCTES, quindi cancellare DFDOCDET per tutti i record usando una query, e quindi reinserire DFDOCDET.

 

Se il record non esiste, allora il documento non è mai stato esportato, quindi dovremo inserire DFDOCTES, e quindi inserire DFDOCDET.

 

Verificare se il documento è:

Un documento di chiusura intervento di assistenza

oSe raccordato a ASNINDMG con ACIM-TIP = "D"

 

 

D.2.2.1 Aggiornamento DFDOCTES

 

Nome campo

Note

DF_DTES_KEY_HOST

in inserimento è vuoto, altrimenti lasciare invariato (potrebbe essere stato già importato dall'HOST e quindi collegato)

DT_DTES_ORIGINE

"A"

DF_DTES_CLASSE

"DM"

DF_DTES_KEY_AREA

TES-CHIA3

DF_DTES_DATA

TES-DATA

DF_DTES_MAG_MAIN_HOST

MAGG-CODICE-HOST, trovato leggendo COGMAGAG con:

Documento di chiusura intervento assistenza

1.magazzino-esp-interventi; se non significativo:

2.TES-MAG

In tutti gli altri casi

1.TES-MAG

 

Applicare lo stesso ragionamento per qualunque documento dove il magazzino:

E' Il magazzino configurato

Ha come "Sede" il magazzino configurato

Se vuoto, inviare una Email informativa e skippare

DF_DTES_MAG_TRASF_HOST

" " (per ora)

DF_DTES_CAUSALE

EUTA-CB-CODICE-HOST, trovato leggendo il record COGTABEL della causale usando TES-CAUSALE

Se vuoto, inviare una Email informativa e skippare

DF_DTES_PAGAMENTO

Usando TES-RB e TES-PAG1, cercare il corrispondente codice di raccordo su COGGENER, vedi COGD12.

Se non trovato, inviare una Email informativa e skippare

DF_DTES_FL_FAT

EUTA-CB-CON-FAT (S/N)

DF_DTES_ORIG_CLASSE

"AC": Se il documento è un ddt collegato ad un contratto di assistenza

"AI":  Se il documento è un ddt collegato ad un intervento di assistenza

" ": In tutti gli altri casi

DF_DTES_ORIG_KEY

A seconda di DF_DTES_ORIG_CLASSE:

"AC": ID contratto di assistenza

"AI":  ID intervento di assistenza

" ": " "

DF_DTES_ANA_FAT_HOST

se TES-NONNO <> 0 (quindi per tutti i documenti cliente/fornitore), eseguire una ricerca su DFANAGR con una ricerca sulla chiave 3, impostando:

oDF_ANA_AREA_TIP = TES-TIPOCF

oDF_ANA_AREA_COD = TES-NONNO

 

Se non trovato inviare una Email informativa e skippare.

Altrimenti qui si imposta DF_ANA_KEY_HOST

DF_DTES_ANA_DST_HOST

Come sopra, usando TES-PADRE

DF_DTES_IND_HOST

se TES-DST-ID-IDX <> 0 eseguire una ricerca su DFINDIR con una ricerca sulla chiave 3, impostando:

oDF_IND_AREA_TIP = TES-TIPOCF

oDF_IND_AREA_COD = TES-NONNO o TES-PADRE se significativo

oDF_IND_AREA_PROG = TES-DST-ID-IDX

 

Se non trovato inviare una Email informativa e skippare.

Altrimenti qui si imposta DF_ind_KEY_HOST

DF_DTES_ALTRO_TRASF

" " (per ora)

DF_DTES_NOTE

TES-DESCR + TES-DESCR1

DF_DTES_DIVISA

TES-CURRENCY

DF_DTES_AGENTE_1

Esportare il codice di raccordo COGANAP2.AAP2-RACCORDO trovato su TES-AGENTE

DF_DTES_AGENTE_2

Esportare il codice di raccordo COGANAP2.AAP2-RACCORDO trovato su TES-AGE2

DF_DTES_VAL

" "

DF_DTES_AGG_AREA

1

 

D.2.2.1 Aggiornamento DFDOCDET

 

In caso di aggiornamento, cancellazione di tutti i record collegati al documento. Poi per ciascuna riga documento (COGMOMAG), inserire una nuova riga:

 

Nome campo

Note

DF_DDET_KEY_HOST

DF_DTES_KEY_HOST

DF_DDET_CLASSE

DF_DTES_CLASSE

DF_DDET_KEY_AREA

DF_DTES_KEY_AREA

DF_DDET_PROG_AREA

MAG-PROG

DF_DDET_SEGNO

MAG-ENTRUSC

DF_DDET_MPR_HOST

Codice merce avanzato della merce

Cercare su DFMERCIPREST se esiste su DF_MPR_KEY_HOST; se non esiste

Se non trovato inviare una Email informativa ma proseguire

DF_DDET_QTA

MAG-QTAMAGAZ

DF_DDET_PREZZO_LORDO

MAG-PRE-NO-SCO

DF_DDET_SCONTO_1

MAG-SCO1

DF_DDET_SCONTO_2

MAG-SCO2

DF_DDET_SCONTO_3

0

DF_DDET_PREZZO_NETTO

MAG-PREZZO

DF_DDET_IMPORTO

MAG-VALORE

DF_DDET_NOTE

Descrizioni aggiuntive trovate sulla riga

 

 

 

 

 

 

DF_DDET_PROVV_AGENTE_1

MOA2-PROV-AGE1

DF_DDET_PROVV_AGENTE_2

MOA2-PROV-AGE2

 

D.2.2.3 Aggiornamento flag esportazione

 

Aggiornare COGTESAP per il documento in elaborazione, impostando

 

Nome campo

Note

TSA-FL-ESPORTATO

"E"

 

E - Chiusura

 

E.1 Rilascio semaforo

 

Aggiornare i record semaforo relativi a DFDOCTES e DFDOCDET, impostando

 

Nome campo

Note

DF_SMF_USO_AREA

0

 

 

E.2 Chiusura tabelle

 

Chiudere le tabella DFDOCTES, DFDOCDET e DFSEMAFORO

 

E.3 Aggiornamento stato

 

Aggiornamento dello stato sul record specifico; in particolare:

 

Dato

Contenuto

DBFST-STATO

"A"

DBFST-ERRORI

Numero di errori rilevati

DBFST-MSG-ERRORE

Ultimo errore rilevato

DBFST-LOG-PROCEDURA

Codice procedura di gestione log

DBFST-UA-DATA

Data/ora dell'ultimo record cancellato trovato

Se non e' stata effettuata alcuna cancellazione, non aggiornare queste informazioni

DBFST-UA-ORA