Просмотр нерешенных тем
Сообщения без ответов | Активные темы
Правила форума
ВНИМАНИЕ! Прежде чем задавать вопрос, ознакомьтесь со ссылками ниже:
Вопросы по отличиям версий SAP, Add-On, EHP — сюда
Вопросы по SAP Front End (SAPlogon, SAPgui, guiXT и т.д.) — сюда
Вопросы по LSMW — сюда
Вопросы по архивации в SAP — сюда
Вопросы по SAP GRC — сюда
Вопросы по SAP Business Workplace (почте SAP) и SAP Office — сюда
Вопросы по miniSAP (SAP mini basis) — сюда
Вопросы по SAP HANA — сюда
Вопросы по лицензированию продуктов SAP — сюда
Автор | Сообщение | ||
---|---|---|---|
Заголовок сообщения: Не идет выгрузка в Excel Добавлено: Чт, окт 25 2007, 10:33 |
|||
|
Помогите пожалуйста!!!
|
||
Вернуться к началу |
|
||
sibrin |
Заголовок сообщения: Re: Не идет выгрузка в Excel Добавлено: Чт, окт 25 2007, 10:44 |
|
Ольга005 написал(а): Запускаем транзакцию Zsmeta, Эта транзакция существует только у Вас, так что кто писал программу, того и спрашивайте.
|
Вернуться к началу |
|
Ольга005 |
Заголовок сообщения: Добавлено: Чт, окт 25 2007, 10:51 |
||
|
На любой другой, такая же ситуация, вообще ничего не выгружает
|
||
Вернуться к началу |
|
||
viva |
Заголовок сообщения: Добавлено: Чт, окт 25 2007, 11:45 |
||
|
объект полномочий S_GUI для пользователя установлен?
|
||
Вернуться к началу |
|
||
sapzvezda |
Заголовок сообщения: Добавлено: Чт, окт 25 2007, 12:07 |
|
viva написал(а): объект полномочий S_GUI для пользователя установлен? Этот вопрос может привести к перезагрузке =) По теме вопроса — это вопрос не к форуму, а к Z-разработчику.
|
Вернуться к началу |
|
sibrin |
Заголовок сообщения: Добавлено: Чт, окт 25 2007, 12:25 |
|
|
Вернуться к началу |
|
Ольга005 |
Заголовок сообщения: Добавлено: Чт, окт 25 2007, 13:29 |
||
|
Посмотрела ссылку, проблема похожа, но не совсем та. Не выгружается вообще ничего, даже пустая таблица не появляется, вообще ничего не происходит, с выгрузкой в 1С все нормально. А выгрузка из ALV. И как быть?
|
||
Вернуться к началу |
|
||
sibrin |
Заголовок сообщения: Добавлено: Чт, окт 25 2007, 13:51 |
|
Ольга005 написал(а): вообще ничего не происходит, с выгрузкой в 1С все нормально. А выгрузка из ALV. Всё-таки Вы разберитесь, стандартная выгрузка или самодельная.
|
Вернуться к началу |
|
Paul_ACE |
Заголовок сообщения: Re: Не идет выгрузка в Excel Добавлено: Чт, ноя 01 2007, 21:25 |
||
|
Ольга005 написал(а): [/b] Я не большой специалист в SAP, но у нас бывают такие проблемы.
|
||
Вернуться к началу |
|
||
Svetlana |
Заголовок сообщения: Добавлено: Пт, ноя 02 2007, 00:03 |
||
|
смотрю на топик и думаю — во флейм? или прикрыть… Решила прикрыть — веселиться народ плиз — во флейм Ольга — если это не разводка — обратитесь в HelpDesk своего проекта — или к базиснику вашего проекта.
|
||
Вернуться к началу |
|
||
Кто сейчас на конференции |
Сейчас этот форум просматривают: нет зарегистрированных пользователей |
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения |
Довольно часто появляется необходимость выгрузить внутреннюю таблицу в MS Excel с расширением *.xlsx. Это обусловлено в том числе тем, что этот формат позволяет хранить >65536 строк.
На сегодняшний день в SAP помимо стандартных средств существует несколько Z-разработок (XLSX Workbench, abap2xlsx).
Стоит сказать, что из всех инструментов с которыми мне приходилось работать больше всего мне понравился XLSX Workbench.
Достоинств у него много: здесь и интуитивно понятный графический интерфейс, и большие функциональные возможности (без использования OLE). Например, легко можно получить документ в виде xstring, что очень востребовано. Кроме того, отличная документация с примерами.
Однако, в этой статье я хочу показать как выгрузить внутреннюю таблицу в файл *.xlsx с помощью другого инструмента — abap2xlsx.
Начнем.
Для начала проверьте, установлен ли данный инструмент в вашей системе.
Если нет, то его можно установить несколькими способами описанными здесь.
Далее, следуя принципу «Лучше один раз увидеть, чем сто раз услышать» сразу приведу пример программного кода.
Возможно, некоторые комментарии вам покажутся избыточными. И вы абсолютно правы. Но здесь и далее я стремлюсь к тому, чтобы код был понятен как можно большему количеству заинтересовавшихся данной статьей людей.
Результат работы:
Для лучшего понимания, рекомендую скопировать его «как есть» в тестовый отчет и запустить отладчик.
На этом все.
Спасибо за прочтение!
Бонус.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Рано или поздно каждый консультант сталкивается с задачей быстрой и эффективной обработки большого массива данных из системы. Предметная область тут неважна. Многие компании практически не используют современные аналитические решения на благо повседневной трудовой деятельности. Причин тому много, но сегодня речь о другом. Наиболее типичные ситуации, это сверка данных при миграции данных или выгрузка большого объема данных из системы с целью последующей обработки в MS Excel. В 99% случаев будут именно такие задачи.
Вроде бы что сложного в выгрузке данных из отчета в системе? Совершенно ничего, когда мы говорим о паре десятков или сотен строк. Если речь идет о десятках тысяч строк или сотен тысяч строк, то мировоззрение начинает меняться. Попробуйте в ваших системах запустить оперативный запрос с даты старта SAP по паре инфотипов. А потом все это выгрузите и нарисуйте несколько формул рядом.
Исходя из моего опыта, могу дать некоторые базовые советы.
Совет 1. Выгрузка в MS Excel может быть осуществлена множеством способов. Даже нажимая одну кнопочку выгрузки разные системы обрабатывают событие по-разному. В ALV отчетах есть две возможность выгрузить данные в файл.
Левая кнопочка зависимости от версии системы либо откроет MS Excel Inplace (то есть внутри системы откроется XLS файл). Очень неудобно, мелко, но достаточно для просмотра пары записей. Файл можно сохранить. В другом случае система спросит, в каком формате желаете выгрузить данные.
По умолчанию у всех стоит первый вариант — MHTML. И не дай вам чебурашке выгружать тысячи записей в этом формате. Система внутри готовит данные, потом запускает XLST трансформацию и вываливает все это в страшненький полу-HTML код. Это занимает очень много памяти на сервере и часто приводит к дампам. При открытии такого файла Excel наоборот производит конвертацию из XML файла в свой XLS формат, что, по сути, дублирует работу. Если выгружать сразу в Excel XLS/XLSX формате, то лишние действия не производятся, файл выгружается существенно быстрее.
Если вы нажимаете вторую кнопочку в панели инструментов, то открывается вот такое окно:
Здесь выбираем ‘Text with Tabs». Это единственный правильный вариант выгрузки данных без каких-либо преобразований. Это самый быстрый вариант. Данные вылетают пулей, ложатся в плоский текстовый файл и не жужжат. У подхода есть один недостаток — надо открыть файл ручками, удалить саповский кривой заголовок с названием отчета/транзакции и даты запуска. После этого такой файл легко импортируется в Excel/Access/MySQL/SQLite или еще куда. Сохраняется все оригинальное форматирование из базы данных. И это БЫСТРО, ОЧЕНЬ быстро.
Совет 2. Допустим вы открыли мегафайл. Сделали колонку с парой функций внутри и протянули на все тысячи строк. Все, «давай, до-свидания». Глупый Excel начнет проявлять клиенто-ориентированность и будет сразу все обсчитывать. Каждая новая колонка будет увеличивать время обработки данных. Чтобы избежать таких инсенуаций, нужно перед началом работы с файлом отключить автоматический обсчет формул. Это делается на закладке «Формулы». На английском это Calculation Options. После этого спокойно пишем формулы, по кнопочке F9 тестируем результат. Практикуемся на небольшом объеме данных. Когда все отладили, протягиваем, нажимаем F9 и идем за кофе. Результат будет достигнут в разы быстрее.
Совет 3. Если мы уже в Excel сделали много формул, а дальше хотим развивать мысль, то рекомендуется сделать копию файла и заменить все формулы на значения. Копируем колонку/строку и вставляем на саму себя с опцией «Как значения». Это заменит все формулы на уже посчитанные значения, а значит системе не нужно пересчитывать все миллионы комбинаций при каждом изменении данных или формул.
Совет 4. Если вам нужно что-то удалить на больших данных, отфильтровать и удалить, то всегда сначала сортируйте данные, а потом включайте фильтр или производите удаление. На сортированных данных фильтрация и удаления происходят раза в два быстрее.
Совет 5. Если вам нужно обрабатывать всякие меппинги, справочники, то выгружать данные нужно по второму варианту из совета 2 в текстовый файл. Это сохранит все форматирование «как было». Плюс, при импорте данных выделите все столбцы и укажите тип «Текст». Это запретит Excel думать и преобразовывать данные на свой манер. Так, для справочника значение «01» останется как «01», а не 1. При сравнениях это очень сильно вредит.
Совет 6. Ключевые вещи, которые должен знать каждый консультант: Pivot table, INDEX, MATCH, VLOOKUP, SUMIF, IFNA, IF, VALUE, REPLACE, Named Ranges, Data Validation, Data Analyses.
kox-box Пользователь Сообщений: 16 |
Уважаемый господа. На работе установили мне это чудо Excel 2007 (чудо говорю без сарказма, действительно очень нравиться). Но вот беда, каждый день я работаю с массивами данных, полученных из программы SAP R/3, при этом выгрузка в файл Excel происходит именно из нее. |
Serge Пользователь Сообщений: 11308 |
А у Вас консолидированая выгрузка из SAP или просто копировать-вставить? |
Сергей, может Вы мне скажете в 2-х словах что это за SAP R/3…? Так скать общие понятия… |
|
VovaK Пользователь Сообщений: 1716 |
{quote}{login=Владимир}{date=27.11.2009 08:09}{thema=}{post}Сергей, может Вы мне скажете в 2-х словах что это за SAP R/3…? Так скать общие понятия…{/post}{/quote} SAP3 — Материальная база данных предприятия (конкуренты Orakul и 1c). Вопрос к kox-box: Вы сами отчеты в SAP3 формируете? |
>Вы сами отчеты в SAP3 формируете?< |
|
Serge Пользователь Сообщений: 11308 |
2 Владимир: VovaK опередил Одно добавлю-работать в ней далеко не удовольствие:-) |
VovaK Пользователь Сообщений: 1716 |
{quote}{login=Serge 007}{date=27.11.2009 08:37}{thema=}{post}2 Владимир: VovaK опередил Одно добавлю-работать в ней далеко не удовольствие:-) Факт — 1с пыжатся изо всех сил сделать полноценную материалку, сам не видел но на слуху… |
Serge Пользователь Сообщений: 11308 |
2 Владимир: Самому лень длинные тексты набивать, так что вот Вам ссылка: http://ru.wikipedia.org/wiki/SAP там почти всё правильно… http://www.cnews.ru/news/top/index.shtml?2008/08/04/310487 и учтите что речь идёт про рынок только России! Дальше СНГ я вообще не знаю есть ли 1С Ссылка почти 2-х годичной давности, именно тогда я работал с SAP, но думаю что за это время пропорции мало изменились |
{quote}{login=VovaK}{date=27.11.2009 08:40}{thema=Re: }{post}{quote}{login=Serge 007}{date=27.11.2009 08:37}{thema=}{post}2 Владимир: VovaK опередил Одно добавлю-работать в ней далеко не удовольствие:-) Факт — 1с пыжатся изо всех сил сделать полноценную материалку, сам не видел но на слуху…{/post}{/quote} Ваша правда, у нас была самописная программа — красота(2-3 порядка). Сейчас в другой компании впервые встретился с 1С… — ужас. |
|
Serge Пользователь Сообщений: 11308 |
«…Сейчас в другой компании впервые встретился с 1С… — ужас.» Вы абсолютно правы Владимир, но если надо, то я Вам по 1С помогу (особенно если это ЗуП или ЗиК, но и в других конфигурациях я тоже работал, ААА там, бухгалтерия и.т.д., причём начиная с версии 7,0 и по восьмую со всеми индексами), но только не здесь, а то мы и правила нарушаем и The_Prist сердится Пишите в личку — всегда отвечу, может не сразу, но обязательно! |
{quote}{login=Serge 007}{date=27.11.2009 09:12}{thema=}{post}»…Сейчас в другой компании впервые встретился с 1С… — ужас.» Вы абсолютно правы Владимир, но если надо, то я Вам по 1С помогу (особенно если это ЗуП или ЗиК, но и в других конфигурациях я тоже работал, ААА там, бухгалтерия и.т.д., причём начиная с версии 7,0 и по восьмую со всеми индексами), но только не здесь, а то мы и правила нарушаем и The_Prist сердится Пишите в личку — всегда отвечу, может не сразу, но обязательно!{/post}{/quote} Спасибо, Сергей. Обязательно обращусь. Только не вижу смысла, т.к. данная программа не хочет с людями работать. …может с бухгалтерами. Я продавец. Освоил я её за неделю… Масса запретов стоит, но это уже издержки компании… |
|
{quote}{login=kox-box}{date=27.11.2009 12:31}{thema=Excel 2007 и SAP R/3}{post}Уважаемый господа. На работе установили мне это чудо Excel 2007 (чудо говорю без сарказма, действительно очень нравиться). Но вот беда, каждый день я работаю с массивами данных, полученных из программы SAP R/3, при этом выгрузка в файл Excel происходит именно из нее. Нужно поиграться с форматированием. ПКМ,формат ячеек, вкладка «Число», в поле «числовые форматы» выбрать «(все форматы)» в самом низу, в поле «Образец» ввести маску ввода, например если мне надо чтобы число было восьмизначным, то ввожу 8 нулей и сохраняем форматирование. А теперь при наборе скажем 23 в ячейке отображается 00000023. |
|
kox-box Пользователь Сообщений: 16 |
{quote}{login=vadisabal} Спасибо. Хоть так теперь буду делать. Отчет сначала выводиться в формате GRID SAP R/3 (ну в самой программе отображение так вроде называется), после чего есть пунк выгрузка в файл Excel. И все. Тут же открывается окно нового листа в Excel и начинают заполняться ячейки (проходит довольно быстро, но заметить заполнение можно). Вот и получается эдакая выгрузка из SAP. Только разницы не пойму. В 2003 одно, в 2007 другое. В SAP никакие настройки не менялись (на других машинах как выгружалось с нолями, так и выгружается), а выгрузка разная… Думал дело именно в настройках Excel. |
Marchuk Пользователь Сообщений: 1167 |
там просто выгрузка из SAP скорее всего написана под 2003 , а в 2007 некоторые форматы могут не срабатывать. я с 2003 работал, а вот в 2007 не экспортировал |
Jom Пользователь Сообщений: 272 |
{quote}{login=Марчук}{date=30.11.2009 10:26}{thema=}{post}там просто выгрузка из SAP скорее всего написана под 2003 , а в 2007 некоторые форматы могут не срабатывать. я с 2003 работал, а вот в 2007 не экспортировал :({/post}{/quote} Option Explicit Прицепите его на какою нибудь кнопку. |
kox-box Пользователь Сообщений: 16 |
Да не очень то хотелось с самого начала «заморачиваться» с макросами, да форматированием ячеек после выгрузки. Все надеялся на какую-нибудь галочку в настройках Но видимо другого варианта нет. |
Nicks Пользователь Сообщений: 71 |
{quote}{login=Марчук}{date=30.11.2009 10:26}{thema=}{post}там просто выгрузка из SAP скорее всего написана под 2003 , а в 2007 некоторые форматы могут не срабатывать. я с 2003 работал, а вот в 2007 не экспортировал :({/post}{/quote} |
iii Гость |
#18 26.01.2011 10:24:37 подскажите, пож-та, как у вас получилось вообще выгрузить в excel 2007/ у нас пустые листы. |