SAP 未审批的采购订单(PO)提交到OA去审批,最后OA审批结果回写到SAP。
调用OA的WebService
配置详细步骤:
当配置的时候报这个错的解决方法:
解决办法:将OA那边的WSDL文件的命名空间改为:
命名空间的错误改正确之后,重新按照以上的步骤配置就OK了。
网页配置逻辑端口
详细步骤:
网页配置完毕,然后在SAP测试一下成不成功
效果图:
一、
二、
三、
四、
注意:代码里面的代理类换成你们真正用的即可。我这里的代码应用的是在800的代理类
代码:
&---------------------------------------------------------------------
*& Report ZWS001
&---------------------------------------------------------------------
*&
&---------------------------------------------------------------------
REPORT zws001.
*数据库表:
TABLES:ekbe,ekko,ekpo,lfa1,t001,usr21,adrp,mseg,t161t,eket,yebeln,yoahrid,t16fs,t023t. " ,zebeln,zoahrid.
*-----------------------------------------------------------------------
- CONSTANTS
*-----------------------------------------------------------------------
CONSTANTS:
" c_id TYPE zsapoalog-interfaceid VALUE ‘01’,
c_e TYPE c LENGTH 1 VALUE ‘E’,
c_s TYPE c LENGTH 1 VALUE ‘S’.
*&----------------------------------------------------
*& ALV data element definition.
*&----------------------------------------------------
TYPE-POOLS slis.
DATA: wrti TYPE ywsworkflow_request_table_fiel."字段信息
DATA: gt_fieldcat TYPE TABLE OF slis_fieldcat_alv .
DATA: gs_layout TYPE slis_layout_alv.
DATA: gt_list_top_of_page TYPE slis_t_listheader.
DATA: gt_sortinfo_alv TYPE slis_t_sortinfo_alv.
DATA: gs_print_alv TYPE slis_print_alv.
DATA: gs_grid TYPE lvc_s_glay.
DATA: gt_event TYPE slis_t_event.
DATA: gs_event TYPE slis_alv_event.
DATA: ref1 TYPE REF TO cl_gui_alv_grid,
ws_header TYPE REF TO if_wsprotocol_ws_header.
DATA:lmgs_errtxt TYPE string.
DATA : lv_frgsx01 TYPE string.
DATA : lv_frgsx02 TYPE string.
lv_frgsx01 = ‘0’.
lv_frgsx02 = ‘1’.
*-----------------------------------------------------------------------
- WORK VARIABLES
*-----------------------------------------------------------------------
DATA: gt_ekko TYPE TABLE OF ekko WITH HEADER LINE,
gt_ekpo TYPE TABLE OF ekpo WITH HEADER LINE,
gt_lfa1 TYPE TABLE OF lfa1 WITH HEADER LINE,
gt_response TYPE TABLE OF ywsdo_create_workflow_request WITH HEADER LINE."800的 -
gt_response TYPE TABLE OF zyws_do_create_workflow_reques WITH HEADER LINE. "200的
DATA: g_returncode LIKE sy-subrc,
g_retco LIKE sy-subrc,
g_xscreen(1) TYPE c.
DATA: response_meg(50) TYPE c."返回消息文字描述
DATA: sqlerr_ref TYPE REF TO cx_sql_exception,
exc_ref TYPE REF TO cx_sy_native_sql_error,
error_text TYPE string.
DATA : v_ok TYPE i,
v_err TYPE i.
DATA : gd_count TYPE p.
TYPES:BEGIN OF ty_ebeln,
ebeln TYPE ekko-ebeln, "采购凭证编号
bukrs TYPE ekko-bukrs,
END OF ty_ebeln.
DATA: ls_ebeln TYPE ty_ebeln.
DATA: lt_ebeln TYPE STANDARD TABLE OF ty_ebeln .
TYPES:BEGIN OF ty_out,
workflow_base_info TYPE ywsworkflow_base_info, "只用到 WorkFlowID
workflow_main_table_info TYPE ywsworkflow_main_table_info, "主表
zflag TYPE c, "复选框
table_title TYPE c, "标题
djbh TYPE c, "单据编号
werks TYPE ekpo-werks, "工厂
ebelp TYPE ekbe-ebelp, "采购凭证的项目编号
matnr TYPE ekpo-matnr, "物料编号
banfn TYPE ekpo-banfn, "采购申请编号
bnfpo TYPE ekpo-bnfpo, "采购申请的项目编号
txz01 TYPE ekpo-txz01, "短文本
menge TYPE ekpo-menge, "采购订单数量
meins TYPE ekpo-meins, "采购订单计量单位
bprme TYPE ekpo-bprme, "订单价格单位(采购)
bednr TYPE ekpo-bednr, "含税价
lgort TYPE ekpo-lgort, "库存地点
-
mwskz TYPE ekpo-mwskz, "销售/购买税代码 knttp TYPE ekpo-knttp, "科目分配类别 matkl TYPE ekpo-matkl, "物料组 wgbez TYPE t023t-wgbez, "物料组短文本 aedat TYPE ekko-aedat, "记录建立日期 tjsj TYPE tims, "提交时间 ebeln TYPE ekko-ebeln, "采购凭证编号 frgke TYPE ekko-frgke, "批准标识:采购凭证 ernam TYPE ekko-ernam, "创建对象的人员名称 lifnr TYPE ekko-lifnr, "供应商帐户号 ekorg TYPE ekko-ekorg, "采购组织 ekgrp TYPE ekko-ekgrp, "采购组 提交部门 bsart TYPE ekko-bsart, "采购凭证类型 bstyp TYPE ekko-bstyp, "采购凭证类别 bukrs TYPE ekko-bukrs, "公司代码 butxt TYPE t001-butxt, "公司代码描述 waers TYPE ekko-waers, "货币码 name1 TYPE lfa1-name1, "供应商名称 persnumber TYPE usr21-persnumber, "人员编号 operatorname TYPE adrp-name_text, "完整的人员名称 kostl TYPE cskt-kostl, "成本中心 ltext TYPE cskt-ltext, "成本中心描述 batxt TYPE t161t-batxt, "采购凭证类型的简短描述 eindt TYPE eket-eindt, "交货日期 request_id TYPE i, request_level(1) TYPE c, request_name(100) TYPE c, workflow_name(100) TYPE c, reviewtype TYPE c, line_color TYPE c LENGTH 4, box TYPE c, oaid(4) TYPE c, "OA id depid(4) TYPE c, frggr TYPE ekko-frggr, "审批组
-
frgsx