Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Псевдоним123 Участник - экстремал
Вступление в Клуб: 05.06.2018
|
Вт Июн 05, 2018 11:12  Выгрузка данных в EXCEL |
|
Полезность: Нет оценки
|
доброго времени суток.
подскажите, пожалуйста, всю голову сломал...
при выгрузке данных в Excel не открывается файл...
валидно все
Код: | if p_message = 'DEFAULT' then
V_DEST := null;
::[RUNTIME].[EXCEL].INIT_XLS;
p_info := 'OK';
elsif p_message = 'VALIDATE' then
if p_info = 'OK' then
if ::[RUNTIME].[EXCEL].F_CLICK then
[EXCEL].F_CLICK := false;
::[RUNTIME].[EXCEL].open_file (::[REPS].[SLIB].GetPath('PATH_PRINT_EXCEL', 'SVB_PRS_REP_ACT_NEW.xlt'), false);
Draw(P_BEG_DATE);
::[RUNTIME].[EXCEL].VISIBLE;
::[RUNTIME].[EXCEL].RELEASE;
end if;
::[RUNTIME].[EXCEL].EXEC_SCRIPT (V_DEST);
end if;
end if;
end; |
[code]Procedure Draw(P_BEG_DATE date)
is
iRow integer;
Row integer;
i number:=0;
begin
::[RUNTIME].[EXCEL].Open_Sheet(1);
::[RUNTIME].[EXCEL].write(2, 4, ' на ' || to_char(P_BEG_DATE, 'dd.mm.yyyy') );
debug_pipe('Текст '||to_char(P_BEG_DATE, 'dd.mm.yyyy'), 0);
iRow := 5;
for
(select u(
(select cc(nvl(substr(ltrim(cc.[name]), 1, INSTR(cc.[name], 'фил')-1), 'ПАО АКБ "СВЯЗЬ-БАНК" Головной Офис'))
in [SALARY_PLACE_NAS] where cc.[code] = br.[code]) : name_filial --филиал
, u.[NAME] : NAME --ФИО
, u.[NUM_TAB] : NUM_TAB --Табельный номер
, to_char(u.[BEG_DATE], 'dd.mm.yyyy') : BEG_DATE --дата приема
, to_char(u.[END_DATE], 'dd.mm.yyyy') : END_DATE --дата увольнения
, d1.[name] : c_name_dep --наименование подразделения по штату
, d1.[CODE_ORG] : C_CODE_ORG --код оргструктуры
--, (select q1(q1.[name]) in [depart] where q1%id=u.[depart]) : c_name_dep --наименование подразделения по штату
--, (select q1(q1.[CODE_ORG]) in [depart] where q1%id=u.[depart]) : C_CODE_ORG --код оргструктуры
--, sp.c_code --код оргструктуры
, sp.[name] : c_name_filial_zp --филиал
, (select td(td.[NAME])
in [ACT_TYPE_DOL], ([PRS_ACT_TYPE] all : tc)
where tc%collection = u.[ACT_TYPE_DOL] and tc.[ACT_TYPE] = td%ID and rownum=1) : C_NAME_position --направление деятельности
, (select tc(nvl(tc.[KOEF], 1))
in [PRS_ACT_TYPE] ,([ACT_TYPE_DOL] all : td)
where tc%collection = u.[ACT_TYPE_DOL] and tc.[ACT_TYPE] = td%ID and rownum=1) : c_koeff --доля направления деятельности
--, td.C_NAME C_NAME_position --напрвление деятельности
--, nvl(tc.C_KOEF, 1) as c_koeff
)
IN [USER],
([DEPART] all : d1),
([SALARY_PLACE_NAS] all : sp),
([SALARY_USER_INFO] all : su),
([BRANCH] all : br)
where u.[DEPART] = d1%ID
--and tc.collection_id = u.C_ACT_TYPE_DOL and tc.C_ACT_TYPE = td.ID
and
u%id = su.[USER]
and su.[SALARY_PLACE_NAS] = sp%ID
and u.[filial] = br%id
and u.[END_DATE] is null
and u.[BEG_DATE] <= to_char(P_BEG_DATE, 'dd.mm.yyyy')
--and d1.[code] = '044-30'
--and rownum < 50
order by d1.[code], u.[name] asc
)
loop
::[RUNTIME].[EXCEL].put(iRow, 1, u.[name_filial]);
::[RUNTIME].[EXCEL].put(iRow, 2, u.[NAME]);
::[RUNTIME].[EXCEL].put(iRow, 3, u.[NUM_TAB]);
::[RUNTIME].[EXCEL].put(iRow, 4, u.[BEG_DATE]);
::[RUNTIME].[EXCEL].put(iRow, 5, u.[END_DATE]);
::[RUNTIME].[EXCEL].put(iRow, 6, u.[c_name_dep]);
::[RUNTIME].[EXCEL].put(iRow, 7, u.[C_CODE_ORG]);
::[RUNTIME].[EXCEL].put(iRow, 8, u.[c_name_filial_zp]);
::[RUNTIME].[EXCEL].put(iRow, 9, u.[C_NAME_position]);
::[RUNTIME].[EXCEL].put(iRow,10, u.[c_koeff]);
iRow := iRow + 1;
end loop;
::[RUNTIME].[EXCEL].print_array;
::[RUNTIME].[EXCEL].Borders(6,1,iRow-1,19,'HVLBTR',2);
end;
[/code]
подскажите где я туплю.... |
|
 |
