powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Запуск VBScript из под Forms 4.5
6 сообщений из 6, страница 1 из 1
Запуск VBScript из под Forms 4.5
    #36880703
SergeyAKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хочу сделать формирование VBScript в pl/sql и потом запускать его из под формса. Раньше работал в системе в которой именно так и было все построено, но клиент там был на C++, сейчас поменял место работы, но все библиотеки остались. Да и не очень нравится в формсе что-то писать. Пытаюсь все , окромя интерфейса, делать в хранимых процедурах.
...
Рейтинг: 0 / 0
Запуск VBScript из под Forms 4.5
    #36881607
OmegaMale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyAKa,
а вопрос то в чём?
сохраняете VBScript во временный файл и HOSTом или средствами библиотеки D2kwutil запускаете, всё просто.
...
Рейтинг: 0 / 0
Запуск VBScript из под Forms 4.5
    #36881680
SergeyAKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OmegaMaleSergeyAKa,
а вопрос то в чём?
сохраняете VBScript во временный файл и HOSTом или средствами библиотеки D2kwutil запускаете, всё просто.

Нужно через OLE объект запустить VBScript
...
Рейтинг: 0 / 0
Запуск VBScript из под Forms 4.5
    #36881872
OmegaMale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyAKa,

запустить скрипт через OLE-объект или создать OLE-объект и манипулировать им посредством OLE?

просто если у Вас скрипт готовый есть, пошагово его не выполнить в Forms. Если же нужно, например, наполнение данными листа Excel, то такое можно написать, но опять же, в Forms, а не готовым скриптом.
...
Рейтинг: 0 / 0
Запуск VBScript из под Forms 4.5
    #36881919
SergeyAKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OmegaMaleSergeyAKa,

запустить скрипт через OLE-объект или создать OLE-объект и манипулировать им посредством OLE?

просто если у Вас скрипт готовый есть, пошагово его не выполнить в Forms. Если же нужно, например, наполнение данными листа Excel, то такое можно написать, но опять же, в Forms, а не готовым скриптом.

Мне и не нужно его выполнять пошагово. Просто хочу создать текст это скрипта, а потом запустить его на выполнение из под формса.
...
Рейтинг: 0 / 0
Запуск VBScript из под Forms 4.5
    #36882123
OmegaMale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyAKa,

И опять же, в чём вопрос? :)
То есть, текст скрипта есть. Скрипт что-то абстрактное делает и закрывается, так? Вам нужно узнать как выполнить этот скрипт, но зачем-то посредством OLE. Для чего нужно его выполнять именно через OLE? Если вы знаете какие-то объекты OLE, которые содержат методы выполнения скриптов, то нужно как-то так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
DECLARE
   VBScriptSource VARCHAR2( 32767 );
   oleExec OLE2.OBJ_TYPE;
   args OLE2.LIST_TYPE;
BEGIN
   oleExec := OLE2.CREATE_OBJ('Название вашей выполнялки скриптов');
   
   args := OLE2.CREATE_ARGLIST;
   OLE2.ADD_ARG(args,VBScriptSource);
   OLE2.INVOKE(oleExec,'Метод OLE объекта, выполняющий скрипт',args);
   OLE2.DESTROY_ARGLIST(args);
   OLE2.RELEASE_OBJ(oleExec);
END;

Но я не могу понять, зачем тут нужен OLE - медленно и кроме того скрипт будет не больше 32кб.

Я бы сделал так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
DECLARE
   VBScriptSource  VARCHAR2( 32767 );
   outFHandle TEXT_IO.FILE_TYPE;
   outFName   VARCHAR2( 32767 ) := 'c:\temp\vbScript'||TO_CHAR(SYSDATE,'YYMMDDHH24MISS')||'.vbs';   
BEGIN
   outFHandle := TEXT_IO.FOPEN(outFName,'w');
   TEXT_IO.PUT_LINE(outFHandle,VBScriptSource);
   TEXT_IO.FCLOSE(outFHandle);
   HOST(outFname,NO_SCREEN);
END;
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Запуск VBScript из под Forms 4.5
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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