点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好用户,
当我将数据传输到XML文件时,默认情况下在XML文件中获得
找到附加的图片和代码。 我已经检查了很多SCN线程,但没有得到适当的解决方案。 请帮助我。
报告ztest_s8。 *潘塔拉选择* 参数:gk_ruta类型rlgrap文件名默认值'D:\ file2.xml'。 *潘塔拉选择* 数据:it_xml_final blob类型表。 TYPES:analysiscatid开始, AnlCat_SHead TYPE char20, 结束分析。 类型:分析代码的开头, 帐号代码TYPE char15, analysisdimensionid TYPE numc2, 名称TYPE char50, 状态类型numc1, AnalysisCatid TYPE analysiscatid, 分析代码的结尾。 类型:有效载荷的开始, analysiscode TYPE analysiscode, 有效载荷的结尾。 类型:sunsystemscontext的开头, 业务单元TYPE char3, 结束于sunsystemscontext。 类型:用户开始, 名称TYPE char3, END OF用户。 类型:ssc的开始, 用户TYPE用户, sunsystemscontext TYPE sunsystemscontext, 有效载荷TYPE有效载荷, SSC的结尾。 数据:it_file类型为TABLE OF ssc。 数据:wa_file类型为ssc。 *选择开始* 选择开始。 执行llena_accesos。 执行descarga_xml。 选择结束。 *选择结束* *表格LLENA_ACCESOS * 表格llena_accesos。 清除it_file。 移动:'PK1'到wa_file-user-name, " KEV"到wa_file-sunsystemscontext-businessunit, '99320042'到wa_file-payload-analysiscode-accountcode, '05'TO wa_file-payload-analysiscode-analysisdimensionid, 'SUNIL'为wa_file-payload-analysiscode-name, wa_file-payload-analysiscode-status为1, " T5_STAFFID/CRED"到wa_file-payload-analysiscode-AnalysisCatid-AnlCat_SHead。 将wa_file附加到it_file。 清除:wa_file。 ENDFORM。 " LLENA_ACCESOS *表格LLENA_ACCESOS * *表格DESCARGA_XML * 表格descarga_xml。 数据:l_dom类型参考if_ixml_element, m_document类型参考if_ixml_document, g_ixml类型参考if_ixml, w_string TYPE xstring, w_size TYPE i, w_result TYPE i, w_line TYPE字符串, it_xml TYPE dcxmllines, s_xml喜欢it_xml, w_rc喜欢sy-subrc。 数据:xml TYPE dcxmllines。 数据:rc TYPE sy-subrc, 开始xml_tab发生0, d像xml之类的行, xml_tab的结尾。 *类cl_ixml定义负载。 * g_ixml = cl_ixml => create()。 *不要检查g_ixml是否为INITIAL。 * m_document = g_ixml-> create_document()。 *不要检查m_document是否为INITIAL。 写:/'将数据转换为DOM 1:'。 通话转换('ID') 来源ssc ='abc'" extractiondate = sy-datum obs = it_file 结果XML it_xml_final。 *通话功能'SDIXML_DATA_TO_DOM' *出口 *名称='SSC' * dataobject = it_file *重要 * data_as_dom = l_dom *变化 * document = m_document *例外情况 *非法名称= 1 *其他= 2。 *如果sy-subrc = 0。 *写"好"。 * ELSE。 *写:" Err =", * sy-subrc。 * 万一。 *不要检查l_dom是否为INITIAL。 * w_rc = m_document-> append_child(new_child = l_dom)。 *如果w_rc是INITIAL。 *写"好"。 * ELSE。 *写:" Err =", * w_rc。 * 万一。 *通话功能'SDIXML_DOM_TO_XML' *出口 * document = m_document *重要 * xml_as_string = w_string *大小= w_size *桌子 * xml_as_table = it_xml *例外情况 * no_document = 1 *其他= 2。 *如果sy-subrc = 0。 *写"好"。 * ELSE。 *写:" Err =", * sy-subrc。 * 万一。 *循环到it_xml INTO xml_tab-d。 * APPEND xml_tab。 * ENDLOOP。 通话功能'WS_DOWNLOAD' 出口 bin_filesize = w_size 文件名= gk_ruta filetype ='BIN' 桌子 * data_tab = xml_tab data_tab = it_xml_final 例外情况 其他= 10。 如果sy-subrc <> 0。 消息ID sy-msgid类型sy-msgty编号sy-msgno 与sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4。 万一。 ENDFORM。 " DESCARGA_XML *表格DESCARGA_XML *
item.jpg (90.2 kB)
你好,马修,
感谢您的回复。
我们正在使用交易ID方法或上面注释的代码获取- 。因此,我创建以上代码只是出于测试目的。
我在替换功能模块WS_DOWNLOAD中添加了以下代码,但结果仍然相同。
我没有回答您的问题-我只是在说ABAP的一般原则。 不要使用过时的技术。 从WS_DOWNLOAD切换到CL_GUI_FRONTEND_SERVICES可以使您的代码更好,但不能解决您的问题。 你真的认为会吗?
你好,马修,
非常感谢。是的,它将对我的未来有所帮助。
编辑:确定您要导出的布局,但是我有一个变通方法,可以使用转换ID根据需要管理xml节点。 理想是这样的:
一周热门 更多>