gifts2017

Автоматическое открытие периода оперативных итогов 1.5 для 1с 7.7

Опубликовал Владимир Пушин (vladnet) в раздел Обработки - Закрытие периода

Автоматическое открытие периода оперативных итогов 1.5 для 1с 7.7
09:12:2007 г.

Разработка нужна тем кому надоело открывать каждый месяц период для компоненты "Оперативный учет" в 1с 7.7.
Автоматическое открытие периода оперативных итогов 1.5 для 1с 7.7
09:12:2007 г.

Разработка нужна тем кому надоело открывать каждый месяц период для компоненты "Оперативный учет" в 1с 7.7.
Как устанавливать?
Устанавливать не нужно, копировать в любую локальную папку.
Как пользоваться?
Заполнить базы в которых требуется автоматически открывать период напрямую через текстовый файл или с помощью графической утилиты Config.exe
Добавить в стандартные "Назначенные задания", для запуска в начале каждого месяца. Например по такому пути: "C:\Progra~1\AutoOpen1cPeriod\AutoOpen.exe"
Что дальше?
Все остальное будет происходить автоматически.

Развитие разработки:
1.1 Исправлена ошибка: в некоторых случаях неправильно считались месяцы
1.2 не нужна библиотека qtintf.dll для работы
1.5 запуск автоматического открытия как консольное приложение, стало возможно обойтись без графического окошка.

Исходные тексты можно найти на сайте ;)

Скачать файлы

Наименование Файл Версия Размер
- 244
.1223894931 493,18Kb
25.09.09
244
.1223894931 493,18Kb Бесплатно

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Роман (Unstoppable) 14.10.08 12:42
Не понимает пути к БД, содержащие пробелы и спецсимволы(. например).
2. softkill (softkill) 14.10.08 13:03
А в чем фокус? Нафига стороннее приложение да еще на 500Кб в архиве?
Нельза написать в ПриНачалеРаботыСистемы
Если (РабочаяДата()>ПолучитьДатуТА()) И (МонопольныйРежим()=1) Тогда
Сообщить("Открываем новый период...Ждите...");
УстановитьТАНа(РабочаяДата());
Сообщить("Новый период открыт");
Возврат;
КонецЕсли;
и запускать ночью каким-нть юзером монопольно?
3. Владимир Пушин (vladnet) 14.10.08 14:56
(1) Странно должен понимать, хотя давно делалось уже.
(2) Фокус в том что нужно ведь еще и первому успеть монопольно в базу утром зайти, чтобы это сделать.
4. Владимир Пушин (vladnet) 14.10.08 14:57
(2) Не дочитал. Можно и так сделать. Впрочем код открыт там по сути тоже самое написано что и в вашем примере.
5. Алексей (begemot) 15.10.08 08:31
С оперативными итогами - здесь все просто. И действительно можно реализовать средствами самой 1С.
А вот бы програмку которая, открывала период бухгалтерских итогов. Да еще бы выполняла полный пересчет бух. итогов. Это было бы круто :)
6. Дмитрий (dimm73) 15.10.08 11:11
Можно было с помощью команды УстановитьТАНа() -
запускается каждую ночь в 23.59
и устанавливает ТА на 00.00 следующего дня
единственное неудобство требует монопольный режим, и и это решаемо
7. Аркадий Кучер (Abadonna) 15.10.08 11:18
(5) А что за проблемы для тех, кто кроме языка 1С знает че-нить еще? ;)
8. Шавкат (shavkat_95@mail.ru) 15.10.08 14:24
Есть более простой и экономичный способ. В глоб. модуле в процедуре ПриНачалеРаботыСистемы() вставить следующий кусок кода
Если ЭтоПервыйЗапуск = 0 Тогда
// не первый запуск
//Автоматическое открытие периода
ДатаТА=ПолучитьДатуТА();
Если (РабочаяДата()>ДатаТА)И
((ДатаМесяц(ДатаТА)<>ДатаМесяц(РабочаяДата()))ИЛИ(ДатаГод(ДатаТА)<>ДатаГод(РабочаяДата()))) Тогда
Если МонопольныйРежим()=0 Тогда
Ответ=Вопрос("Не открыт период!"+РазделительСтрок+
"Для открытия периода запустите программу в монопольном режиме!"+РазделительСтрок+
"Завершить работу программы?","Да+Нет");
Если Ответ="Да" Тогда
СтатусВозврата(0);
Возврат;
КонецЕсли;
Иначе // монопольный режим
Если ИмяПользователя()="УстановкаТА" Тогда
УстановитьТАна(ТекущаяДата());
Иначе
Ответ=Вопрос("Не открыт период!"+РазделительСтрок+
"Выполнить открытие периода?","Да+Нет");
Если Ответ="Да" Тогда
УстановитьТАНа(РабочаяДата());
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Далее, в назначенных задание создать новый JOB, который будет запускать Эску с пользователем УстановкаТА 1-го числа каждого месяца и все...
AntonSulimov; Vladal; +2 Ответить 1
9. Владимир Пушин (vladnet) 15.10.08 14:31
(8) Хороший способ, сам им пользуюсь. Этот проект делался мной очень давно. Его можно использовать в тех случаях когда править конфигурацию нельзя.
Или как пример работы с 1с из делфи.
10. Санта (Санта) 16.10.08 08:16
Зачем ьак наворочено, просто ПриНачалеРаботы вместо вопроса-предупреждение()с тайм аутом и произойдет принудительное открытие без участия юзера