Sei sulla pagina 1di 24

Oggetto Progetto / Società

Pricing SD Sap Itali a Consulting


Documento Pagina
Corso SD06 - Pricing 55388950.doc 1 / 24
Autore Status Data
Silvia Torresan 30/03/11

Corso SD06
Pricing

Autore iniziale documento Ruolo Data


Silvia Torresan Consulente SD

Autore modifiche documento Ruolo Data

Approvazione Ruolo Data

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 2 / 24
Autore Status Data
Silvia Torresan 30/03/11

INDICE

PRICING ..............................................................................................................................................................................3
TIPI CONDIZIONI..........................................................................................................................................................................4
SEQUENZA D’ACCESSO.................................................................................................................................................................9
TABELLE E RECORD CONDIZIONI....................................................................................................................................................10
SCHEMA PREZZI........................................................................................................................................................................12

CONDIZIONI E FORMULE.................................................................................................................................................13
PRESUPPOSTO.........................................................................................................................................................................13
FORMULA DI CALCOLO................................................................................................................................................................14
FORMULA BASE.........................................................................................................................................................................14
RIDETERMINAZIONE PREZZO MV45AFZB. ....................................................................................................................................14

PERFORMANCE................................................................................................................................................................15

NOTE OSS..........................................................................................................................................................................15

CASO PROPOSTO:...........................................................................................................................................................16

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 3 / 24
Autore Status Data
Silvia Torresan 30/03/11

PRICING

La determinazione del prezzo ha l’obiettivo di calcolare, per un’operazione commerciale, prezzi e


maggiorazioni/riduzioni e proporre, in automatico, il prezzo di riferimento, inoltre consentire
interventi anche manuali.
La tecnica delle condizioni si riferisce al metodo attraverso cui il sistema determina i prezzi dalle
informazioni memorizzate nel record condizioni. In SD i vari elementi utilizzati nella tecnica delle
condizioni sono settati e controllati in customizing.
Durante il processo di vendita e distribuzione il sistema usa la tecnica delle condizioni per
determinare una serie di importanti informazioni riguardanti il pricing . Il sistema determina
automaticamente quale prezzo il cliente dovrebbe pagare e quali sconti e maggiorazioni sono
rilevanti in base alle condizioni applicate.
1. Il sistema determina la procedura di pricing da applicare in base alla struttura organizzativa
dell’ordine, alle informazioni definite nel tipo documento di vendita e nell’anagrafica
cliente.
2. La procedura di pricing definisce i tipi condizioni validi e la sequenza con cui essi appaiono
nei documenti di vendita.
3. Ciascun tipo condizione dello schema prezzi può avere una sequenza d’accesso assegnata.
Il sistema esegue gli accessi specifici finchè trova un valido record condizioni. Ogni accesso
specifica una particolare tabella condizioni
4. Il sistema determina il prezzo tramite l’informazione registrata nel record condizioni.
Il sistema ripete questo processo per ciascun tipo di condizione dello schema prezzi determinando
un prezzo finale.
Gli elementi fondamentali su cui si basa il pricing sono:
• Tipi condizioni
• Sequenza d’accesso
• Tabelle condizioni
• Record condizioni
• Schema prezzo

La sequenza delle attività da svolgere in customizing per implementare il pricing è la seguente:


1. Definire i tipi condizione per ciascun elemento di prezzo (listini, sconti e maggiorazioni).
2. Definire la sequenza d’accesso che rende in grado il sistema di trovare i record condizioni
validi.
3. Raggruppare i tipi condizione e stabilire la loro sequenza nello schema prezzi.

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 4 / 24
Autore Status Data
Silvia Torresan 30/03/11

Tipi condizioni
Per tipo condizione SAP intende listini, sconti e maggiorazioni. Vengono definiti differenti tipi
condizione per ciascun tipo di prezzo, sconto o maggiorazione presente nelle transazioni
commerciali.
Le condizioni possono essere fissate a qualsiasi livello, i livelli che nella pratica sono applicati più
frequentemente e sulla base dei quali vengono stipulati accordi sui prezzi, sono già predefiniti nella
versione standard, altri livelli richiesti possono essere aggiunti in modo semplice.
 Vendite --> Funzioni di base --> Determinazione del prezzo --> Controllo della
