Entry Points > Modulo Vendite > Script standard SUBSOHB 

SOHALLSEL: Aggiunta di controlli di autorizzazione di una riga d'ordine da alloc

Questo entry point permette di assumere il controllo alla fine dei controlli di autorizzazione di allocazione di una riga d'ordine.

Permette così di aggiungere controlli e test supplementari che permettono di rifiutare la riga d'ordine da allocare.

E' chiamato al momento dell'esecuzione del bottone 'Allocazione' dalla gestione degli ordini.

Contesto e modalità di funzionamento

Transazione

C'è una transazione in corso.

File traccia

Non c'è file traccia aperto.

Contesto di chiamata

Questo entry point è chiamato per ogni riga dell'ordine da allocare, dopo i controlli di autorizzazione di allocazione della riga.

Variabili e videate disponibili

La variabile WTRTALL contiene il tipo di elaborazione da effettuare:

1 = Allocazione

2 = Disallocazione

Anche le variabili locali seguenti sono in linea:

- WALLCTM Disallocazione degli articoli gestiti in ordine diretto ( 1 = no / 2 = si )

- SHTFLG Allocazioni delle sole rotture( 1 = no / 2 = si )

- ALLPAR Allocazioni parziali autorizzate ( 1 = no / 2 = si )

- IMPCLIImputazione delle allocazioni clienti ( 1 = no / 2 = si )

Le classi videate della testata ordini sono alimentate:

[M:SOH0], [M:SOH1], [M:SOH2] e [M:SOH3]

La classe videata della riga d'ordine da allocare è in linea:

[M:SOH4] E' indicizzata dalla variabile I che corrisponde quindi a nolign-1

Per rifiutare una riga d'ordine, basta posizionare la variabile OK a 1.

Se un messaggio deve accompagnare il rifiuto di una riga d'ordine, bisognerà indicarlo nella variabile WMESS1 sotto forma di una stringa di caratteri.

Tabelle aperte 

Nel riquadro sottostante, il flag contenuto significativo indica che il contenuto è allineato al contesto (il cliente corrente è caricato...). Normalmente, è il caso per il file che contiene la testata e non per quello che contiene le righe...

Tabella

Contenuto Significativo

Descrizione Tabella

 SORDER

No

Ordini testata

SORDERQ

No

Ordini riga quantità

SORDERP

No

Ordini riga prezzo

ITMMASTER

No

Articoli

ITMSALES 

No

Articolo vendita

MODQTEALL: Modifica della quantità da allocare di una riga d'ordine

Questo entry point riguarda l’allocazione di un ordine.

Permette di assumere il controllo dopo la determinazione della quantità da allocare di ogni riga d'ordine per intervenire su questa quantità.

E' chiamato al momento dell'esecuzione del bottone 'Allocazione' dalla gestione degli ordini.

Contesto e modalità di funzionamento

Transazione

C'è una transazione in corso (transazione di aggiornamento di un'allocazione, con aggiornamento della riga d'ordine, dell'incorso corrispondente e della testata d'ordine).

La variabile GOK è utilizzata e testata. E' uguale a 1. Può essere posizionata a 0 se si desidera abbandonare la transazione.

File traccia

C'è un file traccia aperto.

Per ogni riga d'ordine elaborata, fornisce la quantità allocata e/o la quantità rottura e, per ogni riga non elaborata, la ragione per la quale non è stato possibile realizzare l'allocazione.

Contesto di chiamata

Questo entry point viene chiamato per ogni riga dell'ordine da allocare, dopo la determinazione della quantità da allocare e, di conseguenza, prima dei diversi aggiornamenti (allocazione, riga ordine, in corso, testata ordine).

Variabili e videate disponibili

La variabile WTRTALL contiene il tipo di elaborazione da effettuare. Ha come valore 1 = Allocazione.

Anche le seguenti variabili locali sono in linea:

- WALLCTM Disallocazione degli articoli gestiti in ordine diretto ( 1 = no / 2 = si )

- WSHTFLG Allocazioni delle sole rotture( 1 = no / 2 = si )

- WGENSHT Generazione delle rotture ( 1 = no / 2 = si )

- WALLPAR Allocazioni parziali autorizzate ( 1 = no / 2 = si )

