Текущее время: Сб, июл 26 2025, 03:31

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Как можно выгрузить в XML???
СообщениеДобавлено: Вт, мар 02 2010, 06:33 
Начинающий
Начинающий

Зарегистрирован:
Вт, фев 23 2010, 07:26
Сообщения: 18
Пол: Мужской
Добрый день друзия. Теперьу меня такая сетуация. Мне нужна выгрузить данный в XML из внутренный таблицы. Что надо делать для этого, можте подсказать? Нужно ли с начало создать XML файл? (как шаблон в Excel).


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как можно выгрузить в XML???
СообщениеДобавлено: Вт, мар 02 2010, 07:22 
Начинающий
Начинающий

Зарегистрирован:
Вт, фев 23 2010, 07:26
Сообщения: 18
Пол: Мужской
Выгрузка в СОНО формы 851.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как можно выгрузить в XML???
СообщениеДобавлено: Вт, мар 02 2010, 08:50 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Баке написал:
Добрый день друзия. Теперьу меня такая сетуация. Мне нужна выгрузить данный в XML из внутренный таблицы. Что надо делать для этого, можте подсказать? Нужно ли с начало создать XML файл? (как шаблон в Excel).

Поищите на форуме. На эту тему много информации.
У нас ребята выгрузку в СОНО делали таким образом (если я не ошибаюсь):
Выгружали форму из СОНО, затем смотрели ее структуру(шапка, теги и тд), затем в своей программе собирали тхт файл и выгружали его, затем грузили в СОНО.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как можно выгрузить в XML???
СообщениеДобавлено: Ср, мар 03 2010, 14:51 
Начинающий
Начинающий

Зарегистрирован:
Вт, фев 23 2010, 07:26
Сообщения: 18
Пол: Мужской
я написаль все xml-ский текст на ZAM (шапка, теги и тд) c типам с. Теперь я не могу выгрузить эту страку (ZAM) на какой ни буть файл. Как можно делать? Как выгрузить страку на .txt или .xml файл.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как можно выгрузить в XML???
СообщениеДобавлено: Ср, мар 03 2010, 15:23 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Вт, июн 09 2009, 15:25
Сообщения: 24
Откуда: Москва
Пол: Мужской
Code:
   
...
CONCATENATE filename '.xml' INTO filename.
...
CALL METHOD cl_gui_frontend_services=>gui_download
      EXPORTING
        filename = filename
        filetype = 'BIN'
      CHANGING
        data_tab = lt_xml.


либо ФМ 'GUI_DOWNLOAD'


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как можно выгрузить в XML???
СообщениеДобавлено: Чт, мар 04 2010, 18:25 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Вт, янв 30 2007, 17:10
Сообщения: 488
Немножко не по теме форума, но есть такой продукт SAP Business Objects Data Services (ETL-инструмент), и с его помощью преобразовывается что угодно во что угодно (xml в том числе) в обе стороны. Конечно это стоит денег, но просто следует знать про его существование.

_________________
Карма - это суперпозиция граблей, на которые мы уже успели наступить, но которые еще не долетели...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как можно выгрузить в XML???
СообщениеДобавлено: Пт, мар 05 2010, 12:31 
Начинающий
Начинающий

Зарегистрирован:
Вт, фев 23 2010, 07:26
Сообщения: 18
Пол: Мужской
Я сделаль ). Тупа напсиль xml-ский коды (шапка, теги и тд) на таблицу и выгрузиль. Код такой:

tables: anla, anlz, anlv, t001z, t099v.

include zt00_fastole2ii.

selection-screen begin of block main_frame with frame title text-001.

parameters: p_bukrs like anla-bukrs obligatory memory id buk.
select-options: p_anln1 for anla-anln1.
parameters: p_year like anla-zujhr obligatory default sy-datum+0(4).
selection-screen begin of block vras_frame with frame title text-002.
parameters: perv radiobutton group vras,
ochr radiobutton group vras,
dop radiobutton group vras,
dpuv radiobutton group vras.
selection-screen end of block vras_frame.
parameters: num_uv(5),
dat_uv like bkpf-budat.
parameters: filename like cfdown-file default 'C:\Table.xml'.
* FILTYP(10) DEFAULT 'DAT' OBLIGATORY.
selection-screen end of block main_frame.
*LIKE RLGRAP-FILENAME DEFAULT 'C:\TABLE.TXT',


