Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Society / Project
288870825.doc
Author:
Release 1,1
SD Competence Centre
Page
1/35
Data
06/10/15
Ruolo
Data
Luigi Mingione
SD consultant
Novembre 2001
Ruolo
Data
Luigi Mingione
SD consultant
Luglio 2002
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
2/35
Data
06/10/15
INDICE
3.
3.1.2.
3.1.2.1.
3.1.2.2.
3.1.3.
3.1.3.1.
3.1.3.2.
3.1.4.
3.1.4.1.
3.1.4.2.
3.1.4.3.
Includes di riferimento........................................................................................................................... 4
Esempio: Assegnazione range di numerazione al documento commerciale........................................5
Esempio: Valorizzazione di campi aggiuntivi nelle tabelle standard dell'ordine di vendita...................6
Consegna................................................................................................................................... 7
Includes di riferimento........................................................................................................................... 7
Esempio - Fatturazione immediata e differita.......................................................................................7
Fattura........................................................................................................................................ 9
Includes di riferimento........................................................................................................................... 9
Esempio - Determinazione number Range...........................................................................................9
Trasmissione in contabilit........................................................................................................ 10
Includes di riferimento......................................................................................................................... 10
Esempio - Determinazione tipo documento FI....................................................................................11
Esempio: Valorizzazione da programma del campo attribuzione nel documento contabile...............12
SCREEN EXIT......................................................................................................................................... 30
4.1. ORDINE DI VENDITA............................................................................................................................ 30
4.1.1.
Requisiti.................................................................................................................................... 30
4.1.2.
Esempio: Gestione del campo supplementare VBAK-KATR1...................................................31
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
3/35
Data
06/10/15
E' possibile con un doppio click sulla descrizione accedere alla documentazione relativa.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
4/35
Data
06/10/15
3.1.1.Ordine di Vendita.
3.1.1.1.
Includes di riferimento.
Object:
Society / Project
Author:
Release 1,1
SD Competence Centre
3.1.1.2.
288870825.doc
Page
5/35
Data
06/10/15
Object:
Society / Project
Author:
Release 1,1
SD Competence Centre
3.1.1.3.
288870825.doc
Page
6/35
Data
06/10/15
Lo scopo di questo esempio quello di valorizzare mediante user exit il campo aggiuntivo
KATR1 della tabella VBAK.
La user exit di riferimento si trova nel programma SAPMV45A, include MV45AFZZ, form
USEREXIT_MOVE_FIELD_TO_VBAK.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
7/35
Data
06/10/15
3.1.2.Consegna.
3.1.2.1.
Includes di riferimento.
3.1.2.2.
Supponiamo di avere il seguente scenario di business: una azienda spedisce a clienti con
esigenze diverse, alcuni ricevono la fattura accompagnatoria, altri (probabilmente con una
notevola forza commerciale) richiedono la fatturazione differita (semplice o mensile).
Un cliente pu cambiare nel tempo tipo di fatturazione.
Nella anagrafica del cliente vengono definiti i diversi calendari di fabbrica: quello con
fatturazione mensile ha come unico giorno lavorativo nel mese l'ultimo giorno del mese.
Nel customizin viene definito il solo ordine OS, e per questo i controlli copia da OS in
consegna con fatturazione immediata (LF) e con fatturazione differita (ZLF1).
Il tipo di consegna standard in customizing per il tipo ordine OS (transazione VOV8) viene
posto uguale a LF.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
8/35
Data
06/10/15
Per il cliente con fatturazione immediata deve essere stampata la sola fattura
accompagnatoria (tipo messaggio in fattura RD00), per il cliente con fatturazione differita
la sola bolla di accompagnamento (tipo messaggio in consegna LD00).
Nella anagrafica dei messaggi (VV21) si crea il record condizione per il tipo messaggio
LD00 per la sola consegna ZLF1, in modo che quando viene generata una consegna LF
(fatturazione immediata, quindi fattura accompagnatoria) non viene stampato alcun
messaggio dalla consegna, mentre venga stampato il messaggio dalla ZLF1.
Di segito un esempio del codice che si pu implementare per risolvere questo problema.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
9/35
Data
06/10/15
3.1.3.Fattura.
3.1.3.1.
Includes di riferimento.
3.1.3.2.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
10/35
Data
06/10/15
3.1.4.Trasmissione in contabilit.
3.1.4.1.
Includes di riferimento.
Object:
Society / Project
288870825.doc
Author:
Release 1,1
SD Competence Centre
3.1.4.2.
Page
11/35
Data
06/10/15
Un esempio tipico di applicazione di queste user exit quello della determinazione del tipo
di documento contabile a partire dal tipo documento SD:
Trattandosi di una informazione di testata va inserito sicuramente nella USEREXIT_FILL_
XKOMK1
Quello che segue un esempio del codice che si pu implementare, non uno standard
da replicare identicamente.
tables: zdocsd_fi.
else.
" altrimenti
cee = 'CEE'.
endif.
else.
endif.
fkart eq vbrk-fkart
and
cee eq cee.
xkomk1-bldat = vbrk-fkdat.
xkomk1-blart = zzrn-blart.
Object:
Society / Project
Author:
Release 1,1
SD Competence Centre
3.1.4.3.
288870825.doc
Page
12/35
Data
06/10/15
E' possibile, mediante funzioni di customizing di FI, creare nuove chiavi di classificazione
in base alla informazione che si vuole trasmettere nel campo Attribuzione (ZUONR).
Non detto che si riesca mediante customizing a trasmettere qualunque tipo di
informazione si desideri, perch esiste un elenco di valori possibili da associare alla chiave
di classificazione.
Se ad esempio si volesse trasmettere in questo campo il valore della commessa presente
sulla riga della fattura (campo VBRP-PS_PSP_PNR), si pu procedere come segue.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
13/35
Data
06/10/15
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
14/35
Data
06/10/15
Creo l'ordine cliente e sulla riga associo la milestone SD11.1. Consegno, fatturo e rilascio
in contabilit.
Al momento del rilascio in contabilit il documento contabile ottenuto dal flusso suddetto si
presenter come segue:
Con il valore della definizione progetto sul campo attribuzione nella riga contabile del
cliente.
Object:
Society / Project
Author:
Release 1,1
SD Competence Centre
3.1.4.4.
288870825.doc
Page
15/35
Data
06/10/15
Problematica.
La data base per le partite aperte viene definita a partire dalla data fattura e calcolata sulla
base delle regole definite nelle condizioni di pagamento.
Si vuole avere la possibilit di definire delle eccezioni a questa regola generale.
In particolare deve essere possibile definire per alcuni clienti un intervallo date in cui non
si vuole avere scadenza delle partite, e la data corrispondentein cui deve scadere una
partita che la regola di calcolo avrebbe condotto nell'intervallo indesiderato.
Soluzione proposta.
Si definisce la tabella custom ZDATARIBA per la definizione di questi accordi:
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
16/35
Data
06/10/15
Le regole definite in questa tabella vengono definite al momento del rilascio in contabilit
della fattura nella customer exit definita dall'ampliamento SDVFX002, function module
EXIT_SAPLV60B_002.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
17/35
Data
06/10/15
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
18/35
Data
06/10/15
If you are working on enhancements that deal with different applications, or if the
enhancements are not logically related, you should include these enhancements in
separate projects.
Once you have identified the SAP enhancements you want to include in your project, you
can begin adding your own functions to the exits offered in the enhancements. To display
the individual components of the SAP enhancements, return to the main screen of the
Project Management transaction and choose Enhancement components The system
displays all of the exits included in the enhancements assigned to your project.
A differenza delle user-exit le function-exit sono presenti nel cdice sorgente in forma
mascherata (istruzione call customer-function (nome) ).
La variabile (nome) assume un valore solamente al momento della attivazione del progetto
contenentel'opportuno ampliamento.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
19/35
Data
06/10/15
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
20/35
Data
06/10/15
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
21/35
Data
06/10/15
Questa function exit si presenta come un function module vuoto, con i parametri di
input/output gi definiti.
Qui non consentito effettuare modifiche al codice sorgente, o variare i parametri di
scambio.
La logica tale per cui le modifiche vanno implementate nella include ZXVVAU04, che al
momento non esiste.
Con un doppio click sulla include suddetta, procedo alla sua creazione, ed all'inserimento
di una logica di elaborazione:
Questa logica estremamente banale, utilizzata come esempio, realizza quanto segue:
In fase di creazione di un ordine di vendita, con valore dell'ufficio vendita pari a 90, viene
determinato in automatico il cliente 0010000008.
Per rendere operative queste modifiche non resta che attivare il progetto di ampliamento
ZSD11_01.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
22/35
Data
06/10/15
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
23/35
Data
06/10/15
Nella prima parte dichiarare come exits-param una variabile che aggiorni il valore del
centro di profitto.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
24/35
Data
06/10/15
Step di customizing
Come ultimo passo necessario creare la regola di sostituzione ed associare la user exit
appena creata.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
25/35
Data
06/10/15
Il sistema ci chieder come deve essere sostituito il campo, noi selezioneremo il valore
"EXIT",
Selezionare Prerequisiti: Ciccare due volte sul technical name Structure PCASUB e
selezionare il campo PCASUB-AUGRU. E necessario sempre specificare un prerequisito
per la sostituzione.
Impostare la condizione: Order reason <> ''
Poi selezionare Substitution: inserire in corrispondenza del campo Exit, il codice U111.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
26/35
Data
06/10/15
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
27/35
Data
06/10/15
Il codice relativo effettua una serie di controlli sulla definizione dei codici IVA 1 e 2, e sulla
loro unicit.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
28/35
Data
06/10/15
La chiave primaria VKORG in linea di principio non sarebbe stata necessaria, ma in una
ottica di gruppo utile per avere immediata evidenza della societ responabile
dell'inserimento nella tabella.
E' possibile (non obbligatorio!!!) inserire una descrizione breve (50 caratteri) per indicare i
motivi della eliminazione.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
29/35
Data
06/10/15
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
30/35
Data
06/10/15
4. SCREEN EXIT.
4.1. Ordine di Vendita.
4.1.1.Requisiti.
Esistono nella gestione dell'ordine di vendita standard una videata a livello di testata ed
una a livello di posizione che sembrerebbero essere vuote.
In realt queste videate non sono altro che subscreen vuoti dove possibile aggiungere
nuovi campi per la gestione dell'ordine di vendita, e nuove logiche di elaborazione per
essi.
I due dynpro in oggetto sono nel programma SAPMV45A, 8309 per la testata e 8459 per
le posizioni.
Include di riferimento:
MV45AOZZ - moduli PBO
MV45AIZZ - moduli PAI
MV45ATZZ - definizione dati
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
31/35
Data
06/10/15
Sono stati inseriti in questo esempio un campo testo, con la descrizione "Classe di
fatturato", ed un campo a valore, definito come il campo del data dictionary KNA1-KATR1.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
32/35
Data
06/10/15
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
33/35
Data
06/10/15
Include MV45OZZ
Include MV45IZZ
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
34/35
Data
06/10/15
Risultato.
Il risultato delle operazioni svolte pu essere visualizzato nella figura di seguito.
Dove si pu apprezzare come nella videata dei dati supplementari B, il campo KNA1KATR1 sia ripreso dalla angrafica cliente, sia modificabile, e vi sia agganciato il matchcode
a valori.
Andando a modificare il valore da 01 in 02, e salvando l'ordine in oggetto, nella
transazione SE16 si pu anche riconoscere come sia stato memorizzato nella tabella
VBAK il valore desiderato.
Object:
Society / Project
Author:
288870825.doc
Release 1,1
SD Competence Centre
Page
35/35
Data
06/10/15