- WIMPCLIImputazione delle allocazioni clienti ( 1 = no / 2 = si )

Le classi videate della testata ordine sono alimentate:

[M:SOH0], [M:SOH1], [M:SOH2]e [M:SOH3]

La classe videata della riga d'ordine da allocare è in linea:

[M:SOH4]      E' indicizzata dalla variabile I che corrisponde quindi a nolign-1

La variabile locale contenente la quantità da allocare è: WALLSTU. E' su questa variabile locale che occorre intervenire.

Appena prima l'entry point WALLSTU viene alimentata nel seguente modo:

WALLSTU = [M:SOH4]QTYSTU (I)– [M:SOH4]TALLQTYSTU(I) - WSHTSTU

La variabile WSHTSTU contiene la quantità in rottura sulla riga d'ordine.

La variabile [M :SOH4]TALLQTYSTU contiene la quantità già allocata sulla riga d'ordine, più le quantità in corso di consegna e consegnate.

Tabelle aperte 

Nel riquadro sottostante, il flag contenuto significativo indica che il contenuto è allineato al contesto (il cliente corrente è caricato...).

Tabella

Contenuto Significativo

Descrizione Tabella

 SORDER

No

Ordini testata

SORDERQ

No

Ordini riga quantità

SORDERP

No

Ordini riga prezzo

ITMMASTER

No

Articoli

ITMSALES 

No

Articolo vendita

MAJCDEALL: Aggiornamenti complementari di un ordine da allocare

Questo entry point permette di assumere il controllo dopo l'allocazione/disallocazione di un ordine per effetuare degli aggiornamenti complementari su questo ordine.

Viene chiamato nella gestione degli ordini di vendita quando si utilizza il bottone « allocazione ».

Contesto e modalità di funzionamento

Transazione

C'è una transazione in corso (transazione di allocazione/disallocazione dell'ordine, con aggiornamento di ogni riga, delle allocazioni e dell'incorso corrispondente, poi aggiornamento della testata d'ordine).

La variabile GOK è utilizzata e testata. E' uguale a 1. Può essere posizionata a 0 se si desidera abbandonare la transazione.

File traccia

C'è un file traccia aperto.

Per ogni riga d'ordine elaborata, dà la quantità allocata/disallocata e/o la quantità rottura e, per ogni riga non elaborata, la ragione per la quale non è stato possibile realizzare l'allocazione.

Contesto di chiamata

Questo entry point viene chiamato nella gestione degli ordini di vendita quando si utilizza il bottone « allocazione ». Viene anche chiamato in fase di un'allocazione o di una disallocazione dell'ordine.

E' chiamato alla fine della transazione di aggiornamento:

  • Tutte le righe di ordini sono state elaborate: Le allocazioni sono state effettuate, le righe sono state aggiornate così come l’in-corso corrispondente
  • Anche la testata d'ordine è stata aggiornata, ma solo se necessario (è stato effettuato un readlock seguito da un update).

L'entry point si trova subito dopo l'aggiornamento dell'ordine.

Variabili e videate disponibili

Le videate dell’oggetto ordine sono caricate, sono state rialimentate in funzione delle allocazioni effettuate.

Se l'entry point viene utilizzato per effettuare degli aggiornamenti complementari della testata dell'ordine, è necessario rileggerlo con lock. Se viene utilizzato per effettuare degli aggiornamenti complementari delle righe dell'ordine, è altresì necessario rifare un ciclo di lettura delle righe.

 Le seguenti variabili locali sono in linea:

  • WTRTALL     Tipo di elaborazione da effettuare (1 =  Allocazione / 2 = Disallocazione)
  • WALLCTM     Disallocazione degli articoli gestiti in ordine diretto ( 1 = no / 2 = sì )
  • WRAZCTM     Reset del n°ordine diretto ( 1 = no / 2 = si )
  • WSHTFLG    Allocazione delle sole rotture  ( 1 = no / 2 = si )
  • WGENSHT   Generazione delle rotture ( 1 = no / 2 = si )
  • WALLPAR    Allocazioni parziali autorizzate  ( 1 = no / 2 = si )
  • WIMPCLI      Imputazione delle allocazioni clienti  ( 1 = no / 2 = si )
