服务器获取crm信息失败,CRM 检查单据错误信息

REPORTzcs0024_local.

TYPE-POOLS:slis.

DATA:g_repid LIKEsy-repid.

DATA:gt_fieldcat TYPEslis_t_fieldcat_alv .

DATA:gs_fieldcat TYPEslis_fieldcat_alv .

DATA:gs_layout TYPEslis_layout_alv.

DATA:gs_variant LIKEdisvariant.

DATA:i_t_params TYPErsti_t_par .

DATA:i_s_params TYPErsparams .

TABLES:ztcs1038,ztcs1023,ztcs2008 .

DATA:lt_t1038 LIKEztcs1038 OCCURS0WITHHEADERLINE.

DATA:lt_t1023 LIKEztcs1023 OCCURS0WITHHEADERLINE.

DATA:lt_jest LIKEcrm_jest OCCURS0WITHHEADERLINE.

DATA:lt_order LIKEzszcs0024 OCCURS0WITHHEADERLINE.

DATA:lt_header_guid       TYPEcrmt_object_guid_tab,

lt_orderadm_h        TYPETABLEOFcrmd_orderadm_h,

ls_orderadm_h        TYPEcrmd_orderadm_h,

lt_status            TYPEcrmt_status_wrkt,

ls_status            TYPEcrmt_status_wrk,

lt_requested_objects TYPEcrmt_object_name_tab.

INCLUDEcrm_object_names_con.

DATA:BEGINOFlt_guid OCCURS0,

guid TYPEcrmt_object_guid,

ENDOFlt_guid .

DATA:lt_return TYPEbapiret2_t ,

ls_return TYPEbapiret2.

*----------------------------------------------------------------------*

* 选择屏幕

*----------------------------------------------------------------------*

SELECTION-SCREENBEGINOFBLOCKblk2 WITHFRAMETITLEtext-001.

SELECT-OPTIONSr_time FORztcs1038-order_date.

PARAMETERS:r1 RADIOBUTTONGROUPrad1.

SELECT-OPTIONSr_no1 FORztcs1038-order_no.

PARAMETERS:r2 RADIOBUTTONGROUPrad1.

SELECT-OPTIONSr_no2 FORztcs1023-object_id.

SELECT-OPTIONSr_pty2 FORztcs1023-process_type.

SELECT-OPTIONSr_bp2 FORztcs1023-media_org.

SELECT-OPTIONSr_crdat FORztcs1023-crdat.

SELECT-OPTIONSr_crby FORztcs1023-created_by.

PARAMETERS:r3 RADIOBUTTONGROUPrad1.

SELECT-OPTIONSr_no3 FORztcs2008-object_id.

SELECT-OPTIONSr_pty3 FORztcs2008-process_type.

SELECT-OPTIONSr_bp3 FORztcs2008-zcus_channel.

PARAMETERS:r4 RADIOBUTTONGROUPrad1.

SELECT-OPTIONSr_no4 FORztcs2008-object_id.

SELECT-OPTIONSr_pty4 FORztcs2008-process_type.

SELECT-OPTIONSr_crdat4 FORztcs1023-crdat.

SELECT-OPTIONSr_crby4 FORztcs1023-created_by.

SELECTION-SCREENENDOFBLOCKblk2.

INITIALIZATION.

ATSELECTION-SCREENONVALUE-REQUESTFORr_time-low.

PERFORMtimeset_value_help CHANGINGr_time-low ."打开文件

ATSELECTION-SCREENONVALUE-REQUESTFORr_time-high.

PERFORMtimeset_value_help CHANGINGr_time-high ."打开文件

*----------------------------------------------------------------------*

* 处理流

*----------------------------------------------------------------------*

START-OF-SELECTION.

REFRESH:lt_header_guid,lt_guid .

IFr1 ='X'.

REFRESHlt_t1038 .

SELECT* INTOTABLElt_t1038

FROMztcs1038

WHEREorder_no INr_no1

ANDorder_date INr_time

ANDcreated_flag ='X'.

CHECKlt_t1038[] ISNOTINITIAL.

SELECTguid INTOTABLElt_guid

FROMcrmd_orderadm_h

FORALLENTRIES INlt_t1038

WHEREobject_id =lt_t1038-object_id .

ELSEIFr2 ='X'.

SELECTguid INTOTABLElt_guid

FROMztcs1023

WHEREobject_id INr_no2

ANDprocess_type INr_pty2

ANDmedia_org INr_bp2

ANDcreated_at INr_time

ANDcreated_by INr_crby

ANDcrdat INr_crdat .

ELSEIFr3 ='X'.

SELECTguid  INTOTABLElt_guid

FROMztcs2008

WHEREobject_id INr_no3

ANDprocess_type INr_pty3

ANDzcus_channel INr_bp3

ANDcreated_at INr_time .

ELSEIFr4 ='X'.

SELECTguid  INTOTABLElt_guid

FROMcrmd_orderadm_h

WHEREobject_id INr_no4

ANDprocess_type INr_pty4

ANDcreated_at INr_time

ANDcreated_by INr_crby4

ANDposting_date INr_crdat4 ..

ENDIF.

CHECKlt_guid[] ISNOTINITIAL.

REFRESHlt_jest .

SELECT*  INTOTABLElt_jest

FROMcrm_jest

FORALLENTRIES INlt_guid