determinazione del prezzo --> Definire tipi di condizione
La definizione di un nuovo tipo condizione presuppone:
- la definizione di una sequenza d’accesso nel caso in cui la condizione sia da ricercarsi nei
record condizioni.
- la dichiarazione di una serie di parametri che vediamo di seguito in dettaglio:

Dati di controllo:
Spesso i dati presenti in questa parte non vengono modificati in quanto viene ricopiato il tipo
condizione standard che meglio si adatta alle nostre esigenze.
Nella classe condizione viene definita la tipologia del tipo condizione, la regola di calcolo definisce
il modo in cui il sistema calcola la condizione, la categoria viene utilizzata per classificare delle
condizioni in base a categorie predefinite (può essere utile nei casi di ricalcolo prezzo solo per
alcune condizioni), la regola di arrotondamento definisce il tipo di arrotondamento da effettuare
sulla condizione, la condizione di struttura controlla se il tipo di condizione deve essere una
condizione di copia o una condizione accumulata, questo controllo è opportuno solo quando si
utilizzano distinte base o materiali configurabili.

Possibilità di modifica:
In questa parte oltre a definire se la condizione è una condizione di testata o di posizione, si
definisce la possibilità di variazione o meno di una condizione, ad esempio si può definire che un
tipo condizione anche se determinato automaticamente possa essere variato manualmente.
Si può definire, nel caso di possibilità di modifica, se la condizione nel documento si può:
cancellare, variare l’importo o la percentuale della condizione, il valore (ad esempio nel caso di un
listino l’importo per la qtà), i fattori di conversione, la regola di calcolo.

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 5 / 24
Autore Status Data
Silvia Torresan 30/03/11

Nel caso in cui la condizione sia modificabile a volte occorre definire un limite massimo e/o
minimo per controllare la variazione da parte dell’utente, il limite viene definito in: Controllo della
determinazione del prezzo --> Definire tipi di condizione --> Definire limiti max/min. per
condizioni.

Condizione di riferimento:
A volte risulta necessario usare differenti tipi di condizione per la stessa condizione.
Il tipo di condizione può differire nella sequenza d’accesso, nella descrizione, nel livello dello
schema prezzi, ma il record condizione sarà inserito una sola volta. Un caso presente in SAP
standard è il tipo condizione MW15 che ha come condizione di riferimento MWST.
La condizione di riferimento può essere utilizzata anche in applicazioni differenti, ad esempio: il
prezzo d’acquisto di un materiale è la base per il prezzo di vendita, in questo caso è inutile che
obblighiamo gli utenti a inserire due volte gli stessi listini, nel customizing oltre alla condizione di
riferimento deve essere specificata anche l’applicazione di riferimento (in questo ultimo caso ‘M’
acquisti).

L’indicativo “Agg.cond.” viene utilizzato quando si vogliono tracciare gli aggiornamenti di un


determinato tipo di condizione. Permette all’inserimento del record condizione di specificare un
valore o una quantità massima o un numero massimo di ordini per quella determinata condizione
(dati supplementari). I valori cumulati possono essere visualizzati nel record condizioni. (vedi come
esempio tipo condizione K005).

Condizione di gruppo:
Flaggando la condizione come una cond. di gruppo il sistema determina la base dello
scaglionamento, (valori o quantità), prendendo in esame le posizioni che appartengono ad un

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 6 / 24
Autore Status Data
Silvia Torresan 30/03/11

raggruppamento.
Il confronto differenze di arrotondamento controlla se è stata eseguita la compensazione delle
differenze di arrotondamento per le condizioni di gruppo con la routine della chiave di gruppo, se il
codice è impostato, il sistema confronta il valore della condizione a livello di testata con il totale
dei valori della condizione a livello di posizione. La differenza viene aggiunta alla posizione
maggiore. La routine cnd.gruppo calcola la base dello scaglionamento per un dato valore, nel caso
intervenga nel calcolo del prezzo una condizione di gruppo.

