Вопрос № 96205: Ребята подскажите как делать бекап базы 1с автоматом. База простая то есть расположена на одном компе без всяких sql и так далее. Я уже задавал похожий вопрос мне посоветовали AutoSaver написанный на vb6. Он вроде бекапит нормально но при выключении ...Вопрос № 96317: 1С 7.7 ТиС. В счет фактуре указаны товары с различными ставками НДС. Необходимо подсчитать сумму НДС по ставкам. Т.е. сумма с НДС 10%, сумма с НДС 18% и вывести
в счет фактуру....
Вопрос № 96.205
Ребята подскажите как делать бекап базы 1с автоматом. База простая то есть расположена на одном компе без всяких sql и так далее. Я уже задавал похожий вопрос мне посоветовали AutoSaver написанный на vb6. Он вроде бекапит нормально но при выключении компа и даже просто после выключения и включения программы в ней полностью сбрасываются настройки и расписание. Можно ли как-нибудь этого избежать? или я неправильно ей пользуюсь. Или если это возможно помогите найти кряк к программе mz:архиватор. Она тоже неплохо
сохраняет копии но нигде нет кряка. Возможно есть еще какие либо способы архивирования баз по расписанию. Подскажите пожалуста.
Отвечает: Gl0betrotter
Здравствуйте, Alexander Sergeevich!
Если база не SQL, тогда почему бы Вам не использовать WinRAR и планировщик Windows?
1. Установите WinRAR.
2. Создайте командный файл (например, autobackup.cmd), в котором для каждой базы разместите строку следующего содержания:
c:progra~1winrarwinrar.exe a -o+ -agYYYYMMDDHHMM -apase1backup -ep1 -dh -s -t D:DataBasesBackUpsFilesase1_backup_.rar @D:DataBasesBackUpsBINase1_backup.txt
Эта строка означает следующее:
a -Добавить файлы в архив
-o+ -Перезаписывать существующие файлы
-agYYYYMMDDHHMM -Добавить к имени архива текущие дату и время в виде ГодМесяцДеньЧасыМинуты
-ap -Задать путь base1backup внутри архива
-ep1 -Исключить из путей базовый каталог
-dh -Открывать совместно используемые файлы
-s -Создать непрерывный (solid) архив
-t -Протестировать файлы после архивирования
D:DataBasesBackUpsFilesase1_backup_.rar -указание пути и имени файла архива
D:DataBasesBackUpsBINase1_backup.txt -указание пути и имени файла, в котором прописаны архивируемые файлы
3. Пуск - Настройка - Панель управления - Назначенные задания - Добавить задание
В окне "Мастер планирования заданий": Далее - Обзор - находим и выбираем файл autobackup.cmd, указываем выполнять это задание ежедневно - Далее - указываем время запуска и дату начала - Далее - обязательно указываем логин и пароль пользователя, от имени которого будет запущено задание - Далее - если необходимо указываем Установить дополнительные параметры... - Готово.
Можно также разместить ярлык файла autobackup.cmd в автозагрузку (указав в его свойствах Окно: Свернутое в значок - чтобы не раздражало) - в таком случае архивирование запустится после вхождения в ОСь.
Удачи!
Ответ отправил: Gl0betrotter (статус: Студент)
Ответ отправлен: 24.07.2007, 15:24
Отвечает: SeArCH
Здравствуйте, Alexander Sergeevich!
Можно автоматизировать стандартную 1с выгрузку. Работает на 1сV7.7, на 8ке не знаю, не пробовал:
1. создаётся файл .vbs примерно следующего содержания:
Dim fso
Dim PathDataBase
Dim Path_Exchange
Dim NameFilePackage
Dim ExecutableFile1C
Dim NameObject
Dim UserName
Dim UserPass
Sub Initial
Set fso = CreateObject("Scripting.FileSystemObject")
Path_Exchange = "<disk>:<путь к папке, где будет лежать файл backup.prm>"
PathDataBase = "/D" & "<disk>:<путь к базе>"
NameFilePackage = "backup.prm"
ExecutableFile1C = """C:Program Files1Cv77BIN1cv7s.exe"""
NameObject = "V77s.Application"
UserName = "<имя польз-ля 1с>"
UserPass = "<пароль 1с>"
End Sub
Sub RunPackage
ComStr = ExecutableFile1C & " CONFIG " & PathDataBase & " /N" & UserName & " /P" & UserPass & " /M /@" & Path_Exchange & NameFilePackage
Set WshShell = WScript.CreateObject("Wscript.Shell")
res = WshShell.Run (ComStr,1,true)
Set WshShell = Nothing
End Sub
Initial()
RunPackage()
2. создаётся файл backup.prm в папке <Path_Exchange> примерно следующего содержания:
[General]
Output=<путь к файлу>Выгрузка.log
Quit=Y
UnloadData=Y
CheckAndRepair=N
SaveData=N
AutoExchange=N
[UnloadData]
IncludeUserDef=Y
UnloadToFile=<путь, куда будет осущ. выгрузка><имя файла>.zip
Подробнее о параметрах файла .prm написано в конфиг. и адм. 1с.
3. запихиваем созданный .vbs в назначенные задания.
Правда у этого способа есть ограничение: 1с не сможет архивировать файл выгрузки > 2Гб. Ну и собсно придётся хранить имя польз и пароль к 1с в vbs-нике в открытом виде и папки пользователей, ExtForms и тд придётся архивировать отдельно, но это можно сделать средствами того же .vbs
Ответ отправил: SeArCH (статус: 1-ый класс)
Ответ отправлен: 25.07.2007, 10:36
Отвечает: Николай Александрович
Здравствуйте, Alexander Sergeevich!
Есть программа nnCron, бесплатная для Российмкого пользователя, и совершенно незаменимая для админа.... Расписание настраивается с точностью до милисекунд (если конечно надо).... А используя внешний архиватор (например WinRAR), можно упаковывать всё что угодно....
Формат файла nnCron такой:
В данном примере будет выполняться полная архивация каждый понедельник и архивация изменённых файлов каждые вторник-воскресенье ночью в 4 утра по маскам файлов из Arxiv.lst, в директорию D:Архивы с именем 1С[дата] , из диретории с 1С D:Работа1С. Кстати запуск программ по расписанию это только малая толика умений программы....
Если не найдёте программу nnCron пишите могу выслать.... весит всего 1Mb + инструкции и Help 0,8Mb.
Удачи Вам!!!
Ответ отправил: Николай Александрович (статус: 2-ой класс)
Ответ отправлен: 25.07.2007, 21:17
Вопрос № 96.317
1С 7.7 ТиС. В счет фактуре указаны товары с различными ставками НДС. Необходимо подсчитать сумму НДС по ставкам. Т.е. сумма с НДС 10%, сумма с НДС 18% и вывести в счет фактуру.
Приложение:
Отправлен: 25.07.2007, 12:02
Вопрос задал: Egor M (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Афанасьев Владимир Владимирович
Здравствуйте, Egor M!
Решить указанный вами вопрос можно с помощью запроса, вот его пример:
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|СчетФактураВыданный = Документ.СчетФактураВыданный.ТекущийДокумент;
|СтавкаНДС = Документ.СчетФактураВыданный.СтавкаНДС;
|Сумма = Документ.СчетФактураВыданный.Сумма;
|Функция СуммаСумма18 = Сумма(Сумма) когда(СтавкаНДС = Перечисление.СтавкиНДС.НДС18);
|Функция СуммаСумма10 = Сумма(Сумма) когда(СтавкаНДС = Перечисление.СтавкиНДС.НДС10);
|Группировка СчетФактураВыданный;
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
а результат запроса можно уже выводить в любой удобной для вас форме.