**************************************************
* äàííûå
data: begin of zam_os_z occurs 0,
bukrs like anlz-bukrs,
anln1 like anlz-anln1,
fkber like anlz-fkber,
end of zam_os_z.

data: begin of zam_os_v occurs 0,
bukrs like anlv-bukrs,
anln1 like anlv-anln1,
vsart like anlv-vsart,
vsges like anlv-vsges,
vstar like anlv-vstar,
end of zam_os_v.

data: begin of zam_os occurs 0,
bukrs like anla-bukrs,
anln1 like anla-anln1,
txt50 like anla-txt50,
ehwzu like anla-ehwzu,
meins like anla-meins,
stadt like anla-stadt,
grein like anla-grein,
aufla like anla-aufla,
fkber like anlz-fkber,
fiamt like anla-fiamt,
vsart like anlv-vsart,
ehwnr like anla-ehwnr,
vsges like anlv-vsges,
grufl like anla-grufl,
month type i,
aktiv like anla-aktiv,
deakt like anla-deakt,
vstar like anlv-vstar,
stavka like anlv-vstar,
stavka2 like anlv-vstar,
menge like anla-menge,
sum1 like anlv-vstar,
sum2 like anlv-vstar,
end of zam_os.

data: begin of z_t001z occurs 0,
bukrs like t001z-bukrs,
party like t001z-party,
paval like t001z-paval,
end of z_t001z.

data: begin of z_t001w occurs 0,
werks like t001w-werks,
name2 like t001w-name2,
end of z_t001w.

data: begin of z_t099b_a occurs 0,
vstar like v_t099b-vstar,
vsttx like v_t099b-vsttx,
end of z_t099b_a.

data zt099v like t099v occurs 0 with header line.

data: zlists type i,
str1(100),
str2(10),
str3(10),
txt(2000),
* FILENAME type string,
filen type string,
filtyp(10),
mes(2) type n,
a(15),
b(15),
kof(10),
t(2),
summa(12)," like anlv-VSTAR,
summa2 like anlv-vstar,
plowad(10) type c,
kol(10) type n,
k(10) type n,
i(2) type n,
perc(3) type n.
data mrp type i.

data: begin of tab occurs 0,
xml(65535),
end of tab,
begin of tab1 occurs 0,
xml1(65535),
end of tab1,
begin of tab2 occurs 0,
xml2(65535),
end of tab2.

initialization.

at selection-screen on value-request for filename.
*-------------- ##### ##### ## ###### ---------------------------------*
call function 'WS_FILENAME_GET'
exporting
def_filename = ''
def_path = 'C:\batch\'
mask = ',*.xls.'
mode = '0'
title = '##### #####'
importing
filename = filename
exceptions
inv_winsys = 1
no_batch = 2
selection_cancel = 3
selection_error = 4.

start-of-selection.

at selection-screen output.

read table p_anln1 index 1.
if sy-subrc <> 0.
p_anln1-sign = 'I'. p_anln1-option = 'BT'.
p_anln1-low = '800000000000'.
p_anln1-high = '899999999999'.
append p_anln1.
endif.

**************************************************************
* íà÷àëî
start-of-selection.
filtyp = 'DAT'.

select s~bukrs s~anln1 s~txt50 s~ehwzu s~meins s~stadt s~grein s~aufla
s~fiamt s~ehwnr s~grufl into corresponding fields of table zam_os
from anla as s
where s~bukrs = p_bukrs and s~anln1 in p_anln1 and s~eigkz = '2'.

select v~bukrs v~anln1 v~vsart v~vsges v~vstar into
corresponding fields of table zam_os_v
from anlv as v
where v~bukrs = p_bukrs and v~anln1 in p_anln1.

select z~bukrs z~anln1 z~fkber into corresponding fields of table zam_os_z
from anlz as z
where z~bukrs = p_bukrs and z~anln1 in p_anln1.

select werks name2 from t001w into table z_t001w
where werks = p_bukrs.

