关于获取业务员个人欠款的rfc
来源:互联网 发布:城市人口密度数据 编辑:程序博客网 时间:2024/05/17 08:15
FUNCTION ZBAPI_GET_STAFF_EXPENSE.
*"----------------------------------------------------------------------
*"*"Local interface:
*" IMPORTING
*" VALUE(I_DATUM1) LIKE BSID-BUDAT
*" VALUE(I_DATUM2) LIKE BSID-BUDAT
*" TABLES
*" IKUNNR STRUCTURE ZKEHUBH OPTIONAL
*" I_DATUM STRUCTURE ZDATUM OPTIONAL
*" I_FANLI STRUCTURE ZCUSTOMER_FANLI OPTIONAL
*" ZJINE1 STRUCTURE ZJINE OPTIONAL
*"----------------------------------------------------------------------
tables:bsid,kna1,knb1.
data:itab like ZCUSTOMER_FANLI occurs 0 with header line.
data:begin of jtab occurs 0,
kunnr like bsid-kunnr,
bukrs like bsid-bukrs,
ktokd like kna1-ktokd,
end of jtab.
DATA:BEGIN OF jtab_bsid OCCURS 0,
kunnr LIKE bsid-kunnr,
umskz LIKE bsid-umskz,
budat LIKE bsid-budat,
belnr LIKE bsid-belnr,
waers LIKE bsid-waers,
SGTXT like bsid-SGTXT,
monat LIKE bsid-monat,
shkzg LIKE bsid-shkzg,
dmbtr LIKE bsid-dmbtr,
wrbtr LIKE bsid-wrbtr,
kkber LIKE bsid-kkber,"贷方控制范围
END OF jtab_bsid.
data:itab_bsid like jtab_bsid occurs 0 with header line.
data:itab_bsid1 like jtab_bsid occurs 0 with header line.
data:itab_bsid2 like jtab_bsid occurs 0 with header line.
data: ZJINE2 like ZJINE1 occurs 0 with header line.
data: ZJINE3 like ZJINE1 occurs 0 with header line.
data: ZJINE4 like ZJINE1 occurs 0 with header line.
* if I_DATUM is initial.
* message i000(000) with '必须输入日期范围'.
* stop.
if i_datum1+6(2) <> '01'.
message i000(000) with '必须输入每月一号'.
stop.
endif.
*****根据客户帐户组和公司代码确定业务员
select knb1~kunnr KNB1~bukrs kna1~ktokd into table jtab
from knb1 join kna1 on knb1~kunnr = kna1~kunnr
where kna1~ktokd = 'FI02'
and knb1~kunnr in iKUNNR
and knb1~bukrs = '2100'.
sort jtab by kunnr.
*****取得小于屏幕选择条件业务员借回款
SELECT kunnr umskz budat belnr waers SGTXT monat shkzg dmbtr wrbtr kkber FROM bsid
INTO TABLE jtab_bsid
FOR ALL ENTRIES IN jtab
WHERE kunnr = jtab-kunnr
* and budat in I_DATUM
and budat < I_DATUM2
AND kkber = 2110.
sort jtab_bsid by budat.
refresh itab_bsid.
clear itab_bsid.
*****得到明细数据
loop at jtab_bsid.
move-corresponding jtab_bsid to I_FANLI.
append I_FANLI.
clear I_FANLI.
clear jtab_bsid.
endloop.
****保留原有数据通过另一个内表计算
itab_bsid[] = jtab_bsid[].
loop at itab_bsid.
if itab_bsid-shkzg = 'H'."贷方汇总
itab_bsid-dmbtr = -1 * itab_bsid-dmbtr.
if itab_bsid-budat > I_DATUM1 .
move-corresponding itab_bsid to ZJINE3.
zjine3-budat = ''.
collect zjine3.
endif.
else.
if itab_bsid-budat > I_DATUM1 ."借方汇总
move-corresponding itab_bsid to ZJINE4.
zjine4-budat = ''.
collect zjine4.
endif.
ENDIF.
if itab_bsid-budat < I_DATUM1 .
move-corresponding itab_bsid to ZJINE1."期初
zjine1-budat = ''.
collect zjine1.
clear itab_bsid.
clear zjine1.
elseif itab_bsid-budat > I_DATUM1.
move-corresponding itab_bsid to ZJINE2."本月
zjine2-budat = ''.
collect zjine2.
clear itab_bsid.
clear zjine2.
endif.
endloop.
loop at ZJINE1.
* read table zjine2 with key kunnr = zjine1-kunnr.
* if sy-subrc = 0 .
*
* endif.
****本期借款
read table zjine4 with key kunnr = zjine1-kunnr.
if sy-subrc = 0 .
zjine1-dmbtr1 = zjine4-dmbtr.
endif.
*****本期还款
read table zjine3 with key kunnr = zjine1-kunnr.
if sy-subrc = 0 .
zjine1-dmbtr2 = zjine3-dmbtr.
endif.
*****总欠款
zjine1-dmbtr3 = zjine1-dmbtr + zjine1-dmbtr1 + zjine1-dmbtr2.
modify zjine1.
clear zjine1.
endloop.
ENDFUNCTION.
- 关于获取业务员个人欠款的rfc
- 获取rfc的网站
- 记下自己的欠款
- 对客户欠款的看法
- 外贸业务员的辞职报告
- 业务员。。。
- 关于SAP的RFC一些问题列表
- 关于SNMP的RFC文档号
- RFC中关于IPv6 DNS的介绍
- 关于syslog报文的RFC规范
- 关于凭证和冲销凭证的RFC
- JAVA调用SAP的函数RFC--个人小结
- 初哥业务员的一天
- 一个老业务员的自白
- 一个老业务员的自白
- 外贸业务员的年度总结
- 一个老业务员的自白
- 一个老业务员的经验
- Study Note:C# in a Nutshell-Chapter 1 Introducing C# and the .NET Framework
- 如何正确创建DLL和使用DLL
- 将进酒---李白
- instanceof是什么?
- 将Session保存在SqlServer中
- 关于获取业务员个人欠款的rfc
- 获取硬盘ID信息及网卡MAC地址的代码
- 表格监控函数和解决IE6背景图缓存问题
- 关于初始化
- Window Mobile视频会议程序的开发
- AIX hacmp oracle9i ORA-32700: error occurred in DIAG Group service
- "字符流"与"字节流"的简单理解
- 在RedHat Enterprise Linux5上安装MySQL
- 数据结构---顺序表