自开发了一个简单的CRM系统,所有挖据到可能客户都存放在客户池中,有望成交的
客户业务员可以从客户池自动创建成潜在客户.生成简单的客户主数据,以客户ID为主键,从而有效记录与客户的沟通 。
" 节选出创建客户部份代码,方便以后查询备用.
- is_kna1 type kna1 ,
- is_knb1 type knb1,
- is_knvv type knvv,
- it_knvp type table of FKNVP ,
- wa_knvp like line of it_knvp.
- clear:is_kna1,is_knb1,is_knvv,it_knvp,wa_knvp .
- "填充值
- if wa_ZCRME00101-LAND1 = ' '.
- message '请先选择填写客户的国家代码!' type 'I'.
- exit.
- endif.
- is_kna1-LAND1 = wa_ZCRME00101-LAND1. " 'CN'. "国家
- if wa_ZCRME00101-LAND1 = 'CN'.
- is_kna1-SPRAS = '1'. "语言 (1.ZH, E.EN)
- else.
- is_kna1-SPRAS = 'E'. "语言 (1.ZH, E.EN)
- endif.
- is_kna1-NAME1 = wa_ZCRME00101-GSMC. "公司名称
- is_kna1-STRAS = '城市'. "城市
- is_kna1-KTOKD = 'Z002'. "客户账户组(Z002:潜在客户)
- is_knb1-BUKRS = '1000'. "公司代码(保持不变)
- is_knb1-AKONT = '0'.
- if wa_ZCRME00101-LAND1 = 'CN'.
- is_knvv-VKORG = '1010'. "销售组织(按国家选择,下同)
- else.
- is_knvv-VKORG = '1020'. "销售组织(按国家选择,下同)
- endif.
- is_knvv-VTWEG = '10'.
- is_knvv-SPART = '10'.
- if wa_ZCRME00101-LAND1 = 'CN'.
- wa_knvp-VKORG = '1010'.
- else.
- wa_knvp-VKORG = '1020'.
- endif.
- wa_knvp-VTWEG = '10'.
- wa_knvp-SPART = '10'.
- is_knvv-AWAHR = '100'. "固定不变
- wa_knvp-PARVW = 'ZM'.
- wa_knvp-PERNR = wa_ZCRME00101-GYGH . "工号
- append wa_knvp to it_knvp.
- CALL FUNCTION 'SD_CUSTOMER_MAINTAIN_ALL'
- EXPORTING
- i_kna1 = is_kna1
- i_knb1 = is_knb1
- i_knvv = is_knvv
- "i_bapiaddr1 = is_bapiaddr1
- "i_maintain_address_by_kna1 = 'X'
- pi_postflag = 'X'
- "i_from_customermaster = 'X'
- IMPORTING
- e_kunnr = op_kunnr
- TABLES
- "t_xknbk = it_bank_new
- "t_xknvi = it_knvi
- t_xknvp = it_knvp
- "t_xknvk = it_knvk
- "t_yknbk = it_yknbk
- "t_yknvi = it_yknvi
- "t_yknvp = it_yknvp
- "t_yknvk = it_yknvk
- EXCEPTIONS
- client_error = 1
- kna1_incomplete = 2
- knb1_incomplete = 3
- knb5_incomplete = 4
- knvv_incomplete = 5
- OTHERS = 23.
- if sy-subrc = 0 .
- wa_ZCRME00101-kunnr = op_kunnr .
- modify I_ZCRME00101 INDEX e_row-index from wa_ZCRME00101 TRANSPORTING KUNNR .
- perform UpdateWaToDb_100 .
- call method grid11->refresh_table_display.
- endif.
data: op_kunnr like ZCRME00101-kunnr,
is_kna1 type kna1 ,
is_knb1 type knb1,
is_knvv type knvv,
it_knvp type table of FKNVP ,
wa_knvp like line of it_knvp.
clear:is_kna1,is_knb1,is_knvv,it_knvp,wa_knvp .
"填充值
if wa_ZCRME00101-LAND1 = ' '.
message '请先选择填写客户的国家代码!' type 'I'.
exit.
endif.
is_kna1-LAND1 = wa_ZCRME00101-LAND1. " 'CN'. "国家
if wa_ZCRME00101-LAND1 = 'CN'.
is_kna1-SPRAS = '1'. "语言 (1.ZH, E.EN)
else.
is_kna1-SPRAS = 'E'. "语言 (1.ZH, E.EN)
endif.
is_kna1-NAME1 = wa_ZCRME00101-GSMC. "公司名称
is_kna1-STRAS = '城市'. "城市
is_kna1-KTOKD = 'Z002'. "客户账户组(Z002:潜在客户)
is_knb1-BUKRS = '1000'. "公司代码(保持不变)
is_knb1-AKONT = '0'.
if wa_ZCRME00101-LAND1 = 'CN'.
is_knvv-VKORG = '1010'. "销售组织(按国家选择,下同)
else.
is_knvv-VKORG = '1020'. "销售组织(按国家选择,下同)
endif.
is_knvv-VTWEG = '10'.
is_knvv-SPART = '10'.
if wa_ZCRME00101-LAND1 = 'CN'.
wa_knvp-VKORG = '1010'.
else.
wa_knvp-VKORG = '1020'.
endif.
wa_knvp-VTWEG = '10'.
wa_knvp-SPART = '10'.
is_knvv-AWAHR = '100'. "固定不变
wa_knvp-PARVW = 'ZM'.
wa_knvp-PERNR = wa_ZCRME00101-GYGH . "工号
append wa_knvp to it_knvp.
CALL FUNCTION 'SD_CUSTOMER_MAINTAIN_ALL'
EXPORTING
i_kna1 = is_kna1
i_knb1 = is_knb1
i_knvv = is_knvv
"i_bapiaddr1 = is_bapiaddr1
"i_maintain_address_by_kna1 = 'X'
pi_postflag = 'X'
"i_from_customermaster = 'X'
IMPORTING
e_kunnr = op_kunnr
TABLES
"t_xknbk = it_bank_new
"t_xknvi = it_knvi
t_xknvp = it_knvp
"t_xknvk = it_knvk
"t_yknbk = it_yknbk
"t_yknvi = it_yknvi
"t_yknvp = it_yknvp
"t_yknvk = it_yknvk
EXCEPTIONS
client_error = 1
kna1_incomplete = 2
knb1_incomplete = 3
knb5_incomplete = 4
knvv_incomplete = 5
OTHERS = 23.
if sy-subrc = 0 .
wa_ZCRME00101-kunnr = op_kunnr .
modify I_ZCRME00101 INDEX e_row-index from wa_ZCRME00101 TRANSPORTING KUNNR .
perform UpdateWaToDb_100 .
call method grid11->refresh_table_display.
endif.