vtar Эксперт
Вступление в Клуб: 20.03.2009
|
|
 |
Alkov Профи
Вступление в Клуб: 23.09.2010
|
Вт Июн 05, 2018 11:39  Re: Выгрузка данных в EXCEL |
|
Полезность: Нет оценки
|
Псевдоним123 пишет: | доброго времени суток.
подскажите, пожалуйста, всю голову сломал...
при выгрузке данных в Excel не открывается файл...
подскажите где я туплю.... |
А выведи в конце в дебаг V_DEST
debug_pipe(V_DEST,0);
и посмотри скрипт в мониторе что там в конце... |
|
 |
Псевдоним123 Участник - экстремал
Вступление в Клуб: 05.06.2018
|
Вт Июн 05, 2018 11:44   |
|
Полезность: Нет оценки
|
vtar пишет: | да, на кнопке ОК валидация установлена |
|
|
 |
Volod Эксперт
Вступление в Клуб: 19.09.2007
|
Вт Июн 05, 2018 11:45   |
|
Полезность: Нет оценки
|
Обычно про переменную DEST в скрипте забывают. |
|
 |
Псевдоним123 Участник - экстремал
Вступление в Клуб: 05.06.2018
|
Вт Июн 05, 2018 11:49   |
|
Полезность: Нет оценки
|
DEST присутствует
Код: | if p_message = 'DEFAULT' then
V_DEST := null;
::[RUNTIME].[EXCEL].INIT_XLS;
p_info := 'OK';
elsif p_message = 'VALIDATE' then
if p_info = 'OK' then
if ::[RUNTIME].[EXCEL].F_CLICK then
[EXCEL].F_CLICK := false;
::[RUNTIME].[EXCEL].open_file (::[REPS].[SLIB].GetPath('PATH_PRINT_EXCEL', 'SVB_PRS_REP_ACT_NEW.xlt'), false);
Draw(P_BEG_DATE);
::[RUNTIME].[EXCEL].VISIBLE;
::[RUNTIME].[EXCEL].RELEASE;
end if;
::[RUNTIME].[EXCEL].EXEC_SCRIPT (V_DEST);
end if;
end if;
end; |
|
|
 |
Volod Эксперт
Вступление в Клуб: 19.09.2007
|
Вт Июн 05, 2018 11:53   |
|
Полезность: Нет оценки
|
А в Клиент-скрипте? |
|
 |
vtar Эксперт
Вступление в Клуб: 20.03.2009
|
Вт Июн 05, 2018 11:59   |
|
Полезность: Нет оценки
|
Volod пишет: | А в Клиент-скрипте? |
и еще в доп. свойствах Проверки должны с Клиентом выставлены
Клиент, Сервер
Клиент, Сервер
в общем чтобы и Сервер и Клиент в обоих фигурировали в какой то комбинации
а то клиент-скрипт не отработает с валидации |
|
 |
Псевдоним123 Участник - экстремал
Вступление в Клуб: 05.06.2018
|
Вт Июн 05, 2018 12:10   |
|
Полезность: Нет оценки
|
в Клиент-скрипте
Код: | Public Function Main(LastControl)
If LastControl is OK and Dest.Text <> "" Then
DO
Execute Dest.Text
Call Form1.ScriptServerValidate( OK, "OK")
Loop While Dest.Text <> ""
End If
Main = True 'Результат валидатора (True, False, NULL)
End Function |
|
|
 |
Volod Эксперт
Вступление в Клуб: 19.09.2007
|
Вт Июн 05, 2018 12:35   |
|
Полезность: Нет оценки
|
у V_DEST идентификатор DEST? |
|
 |
Псевдоним123 Участник - экстремал
Вступление в Клуб: 05.06.2018
|
Вт Июн 05, 2018 12:37   |
|
Полезность: Нет оценки
|
да |
|
 |
Volod Эксперт
Вступление в Клуб: 19.09.2007
|
Вт Июн 05, 2018 13:05   |
|
Полезность: Нет оценки
|
1. Сохраните скрипт vbs на диск - запустите.
2. Поставьте отладку MS script. |
|
 |
Псевдоним123 Участник - экстремал
Вступление в Клуб: 05.06.2018
|
Вт Июн 05, 2018 13:16   |
|
Полезность: Нет оценки
|
v_dest с формы теперь пропала...
(в описании переменных v_dest есть) |
|
 |
Volod Эксперт
Вступление в Клуб: 19.09.2007
|
Вт Июн 05, 2018 14:14   |
|
Полезность: Нет оценки
|
Цитата: | v_dest с формы теперь пропала... |
v_dest должна быть на форме с идентификатором DEST.
B 12:37 Вы ответили - что так оно и есть - где же Вы это увидели? |
|
 |
Псевдоним123 Участник - экстремал
Вступление в Клуб: 05.06.2018
|
Вт Июн 05, 2018 14:54   |
|
Полезность: Нет оценки
|
спасибо всем за подсказки, поочередно посмотрев и проверив все Ваши умные мысли все заработало. |
|
 |
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|