Текущее время: Вс, июл 20 2025, 23:33

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Generic simple transformation. Is it possible?
СообщениеДобавлено: Чт, ноя 05 2009, 17:29 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, окт 21 2008, 08:02
Сообщения: 71
Откуда: Moscow
Пол: Мужской
Всем привет!

Хочу обратиться к людям, которые имели дело с ST. Реально ли каким либо образом получить при помощи синтаксиса динамическую ссылку на поле?
Задачка такая: подать на вход табличку и ее каталог полей. На выходе надо получить XML с табличными данными и возможностью просмотра в Excele.
Code:
<?sap.transform simple?>
<?mso-application progid="Excel.Sheet"?>
<tt:transform xmlns:tt="http://www.sap.com/transformation-templates"
              xmlns:ddic="http://www.sap.com/abapxml/types/dictionary">
  <tt:root name="table"    line-type="?"/>
  <tt:root name="fieldcat" line-type="ddic:LVC_S_FCAT"/>
  <tt:template>
    <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
              xmlns:o="urn:schemas-microsoft-com:office:office"
              xmlns:x="urn:schemas-microsoft-com:office:excel"
              xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
              xmlns:html="http://www.w3.org/TR/REC-html40">
      <Worksheet ss:Name="Sheet1">
        <Table>
          <Row>
            <tt:loop ref=".fieldcat">
              <Cell>
                <Data ss:Type="String">
                  <tt:value ref="SCRTEXT_M"/>
                </Data>
              </Cell>
            </tt:loop>
          </Row>
          <tt:loop ref=".table">
            <Row>
              <tt:loop ref=".fieldcat">
                <Cell>
                  <Data ss:Type="String">
                    --> вот тут то и нужно каким то образом сослаться на поле таблицы .table, название которого нужно взять из filedcat.
                  </Data>
                </Cell>
              </tt:loop>
            </Row>
          </tt:loop>
        </Table>
        <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
          <Selected/>
          <ProtectObjects>False</ProtectObjects>
          <ProtectScenarios>False</ProtectScenarios>
        </WorksheetOptions>
      </Worksheet>
    </Workbook>
  </tt:template>
</tt:transform>


Сдается мне пока что не очень то это и реально.. По ходу дела только вручную рендерить при помощи DOM.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Generic simple transformation. Is it possible?
СообщениеДобавлено: Ср, ноя 11 2009, 15:32 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, янв 25 2005, 19:26
Сообщения: 67
Пол: Мужской
Интересный вопрос!

С помощью ST такое действительно вряд ли реализуемо. Можно посмотреть в сторону XSLT - там есть расширения, в том числе вызовы внешних функций:
http://help.sap.com/saphelp_nw70/helpda ... ameset.htm

Идея в том, чтобы передать во внешний ФМ необходимые данные (например, имя программы, таблицы, поле и т.п.) и получить из него обратно нужное значение.

Отпиши, если получится реализовать! :)

_________________
Come to Cookies! We Have Dark Sides!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Generic simple transformation. Is it possible?
СообщениеДобавлено: Чт, ноя 12 2009, 10:08 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Можно взять достаточно сложную структуру данных, например, структуру, в которой есть хэш-таблица, обычная таблица, поля какие-нибудь (про вложенные таблицы и структуры уже не помню, может и можно) и прогнать ее через два вызова CALL TRANSFORMATION...
Первый вызов из ABAP структуры получит XML, а второй - из XML требуемый XML под Excel... Если двух прогонов не хватит, то можно и в три этапа сделать. Похожую вещь проделывал с BW-отчетом для перегона в XML, который можно просматривать в виде отчета в другой не
SAP системе


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

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


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

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


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

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