Scaglionamento:
La grandezza di riferimento definisce il modo in cui il sistema interpreta lo scaglionamento, si può
applicare ad esempio ad una quantità, un peso o ad un volume. Può essere utilizzata una formula
condizione per base scaglionamento per quei tipi di calcolo non previsti nello standard. Può essere
controllato se gli importi scalari devono essere ascendenti o discendenti. Il tipo scaglionamento
controlla la modalità della validità di uno scaglionamento o di una percentuale, a partire da una
determinata quantità o da un valore oppure fino ad una determinata quantità o fino ad un valore

Opportunità standard nei tipi condizione


Vengono di seguito descritte solo alcune tra le opportunità già presenti nello standard SAP, per una
documentazione completa si rimanda alla documentazione SAP in inglese presente in Intellectual
Capital.

Spese di trasporto
Esistono delle condizioni standard per la gestione delle spese di trasporto basate sugli Incoterms
(sulla prima parte ad es. FOB oppure la combinazione della prima e della seconda ad es. FOB e
Boston), oppure il tipo condizione KF00 applicato al prodotto, oppure HD00 condizione manuale
applicata all’intero documento.

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 7 / 24
Autore Status Data
Silvia Torresan 30/03/11

Imposte
Sap prevede il calcolo dell’ IVA con la condizione MWST e la sequenza d’accesso MWST dove
vengono presi in considerazione i seguenti fattori:
• Se il business è nazionale o estero
• La classificazione fiscale del cliente
• La classificazione fiscale del materiale
La sequenza d’accesso standard MWST prevede le seguenti tabelle
78 Paese partenza/Paese dest.
2 Imposte interne
11 Imposte/Export
questa sequenza prevede inoltre dei presupposti per evitare l’accesso alle condizioni estere, (tab.
078 e tab.002), se si tratta di commercio nazionale e viceversa alle condizioni nazionali (tab.011) se
si tratta di commercio estero.

Condizioni di cumulo
Una condizione di cumulo standard è KUMU, è una condizione statistica con una regola di calcolo
di formula che permette di visualizzare a livello di riga il totale netto di una riga e di tutte le sue
posizioni dipendenti. Le condizioni cumulative non possono essere usate come condizioni di testata
o essere processate manualmente.

Gruppi di esclusione
Si possono inserire determinati tipi di condizione in gruppi di esclusione, questo permette al
sistema, durante la determinazione del prezzo, di rendere valida solo la condizione più favorevole,
oppure meno favorevole oppure tra due gruppi di esclusione il gruppo più o meno conveniente.
In customizing bisogna creare il gruppo, definire i tipi condizione appartenenti al gruppo ed
assegnare il gruppo o i gruppi allo schema prezzi assegnando la regola.

Valore manuale ordine (HM00)


Questo tipo condizioni permette di inserire il valore totale dell’ordine, sulle righe viene ripartito il
valore in proporzione al valore di listino automatico. Le imposte vengono rideterminate per
ciascuna riga.

Valore minimo ordine (AMIW - AMIZ)


Il tipo condizione AMIW è definita come condizione di gruppo, è una condizione statistica e deve
essere inserito il record condizioni relativo con il valore minimo dell’ordine che si vuole
controllare. Se durante la determinazione del prezzo, il valore dell’ordine risulta essere inferiore al
valore definito nella condizione AMIW, il sistema assegna in automatico il valore minimo definito
e riaggiorna le righe; inoltre assegna nella condizione AMIZ la differenza tra il valore calcolato e il

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 8 / 24
Autore Status Data
Silvia Torresan 30/03/11

valore minimo.
Nello schema prezzi AMIZ prevede la formula di calcolo 13.

Condizione di arrotondamento (DIFF)


Nella tabella 001R si può definire per ciascuna società e divisa un’unità di arrotondamento. Se il
valore finale dell’ordine differisce dall’unità di arrotondamento il sistema arrotonda l’importo in
eccesso o difetto e la differenza la assegna alla condizione DIFF (definita condizione di gruppo).