Tabelle aperte 

Nel riquadro sottostante, il flag contenuto significativo indica che il contenuto è allineato al contesto (il cliente corrente è caricato...).

Tabella

Contenuto Significativo

Descrizione Tabella

 SORDER

No

Ordini testata

SORDERQ

No

Ordini riga quantità

SORDERP

No

Ordini riga prezzo

ITMMASTER

No

Articoli

ITMSALES 

No

Articolo vendita

 

RECALCLIG: Ripercussione modifiche campi testata ordine su righe dettagli

Questo entry point viene chiamato dalla gestione degli ordini.

Permette di assumere il controllo e di intervenire durante la modifica di alcuni campi della testata ordine quando l’utente ha richiesto di riflettere tali modifiche sulle righe dettagli.  Permette inoltre di riflettere la modifica di campi specifici.

Contesto e modalità di funzionamento

Transazione

Non vi sono transazioni in corso.

File traccia

Non c'è file traccia aperto.

Contesto di chiamata

Questo entry point viene chiamato:

.In fase di modifica dei seguenti campi della testata ordine se l'utente ha richiesto una ripercussione sulle righe dettaglio:

. Indirizzo consegna

.Agenti

.Sito di spedizione

.Priorità di consegna

.Data di consegna richiesta

.Tempo di consegna

.Data spedizione

.Modalità di consegna

.Trasportatore.

.In fase di modifica dei seguenti campi della testata ordine se l'utente ha richiesto un ricalcolo del listino di tutte le righe:

. Data ordine

. Cliente ordine (solo in duplicazione di ordine)

. Valuta (solo in duplicazione di ordine)

. Il tipo di prezzo.

.In fase di modifica dei seguenti campi della testata ordine:

. Regime di imposta : Viene effettuato automaticamente un ricalcolo dei prezzi, del margine, dei totali delle righe.

. Valuta : Se l'utente non ha richiesto un ricalcolo del listino, si effettua automaticamente una conversione degli importi delle righe ed un ricalcolo dei totali.

. Tipo di prezzo : Se l'utente non ha richiesto un ricalcolo del listino, si effettua automaticamente un ribaltamento dei prezzi imponibile e con IVA.

. Tipo di allocazione : Si effettua automaticamente una ripercussione sulle righe dettaglio.

L'entry point viene chiamato nelle differenti azioni di post modifica di questi campi (Es.: AM_CUR, AM_STOFCY ecc…). Si posizione nel ciclo di modifica delle righe, alla fine della modifica di ogni riga, appena prima di passare alla riga successiva. La riga in corso è stata quindi modificata con tutti gli aggiornamenti corrispondenti.

Variabili e videate disponibili

Le differenti videate della gestione degli ordini sono in linea e caricate con l'ordine in corso di modifica.

La videata delle righe d'ordine [M:SOH4] è caricata. E' indicizzata dalla variabile NLIG che corresponde quindi a nolign-1. NLIG corrisponde all’indice della riga in corso di modifica.

- WZONCOUcontiene il nome del campo modificato della testata. VALEUR contiene il nuovo valore del campo.

- GTARFLG vale 1 se si effettua un ricalcolo listino.

Per il campo CUR, WANCCUR contiene il valore del campo prima della modifica. Per il campo PRITYP, WANCPRITYP contiene il valore del campo prima della modifica. Per il campo VACBPR, WANCVACBPR contiene il valore del campo prima della modifica.

Se ci si trova nel caso di ripercussioni delle modifiche sul dettaglio:

- FFLGMOD vale 1 se l’utente ha risposto « Si ». FFLGMOD vale 3 se l’utente ha risposto « Valore » (Ripercussione se il valore del campo sulla riga è uguale a quello della testata prima della modifica).

- NOMEcontiene il nome del campo della testata (Es.: REP(0) o BPAADD).

- NOMD è una variabile interpretata che contiene il nome del campo della riga (Es: REP1 o DBPAADD).

- E' VALEUR che verrà ribaltata in [M]NOMD.

Se si utilizza l'entry point per riflettere la modifica di campi specifici, occorre innanzitutto aggiungere l'azione TRTMAJDET in AM_ del campo di testata. In seguito, due casi possibili:

