日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

将SAP订单以XML格式输出

發布時間:2025/3/20 asp.net 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 将SAP订单以XML格式输出 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
將訂單信息從SAP中以XML格式導出上載到FTP服務器上,客戶從FTP下載到本地ERP系統,讀取相應的信息生成自己報表。以此實現了EDI功能,是個不錯的方法。 *&---------------------------------------------------------------------*
*& Report? Z1766_TEST_XML
*&
*&---------------------------------------------------------------------* REPORT? z1766_test_xml.
*DATA:itab_item TYPE TABLE OF z1crm_sales_item.
DATA: BEGIN OF s_head,
??????? order_id LIKE z1crm_sales_head-order_id,
??????? status_h? LIKE z1crm_sales_head-status_h,
??????? creat_date_h LIKE z1crm_sales_head-creat_date_h,
??????? creat_time_h LIKE z1crm_sales_head-creat_time_h,
??????? sold_to LIKE z1crm_sales_head-sold_to,
??????? ship_to LIKE z1crm_sales_head-ship_to,
??????? cont_total LIKE z1crm_sales_head-cont_total,
??????? zzroute LIKE z1crm_sales_head-zzroute,
??????? ship_cond LIKE z1crm_sales_head-ship_cond,
??????? pmnttrms LIKE z1crm_sales_head-pmnttrms,
?????? END OF s_head,
????? itab_head?? LIKE STANDARD TABLE OF s_head.
DATA: BEGIN OF s_item,
??????? itemcode LIKE z1crm_sales_item-number_int,
??????? pn_group? LIKE z1crm_sales_item-pn_group,
??????? matnr LIKE z1crm_sales_item-matnr,
??????? charg? LIKE z1crm_sales_item-charg,
??????? status_i LIKE z1crm_sales_item-status_i,
?????? END OF s_item,
????? itab_item?? LIKE STANDARD TABLE OF s_item. DATA: BEGIN OF adminfo,
??????? object TYPE string,
??????? version TYPE string,
?????? END OF adminfo,
?????? adminfo_itab? LIKE STANDARD TABLE OF adminfo.
PARAMETERS:order_id LIKE z1crm_sales_head-order_id DEFAULT '8895100207'.
PARAMETERS: p_show AS CHECKBOX DEFAULT 'X'.
CONSTANTS:
? c_xml_root TYPE string VALUE 'BOM',
? c_xml_adminfo TYPE string VALUE 'AdmInfo',
? c_xml_documents TYPE string VALUE 'Documents',
? c_xml_document_lines TYPE string VALUE 'Document_Lines',
? c_xml_bo TYPE string VALUE 'BO'.
DATA:
? g_xml TYPE REF TO cl_xml_document.", START-OF-SELECTION.
? REFRESH:itab_head,itab_item.
? SELECT * INTO CORRESPONDING FIELDS OF TABLE itab_head
? FROM z1crm_sales_head
??? WHERE order_id = order_id.
? READ TABLE itab_head INTO s_head INDEX 1. SELECT number_int AS itemcode pn_group matnr charg status_i
? INTO CORRESPONDING FIELDS OF TABLE itab_item
?? FROM z1crm_sales_item
??? WHERE order_id = order_id. adminfo-object? = '17'.
? adminfo-version = '2'.
END-OF-SELECTION.
? DATA:
? mtd_name TYPE string,
? class_root TYPE REF TO if_ixml_node,
? class_bo TYPE REF TO if_ixml_node. CREATE OBJECT g_xml
??? EXPORTING
????? description = 'test'
????? object_type = cl_xml_document=>c_bor_classtype.
*????? object_name = s_head-mill. * Simply generate sections of XML document * First create root section
? g_xml->set_data( name?????? = c_xml_root
????????????????? dataobject = '' ). class_root = g_xml->find_node( name?? = c_xml_root ). g_xml->set_data( name?????? = c_xml_bo
??????????????? parent_node = class_root
????????????????? dataobject = '' ).
? class_bo =? g_xml->find_node( name?? = c_xml_bo ). * All other sections will be under the root (see parent_node)
? DEFINE set_section_data.
??? g_xml->set_data( name = &1
???????????????????? parent_node = class_bo
???????????????????? dataobject? = &2 ).
? END-OF-DEFINITION. set_section_data:
??? 'AdmInfo' '',
??? 'Object' adminfo-object ,
??? 'Version'? adminfo-version ,
??? 'Documents'? s_head??? ,
??? 'Document_Lines' itab_item .
*? LOOP AT itab_item INTO s_item.
*??? set_section_data:
*??? 'row' s_item.
*? ENDLOOP.
* Now display resulting XML-file or export it into workstation file
? mtd_name = order_id. IF p_show = 'X'.
??? g_xml->display( ).
??? EXIT.
? ENDIF. DATA:
??? user_action TYPE i,
??? path TYPE string,
??? full_path TYPE string,
??? file_name TYPE string. CALL METHOD cl_gui_frontend_services=>file_save_dialog
??? EXPORTING
????? default_extension??? = 'xml'
????? default_file_name??? = mtd_name
????? file_filter????????? = cl_gui_frontend_services=>filetype_xml
??? CHANGING
????? filename???????????? = file_name
????? path???????????????? = path
????? fullpath???????????? = full_path
????? user_action????????? = user_action
??? EXCEPTIONS
????? cntl_error?????????? = 1
????? error_no_gui???????? = 2
????? not_supported_by_gui = 3
????? OTHERS?????????????? = 4. IF sy-subrc <> 0.
??? MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
?????????????? WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
? ENDIF. CHECK user_action = cl_gui_frontend_services=>action_ok. DATA:
??? localfile TYPE localfile. localfile = full_path. g_xml->export_to_file( filename = localfile ). 執行結果: ??xml version="1.0"??> -?<BOM> -?<BO> ??<AdmInfo?/> ??<Object>17Object> ??<Version>2Version> -?<Documents> ??<ORDER_ID>8895100207ORDER_ID> ??<STATUS_H>ASTATUS_H> ??<CREAT_DATE_H>2009-07-09CREAT_DATE_H> ??<CREAT_TIME_H>16:00:24CREAT_TIME_H> ??<SOLD_TO>0006000056SOLD_TO> ??<SHIP_TO>0006000056SHIP_TO> ??<CONT_TOTAL>1*20GP*22.00CONT_TOTAL> ??<ZZROUTE>B3US79ZZROUTE> ??<SHIP_COND>11SHIP_COND> ??<PMNTTRMS>N030PMNTTRMS> ??Documents> -?<Document_Lines> -?<item> ??<ITEMCODE>0000000010ITEMCODE> ??<PN_GROUP>GZ0300PN_GROUP> ??<MATNR>43250003MATNR> ??<CHARG>0000000003CHARG> ??<STATUS_I>A010STATUS_I> ??item> -?<item> ??<ITEMCODE>0000000020ITEMCODE> ??<PN_GROUP>GZ0300PN_GROUP> ??<MATNR>43250003MATNR> ??<CHARG>0000000003CHARG> ??<STATUS_I>A010STATUS_I> ??item> -?<item> ??<ITEMCODE>0000000030ITEMCODE> ??<PN_GROUP>GZ0300PN_GROUP> ??<MATNR>43255002MATNR> ??<CHARG>0000000093CHARG> ??<STATUS_I>A010STATUS_I> ??item> -?<item> ??<ITEMCODE>0000000040ITEMCODE> ??<PN_GROUP>GZ0300PN_GROUP> ??<MATNR>43255002MATNR> ??<CHARG>0000000093CHARG> ??<STATUS_I>A010STATUS_I> ??item> ??Document_Lines> ??BO>

總結

以上是生活随笔為你收集整理的将SAP订单以XML格式输出的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。