Dati rilevanti per il pricing:


Anagrafica materiale
Si trovano nello screen vendite 2
• Classificazione fiscale
• Materiale di riferimento: si può specificare un altro materiale come riferimento per le
informazioni sul prezzo.
• Gruppo materiale: definisce un gruppo per cui si vogliono applicare stesse condizioni. (ad
es. sconti diversificati per gruppi).
• Codice scontabile: viene specificato se il materiale è scontabile o meno.
Anagrafica cliente
La maggior parte dei campi rilevanti per il pricing si trovano nello screen “vendite”.
• Schema prezzi
• Tipo listino: permette di applicare un prezzo particolare per gruppi di clienti.
• Gruppo prezzi: permette di applicare uno sconto particolare per gruppi di clienti
• Classificazione fiscale

La definizione di nuovi gruppi materiali, tipi listino, gruppi prezzi viene fatta in customizing in:
 Vendite --> Funzioni di base --> Determinazione del prezzo --> Aggiornare campi dati
anagrafici rilevanti per il prezzo

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 9 / 24
Autore Status Data
Silvia Torresan 30/03/11

Sequenza d’accesso

Una sequenza d’accesso è una strategia di ricerca che il sistema usa per trovare i dati validi di un
particolare tipo condizione. Essa determina la sequenza con la quale il sistema ricerca i dati. La
sequenza d’accesso consiste di uno o più accessi e stabilisce quali record condizioni hanno priorità
sugli altri. Il sistema ricerca con l ’ordine assegnato fino a trovare un record condizioni valido. La
sequenza d’accesso deve essere specificata nei tipi condizioni per cui vengono creati record
condizioni. Ad esempio un tipo condizione “sconto di testata da inserire manualmente nell’ordine”,
per cui non vengono creati record condizioni, non avrà la sequenza d’accesso specificata.
Esempio di sequenza d’accesso:
Un ufficio vendite può offrire ai clienti differenti tipi di prezzo, creando ad esempio a sistema i
seguenti record condizioni:
• Un prezzo base per materiale
• Uno speciale prezzo per cliente dello stesso materiale
• Un listino prezzi per i maggiori clienti
La sequenza d’accesso sarà definita come mostra la figura:

1. Cliente / materiale
Specific

2. Tipo listino / materiale

3. Materiale General

Lo standard prevede sequenze d’accesse predefinite per ciascun tipo condizione standard. I nomi
delle sequenze d’accesso spesso corrispondono ai tipi condizioni per cui vengono create.
Per creare e manutenere le sequenze d’accesso:
 Vendite --> Funzioni di base --> Determinazione del prezzo --> Controllo della
determinazione del prezzo --> Definire sequenze d’accesso

Dopo aver creato la sequenza d’accesso, valutare la possibilità di definire il “prestep”, che permette
di migliorare la performance del sistema eseguendo una ricerca dei record condizioni solo nei dati
testata documento, se la ricerca non ha esito positivo non verrà più eseguita la ricerca delle singole
posizioni.
Nel caso, ad esempio di sconto per cliente e materiale, se lo sconto viene applicato solo ad una

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 10 / 24
Autore Status Data
Silvia Torresan 30/03/11

minima parte dei clienti della società conviene fare un prestep per evitare gli accessi su tutte le
posizioni dei documenti anche per clienti che non hanno diritto allo sconto.
Lo step preliminare è opportuno, logicamente, solo per accessi con dati di testata e posizione.

Tabelle e record condizioni