select bukrs party paval from t001z into table z_t001z
where ( bukrs = p_bukrs ) and ( party = 'SAPKZ1' or party = 'SAPKZ2' or party = 'SAPK30' ).

select vstar vsttx from t099v into table z_t099b_a.


describe table zam_os lines zlists.
if zlists = 0.
write: / 'Íåò äàííûõ'.
exit.
endif.

i = 1.
kol = 1.
summa2 = 0.
*begin list 2
loop at zam_os.

mes = 12 - zam_os-grein.

loop at zam_os_v where ( bukrs = zam_os-bukrs ) and ( anln1 = zam_os-anln1 ).
loop at z_t099b_a where vstar = zam_os_v-vstar.
str1 = z_t099b_a-vsttx.
search str1 for ';'.
t = sy-fdpos + 1.
shift str1 by t places.
kof = str1.
endloop.
endloop.

replace ',' with '.' into str1.

concatenate
'<form name="form_851_01">'
'<sheetGroup>'
'<sheet name="page_851_01_0' kol '1">'
'<field name="page_number">' kol '</field>'
'<field name="iin_uchr"></field>'
'<field name="rnn_uchr"></field>'
'<field name="period_year">' p_year '</field>'
'<field name="dov_number"></field>'
'<field name="dov_date"></field>'
'<field name="field_851_01_001">' zam_os-ehwzu '</field>'
'<field name="field_851_01_002">' zam_os-stadt '</field>'
'<field name="field_851_01_003_1">' zam_os-grein '</field>'
'<field name="field_851_01_003_2">' '</field>'
'<field name="field_851_01_006">' '</field>'
'<field name="field_851_01_004_II"></field>'
'<field name="field_851_01_004w_II_III"></field>'
'<field name="field_851_01_004_III">' '</field>'
'<field name="field_851_01_004w_IV_V"></field>'
'<field name="field_851_01_004_IV"></field>'
'<field name="field_851_01_004_V"></field>'
'<field name="field_851_01_009">' mes '</field>'
'<field name="PaperFormsBarcode1"></field>'
'<field name="field_851_01_008_I">false</field>'
'<field name="field_851_01_008_II">false</field>'
'<field name="field_851_01_008_III">false</field>'
'<field name="field_851_01_008_IV">true</field>'
into tab2-xml2.

if zam_os-bukrs = '9000'.
loop at z_t001z where ( bukrs = '9000' ) and ( party = 'SAPKZ1' ).
concatenate tab2-xml2 '<field name="rnn">' z_t001z-paval '</field>' into tab2-xml2.
endloop.
else.
loop at z_t001z where ( bukrs = zam_os-bukrs ) and ( party = 'SAPK30' ).
concatenate tab2-xml2 '<field name="rnn">' z_t001z-paval '</field>' into tab2-xml2.
endloop.
endif.

