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

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: from SAP to EXCEL
СообщениеДобавлено: Пт, дек 01 2006, 17:15 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 01 2006, 13:55
Сообщения: 31
Доброго всем дня.
Есть задача выгрузки данных из r/3 в excel. Начал изучение вопроса по форуму и хелпу, есть определенные подвижки, но остались некоторые вопросы:
- выгрузка таблицы в шаблон с шапкой и подвалом с разбиением на страницы и подсчетом итогов по каждой странице;
- выгрузка за один раз нескольких документов (не листов, а именно документов) и их последующее отображение;
- добавление своего шаблона в r/3.
Для начала наверное хватит, остальное по ходу :)
Поздравляю всех с надвигающимися выходными :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, дек 01 2006, 17:24 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
Как варианты
1) в шаблоне имеется одна строка в таблице. Из программы запускаете макрос для копирования этой строки в нужное количество строк. Сумма подобъется по формуле в самом excel.
2) Открывать собственное окно на каждый документ.
3) транзакция oaer для хранения xls в DBS.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс, дек 03 2006, 00:26 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Пн, ноя 06 2006, 20:01
Сообщения: 29
OAER - устаревшее место хранения шаблонов, SAP уже не рекомендует его использовать. :)
Лучше - SMW0, и работать c MS Office через DOI.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 04 2006, 11:17 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пн, сен 18 2006, 10:37
Сообщения: 177
Откуда: Беларусь
Пол: Мужской
Привет всем!

Народ, кто занимался этим вопросом, можете кинуть ссылками на хорошие ресурсы по тому как передавать данные в Excel и обратно (английские, рус) ? Может про ole и про DOI... :)

И вот еще, может подскажете: я пытаюсь скинуть данные в Excel а потом закрыть файл и сохранить его.
Code:
data:
  e_appl      type ole2_object, " Excel object

... переменные ...

* Start the application
  create object e_appl 'EXCEL.APPLICATION'.
  set property of e_appl 'VISIBLE' = 1.
* Open the file
  call method of e_appl 'WORKBOOKS' = e_work.
* add a new workbook
  CALL METHOD OF e_work 'Add' = e_map.

... работа ...

* Закрытие

* disconnect from Excel
  CALL METHOD OF e_appl 'FILESAVEAS'
    EXPORTING  #1 = p_output. " Путь к файлу для сохр.

* Close the file
  call method of e_work 'close'.

* Quit the file
  call method of e_appl  'QUIT'.

  free object e_appl.


а в результате программа на последние строчки - сохраниние и закрытие - не реагирует никак.
Не подскажите как сохрнить файл ? ^_^

Спасибо. :)

_________________
Regards


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 04 2006, 12:48 
Гость
Code:
  CREATE OBJECT H_EXCEL    'EXCEL.APPLICATION'.
  SET PROPERTY OF H_EXCEL  'Visible' = 1.
  CALL METHOD OF H_EXCEL   'Workbooks' = H_MAP.

  CALL METHOD OF H_MAP 'Open'
    EXPORTING
    #1 = 'C:\225.XLS'.

  CALL METHOD OF H_EXCEL 'ACTIVESHEET' = H_SHEET.

  CALL METHOD OF H_SHEET 'SaveAs'
    EXPORTING
    #1 = 'C:\228.XLS'.

  CALL METHOD OF H_EXCEL 'Quit'.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 04 2006, 12:50 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
Еще дополнение,
вызова метода QUIT недостаточно, чтобы закрыть Excel

Code:
...
* quit Excel and free ABAP Object - unfortunately, this does not kill
* the Excel process
  CALL METHOD OF application 'QUIT'.
  m_message.

* >>>>> Begin of change note 575877
* to kill the Excel process it's necessary to free all used objects
  FREE OBJECT h_cell.       m_message.
  FREE OBJECT h_cell1.      m_message.
  FREE OBJECT range.        m_message.
  FREE OBJECT worksheet.    m_message.
  FREE OBJECT workbook.     m_message.
  FREE OBJECT application.  m_message.
* <<<<< End of change note 575877
ENDFUNCTION.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 04 2006, 14:33 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
FoLKo написал:
Привет всем!

