(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 

Конференция "Gupta/Centura (Gupta Technologies)"

Обсуждение вопросов, связанных с компанией Unify/Gupta (Gupta Technologies), ее продуктами Team Developer, SQLBase и др.

 
 
Добавить сообщение »

Тема: Работа с Excel

Автор:  Alexey Дата: 16.05.2011 08:14
bogr пишет 11.11.2002 20:23:
>Я знаю. Мне надо, чтобы у меня Excel работал автономно, т.е. создать OLE объект, забить туда данные
>загрузить Excel и передать туда OLE объект, чтобы можно было подредактировать данные и сохранить в Excel'ом файле.
>
> Может кто знает как это сделать?
>
Используйте M!Tbl от MICSTO [открыть ссылку]
Ответить на сообщение »
 
Автор:  ирина Дата: 09.06.2010 15:51
Добрый день, помогите плиз!!! Надо связать данные с разных таблиц и на разных листах. При изменении данных (дата, числа) в одной таблице должны переходить соответствующие изменения в другой таблице. Например - первая таблиц "Отчет сотрудника за конкретную дату", вторая таюлица "Сводная таблица по сотрудникам за месяц по каждому дню".
Ответить на сообщение »
 
Автор:  bogr Дата: 11.11.2002 20:23
Я знаю. Мне надо, чтобы у меня Excel работал автономно, т.е. создать OLE объект, забить туда данные
загрузить Excel и передать туда OLE объект, чтобы можно было подредактировать данные и сохранить в Excel'ом файле.

Может кто знает как это сделать?
Ответить на сообщение »
 
Автор:  Serge Дата: 11.11.2002 10:23
bogr пишет 30.10:
> Кто-нибудь может поделится исходником. Как выкинуть данные из Centura в Excel с помощью Ole технологии?
>
>P.S. Можете на мой ящик сбросить bogr@ngs.ru

Можно воспользоваться и ActiveX для Excel из
CENTURы. Для этого нужно сгенерировать библиотеку
*.APL (AX Explorer), а затем использовать интерфейсы
для доступа к Excel.
Сергей Алексеевич
Ответить на сообщение »
 
Автор:  Les Дата: 31.10.2002 09:29
PROCEDURE excel_rep IS
par1 varchar2(1000);
par2 varchar2(1000);
par3 varchar2(1000);
par4 varchar2(1000);
par5 varchar2(1000);
n number;
p number;
s VARCHAR2(100);
sl_name varchar2(100);
STR_VCKEY varchar2(500);
STR_VCPARENT_KEY varchar2(500);
STR_VCKEY_VALUE varchar2(500);
STR_USERS_ID number;
str varchar2(1000);
n_r NUMBER;
application OLE2.OBJ_TYPE;
workbooks OLE2.OBJ_TYPE;
workbook OLE2.OBJ_TYPE;
worksheets OLE2.OBJ_TYPE;
worksheet OLE2.OBJ_TYPE;
cell OLE2.OBJ_TYPE;
args OLE2.LIST_TYPE;
x_position NUMBER:=4;
y_position NUMBER;
n1 number;
chartobjects OLE2.OBJ_TYPE;
chartobject OLE2.OBJ_TYPE;
chart OLE2.OBJ_TYPE;
seriescollection OLE2.OBJ_TYPE;
series OLE2.OBJ_TYPE;
charttitle OLE2.OBJ_TYPE;
all_col number;
BEGIN

---------------------------------------------
STR_VCKEY := null;
STR_VCPARENT_KEY := null;
STR_VCKEY_VALUE := null;
STR_USERS_ID := TO_NUMBER(:Global.USER_ID);
SELECT SID into :Global.SessionID FROM rv_session WHERE audsid = USERENV('SESSIONID') AND ROWNUM<2;
par1 := F_USER_REG('SELECT', 'ROOT\PREPROCESSOR\IN_PATH', STR_VCPARENT_KEY, STR_VCKEY_VALUE, STR_USERS_ID);
par2 := 'Stati_template.xls';
par3 := F_USER_REG('SELECT', 'ROOT\PREPROCESSOR\OUT_PATH', STR_VCPARENT_KEY, STR_VCKEY_VALUE, STR_USERS_ID);
/*par4 := 'Stati_'//to_char(sysdate,'HHMI')//RTRIM(LTRIM(:Global.SessionID))//'.xls';*/
par4 := 'Stati_'//RTRIM(LTRIM(:Global.SessionID))//'.xls';
par5 := F_USER_REG('SELECT', 'ROOT\PREPROCESSOR\DIR_FILE', STR_VCPARENT_KEY, STR_VCKEY_VALUE, STR_USERS_ID);
---------------------------------------------

application := OLE2.CREATE_OBJ('Excel.Application');
--OLE2.SET_PROPERTY(application, 'Visible', true);
workbooks := OLE2.GET_OBJ_PROPERTY(application, 'Workbooks');



args := OLE2.CREATE_ARGLIST;
OLE2.ADD_ARG(args, PAR5//PAR2);
workbook := OLE2.INVOKE_OBJ(workbooks, 'Open', args);
OLE2.DESTROY_ARGLIST(args);
args := OLE2.CREATE_ARGLIST;
OLE2.ADD_ARG(args, par5//par4);
OLE2.INVOKE(workbook, 'SaveAs', args);
OLE2.DESTROY_ARGLIST(args);
-- Раньше создавали новую. Это теперь беру из шаблона
--workbook := OLE2.GET_OBJ_PROPERTY(workbooks, 'Add');

worksheets := OLE2.GET_OBJ_PROPERTY(workbook, 'Worksheets');
-- Раньше я создавал новую закладу. Теперь беру первую
--worksheet := OLE2.GET_OBJ_PROPERTY(worksheets, 'Add');
args := OLE2.CREATE_ARGLIST;
OLE2.ADD_ARG(args, 1);
worksheet := OLE2.GET_OBJ_PROPERTY(worksheets, 'Item', args);
OLE2.DESTROY_ARGLIST(args);



set_cell_val (worksheet ,2 ,4,:global.numksa);
set_cell_val (worksheet ,3 ,4,:global.name_tik);
set_cell_val (worksheet ,4 ,4,:BLOCK_MAIN.TEXT_USER);
select to_char(sysdate,'dd')//' '//get_month_name(to_char(sysdate,'mm'),'r')//' '//to_char(sysdate,'yyyy')
into s from dual;

set_cell_val (worksheet ,5 ,4,s);
set_cell_val (worksheet ,8 ,1,:BLOCK_MAIN.NAME_PARAM);

--OLE2.SET_PROPERTY(worksheet,'Name', 'Статистика');
--OLE2.RELEASE_OBJ(worksheet);
---------------------------------------------
all_col:=0;
FOR n IN 1.. stat_query.n_all_sf LOOP
IF NVL(stat_query.SFM_T(n),0)=1 THEN
set_cell_val (worksheet ,8 ,x_position,stat_query.SF_VT(n)//' МУЖЧИН');
GO_BLOCK('RES_STAT');
y_position:=8;
go_record( 1+ (n-1)*stat_query.n_all_razrez );
FOR n1 IN 1.. stat_query.n_all_razrez LOOP
y_position:=y_position+1;
set_cell_val (worksheet ,y_position ,x_position,:RES_STAT.I_MAN);
next_record;
END LOOP;
x_position:=x_position+1;
all_col:=all_col+1;
END IF;
IF NVL(stat_query.SFW_T(n),0)=1 THEN
set_cell_val (worksheet ,8 ,x_position,stat_query.SF_VT(n)//' ЖЕНЩИН');
GO_BLOCK('RES_STAT');
y_position:=8;
go_record( 1+ (n-1)*stat_query.n_all_razrez );
FOR n1 IN 1.. stat_query.n_all_razrez LOOP
y_position:=y_position+1;
set_cell_val (worksheet ,y_position ,x_position,:RES_STAT.I_WOM);
next_record;
END LOOP;
x_position:=x_position+1;
all_col:=all_col+1;
END IF;
IF NVL(stat_query.SFA_T(n),0)=1 THEN
set_cell_val (worksheet ,8 ,x_position,stat_query.SF_VT(n)//' ВСЕГО');
GO_BLOCK('RES_STAT');
y_position:=8;
go_record( 1+ (n-1)*stat_query.n_all_razrez );
FOR n1 IN 1.. stat_query.n_all_razrez LOOP
y_position:=y_position+1;
set_cell_val (worksheet ,y_position ,x_position,:RES_STAT.I_ALL);
next_record;
END LOOP;
all_col:=all_col+1;
x_position:=x_position+1;
END IF;
END LOOP;

y_position:=8;
FOR n IN 1..stat_query.n_all_razrez LOOP
y_position:=y_position+1;
set_cell_val (worksheet ,y_position ,1,stat_query.NR_VT(n) );
END LOOP;
--внимание! Здесь учитывается количество рядов
set_cell_val (worksheet ,1 ,12, all_col );
-- глубина (число параметров)
set_cell_val (worksheet ,1 ,13, stat_query.n_all_razrez );
---------------------------------------------
args := OLE2.CREATE_ARGLIST;
OLE2.ADD_ARG(args, par5//par4);
OLE2.INVOKE(workbook, 'Save');
OLE2.DESTROY_ARGLIST(args);
OLE2.INVOKE(application, 'Quit');

OLE2.RELEASE_OBJ(worksheet);
OLE2.RELEASE_OBJ(worksheets);
OLE2.RELEASE_OBJ(workbook);
OLE2.RELEASE_OBJ(workbooks);
OLE2.RELEASE_OBJ(application);
n := LES_ADD_API.OPENDOC(par5//par4);

END;
Ответить на сообщение »
 
Автор:  bogr Дата: 30.10.2002 13:32
Кто-нибудь может поделится исходником. Как выкинуть данные из Centura в Excel с помощью Ole технологии?

P.S. Можете на мой ящик сбросить bogr@ngs.ru
Ответить на сообщение »
 

Добавить сообщение »

 Распечатать »
 Правила публикации »
   
 Рекомендовать »  
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Q 1.0 for Windows Single User
ABBYY FineReader 14 Standard Full
SmartBear Collaborator - Concurrent User License (Includes 1 Year Maintenance)
go1984 Enterprise
Zend Server with Z-Ray Developer Edition - Standard
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
СУБД Oracle "с нуля"
Один день системного администратора
Все о PHP и даже больше
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
Обсуждения в форумах
ODBC: dBase CREATE TABLE... (8)
Есть проблема Из программы на CTD 2.0 PTF3 подключаемся к DBF-файлам Set SqlDatabase='Файлы...
 
TD 6.2 SP4 Ошибка при установке (5)
Добрый день! Кто-нибудь устанавливал TD 6.2 SP4 на Win7? В конце процесса установке выдаётся...
 
PMC (4)
Подскажите как формируется Product Media Code или ключик к SqlWindows 510 ( CTD510)
 
Работа клиента Сеntura с клиентами Оракл 10, тонким клиентом, net client (3)
Есть клиент, написанный на Centura, исходников нет Работает только с клиентами Оракл 8 и 9 Ни...
 
подключение к Centura SQLBase server 6.1.2 (3)
есть приложение (клиент-банк) с вышеуказанной базой. В приложении для подключения к базе...
 
 
 



    
rambler's top100 Rambler's Top100