loop at zam_os_z where ( bukrs = zam_os-bukrs ) and ( anln1 = zam_os-anln1 ).
concatenate tab2-xml2 '<field name="field_851_01_004_I">' zam_os_z-fkber '</field>' into tab2-xml2.
endloop.
loop at zam_os_v where ( bukrs = zam_os-bukrs ) and ( anln1 = zam_os-anln1 ).
concatenate tab2-xml2 '<field name="field_851_01_007">' zam_os_v-vsges '</field>' into tab2-xml2.
if ( zam_os_v-vsart = 'Z1' ) or ( zam_os_v-vsart = 'Z2' ).
concatenate tab2-xml2 '<field name="field_851_01_005_I">true</field>'
'<field name="field_851_01_005_II">false</field>'
'<field name="field_851_01_005_III">false</field>'
'<field name="field_851_01_005_IV">false</field>'
'<field name="field_851_01_005_V">false</field>'
'<field name="field_851_01_005_VI">false</field>'
into tab2-xml2.
elseif ( zam_os_v-vsart = 'Z3' ) or ( zam_os_v-vsart = 'Z4' ) or ( zam_os_v-vsart = 'Z5' ).
concatenate tab2-xml2 '<field name="field_851_01_005_I">false</field>'
'<field name="field_851_01_005_II">true</field>'
'<field name="field_851_01_005_III">false</field>'
'<field name="field_851_01_005_IV">false</field>'
'<field name="field_851_01_005_V">false</field>'
'<field name="field_851_01_005_VI">false</field>'
into tab2-xml2.
elseif ( zam_os_v-vsart = '08' ) or ( zam_os_v-vsart = '09' ) or ( zam_os_v-vsart = 'Z0' ).
concatenate tab2-xml2 '<field name="field_851_01_005_I">false</field>'
'<field name="field_851_01_005_II">false</field>'
'<field name="field_851_01_005_III">true</field>'
'<field name="field_851_01_005_IV">false</field>'
'<field name="field_851_01_005_V">false</field>'
'<field name="field_851_01_005_VI">false</field>'
into tab2-xml2.
elseif zam_os_v-vsart = 'Z7'.
concatenate tab2-xml2 '<field name="field_851_01_005_I">false</field>'
'<field name="field_851_01_005_II">false</field>'
'<field name="field_851_01_005_III">false</field>'
'<field name="field_851_01_005_IV">true</field>'
'<field name="field_851_01_005_V">false</field>'
'<field name="field_851_01_005_VI">false</field>'
into tab2-xml2.
elseif zam_os_v-vsart = 'Z6'.
concatenate tab2-xml2 '<field name="field_851_01_005_I">false</field>'
'<field name="field_851_01_005_II">false</field>'
'<field name="field_851_01_005_III">false</field>'
'<field name="field_851_01_005_IV">false</field>'
'<field name="field_851_01_005_V">true</field>'
'<field name="field_851_01_005_VI">false</field>'
into tab2-xml2.
elseif zam_os_v-vsart = 'Z8'.
concatenate tab2-xml2 '<field name="field_851_01_005_I">false</field>'
'<field name="field_851_01_005_II">false</field>'
'<field name="field_851_01_005_III">false</field>'
'<field name="field_851_01_005_IV">false</field>'
'<field name="field_851_01_005_V">false</field>'
'<field name="field_851_01_005_VI">true</field>'
into tab2-xml2.
endif.
endloop.
plowad = zam_os-grufl.

concatenate tab2-xml2
'</sheet>'
'<sheet name="page_851_01_0' kol '2">'
'<field name="rnn_uchr"></field>'
'<field name="iin_uchr"></field>'
'<field name="period_year">' p_year '</field>'
'<field name="PaperFormsBarcode1"></field>'
'<field name="field_851_01_010_I">true</field>'
'<field name="sheetw"></field>'
'<field name="ammount_sheetw"></field>'
'<field name="field_851_01_010_II">false</field>'
'<field name="field_851_01_010_3"></field>'
'<field name="field_851_01_013"></field>'
'<field name="field_851_01_012w"></field>'
into tab2-xml2.
* APPEND tab2.
* plowad

if zam_os-bukrs = '9000'.
loop at z_t001z where ( bukrs = '9000' ) and ( party = 'SAPKZ1' ).
concatenate tab2-xml2 '<field name="rnn">' z_t001z-paval '</field>' into tab2-xml2.
endloop.
else.
loop at z_t001z where ( bukrs = zam_os-bukrs ) and ( party = 'SAPK30' ).
concatenate tab2-xml2 '<field name="rnn">' z_t001z-paval '</field>' into tab2-xml2.
endloop.
endif.
* APPEND tab2.

loop at zam_os_v where ( bukrs = zam_os-bukrs ) and ( anln1 = zam_os-anln1 ).
concatenate tab2-xml2 '<field name="field_851_01_011">' zam_os_v-vstar '</field>' into tab2-xml2.
endloop.

* APPEND tab2.

a = str1.
b = zam_os-grufl.

summa = ( a * b ) / ( 12 * mes ).

concatenate tab2-xml2 '<field name="field_851_01_012">' summa '</field>' into tab2-xml2.
* APPEND tab2.

concatenate tab2-xml2 '</sheet>'
'</sheetGroup>'
'</form>'
into tab2-xml2.

summa2 = summa2 + summa.
kol = kol + 1.
i = i + 1.

append tab2.

endloop.

*end list 2