Народ, кто занимался этим вопросом, можете кинуть ссылками на хорошие ресурсы по тому как передавать данные в Excel и обратно (английские, рус) ? Может про ole и про DOI... :)
...

help.sap.com
sdn.sap.com

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, дек 05 2006, 10:28 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пн, сен 18 2006, 10:37
Сообщения: 177
Откуда: Беларусь
Пол: Мужской
Спасибки. Заработала. =^_^=

_________________
Regards


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, янв 09 2007, 17:58 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 01 2006, 13:55
Сообщения: 31
Доброго всем дня.
Подскажите, как правильно настроить Knowledge Provider, чтобы работать с документами через BDS (office - business documents - documents - find)?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, янв 10 2007, 11:24 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 01 2006, 13:55
Сообщения: 31
Доброго всем дня.
С программной частью по работе с Excel разобрался. Столкнулся с проблемой в части сохранения своих шаблонов в bds (транзакция oaor). В поле class name указываю свой класс, в поле class type выбраю ot (other objects). Появляется ошибка:

No assignment has been made for class name ZTEMPLATE1, class type OT
Message no. SBDS366

Diagnosis
No assignment has been made in the Business Document Service (BDS) for class name ZTEMPLATE1, class type OT.

Procedure
If you want to store objects for the specified class name/class type, then make an appropriate entry in transaction SDBSV1.

Otherwise, enter a class type/class name pair for which a document assignment is planned in the BDS.

При попытке зайти в транзацию SDBSV1 ошибка - транзакция не создана.
Каким образом возможно ведение документов?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, янв 10 2007, 12:24 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 01 2006, 13:55
Сообщения: 31
Нашел опечатку в описании ошибки - транзакция SBDSV1.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, янв 12 2007, 16:54 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 01 2006, 13:55
Сообщения: 31
Доброго всем дня.
Столкнулся вот с какой проблемой - разметка страниц в excel-листе. У меня по шаблону каждый лист должен содержать шапку, таблицу и подвал. Все это делать я научился, заранее указав количество строк на каждой странице. Но почему-то даже при точном расчете высоты строки в конечно документе разрыв страницы смещается вверх/вниз. Нашел в одной книге (delphi & ms office), что эти самые разрывы страниц можно вставлять программно. Пока в r/3 не нашел как это сделать. Может кто сталкивался с проблемой или уже использовал этот функционал?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, янв 12 2007, 17:19 
Старший специалист
Старший специалист

Зарегистрирован:
Ср, авг 18 2004, 11:47
Сообщения: 406
Пол: Мужской
avalex написал(а):
Доброго всем дня.
Столкнулся вот с какой проблемой - разметка страниц в excel-листе. У меня по шаблону каждый лист должен содержать шапку, таблицу и подвал. Все это делать я научился, заранее указав количество строк на каждой странице. Но почему-то даже при точном расчете высоты строки в конечно документе разрыв страницы смещается вверх/вниз. Нашел в одной книге (delphi & ms office), что эти самые разрывы страниц можно вставлять программно. Пока в r/3 не нашел как это сделать. Может кто сталкивался с проблемой или уже использовал этот функционал?

Коллега, не взрывайте моск, пишите макрос в шаблоне, макрос вызывайте из R/3.
Code:
...
CALL METHOD OF EXCEL 'Run' EXPORTING #1 = 'Create_Report'.
...
Трудозатраты меньше в разы

_________________
En Taro Tassadar


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, янв 17 2007, 09:40 
Начинающий
Начинающий

Зарегистрирован:
Чт, мар 09 2006, 14:48
Сообщения: 7
А каким образом быстрее всего в excel выкинуть таблицу огромных размеров, чтобы потом ее макросом обработать?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, янв 17 2007, 09:46 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пн, янв 24 2005, 16:22
Сообщения: 749
Пол: Мужской
darkening написал(а):
А каким образом быстрее всего в excel выкинуть таблицу огромных размеров, чтобы потом ее макросом обработать?


Есть два основных быстрых способа:
DOI (I_OI_SPREADSHEET -> insert_one_table) и WS_DOWNLOAD (+ QueryTable), какой из них быстрее - не знаю, не проверял.

_________________
Счастье есть!


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.

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


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

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


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

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