好吧,前提要说一下,信贷是到客户的信贷范围级别的。

FUNCTION zfm_credit.
*"----------------------------------------------------------------------
*"*"本地接口:
*" TABLES
*" T_TAB STRUCTURE ZJKS001 OPTIONAL
*" T_TAB_I STRUCTURE ZJKS002 OPTIONAL
*"---------------------------------------------------------------------- DATA:gs_zsds001 TYPE zsds001.
DATA:gs_zsds002 TYPE zsds002.
DATA:lv_func TYPE char50."结构ID
DATA:s_tab TYPE zjks001."表头结构
DATA:s_tab_i TYPE zjks002."表体结构
DATA:gt_table TYPE ddfields,
gs_table TYPE dfies.
DATA:gs_knka TYPE knka,
gs_knkk TYPE knkk,
gv_knka TYPE knka,
gv_knkk TYPE knkk,
gv_upd TYPE cdpos-chngind.
DATA:gv_name1 TYPE kna1-name1.
DATA:gt_kna1 TYPE TABLE OF zsknb1,
gs_kna1 TYPE zsknb1.
DATA:lv_line TYPE i. DATA:gs_zsds003 TYPE zsds003. DATA:gt_message TYPE TABLE OF bdcmsgcoll.
DATA:gs_message TYPE bdcmsgcoll.
DATA:lv_str TYPE string.
DATA:lv_int TYPE i. FIELD-SYMBOLS: <dyn_wa>,"表头
<dyn_la>,"表体
<dyn_field>."字段
DATA lv_col_sting TYPE string . DEFINE mesgadd."返回消息赋值
S_TAB-FIELDNAME = &.
S_TAB-VALUE = &.
IF & is not INITIAL .
APPEND S_TAB TO T_TAB.
ENDIF.
END-OF-DEFINITION. DEFINE mesgaddi."返回消息赋值
lv_col_sting = & .
CONCATENATE & lv_col_sting into S_TAB_I-FIELDNAME .
SHIFT S_TAB_I-FIELDNAME RIGHT DELETING TRAILING space.
CONDENSE S_TAB_I-FIELDNAME NO-GAPS.
S_TAB_I-VALUE = &.
CONDENSE S_TAB_I-VALUE NO-GAPS.
APPEND S_TAB_I TO T_TAB_I.
END-OF-DEFINITION. CLEAR:gs_zsds001,gs_zsds002,lv_func,s_tab,gt_table[],gs_zsds003,lv_str,gt_message. READ TABLE t_tab INTO s_tab WITH KEY fieldname = 'FUNCTION'.
IF sy-subrc = .
lv_func = s_tab-value.
ELSE.
REFRESH:t_tab.
mesgadd:'RETURN' 'E',
'MESSAGE' '未指定函数!'.
RETURN.
ENDIF. CASE lv_func.
WHEN 'CREDIT02'.
ASSIGN gs_zsds003 TO <dyn_wa>."表头结构
WHEN OTHERS.
ENDCASE. LOOP AT t_tab INTO s_tab."表头数据装换
ASSIGN COMPONENT s_tab-fieldname OF STRUCTURE <dyn_wa> TO <dyn_field>.
IF sy-subrc = .
<dyn_field> = s_tab-value.
IF s_tab-fieldname = 'KLIMK'.
lv_int = s_tab-value.
gs_zsds003-klimk = lv_int.
ENDIF.
ENDIF.
ENDLOOP. REFRESH:t_tab."清空表头 CASE lv_func. WHEN 'CREDIT02'. IF gs_zsds003-ctlpc IS INITIAL.
gs_zsds003-ctlpc = 'Z01'.
ENDIF.
CONCATENATE 'Z' gs_zsds003-kkber INTO gs_zsds003-kkber.
CONDENSE gs_zsds003-kkber NO-GAPS.
IF gs_zsds003-waers IS INITIAL.
gs_zsds003-waers = 'CNY'.
ENDIF.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = gs_zsds003-kunnr
IMPORTING
output = gs_zsds003-kunnr. SELECT SINGLE * INTO CORRESPONDING FIELDS OF gs_knkk
FROM knkk WHERE kunnr = gs_zsds003-kunnr AND kkber = gs_zsds003-kkber.
IF sy-subrc = .
gv_upd = 'U'.
ELSE.
gv_upd = 'I'.
ENDIF. SELECT SINGLE * INTO CORRESPONDING FIELDS OF gs_knka
FROM knka WHERE kunnr = gs_zsds003-kunnr. gs_knkk-kunnr = gs_zsds003-kunnr.
gs_knkk-knkli = gs_zsds003-kunnr.
gs_knkk-kkber = gs_zsds003-kkber.
gs_knkk-klimk = gs_zsds003-klimk.
gs_knkk-erdat = sy-uname.
gs_knkk-ctlpc = gs_zsds003-ctlpc. CALL FUNCTION 'CREDITLIMIT_CHANGE'
EXPORTING
i_knka = gs_knka
i_knkk = gs_knkk
upd_knka = ''
upd_knkk = gv_upd
* XNEUA = ' '
* XREFL = ' '
yknka = gv_knka
yknkk = gv_knkk.
IF sy-subrc = .
mesgadd:'RETURN' 'S',
'MESSAGE' '信贷更新成功!'.
ELSE.
mesgadd:'RETURN' 'E',
'MESSAGE' '信贷更新失败!'.
ENDIF. WHEN OTHERS.
ENDCASE. ENDFUNCTION.