*begin list 1
concatenate
'<?xml version="1.0" encoding="UTF-8"?>'
'<fno code="851.00" version="8" formatVersion="1">'
'<form name="form_851_00">'
'<sheetGroup>'
'<sheet name="page_851_00_01">'
'<field name="notice_number"></field>'
'<field name="notice_date"/>'
'<field name="farmer"></field>'
'<field name="period_year">'p_year'</field>'
'<field name="currency_code">KZT</field>'
'<field name="field_851_00_002"></field>'
'<field name="field_851_00_003_I"></field>'
'<field name="field_851_00_003_II"></field>'
'<field name="field_851_00_003_III"></field>'
'<field name="field_851_00_003_IV"></field>'
'<field name="field_851_00_003_V"></field>'
'<field name="field_851_00_003_VI"></field>'
'<field name="PaperFormsBarcode1"></field>'
'<field name="dt_w"></field>'
into tab-xml.

if p_bukrs = '9000'.
loop at z_t001z where ( bukrs = '9000' ) and ( party = 'SAPKZ1' ).
concatenate tab-xml '<field name="rnn">' z_t001z-paval '</field>' into tab-xml.
endloop.
else.
loop at z_t001z where ( bukrs = p_bukrs ) and ( party = 'SAPK30' ).
concatenate tab-xml '<field name="rnn">' z_t001z-paval '</field>' into tab-xml.
endloop.
endif.

loop at z_t001z where ( bukrs = p_bukrs ) and ( party = 'SAPKZ2' ).
concatenate tab-xml '<field name="iin">' z_t001z-paval '</field>' into tab-xml.
endloop.
loop at z_t001w where werks = p_bukrs.
concatenate tab-xml '<field name="payer_name1">' '</field>' into tab-xml.
endloop.

concatenate tab-xml '<field name="payer_name2"></field>'
'<field name="payer_name3"></field>'
'<field name="dt_final"></field>' into tab-xml.
if perv = 'X'.
concatenate tab-xml '<field name="dt_main">true</field>'
'<field name="dt_regular">false</field>'
'<field name="dt_additional">false</field>'
'<field name="dt_notice">false</field>' into tab-xml.
elseif ochr = 'X'.
concatenate tab-xml '<field name="dt_main">false</field>'
'<field name="dt_regular">true</field>'
'<field name="dt_additional">false</field>'
'<field name="dt_notice">false</field>' into tab-xml.
elseif dop = 'X'.
concatenate tab-xml '<field name="dt_main">false</field>'
'<field name="dt_regular">false</field>'
'<field name="dt_additional">true</field>'
'<field name="dt_notice">false</field>' into tab-xml.
elseif dpuv = 'X'.
concatenate tab-xml '<field name="dt_main">false</field>'
'<field name="dt_regular">false</field>'
'<field name="dt_additional">false</field>'
'<field name="dt_notice">true</field>' into tab-xml.
endif.

concatenate tab-xml '<field name="field_851_00_002" >' summa2 '</field>' into tab-xml.
concatenate tab-xml '<field name="appendix_quantity1">' kol '</field>' into tab-xml.

concatenate tab-xml
'</sheet>'
'<sheet name="page_851_00_02">'
'<field name="in_doc_number"></field>'
'<field name="post_date"></field>'
'<field name="receptor_name"></field>'
'<field name="accept_date"></field>'
'<field name="rating_auth_code"></field>'
'<field name="period_year"></field>'
'<field name="submit_date"></field>'
'<field name="head_name"></field>'
'<field name="iin"></field>'
'<field name="PaperFormsBarcode1"></field>'
'<field name="rnn"></field>'
'</sheet>'
'</sheetGroup>'
'</form>'
into tab-xml.

append tab.
*end list 1

k = 1.

loop at tab2.
if k = 1.
concatenate tab-xml tab2-xml2 into tab1-xml1.
else.
concatenate '' tab2-xml2 into tab1-xml1.
endif.

append tab1.
k = k + 1.
endloop.

concatenate '' '</fno>' into tab1-xml1.

filen = filename.

call function 'GUI_DOWNLOAD'
exporting
filename = filen
filetype = filtyp
codepage = '1504'
tables
data_tab = tab1
exceptions
others = 1.
if sy-subrc = 0.
write:/ 'Âûãðóçêà ïðîøëà óñïåøíî â ôàéë ',filename.
else.
write:/ 'Îøèáêà âûãðóçêè'.
endif.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB