Имя: Пароль:
1C
1С v8
Запуска внешнего отчета с нужными параметрами
0 Melcor
 
21.07.15
14:43
Доброго дня. 1С 8.2 КА 1.1
Сохранил во внешний отчет стандартный "ВедомостьТоварыНаСкладах"
Теперь мне необходимо запускать его каждый вечер с определенными параметрами и текущей датой, подскажите как можно передать туда настройку пользователя и дату. Спасибо.
1 mastodont
 
21.07.15
14:45
А в чем вопрос?
Запускаться он как будет, вручную?
2 Melcor
 
21.07.15
14:47
Запускаться будет автоматом каждый вечер и сохраняться в Эксель
3 Melcor
 
21.07.15
14:47
(1) Не пойму как параметры в отчет передать
4 Михаил Козлов
 
21.07.15
14:49
(3) Какие параметры? Если период отчета, то это реквизиты построителя (ДатаНач и ДатаКон).
Если настройки пользователя, то запустить приложение от этого пользователя.
5 Melcor
 
21.07.15
14:51
(4) Запускать приложение буду через планировщик задач на сервере, через этого пользователя не могу
6 Timon1405
 
21.07.15
14:56
(0) не знаю как в КА, но в УПП есть общий модуль "СохранениеНастроек" и одноименные РС и справочник, настройки там можно запоминать, а в регламенте подтягивать. нужно только ваш внешний отчет под это подкрутить
7 Михаил Козлов
 
21.07.15
14:57
(5) Тогда посмотрите в РС "Сохраненные настройки" настройки этого отчета.
8 mastodont
 
21.07.15
14:58
(3) зачем передавать? пусть отчет сам их берет при начале выполнения.
9 Melcor
 
21.07.15
14:59
(8) Понял, укажу по умолчанию и он их сам подхватывать будет
10 Pixar0000
 
21.07.15
15:02
Вариант 1.

Прописать выполняемый код во внешней обработке и запускать 1С с параметром /execute

1С имеет параметр запуска "/Execute", с помощью которого можно запустить внешнюю обработку после старта системы.

Чтобы воспользоваться этой возможностью, необходимо создать внешнюю обработку с исполняемым кодом в модуле формы:

Код 1C v 8.х

Процедура ПриОткрытии()

       // тут распологается исполняемы код

Сообщить("!");

// закрываем обработку после выполнения кода

Закрыть();

КонецПроцедуры  


После этого можно запускать данную обработку из командной строки например так:

Код DOS Batch File:

1cv8.exe enterprise /f"C:\Базы\InfoBase" /nПользователь /pПароль /executec:\Обработки\ВнешняяОбработка.epf  

Вариант 2.

Написать на vba процедуру выполнения заданных операций через COM.

Можно все действия прописать в файле VBS и уже его запускать. Пример содержимого файла VBS:

Код VBS

Set v81 = CreateObject("V81.Application")

v81.Connect ("File=""C:\Базы\InfoBase"";Usr=""пользователь"";Pwd=пароль")

v81.WriteLogEvent("Был выполнен запуск из VBA")  

/S<Адрес> адрес информационной базы, хранящейся на сервере 1С:Предприятия 8.x, складывается следующим образом:

<Имя компьютера, работающего сервером приложений> \ <Ссылочное имя информационной базы, известное в рамках сервера 1С:Предприятия 8.x>