Una tabella condizione definisce la combinazione di campi (chiavi) che identificano un singolo
record condizioni. Un record condizioni è “come” il sistema memorizza i dati della specifica
condizione. Ad esempio, quando si inserisce il prezzo di un prodotto o lo sconto per un cliente, si
creano record condizioni. Un accordo di prezzo si può limitare in un certo periodo di tempo
specificandone il periodo di validità, inoltre la validità di un prezzo definita per un periodo futuro
permette, una revisione dei prezzi mantenendo contemporaneamente il listino corrente ed il listino
futuro. I prezzi, le maggiorazioni e gli sconti possono essere riferiti a differenti livelli di
scaglionamento in quantità e valore e possono inoltre avere tolleranze (un limite inferiore ed uno
superiore) che permettono di modificare manualmente il prezzo acquisito automaticamente, solo
nell’ambito dei livelli di tolleranza indicati.

Esempio:
Un ufficio vendite crea record condizioni per prezzi specifici per clienti. Il sistema standard R/3
prevede la tabella condizioni 005 per questo scopo. La chiave della tabella 005 include i campi
seguenti:
• Organizzazione commerciale
• Canale distributivo
• Cliente
• Materiale
I primi due campi identificano i dati organizzativi e gli altri la relazione tra cliente e specifico
materiale.
Il sistema standard prevede tabelle condizioni predefinite, se per esigenze specifiche si ha la
necessità di crearne di nuove, il percorso in Customizing è il seguente:
 Vendite --> Funzioni di base --> Determinazione del prezzo --> Controllo della
determinazione del prezzo --> Definire tabelle condizioni (creare, modificare, visualizzare)
Per creare nuove tabelle condizioni conviene copiare una tabella condizioni simile, inserire il nome
della tabella che si intende creare scegliendo un numero compreso tra 501 e 999.
Deve essere quindi specificato se si intende creare la tabella con o senza periodo di validità, inserire
una definizione per la tabella condizioni e quindi selezionare dalla lista dei campi ammessi
contenuti nel catalogo campi i campi richiesti per la tabella.

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 11 / 24
Autore Status Data
Silvia Torresan 30/03/11

Nel caso in cui un campo della tabella che si vuole creare non esista nel catalogo campi si procede
nel modo seguente:
- Definizione e attivazione del campo nella struttura di comunicazione del pricing, se si tratta
di un campo di testata deve essere inserito nella include KOMKAZ, altrimenti nella
KOMPAZ.
- Valorizzare il nuovo campo tramite user exit, ad esempio la routine per l'alimentazione dei
nuovi campi nell'elaborazione dell'ordine si trovano nell'elemento MV45AFZZ nella FORM
USEREXIT_PRICING_PREPARE_..... TKOMK o TKOMP a seconda che il campo sia di
testata o di riga.
Per un dettaglio maggiore riguardo all’argomento sopra citato si veda la documentazione presente
in: vendite --> customizing del sistema --> registrazione nuovi campi (con tecnica condizioni).

In una tabella condizioni già esistente si possono fare cambiamenti limitati, ossia si può modificare
la descrizione oppure il formato dello screen per l’inserimento dei record condizione.
Lo screen consiste infatti di dati di testata e dati di riga. I dati di testata rappresentano i campi
generali per tutti i dati di riga, si può decidere quali campi appaiono a livello di testata o riga:
Nell’esempio per la tabella 005 potrebbero essere definiti come dati di testata l’organizzazione e il
canale e come dati di riga il cliente e il materiale oppure avere come dato di riga il solo materiale.
Per cambiare il formato bisogna scegliere “vista tecnica” di manutenzione o creazione tabella.

Dopo aver modificato la tabella, come in fase di creazione, questa deve essere “generata”.
L’ordine dei campi in una tabella condizioni influenza le “performance“ del sistema durante il
pricing.
Quando si selezionano campi relativi alla struttura organizzativa bisogna ordinarli dal generale allo
specifico, ponendo ad esempio prima l’ organizzazione e quindi il canale, dopo i campi
organizzativi porre i documenti di testata prima di quelli di livello riga (per esempio il cliente viene
prima del materiale).

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 12 / 24
Autore Status Data
Silvia Torresan 30/03/11

