powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Выгрузка из Forms в Excel (удаление разрыва страницы)
7 сообщений из 7, страница 1 из 1
Выгрузка из Forms в Excel (удаление разрыва страницы)
    #38511167
TIzolda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужно программно перенести разрыв страницы. Сделала в Excel макрос. Там ActiveSheet.VPageBreaks(1).DragOff Direction:=xlToRight, RegionIndex:=1
Пытаюсь вывести в Forms используя OLE2. Но не получается ничего(((
Вот код.
PROCEDURE Page_Breaks (sheet in OLE2.OBJ_TYPE) IS
cell OLE2.OBJ_TYPE;
args OLE2.LIST_TYPE;
vlines OLE2.OBJ_TYPE;
Drag OLE2.OBJ_TYPE;
BEGIN
args:=OLE2.CREATE_ARGLIST;
OLE2.ADD_ARG(args,'A1');
cell:=OLE2.GET_OBJ_PROPERTY(sheet,'Range',args);
OLE2.DESTROY_ARGLIST(args);

-----вариант 1-------

Drag:=OLE2.GET_OBJ_PROPERTY(cell,'VPageBreaks',args);
OLE2.SET_PROPERTY(Drag,'xlToRight',1);
OLE2.RELEASE_OBJ(Drag);



------ второй вариант (тоже не работает)------

Drag:=OLE2.GET_OBJ_PROPERTY(cell,'VPageBreaks',args);
OLE2.SET_PROPERTY(Drag,'xlToRight',1);
OLE2.SET_PROPERTY(Drag,'RegionIndex',1);
OLE2.RELEASE_OBJ(Drag);

vlines:=OLE2.GET_OBJ_PROPERTY(cell,'VPageBreaks',args);
OLE2.SET_PROPERTY(vlines,'DragOff',Drag);
OLE2.RELEASE_OBJ(vlines);


END;


Подскажите, как сделать, чтобы работало? совсем не понимаю(((
...
Рейтинг: 0 / 0
Выгрузка из Forms в Excel (удаление разрыва страницы)
    #38511822
OldBoyOdeSu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TIzolda,
В редакторе макроса пользуйтесь F2 Object Browser много информации только оттуда можно получить
Ваш код примерно так должен выглядить

ActiveSheet.VPageBreaks(1).DragOff Direction:=xlToRight, RegionIndex:=1
(sheet in OLE2.OBJ_TYPE)
1) надо получить VPageBreaks
--ActiveSheet.VPageBreaks
wPageBreaks := CLIENT_OLE2.GET_OBJ_PROPERTY(sheet,'VPageBreaks');

2)Теперь из этого массива берём с индексом 1
--Index 1
args := CLIENT_OLE2.CREATE_ARGLIST;
CLIENT_OLE2.ADD_ARG(args, 1);
wPageBreak := CLIENT_OLE2.INVOKE_OBJ(wPageBreaks,'Item',args);
CLIENT_OLE2.DESTROY_ARGLIST(args);

3) Вызываем метод DragOff
--Sub DragOff(Direction As XlDirection, RegionIndex As Long) Member of Excel.VPageBreak
args := CLIENT_OLE2.CREATE_ARGLIST;
CLIENT_OLE2.ADD_ARG(args, -4161); --xlToRight Const xlToRight = -4161 (&HFFFFEFBF)
CLIENT_OLE2.ADD_ARG(args, 1); --RegionIndex
CLIENT_OLE2.INVOKE(wPageBreak,'DragOff',args);
CLIENT_OLE2.DESTROY_ARGLIST(args);
...
Рейтинг: 0 / 0
Выгрузка из Forms в Excel (удаление разрыва страницы)
    #38511846
OldBoyOdeSu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OldBoyOdeSu,
и да, у вас OLE2.OBJ_TYPE
т.е. все исправить на OLE2. вместо СLIENT_OLE2.
кстати знает кто-нибудь отличие OLE2 от СLIENT_OLE2 ? просто у меня при использовании OLE2 даже офис не вызывался, сделал простую замену на СLIENT_OLE2 и всё заработало...
...
Рейтинг: 0 / 0
Выгрузка из Forms в Excel (удаление разрыва страницы)
    #38511901
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OldBoyOdeSuкстати знает кто-нибудь отличие OLE2 от СLIENT_OLE2 ?
OLE2 на сервере
СLIENT_OLE2 соотв. на клиенте
...
Рейтинг: 0 / 0
Выгрузка из Forms в Excel (удаление разрыва страницы)
    #38512002
TIzolda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не получается. вот на этом моменте просто вылетает wPageBreak := CLIENT_OLE2.INVOKE_OBJ(wPageBreaks,'Item',args);
Не понимаю почему(((
...
Рейтинг: 0 / 0
Выгрузка из Forms в Excel (удаление разрыва страницы)
    #38512010
OldBoyOdeSu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TIzolda,
wPageBreak OLE2.OBJ_TYPE;

wPageBreak := OLE2.GET_OBJ_PROPERTY(sheet,'VPageBreaks');

CLIENT_OLE2 на OLE2 заменили?
...
Рейтинг: 0 / 0
Выгрузка из Forms в Excel (удаление разрыва страницы)
    #38512016
OldBoyOdeSu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OldBoyOdeSu,

ааа, INVOKE_OBJ на GET_OBJ_PROPERTY конечно же
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Выгрузка из Forms в Excel (удаление разрыва страницы)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]