Текущее время: Пн, июл 28 2025, 02:10

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Google [Bot], Yandex [Bot]


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

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