- Il nome del campo della riga dettaglio = D+nome del campo della testata (Es: BPAADD e DBPAADD). Non vi è nulla di particolare da fare nell'EP. E' sufficiente il programma standard.

- Il nome del campo della riga dettaglio è diverso dal nome del campo della testata. E' sufficiente, nell'EP, caricare VALEUR nel campo della riga dettaglio:

[M :SOH4]CHAMPSPE (NLIG) = VALEUR.

Tabelle aperte 

Le tabelle aperte sono quelle del'oggetto ordine.

Tabella

Contenuto Significativo

Descrizione Tabella

 SORDER

No

Ordini testata

SORDERQ

No

Ordini riga quantità

SORDERP

No

Ordini riga prezzo

ITMMASTER

Articoli

ITMSALES 

Articolo vendita

MAJSOQALL: Aggiornamenti complementari di una riga d'ordine da allocare

Questo entry point permette di assumere il controllo dopo l'allocazione/disallocazione di una riga d'ordine per effettuare degli aggiornamenti complementari.

Viene chiamato nella gestione degli ordini di vendita quando si utilizza il bottone « allocazione ».

Contesto e modalità di funzionamento

Transazione

C'è una transazione in corso (transazione di allocazione/disallocazione dell'ordine, con aggiornamento di ogni riga, delle allocazioni e dell'incorso corrispondente, poi aggiornamento della testata d'ordine).

La variabile GOK è utilizzata e testata. E' uguale a 1. Può essere posizionata a 0 se si desidera abbandonare la transazione.

File traccia

C'è un file traccia aperto.

Per ogni riga d'ordine elaborata, dà la quantità allocata/disallocata e/o la quantità rottura e, per ogni riga non elaborata, la ragione per la quale non è stato possibile realizzare l'allocazione.

Contesto di chiamata

Questo entry point viene chiamato nella gestione degli ordini di vendita quando si utilizza il bottone « allocazione ». Viene inoltre chiamato in fase di un'allocazione o di una disallocazione dell'ordine.

Viene chiamato nel ciclo di elaborazione delle righe d'ordine, subito dopo l'aggiornamento della riga d'ordine (record [F:SOQ] che è quindi in linea), prima dell'aggiornamento dell'incorso e della rialimentazione dei nuovi valori della riga d'ordine nella videata [M:SOH4].  L'allocazione della riga d'ordine è stata effettuata, i file sono stati aggiornati. 

Variabili e videate disponibili

Le variabili locali seguenti sono in linea:

-         WTRTALL     Tipo di elaborazione da effettuare (1 =  Allocazione / 2 = Disallocazione)

-         WALLCTM     Disallocazione degli articoli gestiti in ordine diretto  ( 1 = no / 2 = si )

-         WRAZCTM     Reset del n°ordine diretto ( 1 = no / 2 = si )

-         WSHTFLG    Allocazione delle sole rotture  ( 1 = no / 2 = si )

-         WGENSHT   Generazione delle rotture ( 1 = no / 2 = si )

-         WALLPAR    Allocazioni parziali autorizzate  ( 1 = no / 2 = si )

-         WIMPCLI      Imputazione delle allocazioni clienti  ( 1 = no / 2 = si )

Le classi videate della testata ordini sono alimentate:

[M:SOH0], [M:SOH1], [M:SOH2]e [M:SOH3]

La classe videata della riga d'ordine allocata è in linea:

[M:SOH4]      E' indicizzata dalla variabile I che corrisponde a nolign-1

Le variabili locali contenenti le quantità allocate sono WALL(Qtà allocata in UV), WALLSTU(Qtà allocata in UM), WSHT(Qtà rottura in UV), WSHTSTU(Qtà rottura in UM).  

Tabelle aperte 

Nel riquadro sottostante, il flag contenuto significativo indica che il contenuto è allineato al contesto (il cliente corrente è caricato...).

Le tabelle aperte sono quelle aperte dalll'oggetto SOH.

Tabella

Contenuto Significativo

Descrizione Tabella

 SORDER

No

Ordini testata

SORDERQ

Ordini riga quantità

SORDERP

Ordini riga prezzo

ITMMASTER

Articoli

ITMSALES 

No

Articolo vendita

 

