| 
 
  
	| ПРОВЕРИТЬ НАЛИЧИЕ ФАЙЛА-ШАБЛОНА перед формированием Excel 
 
 |  
	
		| Предыдущая тема :: Следующая тема |  
		| Автор | Сообщение |  
		| crazy_turist Участник
 
 
 Вступление в Клуб: 01.02.2013
 
 | 
			
				|  Пт Фев 01, 2013 10:42   ПРОВЕРИТЬ НАЛИЧИЕ ФАЙЛА-ШАБЛОНА перед формированием Excel |   |  
				| Полезность: Нет оценки 
 |  
				| Имеется простая операция, которая формирует для каждого кред договора excel-файл по шаблону. использует библиотеку RUNTIME.EXCEL
 Тело Скрипта формируется отдельной процедурой PROC1
 Нужно сделать групповую операцию, используя процедуру PROC1
 
 Ничего сложного, но при отсутствии шаблона получаем
 огромное количество окошек с предупреждениями об отсутствии файла-шаблона.
 
 ЛОгично перед выполнением операции ПРОВЕРИТЬ НАЛИЧИЕ ФАЙЛА-ШАБЛОНА на клиентской машине.
 РЕЗУЛЬТАТ ПРОВЕРКИ ДОЛЖЕН БЫТЬ ПОЛУЧЕН в ТЕЛЕ ОПЕРАЦИИ (!!!)
 Где можно примеры посмотреть, как это сделать?
 |  |  
		|  |  
		| vtar Эксперт
 
 
 Вступление в Клуб: 20.03.2009
 
 | 
			
				|  Пт Фев 01, 2013 11:22    |   |  
				| Полезность: Нет оценки 
 |  
				| Попробовать открыть на чтение - если попали в exception, файла нет 1417-У Импорт
 
 
  	  | Код: |  	  | if P_FILE_NAME_DEP.[DST_TYPE] is not null then
 -- обязательства
 begin
 n_file_dep := stdio.OPEN(P_FILE_NAME_DEP.[DST_PATH], P_FILE_NAME_DEP.[DST_NAME], 'r');
 exception
 when others then
 pragma error( 'Ошибка при открытии файла ' || P_FILE_NAME_DEP.[DST_PATH] ||'/'|| P_FILE_NAME_DEP.[DST_NAME]);
 end;
 | 
 
 Можно вообще забить на шаблон если шаблон не сложный, и генерить EXCEL без шаблона (я последнее время так технические отчеты лабаю), спасибо за это уважаемому kai
 http://www.cftclub.ru/viewtopic.php?p=19572#19572
 
 [/code] 	  | Код: |  	  | EXCEL.init_xls;
 f_name := null;
 
 If EXCEL.f_click Then
 EXCEL.f_click   := false;
 EXCEL.open_file(f_name, false, true);
 Form_Report;
 EXCEL.visible;
 EXCEL.release;
 End If;
 
 
 stdio.put_line_buf('<% CALL RUNTIME EXCEL_RUN null %>');
 
 
 procedure Form_Report( x integer default null ) is
 begin
 
 -- шапка
 EXCEL.Write(1,1, 'Документ');
 
 | 
 |  |  
		|  |  
		| Alexsey Эксперт
 
 
 Вступление в Клуб: 06.09.2007
 
 | 
			
				|  Пт Фев 01, 2013 12:28    |   |  
				| Полезность: Нет оценки 
 |  
				| Закинь сформированный скрипт в в операцию "EXCEL_RUN" через PLPCALL тут можно почитать _________________
 всегда есть как минимум 2 выхода
 |  |  
		|  |  
		| crazy_turist Участник
 
 
 Вступление в Клуб: 01.02.2013
 
 | 
			
				|  Пт Фев 01, 2013 13:41    |   |  
				| Полезность: Нет оценки 
 |  
				| 2 vtar: по-моему указанный вами способ работает с файлами, расположенными НЕ НА КЛИЕНТСКОЙ машине.. в моем случае не получилось даже выполнить Stdio.file_list("c:\") Ошибка: no sush file or directory
 |  |  
		|  |  
		| vtar Эксперт
 
 
 Вступление в Клуб: 20.03.2009
 
 | 
			
				|  Пт Фев 01, 2013 14:10    |   |  
				| Полезность: Нет оценки 
 |  
				| можно посмотреть ТБП TAX_LIMIT_FILES  опер. IMPORT_FILES
 |  |  
		|  |  
		|  |  
  
	| 
 
 | Вы не можете начинать темы Вы не можете отвечать на сообщения
 Вы не можете редактировать свои сообщения
 Вы не можете удалять свои сообщения
 Вы не можете голосовать в опросах
 
 |  |