XML data in SAP
I work with SAP system based on Oracle database. I use standard function FMCA_RETURN_READ_BY_ID to retrieve data for one particular form bundle. As I imagine, this data is stored in XML files. Because this retrieving is slow for massive data I am looking for a faster was to do it.My question is:
in case of Oracle based SAP system, where is XML data stored ? In Oracle tables with type XMLType or somewhere else (file system, ..).
Thanks in advance
Miran
Hi Wolfgang,
Cross-posting is discouraged and against the forum rules, because it is misused and makes a mess of the search due to distributed discussions and answers.
I will move it to the PI forum and add a watch on it as it is security forum related.
Unfortunately, the forum software does not have the option to "mirror" threads.
Cheers,
Julius
Edited by: Julius Bussche on Sep 14, 2009 9:50 PM
Similar Messages
-
Hi guys,
How to upload a XML file into sap?
is there any function module?
can anybody give me an example program for converting or uploading XML data into sap.
regards,
vinoth.Hi all,
The XML code and XML file given is running fine for me, but when i am using it, my XML file and code, the tables GV_header and GT_item are filling in the perform but outside perform it's empty. Please find the code and XML file , PLease give the answer its urgent, points will be given for sure.
My function module code is:-
FUNCTION Z_MMI_XML_EXTRACT_COPY.
""Local interface:
*" IMPORTING
*" REFERENCE(DOCTYPE) LIKE DRAW-DOKAR
*" REFERENCE(DOCNUM) LIKE DRAW-DOKNR
*" REFERENCE(DOCVER) LIKE DRAW-DOKVR
*" REFERENCE(DOCPART) LIKE DRAW-DOKTL
*" TABLES
*" T_HEADER STRUCTURE ZFI_HEADER
*" T_ITEMS STRUCTURE ZFI_ITEMS
Load iXML Lib.
type-pools: ixml.
class cl_ixml definition load.
data: G_IXML type ref to if_ixml.
data: STREAMFACTORY type ref to if_ixml_stream_factory.
data: ISTREAM type ref to if_ixml_istream.
data: DOCUMENT type ref to if_ixml_document.
data: PARSER type ref to if_ixml_parser.
You should provide the parameter for file name
*LV_FILE_URL = 'C:input_xml.xml'.
types: begin of XML_LINE,
DATA(256) type x,
end of XML_LINE.
***types: begin of TY_HEADER,
CUST_NAME(20) type c,
CARD_NO(20) type c,
TAX_AMOUNT(10) type c,
TOTAL_AMOUNT(10) type c,
end of TY_HEADER.
***types: begin of TY_ITEM,
ITEM_NO(4) type n,
ITEM_ID(20) type c,
ITEM_TITLE(50) type c,
ITEM_QTY(10) type c,
ITEM_UPRICE(10) type c,
end of TY_ITEM.
*data: GV_HEADER type TY_HEADER.
*data: GV_HEADER like zfi_header occurs 0 with header line.
data : GV_HEADER LIKE ZFI_HEADER.
*data: GT_ITEM type standard table of TY_ITEM with header line.
*data: GT_ITEM type standard table of zfi_items with header line.
data: GT_ITEM type standard table of zfi_items with header line.
data: XML_TABLE type table of XML_LINE,
XML_TABLE_SIZE type i.
data: LV_FILE_URL type rlgrap-filename.
DATA : BEGIN OF itab OCCURS 0,
a(100) TYPE c,
END OF itab.
DATA: xml_out TYPE string .
DATA : BEGIN OF upl OCCURS 0,
f(255) TYPE c,
END OF upl.
DATA: xmlupl TYPE string .
DATA : BEGIN OF wa_draw OCCURS 0,
dokar LIKE draw-dokar,
doknr LIKE draw-doknr,
dokvr LIKE draw-dokvr,
doktl LIKE draw-doktl,
END OF wa_draw.
DATA : g_documenttype LIKE bapi_doc_aux-doctype,
g_documentnumber LIKE bapi_doc_aux-docnumber,
g_documentpart LIKE bapi_doc_aux-docpart,
g_documentversion LIKE bapi_doc_aux-docversion.
*" Itab required in IMPORTING parameter of BAPI
DATA : t_documentfile LIKE bapi_doc_files2 OCCURS 0 WITH HEADER LINE.
DATA : t_documentstructure LIKE bapi_doc_structure OCCURS 0 WITH HEADER
LINE,
itab required in TABLES parameters of BAPI
t_documentfiles LIKE bapi_doc_files2 OCCURS 0 WITH HEADER LINE,
t_components LIKE bapi_doc_comp OCCURS 0 WITH HEADER LINE,
t_return LIKE bapiret2.
DATA : l_docfile TYPE string.
***FILL THE TYPE OF ATTACHMENT in IMPORTING itab**
t_documentfile-wsapplication = 'XML'.
APPEND t_documentfile.
wa_draw-dokar = DOCTYPE.
wa_draw-doknr = DOCNUM.
wa_draw-doktl = DOCPART.
wa_draw-dokvr = DOCVER.
CALL FUNCTION 'BAPI_DOCUMENT_CHECKOUTVIEW2'
EXPORTING
documenttype = wa_draw-dokar
documentnumber = wa_draw-doknr
documentpart = wa_draw-doktl
documentversion = wa_draw-dokvr
documentfile = t_documentfile "IMPORTING itab of BAPI
getstructure = '1'
getcomponents = 'X'
ORIGINALPATH = ' '
HOSTNAME = ' '
getheader = 'X'
DOCBOMCHANGENUMBER =
DOCBOMVALIDFROM =
DOCBOMREVISIONLEVEL =
IMPORTING
return = t_return
TABLES
documentstructure = t_documentstructure
documentfiles = t_documentfiles "TABLES itab of BAPI
components = t_components
LOOP AT t_documentfiles .
ENDLOOP.
l_docfile = t_documentfiles-docfile.
The next step is creating the main factory for the iXML library:
G_IXML = cl_ixml=>create( ).
Now Create Stream Factory
STREAMFACTORY = G_IXML->create_stream_factory( ).
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
*filename = 'C:DMS_SPA.XML'
filename = l_docfile
filetype = 'BIN'
IMPORTING
FILELENGTH = XML_TABLE_SIZE
TABLES
data_tab = XML_TABLE.
ISTREAM = STREAMFACTORY->create_istream_itable( table = XML_TABLE
size = XML_TABLE_SIZE )
Create XML Document instance
DOCUMENT = G_IXML->create_document( ).
Create parser Object
PARSER = G_IXML->create_parser( stream_factory = STREAMFACTORY
ISTREAM = istream
DOCUMENT = document ).
Parse an XML document into a DOM tree
*parser->parse( ).
Parsing Error Processing
if PARSER->parse( ) ne 0.
if PARSER->num_errors( ) ne 0.
data: PARSEERROR type ref to if_ixml_parse_error,
STR type STRING,
I type i,
COUNT type I,
INDEX type i.
COUNT = PARSER->num_errors( ).
write: COUNT, ' parse errors have occured:'.
INDEX = 0.
while INDEX < COUNT.
PARSEERROR = PARSER->get_error( INDEX = index ).
I = PARSEERROR->get_line( ).
write: 'line: ', i.
I = PARSEERROR->get_column( ).
write: 'column: ', i.
STR = PARSEERROR->get_reason( ).
write: STR.
INDEX = index + 1.
endwhile.
endif.
endif.
Close the stream since it �s not needed anymore
call method ISTREAM->close( ).
clear ISTREAM.
DATA : GV_NODE type ref to if_ixml_node.
DATA : GV_NODETEXT type STRING.
data: GV_FIRST_TIME.
GV_FIRST_TIME = 'X'.
GV_NODE = DOCUMENT.
*GT_ITEM-item_no = 1.
GT_ITEM-itemno_acc = 1.
perform GET_DATA tables GT_ITEM
using GV_NODE
changing GV_HEADER.
Last item is still not added.
append GT_ITEM.
APPEND GV_HEADER.
*T_HEADER[] = gv_header[].
t_items[] = gt_item[].
**write : GV_HEADER-cust_name,
GV_HEADER-card_no,
GV_HEADER-tax_amount,
GV_HEADER-total_amount.
**loop at GT_ITEM.
write /:.
write : GT_ITEM-item_no,
GT_ITEM-item_id,
GT_ITEM-item_title,
GT_ITEM-item_qty,
GT_ITEM-item_uprice.
**endloop.
ENDFUNCTION.
FORM Get_data *
***form get_data tables YT_ITEM structure gt_ITEM
using value(x_node) type ref to if_ixml_node
changing Y_HEADER type TY_HEADER.
form get_data1 tables YT_ITEM structure zfi_items
using value(x_node) type ref to if_ixml_node
changing Y_HEADER type zfi_header.
***form get_data tables YT_ITEM structure GT_ITEM
using value(x_node) type ref to if_ixml_node
changing Y_HEADER type TY_HEADER.
data: INDENT type i.
data: PTEXT type ref to if_ixml_text.
data: STRING type string.
data: TEMP_STRING(100).
case X_NODE->get_type( ).
when if_ixml_node=>co_node_element.
STRING = X_NODE->get_name( ).
GV_NODETEXT = STRING.
when if_ixml_node=>co_node_text.
PTEXT ?= X_NODE->query_interface( IXML_IID_TEXT ).
if PTEXT->ws_only( ) is initial.
STRING = X_NODE->get_value( ).
case GV_NODETEXT.
when 'Customer'.
when 'HEADER'.
clear GV_HEADER.
when 'Name'.
when 'INVOICE_IND'.
move STRING to GV_HEADER-cust_name.
move STRING to GV_HEADER-INVOICE_IND.
when 'CompanyCode'.
move STRING to GV_HEADER-CompanyCode.
when 'OBJ_TYPE'.
move STRING to GV_HEADER-OBJ_TYPE.
when 'username'.
move STRING to GV_HEADER-username.
when 'PO_reference'.
move STRING to GV_HEADER-PO_reference.
when 'Invoice_Date'.
move STRING to GV_HEADER-Invoice_Date.
when 'Posting_Date'.
move STRING to GV_HEADER-Posting_Date.
when 'Amount'.
move STRING to GV_HEADER-Amount.
when 'Currency'.
move STRING to GV_HEADER-Currency.
*APPEND GV_HEADER.
Iteam details
when 'invoice_doc_item'.
move STRING to GT_ITEM-ITEMNO_ACC.
when 'currency'.
move STRING to TEMP_STRING.
move TEMP_STRING to GT_ITEM-CURRENCY.
when 'Quantity'.
move STRING to GT_ITEM-Quantity.
when 'UoM'.
move STRING to GT_ITEM-UoM.
endcase.
endif.
endcase.
if GV_NODETEXT = 'Header'.
clear GV_HEADER.
elseif GV_NODETEXT = 'Item'.
if GV_FIRST_TIME ne 'X'.
append GT_ITEM.
clear : gt_item.
GT_ITEM-ITEMNO_ACC = gt_item-itemno_acc + 1.
endif.
GV_FIRST_TIME = ' '.
endif.
Get the next child
X_NODE = x_node->get_first_child( ).
Recurse
while not X_NODE is initial.
perform GET_DATA tables GT_ITEM
using X_NODE
changing GV_HEADER.
X_NODE = x_node->get_next( ).
endwhile.
endform.
the XML file is:-
Thanx in advance -
Hi ,
Is there any function module to get XML data into SAP?
If function module doesnt exist, suggest alternative to do it.
Thanks,
Shivaa...Hi Shiva ,
there is lot of stuff regarding ur query in SDN....
anyways check this link...
https://www.sdn.sap.com/irj/scn/wiki?path=/display/abap/upload%252bxml%252bfile%252bto%252binternal%252btable
hope this solves ur problem.
Regards,
Anuj -
How to load the XML data of SAP to a target database
i use an IDocs to read from SAP and converted into XML (ie .XSD ) and now i want to move that XML data to target data base.
i am trying to move XML data to template table, but i am getting this mapping error , even though i used NRDM and mapping while moving to template table.
ERROR MESSAGE :
Invalid mapping expression for column <Query_1.SNDPRN>. Additional information: <Cannot parse expression.
Table <Query.EDI_DC40> for column <SNDPRN> does not occur in the FROM clause. For a top-level query, all columns must belong to some table in the FROM clause.. (BODI-1112351)>. (BODI-1111081)Hi Srikanth,
Please find my understanding below.Correct me if my understanding is wrong.
1)You have moved the data from IDOC to XML file (i.e Creating an XSD and using it as target).
2)Now this XML file, will you your source and you are going to load it into the target table.
The error looks like BODS is unable to parse the Hierarchy structure to the flat structure.
How are you un-nesting your data (Are you using XML pipeline) .
Thanks
Arun. -
How to Push the into SAP ( XML data converted into IDOC )
Hi
i am getting XML file from Non SAP system.I need to push XML data into SAP on daily basis with out using XI as the middleware.
I know if i get text file will use BDC's or LSMW. But i am getting data in XML format and then i need to converted into IDOC format and stored in to sap data base tables.
Thanks for advance.
sriniIs the XML an IDOC-XML or custom XML that you need to post as an IDOC??
If it is IDOC-XML you need to defined XMLFile port to process the IDOC-XML without any mapping.
If it is a custom XML, parse the XML data into an internal table (as required) & continue with BDC or IDOC posting as you wish.
Check for XML parsing programs..
-Siva Maranani -
XML Data is possible for doing RDA capable in SAP BI
Hi All,
Can i make xml data into sap bi as a realtime enabled.
My requriement is that i need to do real time the web based data.http://help.sap.com/saphelp_nw04s/helpdata/EN/fe/65d03b3f34d172e10000000a11402f/frameset.htm
i found this link,
But question is that to day i extarcted a.xml file into sap bi by webservices RDA
so RDA also will work delata from the same file each time??
so in that case after few days..the xml file storage space is required more right?
Please correct me if i am wrong? -
Hi Friends,
See the followong code which converts xml data into itab.
*& Report ZTEST_XML1 *
REPORT ZTEST_XML1 .
*PURPOSE: This program transfers XML data into SAP internal table format
*The nodes in DOM can be stored as fields in SAP Internal table
type pool definitions
TYPE-POOLS: ixml. "iXML Library Types
type definitions
TYPES: BEGIN OF t_xml_line, "Structure for holding XML data
data(256) TYPE x,
END OF t_xml_line.
DATA: l_ixml TYPE REF TO if_ixml,
l_streamfactory TYPE REF TO if_ixml_stream_factory,
l_parser TYPE REF TO if_ixml_parser,
l_istream TYPE REF TO if_ixml_istream,
l_document TYPE REF TO if_ixml_document,
l_node TYPE REF TO if_ixml_node,
l_xmldata TYPE string.
DATA: l_elem TYPE REF TO if_ixml_element,
l_root_node TYPE REF TO if_ixml_node,
l_next_node TYPE REF TO if_ixml_node,
l_name TYPE string,
l_iterator TYPE REF TO if_ixml_node_iterator.
DATA: l_xml_table TYPE TABLE OF t_xml_line, " XML Table of the structure
*t_xml_line
l_xml_line TYPE t_xml_line, " Record of structure t_xml_line
l_xml_table_size TYPE i. " XML table size
DATA: l_filename TYPE string. " String to hold filename
data: begin of i_final occurs 0,
pnumber(20),
pname(50),
pdes(70),
end of i_final.
PARAMETERS: pa_file TYPE char1024 DEFAULT 'C:\product.xml'.
Validation of XML file: Only DTD included in XML document is supported
PARAMETERS: pa_val TYPE char1 AS CHECKBOX.
start of selection
START-OF-SELECTION.
Creating the main iXML factory
l_ixml = cl_ixml=>create( ).
Creating a stream factory
l_streamfactory = l_ixml->create_stream_factory( ).
PERFORM get_xml_table CHANGING l_xml_table_size l_xml_table.
Wrap the table containing the file into a stream.
l_istream = l_streamfactory->create_istream_itable( table = l_xml_table
size = l_xml_table_size ).
Creating a document
l_document = l_ixml->create_document( ).
Creating a Parser
l_parser = l_ixml->create_parser( stream_factory = l_streamfactory
istream = l_istream
document = l_document ).
Validate a document
IF pa_val = 'X'.
l_parser->set_validating( mode = if_ixml_parser=>co_validate ).
ENDIF.
Parse the stream
IF l_parser->parse( ) <> 0.
IF l_parser->num_errors( ) <> 0.
DATA: parseerror TYPE REF TO if_ixml_parse_error,
str TYPE string,
i TYPE i,
count TYPE i,
index TYPE i.
count = l_parser->num_errors( ).
WRITE: count, ' parse errors have occured:'.
index = 0.
WHILE index < count.
parseerror = l_parser->get_error( index = index ).
i = parseerror->get_line( ).
WRITE: 'line: ', i.
i = parseerror->get_column( ).
WRITE: 'column: ', i.
str = parseerror->get_reason( ).
WRITE: str.
index = index + 1.
ENDWHILE.
ENDIF.
ENDIF.
Process the document
IF l_parser->is_dom_generating( ) EQ 'X'.
PERFORM process_dom USING l_document.
ENDIF.
*& Form get_xml_table
text
<--P_L_XML_TABLE_SIZE text
<--P_L_XML_TABLE text
FORM get_xml_table CHANGING p_l_xml_table_size
p_l_xml_table.
Local variable declarations
DATA: l_len TYPE i,
l_len2 TYPE i,
l_tab TYPE tsfixml,
l_content TYPE string,
l_str1 TYPE string,
c_conv TYPE REF TO cl_abap_conv_in_ce,
l_itab TYPE TABLE OF string.
l_filename = pa_file.
Upload file from the client's workstation
CALL METHOD cl_gui_frontend_services=>gui_upload
EXPORTING
filename = l_filename
filetype = 'BIN'
IMPORTING
filelength = l_xml_table_size
CHANGING
data_tab = l_xml_table
EXCEPTIONS
OTHERS = 19.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
Writing the XML document to the screen
CLEAR l_str1.
LOOP AT l_xml_table INTO l_xml_line.
c_conv = cl_abap_conv_in_ce=>create( input = l_xml_line-data replacement
= space ).
c_conv->read( IMPORTING data = l_content len = l_len ).
CONCATENATE l_str1 l_content INTO l_str1.
ENDLOOP.
l_str1 = l_str1+0(l_xml_table_size).
SPLIT l_str1 AT cl_abap_char_utilities=>cr_lf INTO TABLE l_itab.
WRITE: /.
WRITE: /' XML File'.
WRITE: /.
LOOP AT l_itab INTO l_str1.
REPLACE ALL OCCURRENCES OF cl_abap_char_utilities=>horizontal_tab IN
l_str1 WITH space.
WRITE: / l_str1.
ENDLOOP.
WRITE: /.
ENDFORM. " get_xml_table
*& Form process_dom
text
-->P_L_DOCUMENT text
FORM process_dom USING document TYPE REF TO if_ixml_document.
DATA: node TYPE REF TO if_ixml_node,
iterator TYPE REF TO if_ixml_node_iterator,
nodemap TYPE REF TO if_ixml_named_node_map,
attr TYPE REF TO if_ixml_node,
name TYPE string,
prefix TYPE string,
value TYPE string,
indent TYPE i,
count TYPE i,
index TYPE i.
node ?= document.
CHECK NOT node IS INITIAL.
ULINE.
WRITE:/.
WRITE: /' DOM-TREE'.
WRITE: /.
IF node IS INITIAL.
EXIT.
ENDIF.
Create a node iterator
iterator = node->create_iterator( ).
Get current node
node = iterator->get_next( ).
Loop over all nodes
WHILE NOT node IS INITIAL.
indent = node->get_height( ) * 2.
indent = indent + 20.
CASE node->get_type( ).
WHEN if_ixml_node=>co_node_element.
element node
name = node->get_name( ).
nodemap = node->get_attributes( ).
WRITE: / 'ELEMENT :'.
WRITE: AT indent name COLOR COL_POSITIVE INVERSE.
IF NOT nodemap IS INITIAL.
attributes
count = nodemap->get_length( ).
DO count TIMES.
index = sy-index - 1.
attr = nodemap->get_item( index ).
name = attr->get_name( ).
prefix = attr->get_namespace_prefix( ).
value = attr->get_value( ).
WRITE: / 'ATTRIBUTE:'.
WRITE: AT indent name COLOR COL_HEADING INVERSE, '=',
value COLOR COL_TOTAL INVERSE.
ENDDO.
ENDIF.
WHEN if_ixml_node=>co_node_text OR
if_ixml_node=>co_node_cdata_section.
text node
value = node->get_value( ).
WRITE: / 'VALUE :'.
WRITE: AT indent value COLOR COL_GROUP INVERSE.
ENDCASE.
Advance to next node
node = iterator->get_next( ).
ENDWHILE.
*delete adjacent duplicates from i_final.
*loop at i_final.
*write:/ i_final-pnumber,i_final-pname,i_final-pdes.
*endloop.
*if not i_final[] is initial.
*modify ztestproduct from table i_final.
*endif.
ENDFORM. " process_dom
in the above code at line no: 268 there is a method:
value = node->get_value( ).in which actual data from XML file is coming.
So the varibale "Value" contains the data.
see line no: 270:
WRITE: AT indent value COLOR COL_GROUP INVERSE.
what ever values i am getting here i want to append to a Internal table ...
Can any body tell me how to do that?
i am sure of reward points.Hai Ravi
REPORT abc.
DATA
DATA : t001 LIKE TABLE OF t001 WITH HEADER LINE.
DATA : BEGIN OF itab OCCURS 0,
a(100) TYPE c,
END OF itab.
DATA: xml_out TYPE string .
DATA : BEGIN OF upl OCCURS 0,
f(255) TYPE c,
END OF upl.
DATA: xmlupl TYPE string .
FIRST PHASE
FIRST PHASE
FIRST PHASE
Fetch Data
SELECT * FROM t001 INTO TABLE t001.
XML
CALL TRANSFORMATION ('ID')
SOURCE tab = t001[]
RESULT XML xml_out.
Convert to TABLE
CALL FUNCTION 'HR_EFI_CONVERT_STRING_TO_TABLE'
EXPORTING
i_string = xml_out
i_tabline_length = 100
TABLES
et_table = itab.
Download
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
filetype = 'BIN'
filename = 'd:\xx.xml'
TABLES
data_tab = itab.
SECOND PHASE
SECOND PHASE
SECOND PHASE
BREAK-POINT.
REFRESH t001.
CLEAR t001.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = 'D:\XX.XML'
filetype = 'BIN'
TABLES
data_tab = upl.
LOOP AT upl.
CONCATENATE xmlupl upl-f INTO xmlupl.
ENDLOOP.
XML
CALL TRANSFORMATION ('ID')
SOURCE XML xmlupl
RESULT tab = t001[].
Regards
Sreeni -
Issue in loading XML data in BW delta queue
Hello All,
My requirement is to stage small amount of XML data in SAP BW. For doing so, i have followed below steps...
1. Create File data source
2. Define Myself data source using file data source with Function module
3. Initialize load process without no data transfer
4. Using SOAP RFC service, Load xml records in delta queue.
Now in step number 4, i am unable to open the SOAP RFC service using which we can select the xml file.
Any help in this regard will be highly appriciated.
Thanks
KetanSOAP/RFC service is already activated. Only problem i am facing is as below.......
1. Created HTML page by copying html snipest
2. On created HTML page, select XML file as an input and URL of SOAP service which is pointing out to the application server
3. When i press "Send recordset" button, HTML page throws "Java script" error and data is not being pushed to BW delta queue....
Please share your ideas to resolve this issue.
Thanks in advance,
Ketan -
Error in loading XML data in BW delta queue
Hi All
My requirement is to stage small amount of XML data in SAP BW 3.5. For doing so, i have followed the steps specified in How to send XML data to BW
Link for "How to send XML data to BW"
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/21d8aa90-0201-0010-5e83-a3798b9a5ee0
1. Created File data source
2. Defined data source using file data source with Function module
3. Initialize load process without no data transfer
4. Using SOAP RFC service, Load xml records in delta queue.
Now in step number 4, i have created the following
1. Created the html code
2. On created HTML page, select .CSV file as an input and URL of SOAP service which is pointing out to the application server
3. When i press "XML Send recordset" button, HTML page throws "Java script" error and data is not being pushed to BW delta queue
Any help in this regard will be highly appreciated.
Thanks
YeshwantHi All
My requirement is to stage small amount of XML data in SAP BW 3.5. For doing so, i have followed the steps specified in How to send XML data to BW
Link for "How to send XML data to BW"
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/21d8aa90-0201-0010-5e83-a3798b9a5ee0
1. Created File data source
2. Defined data source using file data source with Function module
3. Initialize load process without no data transfer
4. Using SOAP RFC service, Load xml records in delta queue.
Now in step number 4, i have created the following
1. Created the html code
2. On created HTML page, select .CSV file as an input and URL of SOAP service which is pointing out to the application server
3. When i press "XML Send recordset" button, HTML page throws "Java script" error and data is not being pushed to BW delta queue
Any help in this regard will be highly appreciated.
Thanks
Yeshwant -
How i can transfer XML data from internet to SAP R/3?
Hi all,
I have an issue to catch data from internet (perticular website) in xml format and i want to update that xml data format into SAP R/3 database. so how i can do that?
Can I do directly or i should use any third party tools?Hi Deepak,
Refer these two weblogs,
/people/bhavesh.kantilal/blog/2006/11/20/webservice-calls-from-a-user-defined-function
/people/jin.shin/blog/2007/05/21/handling-web-service-soap-fault-responses-in-sap-netweaver-xi
I hope, this will solve your problem
Regards,
Deviprasad -
Pls Help me with steps to add data from xml file to SAP B1 through B1iSN.
Pls Help me with steps to add data from xml file to SAP B1 through B1iSN. I am getting stuck in xsl transformation. not able to understand where the mapping code needs to be added.
Pls explain me the steps for adding data from xml to B1 quotation step by step.
thanks and regards
PriyaHi,
Have you checked this: https://sap.na.pgiconnect.com/p45508295/?launcher=false&fcsContent=true&pbMode=normal ?
Thanks,
Gordon -
Storing data from Java Pogram(data in xml format) to SAP R/3
Hi,
I am having a java program which results me an xml.
I want to dump the data to SAP R/3.
What are the different ways/techniques should i use,to achieve the result?
Thanks for your reply,
regards,
cgHi,
In simle terms can you explain me in more detail.
lest say my java application produces xml as:
<xml>
<fname>myfirstname</fname>
<lname>mylastname</lname>
thanks for your reply,
reg
cg -
Adobe Form with XML interface cannot retrieve all data from SAP
hi all
I want to use the Adobe forms for the real estate module.
I had seen that adobe forms can have an interface with XML input and output as parameter.
In the interface type only the /DOCPARAMS an the DOCXML are INPUT parameters which are available.
No other INPUT parameter can be added to it.
When i try to retrieve the data in real estate there are some default function modules for retrieving the data from real estate.
But this function modules also are going to find out if the form which asks for this information has a IMPORT parameter
for the required data. For example, the SENDER data is retrieved, but before the default function module retrieve this data
the function module checks if the form has a INPUT parameter SENDER.
And that is not the case. And i cannot create the SENDER parameter to it, because this INTERFACE type does not allow it.
Does anybody know a solution herefore?
kind regards,
Anton PierhagenHi Bhaskar
It is a long time ago, almost 2 years.
I created my own custom development for calling the Adobe form. This custom development uses the correct function module interface with the IMPORT XML.
The XML which i sent as IMPORT PARAMETER to the form is also created by own custom development. Via the default XML class of SAP
So that was my solution
Kind regards,
Anton Pierhagen -
XML data file links java and sap
Hi ,
Please help me this
How to connect xml file to java into sap
please send me sample scenario.
in java i call the this sap function module 'BAPI_MAT_BOM_EXISTENCE_CHECK'.
1. Check BOM existence with BAPI_MAT_BOM_EXISTENCE_CHECK
2. Exit BOM diff if BOM doesn’t exist
3. Read BOM structure with CSAP_MAT_BOM_READ
4. Compare SAP BOM items incl. subitems to XML BOM items and subitemscurrently I use following methods tu opload and to transfor the xml into a string.
* Method to create XML from data file
CALL METHOD instance->import_from_file
EXPORTING
filename = gf_filename
RECEIVING
retcode = ch_retcode.
* Convert into XML-Stream
CALL METHOD instance->render_2_string
* EXPORTING
* pretty_print = 'X'
IMPORTING
retcode = ch_retcode
stream = lf_string .
* size = .
When I use read dataset the output of the xml is into an internal table where I have many lines depending on the XML data file, this means if my xml has 10lines the internal table of read dataset has also 10 lines but I need a string to make the transformation of the xml. -
SAP Business connector sending XML data
Dear all,
I am using an RFC to transfer the data from SAP R/3 to web server. I have to send the data to web server URl via SAP Business Connector in the below format.
I am getting data in RFC sttructure, Now I need to change the above data into XMl and hence need to compress.
The requirement is as below:
The XML message is signed, encoded in base64.
Signed and encoded XML message is compressed in GZIP format.
Can u please share your ideas to achieve this.
Thanks and regards,Dear Michal and Prateek,
Thank you very much for your ideas.
This is my flow:
clear XML data -> SIgning with detached signature -> Base 64 encode -> send the data via HTTP port.
I am signing the message using pub.security.pkcs7:sign.
But here problem is I am not able to get the detached signature.
If I select the option Detached signature it is giving only signature.
How can I manage the Detached signature and Message at HTTP port.
Please help me.
Thanks and regards,
Maybe you are looking for
-
How do I add multiple contacts in a category in mail
How do I add multiple contacts in a category in mail so I don't have to add them one at a time when I receive an email with multiple recipients in the CC? Thanks in advanced, Bill
-
Why is Photoshop crashing when saving a TARGA file after a PSD
I am a graphic designer and having a problem since the company I work for recently upgraded to CS5. Here's the workflow: 1. Open a RGB mode PSD template in Photoshop 2. Find imagery on the internet, through stock photo banks or google 3. Drag images
-
PPOMA_CRM - System does not find the correct Organizational Unit
Dear Experts, we have done the following: 1. We created a new Z-Field within table CRMD_ORDERADM_H with the Application Enhancement Tool. The name of the field is: ZZFLD000000. 2. The we changed the View-Cluster T77OMATTR and added the attribute ZZFL
-
Is ther a way to get a ringtone from music
is there a way to get a ringtone from your music. Also can u pair music to contacts?
-
How do i switch to shopping cart
How do I switch to shopping cart in itunes store?