Schema prezzi
Lo schema prezzi può essere definito per area vendita, gruppi di cliente, e per tipi documento.
Contiene tutti i tipi condizione previsti neIla determinazione del prezzo di un documento, prevede
in quale sequenza il sistema debba accedere ai tipi condizione, quali tipi condizione debbano essere
obbligatori o manuali, quali sub-totali debbano essere memorizzati nelle righe del documento.
Possono essere definiti nello schema prezzi una serie di totali parziali tra il valore di lordo e il
valore netto.
Nello schema prezzi si possono inoltre definire delle condizioni statistiche che non hanno alcun
effetto sul valore del documento, solitamente vengono poste in coda allo schema.
Il percorso in Customizing è il seguente:
Vendite --> Funzioni di base --> Determinazione del prezzo --> Controllo della
determinazione prezzo --> Definire e attribuire schemi di determinazione del prezzo

Dettaglio dati presenti nello schema prezzi:


Livelli
DA: Livello della condizione il cui valore costituisce la base delle maggiorazioni percentuali
Indicando anche un livello massimo di riferimento vengono sommati i valori delle condizioni da...
a.... e i valori di tutte le condizioni contenute in questo intervallo. In questo caso è la somma che
costituisce la base degli sconti percentuali.
A:Livello della condizione fino al quale i valori delle condizioni dei livelli precedenti vengono
addizionati. La somma costituisce la base per gli sconti percentuali. Con l'indicazione di un livello
di partenza, i valori di entrambe le condizioni indicate e i livelli intermedi vengono addizionati.
Manuale
Le condizioni, previste con questo codice nello schema di determinazione del prezzo, vengono
incluse solo se vengono inserite manualmente.
Obbl
Indica l'obbligatorietà o meno della condizione.
Stat
Il codice fa in modo che una maggiorazione o una riduzione siano inseriti nel documento solo a fini
statistici.
Indicatore stampa
Controlla l'output delle righe di condizione durante la stampa ad es., di conferme dell'ordine e di
fatture.

Subtotale condizione

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 13 / 24
Autore Status Data
Silvia Torresan 30/03/11

Codice che determina come i valori delle condizioni o i subtotali vengono inseriti nella memoria
transitoria, vale a dire in quali campi essi vengono memorizzati.
Se per la memorizzazione di diversi valori viene indicato lo stesso campo, i singoli valori vengono
totalizzati.
Questi valori o subtotali fungono ad esempio da base per ulteriori calcoli.
Presupposto
Definisce in quali casi una condizione debba presentarsi
Formula cond. per regola calcolo
Formula diversa dallo standard utilizzata per la determinazione del valore di una condizione.
Formula cond. per base condizione
Formula diversa dallo standard, avente la funzione di determinare la base della condizione.
Chiave conto
Questa chiave identifica differenti tipi di conti generali.
Chiave conto - Accantonamento
Chiave che identifica differenti tipi di conti Co.Ge. per accantonamenti.

CONDIZIONI E FORMULE
A volte tramite le condizioni standard non si riesce a costruire un pricing adatto alle richieste del
cliente, in questo caso è utile e indispensabile ricorrere all’utilizzo di nuove regole o formule.
La determinazione del prezzo utilizza delle condizioni e formule che possono essere inserite in vari
livelli del pricing: nella definizione del tipo (routine condizioni di gruppo e formula
scaglionamento), nella sequenza d’accesso (presupposto), nello schema prezzi (presupposti, formule
di calcolo, formule base).
 Vendite --> Customizing del sistema --> Routines --> Definire formule per determinazioni
prezzo
Come sempre verificare prima di crearne di nuove che quelle presenti in SAP non siano già
utilizzabili.

Presupposto
I presupposti sono molto utili nel caso in cui una condizione debba essere applicata solo in relazione
a determinate circostanze.
I presupposti possono essere inseriti sia nelle sequenze d’accesso che negli schemi prezzo.
L’impiego dei presupposti permette inoltre di ottenere dei vantaggi a livello di performance, è
possibile infatti creare un unico schema prezzi per diverse (comunque simili) necessità e segnalare
al sistema per quali condizioni ricercare o meno l’esistenza di un record condizione in modo da
evitare ricerche inutili.
Anche nei presupposti è specificato un prestep che agisce come controllo preliminare sui dati di

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 14 / 24
Autore Status Data
Silvia Torresan 30/03/11

