Текущее время: Сб, июл 19 2025, 09:15

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
 Заголовок сообщения: Массив (array) в ABAP
СообщениеДобавлено: Чт, июн 22 2006, 12:25 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, окт 03 2005, 10:16
Сообщения: 74
Работа с Excel из Abap.
Для объекта Range использую метод Subtotal. Он выводит итоги.
Третий параметр метода представляет собой массив цифр. Это номера полей, которые Excel будет суммировать.

Т.е. мне нужно в call method передавать объект типа Array.
Как в Abap такой объект сделать?

Внутренняя таблица с одним полем не работает! :-\


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июн 22 2006, 13:01 
Гуру-модератор
Гуру-модератор

Зарегистрирован:
Чт, окт 20 2005, 08:45
Сообщения: 1651
Пол: Мужской
Если я правильно понял суть вопроса, то
например так:
data: arr(20).
arr = 'A2:C4'.
call method of excel 'RANGE' = range
exporting
#1 = arr.
выделяет соответствующий прямоугольник


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: ку
СообщениеДобавлено: Чт, июн 22 2006, 13:03 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, сен 23 2005, 11:11
Сообщения: 963
variant-ы типа vt_array в параметрах ole не поддерживаются

нужен фак


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 23 2006, 07:46 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, окт 03 2005, 10:16
Сообщения: 74
Ладно. Не получается никак массив отправить.
Могу через макрос сделать. Но тут новая проблема!!!

Создаю программно макрос. Есть такой метод:
excelapplication.modules.add(before:OleVariant; after:OleVariant; count OleVariatn).

В Delphi пишу e.modules.add(emptyparam,emptyparam,1) и все замечательно работает

В R/3 это будет выглядеть так:
call method of modules 'add' = module
exporting #1 = before
#2 = after
#3 = count.

Что ставить вместо before и after? Есть в R/3 аналог emptyparam?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 23 2006, 07:51 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, окт 03 2005, 10:16
Сообщения: 74
Хм! Кто бы мог подумать!

Надо просто вот так делать:

call method of modules 'add' = module.

без параметров :-\


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 30 2006, 12:47 
Начинающий
Начинающий

Зарегистрирован:
Чт, июн 22 2006, 09:26
Сообщения: 21
мне нужен массив, а, похоже, в самом ABAP нет такого понятия?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 30 2006, 13:19 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Пн, окт 11 2004, 20:32
Сообщения: 2470
Пол: Мужской
clashar написал(а):
мне нужен массив, а, похоже, в самом ABAP нет такого понятия?

нету

_________________
- Может ли настоящий мастер кунг-фу получить по морде?
- Настоящий мастер может все!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 30 2006, 13:39 
Начинающий
Начинающий

Зарегистрирован:
Чт, июн 22 2006, 09:26
Сообщения: 21
но наверняка есть какая-то альтернатива


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 30 2006, 13:47 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Внутренняя таблица (internal table) тебе поможет.
Попробуйте чаще заходить на help.sap.com и пользоваться поиском.
Вот пример.

_________________
С уважением,
Удав.


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

Зарегистрирован:
Пн, окт 11 2004, 13:16
Сообщения: 1790
Удав написал(а):
Внутренняя таблица (internal table) тебе поможет.
Попробуйте чаще заходить на help.sap.com и пользоваться поиском.
Вот пример.

:D В чем поможет?
В заполнении параметра типа VT_ARRAY метода OLE?

_________________
/nex


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 30 2006, 14:40 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
[quote="Bully В чем поможет?
В заполнении параметра типа VT_ARRAY метода OLE?[/quote]
Да нет, в вопросе clashar :)

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 30 2006, 14:59 
Начинающий
Начинающий

Зарегистрирован:
Чт, июн 22 2006, 09:26
Сообщения: 21
Да я уже создавал как вариант таблицу внутренних таблиц, не помогает.

Дело в том, что есть 1 лист с неопределенным количеством ALV для 1 внутренней таблицы. Но содержимое этой внутренней таблицы меняется каждый раз в цикле. Для каждого изменения внутренней таблицы запускается REUSE_ALV_FIELDCATALOG_MERGE и REUSE_ALV_BLOCK_LIST_APPEND.

Так вот по окончании цикла лист получается с одинаковыми ALV с последним результатом той внутренней таблицы. Все дело в имени парметрах передаваемого имени таблицы для REUSE_ALV_FIELDCATALOG_MERGE и REUSE_ALV_BLOCK_LIST_APPEND.

Поэтому мне нужно каждый раз создавать новое имя для новой внутренней таблицы.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июн 30 2006, 15:02 
Начинающий
Начинающий

Зарегистрирован:
Чт, июн 22 2006, 09:26
Сообщения: 21
при создании таблицы таблиц, во внешнем единственном loop-е я не смог передать имя внутренней таблицы в REUSE_ALV_FIELDCATALOG_MERGE и REUSE_ALV_BLOCK_LIST_APPEND,
мне показалось что массив бы помог.


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

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


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

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


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

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