WHEREobjnr =lt_guid-guid

ANDstat ='I1030'

ANDinact <> 'X'.

*  LOOP AT lt_guid .

*    INSERT lt_guid-guid INTO TABLE lt_header_guid.

*  ENDLOOP.

*  INSERT gc_object_name-orderadm_h INTO TABLE lt_requested_objects.

**  INSERT gc_object_name-orderadm_i INTO TABLE lt_requested_objects.

*  INSERT gc_object_name-status INTO TABLE lt_requested_objects.

*

*  REFRESH:lt_status, lt_orderadm_h.

*  CALL FUNCTION 'CRM_ORDER_READ'

*    EXPORTING

*      it_header_guid       = lt_header_guid

*      it_requested_objects = lt_requested_objects

**     iv_mode              = 'C'

*    IMPORTING

*      et_orderadm_h        = lt_orderadm_h

*      et_status            = lt_status

*    EXCEPTIONS

*      document_not_found   = 1

*      error_occurred       = 2

*      document_locked      = 3

*      no_change_authority  = 4

*      no_display_authority = 5

*      no_change_allowed    = 6

*      OTHERS               = 7.

*

*  DELETE lt_status WHERE kind <> 'A' .

*  DELETE lt_status WHERE status <> 'I1030' .

*  LOOP AT lt_status INTO ls_status.

CHECKlt_jest[] ISNOTINITIAL.

REFRESHlt_orderadm_h .

SELECT* INTOTABLElt_orderadm_h

FROMcrmd_orderadm_h

FORALLENTRIES INlt_jest

WHEREguid =lt_jest-objnr .

LOOPATlt_jest .

REFRESHlt_return .

CALLFUNCTION'ZFMTEST05'

EXPORTING

iv_guid   =lt_jest-objnr

IMPORTING

et_return =lt_return.

DELETElt_return WHEREtype<> 'E'.

IFlt_return[] ISNOTINITIAL.

CLEAR:ls_orderadm_h,lt_order,ls_return .

lt_order-guid =lt_jest-objnr .

READTABLElt_orderadm_h INTOls_orderadm_h WITHKEYguid =lt_jest-objnr.

lt_order-object_id =ls_orderadm_h-object_id .

lt_order-process_type =ls_orderadm_h-process_type .

LOOPATlt_return INTOls_return .

CONCATENATElt_order-messagels_return-messageINTOlt_order-message.

ENDLOOP.

CONDENSElt_order-message.

APPENDlt_order .

ENDIF.

CLEARlt_jest .

ENDLOOP.

END-OF-SELECTION.

gs_layout-zebra             ='X'.

gs_layout-cell_merge        ='X'.

gs_layout-colwidth_optimize ='X'.

g_repid =sy-repid.

gs_variant-report=sy-repid.

CALLFUNCTION'REUSE_ALV_GRID_DISPLAY'

EXPORTING

*     i_background_id          = 'ALV_BACKGROUND'

i_callback_pf_status_set ='MENU_SET'

i_callback_user_command  ='USER_COMMAND'

i_callback_program       =g_repid

i_structure_name         ='ZSZCS0024'

is_layout                =gs_layout

TABLES

t_outtab                 =lt_order.

FORMmenu_set USINGlt_extab TYPEslis_t_extab.

DATA:ls_extab TYPEslis_extab.

SETPF-STATUS'101'."定义屏幕状态,然后在里面定义自己的按钮

ENDFORM."menu_set

FORMuser_command USINGucomm LIKEsy-ucomm

rs_selfield TYPEslis_selfield.

CASEucomm.

WHEN'&IC1'.

READTABLElt_order INDEXrs_selfield-tabindex .

REFRESH:i_t_params .CLEAR:i_s_params .

i_s_params-selname ='IV_GUID'.

i_s_params-kind ='S'.

i_s_params-sign='I'.

i_s_params-option ='EQ'.

i_s_params-low =lt_order-guid .

APPENDi_s_params TOi_t_params .

SUBMITcrm_report_start ANDRETURNWITHSELECTION-TABLEi_t_params.

ENDCASE.

ENDFORM."execute_command

*&---------------------------------------------------------------------*

*&      Form  TIMESET_VALUE_HELP

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*

*----------------------------------------------------------------------*

FORMtimeset_value_help  CHANGINGp_r_date_low.

DATAlv_timeset TYPEtztf_io_field .

DATAlv_date TYPEd .

DATAlv_time TYPEt .

CLEAR:lv_timeset,lv_date,lv_time .

CALLFUNCTION'TZ_TIMEFIELD_F4_DISP_PROFILE'

EXPORTING

if_profile   ='ZDATE_TIME'"数据元素   TZTF_IO    COMT_CREATED_AT_USR

if_type      ='DATE_FROM'"随便找一个SRV_APPT_BEG

IMPORTING

ef_timefield =lv_timeset.

lv_date+0(4)=lv_timeset+0(4).

lv_date+4(2)=lv_timeset+5(2).

lv_date+6(2)=lv_timeset+8(2).

lv_time+0(2)=lv_timeset+11(2).

lv_time+2(2)=lv_timeset+14(2).

lv_time+4(2)='00'.

CONVERTDATElv_date TIMElv_time

INTOTIMESTAMPp_r_date_low TIMEZONEsy-zonlo.

ENDFORM." TIMESET_VALUE_HELP

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值