testata, nel caso ad esempio del presupposto 003 dove viene controllato se il documento ha una
divisa estera, il controllo viene ripetuto nel prestep.
* Foreign currency document
form kobed_003.
sy-subrc = 4.
check: komk-waerk ne komk-hwaer.
sy-subrc = 0.
endform.
* Prestep
form kobev_003.
sy-subrc = 4.
check: komk-waerk ne komk-hwaer.
sy-subrc = 0.
endform.

Formula di calcolo
Formula diversa dallo standard utilizzata per la determinazione del valore di una condizione.

Formula base
Formula diversa dallo standard che permette di determinare la base della condizione.

Rideterminazione prezzo MV45AFZB.


E’ possibile nelle FORM USEREXIT_NEW_PRICING.... impostare una rideterminazione del
prezzo nel caso cambino determinati valori del documento.
Esistono varie possibilità di rideterminazione, per mantenere le condizioni inserite manualmente la
determinazione è ‘C’.

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 15 / 24
Autore Status Data
Silvia Torresan 30/03/11

PERFORMANCE

Riassumiamo di seguito i punti fondamentali di una creazione del pricing “performante” come già
descritto nei parametri specifici:
- Tabelle condizioni. Inserimento dei campi di testata e successivamente di posizione
- Sequenza d’accesso. Utilizzo dell’ottimizzazione accessi (presteps).
- Schemi prezzo. Differenziazione in base alle diverse necessità, schemi comprendenti solo le
condizioni necessarie.
- Presupposti. Utilizzo dei presupposti per evitare al sistema di fare inutili accessi.

NOTE OSS

0155012 - Further subtotal fields in pricing


0100876 - Conditions: VK045 on conditions supplement screen
0012919 - Termination VK067 during output maintenance
0166952 - Rounding when distributing header conditions
0167926 - Condition Group Field not avail for Condition Table
0216873 - Conditions on header level not printed
0034526 - Delivery free of charge and value-added tax
0046314 - Classification data in pricing
0060811 - Condition for tax exemption license in Italy
0072040 - Tax exemption licenses with condition technique

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 16 / 24
Autore Status Data
Silvia Torresan 30/03/11

CASO PROPOSTO:

Un problema che ho dovuto affrontare su un progetto riguardante il pricing è il seguente:


quando viene effettuata la vendita di un materiale, e insieme vengono date in omaggio quantità
superiori o uguale dello stesso, il prezzo applicato al prodotto venduto e a quello omaggiato deve
essere il listino al pubblico.
Questa regola vale anche per la riga omaggio in quanto, pur non influenzando il prezzo finale che
risulta sempre essere uguale a zero, anch’essa non deve detrarre lo scorporo IVA, lo sconto legge,
e gli ulteriori sconti manuali dai ricavi.
Le soluzioni da adottare sono probabilmente diverse, viene proposta di seguito quella da me
utilizzata:
Quando all’assunzione o alla modifica di un ordine si verifica il caso, viene valorizzato un campo
aggiuntivo della VBAP chiamato ZVM_KWMENG sia nella riga venduta che in quella omaggio, con
la quantità del materiale relativo, poteva essere utilizzato anche un flag, ma questo ha permesso di
monitorare in query o report specifici i casi.
Questo campo è stato utilizzato per eliminare dallo schema prezzi o per azzerare le condizioni che
non devono essere considerate, questo campo è stato inserito anche nella tabella KOMP per
permettere la comunicazione con le formule del pricing.

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 17 / 24
Autore Status Data
Silvia Torresan 30/03/11

Lo schema applicato normalmente all’ordine è un listino al pubblico a cui viene scorporata l’Iva e
applicato lo sconto legge.

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 18 / 24
Autore Status Data
Silvia Torresan 30/03/11

Per lo sconto merce lo schema applicato è lo stesso anche se poi viene fatto uno sconto del 100%

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 19 / 24
Autore Status Data
Silvia Torresan 30/03/11

