組織結(jié)構(gòu) T001 Company Code
TVKO Sales Organization
TSPA DIvision
TVTW Distribution Channel
TVTA Sales Area
TVBUR Sales Office
TVGRP Sales Person Group
T001W Plant
TVST Shipping Point
TVLA Loading Point
T014 Credit Control Area
客戶 ??????? KNA1?? General Data????????????????? KNB1?? Customer Master – Co.
SD?和 MM?模塊的業(yè)務(wù)集成:
1. 當(dāng)你創(chuàng)建銷售訂單(SO),所有的項目將從MM模塊拷貝物料主數(shù)據(jù).
2. MRP和可用性檢查也從MM模塊讀取相關(guān)數(shù)據(jù).
3. While you create inbound/outbound delivery with reference to a sales order,the shipping point determination takes place with the help of the loading group, plant data, shipping conditions etc. This also refers to Material Master.
4. The material which you are entering in a sales order must be extended to the sales area of your sales order/customer otherwise you cannot transact with this material.
SD?和 FI模塊的業(yè)務(wù)集成 :-
1. Whenever you create a delivery with reference to a sales order, goods movement takes place in the bacgground. eg. In case of standard sales order, you create an outbound goods delivery to the customer.
Here movement 601 takes place. This movement is configured in MM. Also, this movement hits some G/L account in FI. Every such movement of good s hits some G/L account.
2. The accounts posting in FI is done with reference to the billing documents (invoice, debit note, credit note etc) created in SD. Thus this is a link between SD and FI
3. Tax determination: In case of a tax determination also, there is a direct link between SD and MM
SD 與其他模塊的集成點列表
銷售訂單 –?
Integration Points????????????????????? Module
?Availability Check??????????????? -?????? MM
?Credit Check??????????????????????? -?????? FI
?Costing?????????????????????????????????-?????? CO/ MM
?Tax Determination????????????? -?????? FI
?Transfer of Requirements?-?????? PP/ MM
發(fā)貨和過賬 –?
Integration Points????????????????????? Module
?Availability Check???????? ?????? ?-?????? MM
?Credit Check????????????????????? ? ?-?????? FI
?Reduces stock??????????????????? ?-?????? MM
?Reduces Inventory $???????????-?????? FI/ CO
?Requirement Eliminated???-?????? PP/ MM
發(fā)票?-
Integration Points????????????????????? Module
?Debit A/R????????????????????????????? -?????? FI/ CO
?Credit Revenue?????????????????? -?????? FI/ CO
?Updates G/ L?????????????????????? -?????? FI/ CO
? (Tax, discounts, surcharges, etc.)
?Milestone Billing???????????????? -?????? PS
退貨 & Credit Memo -
Integration Points????????????????????? Module
?Increases Inventory?????????? ?? ?-?????? MM
?Updates G/ L????????? ?????????? ??? ?-?????? FI
?Credit Memo??????????????? ??? ?????? -?????? FI
?Adjustment to A/R????????? ?????? ?-?????? FI
?Reduces Revenue??????????????? -?????? FI?
? 個人收集的業(yè)務(wù)重要函數(shù)
Function Name
|
Function Description
|
Function Pool
|
Function Pool Description
|
示例程序
|
|
||||
SD_SALEDOCUMENT_CREATE
|
|
|
|
|
SD_ORDER_CREDIT_RELEASE
|
SD
信用管理
|
VKMP
|
|
|
RV_AVAILABILITY_CHECK
|
RV
可用量和需求
|
V03V
|
|
|
RV_REQUIREMENT_GENERATE
|
RV
可用量和需求
|
V03V
|
|
|
RV_DELIVERY_CREATE
|
SD
交貨匯總處理
|
V50S
|
|
|
|
|
|
|
|
出庫單-》財務(wù)憑證
|
||||
WS_REVERSE_GOODS_ISSUE
|
Goods Mvmnts and Goods Mvments Reversals
|
V51W
|
|
RVV50L09
|
MB_CREATE_GOODS_MOVEMENT
|
為交貨的發(fā)貨
|
MBWL
|
|
|
MB_CANCEL_GOODS_MOVEMENT
|
為交貨的發(fā)貨
|
MBWL
|
|
|
訂單
/
出庫單-》發(fā)票
|
||||
RV_INVOICE_CREATE
|
出具發(fā)票(新建)
|
V60A??????????????????????
|
|
|
RV_INVOICE_DOCUMENT_ADD
|
(保存)其中 SLL_DOCUMENT_TRANSFER單元的調(diào)用可作發(fā)票出口
|
|
|
|
|
||||
|
||||
發(fā)票-》財務(wù)憑證
|
||||
RV_ACCOUNTING_DOCULIST_CREATE
|
|
V60B??????????????????????
|
RV-RF
接口
|
|
RV_ACCOUNTING_DOCUMENT_CREATE
|
發(fā)票-》憑證
|
V60B??????????????????????
|
RV-RF
接口
|
VF02
(過帳)
|
FI_PERIOD_CHECK
|
財務(wù)會計-》憑證-》過帳期間-》未清和關(guān)帳過帳期間(表t001b)
|
FACS
|
FI/CO
接口的
FI
服務(wù)
|
很多的檢查函數(shù)
|
sd_invoice_release_to_account
|
釋放發(fā)票-》憑證
調(diào)用 RV_INVOICE_DOCUMENT_ADD |
V60A????????????????????
|
RV-RF
接口
|
VFX3
|
RV_INVOICE_LIST_DOCUMENT_ADD
|
|
V60A
|
|
VF02
|
RV_INVOICE_DOCUMENT_ADD
|
根據(jù)
RFBFK
決定是否調(diào)用(
591
行)
RV_ACCOUNTING_DOCUMENT_CREATE
|
V60A
|
|
VF02
(保存)
|
|
|
|
|
|
|
||||
AC_DOCUMENT_CREATE
|
|
RWCL
|
會計合算接口
|
|
AC_DOCUMENT_REVERSE
|
|
RWCL
|
會計合算接口
|
|
|
|
|
|
|
|
||||
RV_MISSING_DOCUMENT_DATA
|
確定不完整的銷售憑證
|
VO5M
|
|
RVAUFERR
|
|
|
|
|
|
?
|
?
|
?
|
?
|
?
|
?
|
?
|
?
|
?
|
?
|
?
|
||||
NUMBER_CHECK
|
檢查號碼是否在號碼區(qū)間內(nèi)
|
|
R/3 Central Basis Development: Number Ranges
|
|
BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 182pt; PADDING-TOP |
型。舉個例,如果您已經(jīng)就所交付的貨物向買主開具了100元的發(fā)票,可是由于貨物質(zhì)量的瑕疵,
買主主張“貨接受但必須削價10元”,如果您接受了這個主張,那您就得開具10元的credit memo
(即實際業(yè)務(wù)中的所謂“紅字發(fā)票”)。總之,與原始invoice的價值相比,增價用debit memo,
降價用credit memo,兩者都是billing document type。
credit memo request 和debit memo request都是sales document type,其原理與一般的銷售訂
單類型并無質(zhì)的區(qū)別。只是,兩個memo request的下游transaction都是直接參照訂單創(chuàng)建
billing document,而不需要有delivery。
credit memo request --> credit memo, debit memo request --> debit memo,這就是它們的
流程。
1.????? 內(nèi)表的類型及定義:
( 1 ) .ANY TABLE :即任意表類型,此種定義方式只能在傳遞參數(shù)的時候定義。
?????
例如:
FORM XXX USING/CHANGING
( 2 ) .ANY TABLE 包括了兩種類型: INDEX TABLE 和 HASHED TABLE 。
?? 《 1 》 .INDEX TABLE :包括了 STANDARD TABLE 和 SORTED TABLE
A.????? STANDARD TABLE :其實就是一個線性表,通過 key 訪問內(nèi)表是線性查找的,也就是說,隨著表中記錄的增加,對表的操作的時間開銷也相應(yīng)的增加。
定義方法:
TYPES/DATA
:
B.????? SORTED TABLE: 顧名思義,表中的記錄是按照一定的順序排列的。訪問表的主要方式是表中定義的 key ,如果 key 不唯一,則選擇 index 最小的那個。也可以通過 index 來訪問排序表,如果你想通過 index 插入一條記錄,系統(tǒng)會自動檢查你插入的位置是否正確。所以,如果插入的時間比插入到標(biāo)準(zhǔn)表的時間會長。因此,盡量選擇 key 來對排序表進行操作。
定義方法:
TYPES/DATA
:
《 2 》 .HASHED TABLE :對哈希表只能用你定義的 key 進行操作,而不能使用 index 進行操作。因此,定義哈希表必須定義 unique key 。注意:所有關(guān)于使用 index 操作表的語句都不能用于操作哈希表。例如: sort , loop 等。
????????
定義方法:
TYPES/DATA
:
2.????? 內(nèi)表的操作:
( 1 ) . 創(chuàng)建:
????? A. 定義一個結(jié)構(gòu),然后 type/like 這個結(jié)構(gòu)
???????? 例如:
TYPES: BEGIN OF
?????????...
?????????
?????????...
???????END OF
DATA
?????????????????WITH NON-UNIQUE DEFAULT KEY
???????????????? INITIAL SIZE
???????????????? WITH HEADER LINE.
????? B. type/like 系統(tǒng)表或者數(shù)據(jù)庫表或者結(jié)構(gòu)
DATA
???????????????? INITIAL SIZE
???????????????? WITH HEADER LINE.
( 2 ) . 添加數(shù)據(jù):
????? A . APPEND :直接向表中添加數(shù)據(jù)
1.
APPEND [wa TO|INITIAL LINE TO] itab[ASSIGNING
2. APPEND LINES OF itab1 [FROM idx1] [TO idx2] TO itab2.
3.
APPEND [wa TO] itab SORTED BY f [ASSIGNING
????? B .向表中插入數(shù)據(jù):
1.
INSERT [wa INTO|INITIAL LINE INTO] itab [INDEX
idx] [ASSIGNING
2.
INSERT [wa INTO|INITIAL LINE INTO] TABLE itab
[ASSIGNING
3. INSERT LINES OF itab1 [FROM idx1] [TO idx2] INTO itab2 [INDEX idx3].
4. INSERT LINES OF itab1 [FROM idx1] [TO idx2] INTO TABLE itab2.
????? C .相同字段求和向表里添加:
Basic form
COLLECT [wa INTO] itab.
Extras:
1.
... ASSIGNING
2.
... REFERENCE INTO dref
3.
... SORTED BY f
( 3 ) . 刪除數(shù)據(jù):
1.
DELETE itab.
2.
DELETE TABLE itab WITH TABLE KEY k1 = v1 ... kn = vn.
3.
DELETE TABLE itab [FROM wa].
4.
DELETE itab INDEX idx.
5.
DELETE itab FROM idx1 TO idx2.
6.
DELETE itab WHERE logexp.
7.
DELETE ADJACENT DUPLICATES FROM itab.
( 4 ) . 修改數(shù)據(jù):
1.
MODIFY itab [FROM wa] [INDEX idx] [ASSIGNING
2.
MODIFY TABLE itab [FROM wa] [ASSIGNING
一,? 首先介紹一下 ABAP 的程序的類型:
Program type (程序類型)
|
Introductory statement (類型描述)
|
1
|
REPORT (報表)
|
M
|
PROGRAM (屏幕程序)
|
F
|
FUNCTION-POOL (函數(shù)組)
|
K
|
CLASS-POOL (類組)
|
J
|
CLASS-POOL (接口組)
|
T
|
TYPE-POOL (類型池)
|
二,? 下面介紹報表中用到的事件以及作用 :
1.????? LOAD-OF-PROGRAM :程序開始執(zhí)行時候自動調(diào)用
這個事件在 SUBMIT , CALL TRANSACTION , PERFORM 等執(zhí)行的時候系統(tǒng)會自動調(diào)用這個事件。所以無需聲明即可。
2.????? INITIALIZATION
( 1 ) . 只能用于報表程序
( 2 ) . 在選擇屏幕出現(xiàn)之前執(zhí)行,如果用邏輯數(shù)據(jù)庫的話,這個是唯一能夠修改選擇屏幕初始值的地方。
( 3 ) . 通常的用法是在這里給選擇屏幕中的字段賦值。
3.????? AT SELECTION-SCREEN
( 1 ) . 其實就像一個 FORM ,所以在這個事件里聲明的變量都是局部變量。
( 2 ) . 根據(jù) SY-UCOMM 這個系統(tǒng)變量可以判斷用戶的命令
( 3 ) . 在這個事件里響應(yīng)的是屏幕上選擇條件中的事件,例如 CHECKBOX 的選擇與否, RADIOBUTTON 的選擇, LISTBOX 的選擇等等。所以分為以下幾個方面:
1. ... ON psel :在 PARAMETER 變化是觸發(fā)的事件
2. ... ON END OF sel : SELECT-OPTION 觸發(fā)的事件
3. ... ON VALUE-REQUEST FOR psel_low_high :選擇的幫助 (F4)
4. ... ON HELP-REQUEST FOR psel_low_high :選擇的幫助 (F1)
5. ... ON RADIOBUTTON GROUP radi :單選按鈕事件
6. ... ON BLOCK block :框架的觸發(fā)事件
7. ... OUTPUT :響應(yīng)屏幕上的事件,修改選擇屏幕的唯一方法
4.????? START-OF-SELECTION
報表程序必須執(zhí)行的事件,在進入第二屏幕之前觸發(fā)。
5.????? GET
獲得邏輯數(shù)據(jù)庫的值。前提是必須首先聲明邏輯數(shù)據(jù)庫。
6.????? END-OF-SELECTION
第二屏幕顯示完畢,結(jié)束處理。
7.????? MODULE
這個是當(dāng)你調(diào)用自己定義的屏幕時,響應(yīng)屏幕事件的方法。
8.????? ENDMODULE
9.????? CHECK
只對邏輯數(shù)據(jù)庫使用,檢查是否取得數(shù)據(jù)。
10.?? REJECT
同樣只對邏輯數(shù)據(jù)庫使用,退出。
11.?? STOP
結(jié)束一個處理塊。
12.?? RETURN
返回一個處理塊。
三,? 附加說明:
1.????? SET PF-STATUS :
基本語法格式: SET PF-STATUS pfstat.
擴展:
1. ... EXCLUDING f oder ... EXCLUDING itab
????? 這個是設(shè)置屏幕菜單,命令行等的命令,詳細地信息我會在后面關(guān)于菜單設(shè)計的時候說明。
2.????? SET TITLEBAR :
設(shè)置屏幕標(biāo)題,在屏幕顯示之前調(diào)用。