Текущее время: Пн, июл 21 2025, 05:49

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


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

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


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

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