Nel caso invece di quantità venduta minore o uguale a quella omaggio:

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 20 / 24
Autore Status Data
Silvia Torresan 30/03/11

Anche per la riga omaggio:

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 21 / 24
Autore Status Data
Silvia Torresan 30/03/11

Schema prezzi:

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 22 / 24
Autore Status Data
Silvia Torresan 30/03/11

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 23 / 24
Autore Status Data
Silvia Torresan 30/03/11

Presupposto 655
Sono eliminate le condizioni: ZSCI Scorporo IVA – ZSCL Sconto legge – ZSPG Sconto
finanziario, nel caso di quantità di riferimento valorizzata.

FORM KOBED_655.
SY-SUBRC = 4.
IF KOMP-KPOSN NE 0.
if KOMP-ZZVM_KWMENG > 0
OR ( komt1-kschl = 'ZSPG' ) and ( komp-zzpstyv = 'TANN' or
komp-zzpstyv = 'RENN' or komp-zzpstyv = 'ZGNN' or
komp-zzpstyv = 'ZLNN' ) .
SY-SUBRC = 4.
ELSE.
SY-SUBRC = 0.
ENDIF.
ENDIF.
ENDFORM.
* Prestep
FORM KOBEV_655.
SY-SUBRC = 0.
ENDFORM.

Presupposto 955
Non vengono applicate determinate condizioni per le righe in sconto merce..

FORM KOBED_955.
SY-SUBRC = 4.
IF KOMP-KPOSN NE 0.
CHECK: KOMP-PRSFD NE 'B'.
ENDIF.
SY-SUBRC = 0.
ENDFORM.
* Prestep
FORM KOBEV_955.
SY-SUBRC = 0.
ENDFORM.

 Copyright 1998, SAP Italia Consulting S.r.l.


Oggetto Progetto / Società
Pricing SD Sap Itali a Consulting
Documento Pagina
Corso SD06 - Pricing 55388950.doc 24 / 24
Autore Status Data
Silvia Torresan 30/03/11

Formula di calcolo 904


Applicata alle condizioni manuali nel caso di quantità di riferimento valorizzata ne azzera gli importi
e fa sparire la condizione dallo schema prezzi.

FORM FRM_KONDI_WERT_904.
IF KOMP-ZZVM_KWMENG > 0.
IF XKOMV-KSCHL = 'ZSEX' OR XKOMV-KSCHL = 'ZUEX'.
XKOMV-KBETR = 0.
XKOMV-KWERT = 0.
XKWERT = 0.
ENDIF.
ENDIF.
ENDFORM.

Include MV45AFZZ .
Viene valorizzata la quantità di riferimento utilizzata nella tabella di comunicazione per il pricing
con quella presente sulla riga.
FORM USEREXIT_PRICING_PREPARE_TKOMP.
TKOMP-ZZPSTYV = VBAP-PSTYV.
TKOMP-ZZVM_KWMENG = VBAP-ZVM_KWMENG.
ENDFORM.

Include MV45AFZB .
FORM USEREXIT_CHECK_XVBAP_FOR_DELET USING US_ERROR .
Nel caso di cancellazione di una riga viene azzerata la quantità di riferimento dell’altra riga con lo
stesso materiale.

FORM USEREXIT_CHECK_VBAP USING US_DIALOG.


Nel momento dell’inserimento o della variazione di una riga viene controllata se è presente lo
stesso materiale o come vendita se si sta trattando una riga omaggio (ad es: TANN) oppure come
omaggio se si sta trattando una riga venduta (ad es: TAN).
In presenza dello stesso materiale viene salvata la quantità data in omaggio nel caso questa sia
maggiore o uguale a quella venduta, altrimenti viene azzerata.

FORM USEREXIT_NEW_PRICING_VBKD CHANGING NEW_PRICING.


Viene impostata una rideterminazione dei prezzi esclusi quelli manuali.
if .........
NEW_PRICING = 'C'.
endif.

 Copyright 1998, SAP Italia Consulting S.r.l.