NOUPDLIN: Ripercussione modifiche campi testata ordine su righe dettagli

Questo entry point viene chiamato dalla gestione degli ordini.

Permette di assumere il controllo e di intervenire durante la modifica di alcuni campi della testata ordine quando l’utente ha richiesto di riflettere tali modifiche sulle righe dettagli.  Permette di inibire la ripercussione della modifica dei valori della testata sulle righe

Contesto e modalità di funzionamento

Transazione

Non vi sono transazioni in corso.

File traccia

Non c'è file traccia aperto.

Contesto di chiamata

Questo entry point è richiamato:

.In fase di modifica dei seguenti campi della testata ordine se l'utente ha richiesto una ripercussione sulle righe dettaglio :

.             Indirizzo consegna

.            Agenti

.            Sito di spedizione

.            Priorità di consegna

.            Data di consegna richiesta

.            Tempo di consegna

.            Data di spedizione

.            Modalità di consegna

.            Trasportatore.

.In fase di modifica dei seguenti campi della testata ordine se l'utente ha richiesto un ricalcolo del listino di tutte le righe:

.             Data ordine

.             Cliente ordine (questo solo in duplicazione di ordine)

.             Valuta (questo solo in duplicazione di ordine)

.             Il tipo di prezzo.

.In fase di modifica dei seguenti campi della testata ordine:

.             Regime di imposta          :           Viene effettuato automaticamente un ricalcolo dei prezzi, del margine, dei totali delle righe.

.             Valuta                        :           Se l'utente non ha richiesto un ricalcolo del listino, si effettua automaticamente una conversione degli importi delle righe ed un ricalcolo dei totali.

.             Tipo di prezzo                :           Se l'utente non ha richiesto un ricalcolo del listino, si effettua automaticamente un ribaltamento dei prezzi imponibile e con IVA.

.             Tipo di allocazione        :           Si effettua automaticamente una ripercussione sulle righe dettaglio.

L'entry point viene chiamato nelle differenti azioni di post modifica di questi campi (Es.: AM_CUR, AM_STOFCY ecc…). Si trova nel ciclo di modifica delle righe, prima dell'aggiornamento delle righe con il nuovo valore della testata.

Variabili e videate disponibili

Le differenti videate della gestione degli ordini sono in linea e caricate con l'ordine in corso di modifica.

La videata delle righe d'ordine [M:SOH4] è caricata. E' indicizzata dalla variabile NLIG che corresponde quindi a nolign-1. NLIG corrisponde all’indice della riga in corso di modifica.

-                         WZONCOU contiene il nome del campo modificato della testata. VALEUR contiene il nuovo valore del campo.

-                         GTARFLG vale 1 se si effettua un ricalcolo listino.

Per il campo CUR,  WANCCUR contiene il valore del campo prima della modifica. Per il campo PRITYP, WANCPRITYP contiene il valore del campo prima della modifica. Per il campo VACBPR,  WANCVACBPR contiene il valore del campo prima della modifica.

Se ci si trova nel caso di ripercussioni delle modifiche sul dettaglio:

-                         FFLGMOD vale 1 se l’utente ha risposto « Sì ». FFLGMOD vale 3 se l’utente ha risposto « Valore » (Ripercussione se il valore del campo sulla riga è uguale a quello della testata prima della modifica).

- NOMEcontiene il nome del campo della testata (Es.: REP(0) o BPAADD).

-                         NOMD è una variabile interpretata che contiene il nome del campo della riga (Es: REP1 o DBPAADD).

-                         E' VALEUR che verrà ribaltata in [M]NOMD.

-                         WGPE è la variabile che permette di inibire il riporto del nuovo valore di testata sulle righe, posizionandola a 1. Attenzione, per mantenere l’integrità dei dati, non è possibile intervenire sul riporto di STOFCY e BPAADD quando il parametro generale LINBPD vale no.

Tabelle aperte

Le tabelle aperte sono quelle del'oggetto ordine.

Tabella

Contenuto Significativo

Descrizione Tabella

 SORDER

No

Ordini testata

SORDERQ

No

Ordini riga quantità

SORDERP

No

Ordini riga prezzo

ITMMASTER

Articoli

ITMSALES 

Articolo vendita

 …