结构,自己参考那几个表就晓得了。。。主要说的是这个函数的用法

SAP客户标准信用额度修改和创建的更多相关文章

  1. 「SAP技术」如何看Z移动类型是复制哪个标准移动类型而创建的?

    [SAP技术]SAP MM 如何看一个自定义移动类型是复制哪个标准移动类型而创建的? 比如项目上有一个自定义移动类型Z59,是复制551移动类型而定义的. OMJJ配置界面里,是有一个Ref字段.如下 ...

  2. SAP标准价格修改

    标准MR21修改前期的价格,不会影响到当期. 相关配置 事务码OMRN. 如企业账期已经开到 2015 年 2 月,会计账期还可对 1月记账,配置后可修改1月物料价格.

  3. SAP Brazil J1BTAX 为税收例外创建税收组(翻译)

    很多人对如何维持巴西的税收仍有疑问.前段时间,一家有几个税务问题的公司联系我帮助他们,我发现多年来,由于他们的税务计算系统缺少配置,他们正在进行手动调整. 维持税收的第一条规则是: TAXBRJ = ...

  4. Jerry眼中的SAP客户数据模型

    本文Jerry将介绍八款SAP产品中的客户模型.希望您在阅读完本文之后,能对SAP客户模型设计的思路有一个最最粗浅的了解. 由于Jerry水平和精力所限,本文不会详细阐述这些产品里的客户模型设计细节, ...

  5. 【MM系列】SAP MM模块-如何修改物料的移动平均价

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM模块-如何修改物料的移动 ...

  6. SAP MM 标准采购组织的分配对于寄售采购订单收货的影响

    SAP MM 标准采购组织的分配对于寄售采购订单收货的影响 PO 4100004022 是一个寄售的采购订单, 采购组织是CSAS, 工厂代码SZSP.采购信息记录也是有的, MIGO试图对该采购订单 ...

  7. Docker修改已创建容器端口映射

    修改已创建容器端口映射. 通过编辑 hostconfig.json 文件来修改 Docker 容器的端口映射 该文件地址:/var/lib/docker/containers/[hash_of_the ...

  8. Ramdisk根文件系统映像的修改与创建

    本文简述Ramdisk根文件系统映像的修改以及创建,并附相关脚本以实现自动化配置,而根文件系统的制作过程请网上自行搜索.相关过程尽可能以图的方式展示出来,重在说明操作的过程,仅供参考. Ramdisk ...

  9. 【ABAP系列】SAP ABAP 为表维护生成器创建事务代码

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 为表维护生成器 ...

随机推荐

  1. DJANGO基础学习之转义总结:escape,autoescape,safe,mark_safe

    何谓转义?就是把html语言的关键字过滤掉.例如,<div>就是html的关键字,如果要在html页面上呈现<div>,其源代码就必须是<div> PS:转义其实就 ...

  2. Oracle 分页实现

    --分页实现------实行两行一页 --1 先查询按编号排序的所有用户信息 select t.* from T_USER t order by user_id ; --2 查询数据的前四行, ; - ...

  3. 【VB6笔记-01】 读取Excel绑定到DataGrid

    Private Sub cmdOpen_Click() CommonDialog1.Filter = "Excel???t(*.xlsx)|*.xlsx" CommonDialog ...

  4. U盘制作Ubuntu15.04启动盘失败

    先用ubuntu15.04光盘在已有xp的电脑上安装成功​ 随后在Ubuntu安装labview说glibc没安装​ 但是ldd --version显示是安装的新版的​ 后来怀疑是86_64的原因​ ...

  5. iOS - Swift NSTimer 定时器

    前言 public class NSTimer : NSObject 作用 在指定的时间执行指定的任务. 每隔一段时间执行指定的任务. 1.定时器的创建 当定时器创建完(不用 scheduled 的, ...

  6. Doragon Kuesuto 1.0

    #include<stdio.h> #include<stdlib.h> #include<time.h> int main() { ; ; ; int actio ...

  7. 2014 Multi-University Training Contest 4

    1006 hdu4902 #include <iostream> #include<stdio.h> #include<vector> #include<qu ...

  8. mysql 倒引号

    1.在mysql中,保留字不能作为表名,字段名等用处,如下:mysql> alter table student add column desc varchar(16) after name;1 ...

  9. 关于远程连接MySQL数据库的问题解决

    安装MySQL sudo apt-get install mysql-server 这个应该很简单了,而且我觉得大家在安装方面也没什么太大问题,所以也就不多说了,下面我们来讲讲配置. 配置MySQL ...

  10. hadoop 入门实例【转】

    原文链接:http://www.cnblogs.com/xia520pi/archive/2012/06/04/2534533.html 1.数据去重  "数据去重"主要是为了掌握 ...