Система 1С:Предприятие позволяет вести бухгалтерский учет нескольких предприятий в одной информационной базе. Для этого используется разделитель учета. Под разделителем учета понимается некоторое значение, например «Фирма», которое заносится в каждую проводку и позволяет получать все бухгалтерские итоги по каждому такому значению отдельно. Это позволяет, фактически, получить несколько независимых балансов. Разделение учета определяется на этапе конфигурирования системы.
С точки зрения встроенного языка 1С 7.7 разделитель учета реализуется указанием его значения (в нашем случае фирмы) в каждой проводке. Соответственно, языковые конструкции, использующиеся для выборки информации из базы данных, имеют необязательный параметр для указания значения разделителя учета.
| опубликовано: 19 Февраль 2009, 15:27
Рассмотрим ситуацию на таком примере: в конфигурации есть сотрудники, нужно, чтобы к каждому сотруднику «цеплялась» его фотография. Исходные фотографии в формате jpg храним в папке photo внутри папки с базой. Последовательность действий по шагам:
1) Сначала нужно в глобальном модуле объявить глобальную переменную КаталогФотографий:
Перем КаталогФотографий Экспорт;
2) Затем в предопределенной процедуре глобального модуля ПриНачалеРаботыСистемы() нужно подготовиться к работе с фотографиями:
КаталогФотографий = КаталогБазыДанных()+“photo\”;
Если (ФС.СуществуетФайл(КаталогФотографий+”.“)=0) Тогда
ФС.СоздатьКаталог(КаталогФотографий);
КонецЕсли;
Здесь мы присваиваем начальное значение переменной КаталогФотографий и создаем папку photo внутри папки с базой, если таковой нет.
3) В справочник «Сотрудники» добавляем новый реквизит ИмяВыбрФайла (строка длиной 50 символов) – здесь мы будем хранить имя выбранного файла с фотографией сотрудника.
4) Открываем форму элемента справочника Сотрудники, вкладку Диалог. Создаем в диалоге новый элемент форме с типом Картинка и идентификатором Фотография, под ним кнопку с заголовком Фотография и вызовом функции Фото() в поле Формула: на закладке «Дополнительно», а также вторую кнопку со знаком Х в поле «Заголовок» и вызовом функции УдалитьФото() в поле Формула: на закладке «Дополнительно».
5) Займемся кодом. Код вставляется на вкладке Модуль формы элемента справочника.
Как должно быть понятно из п.4, нам нужны две функции: Фото() и УдалитьФото().
Вот код первой из них:
Процедура Фото()
Если ФС.ВыбратьФайлКартинки(0, ИмяВыбрФайла, ИмяПути, “Выберите файл”, “jpg”, )=1 тогда
Фотография.Загрузить(ИмяПути+ИмяВыбрФайла);
КонецЕсли;
Фотография.РежимРисования(3);
КонецПроцедуры
Вот код второй процедуры:
Процедура УдалитьФото()
ИмяВыбрФайла = “”;
ИмяПути = “”;
А=СоздатьОбъект(“Картинка”);
Фотография.УстановитьКартинку(А);
КонецПроцедуры
6) Теперь нам осталось внести изменения в предопределенную процедуру ПриОткрытии() формы элемента справочника:
Если ПустоеЗначение(ИмяВыбрФайла) = 0 тогда
ФайлФото=КаталогФотографий+СокрЛП(ИмяВыбрФайла);
Если ФС.СуществуетФайл(ФайлФото)=1 Тогда
Фотография.Загрузить(КаталогФотографий+ФС.НайтиПервыйФайл(ФайлФото));
КонецЕсли;
КонецЕсли;
Эту вставку можно сделать в самом конце процедуры ПриОткрытии(), перед КонецПроцедуры. Если в вашей конфигурации в модуле формы выбранного справочника процедура ПриОткрытии() отсутствует, то ее нужно создать в таком виде:
Процедура ПриОткрытии()
Если ПустоеЗначение(ИмяВыбрФайла) = 0 тогда
ФайлФото=КаталогФотографий+СокрЛП(ИмяВыбрФайла);
Если ФС.СуществуетФайл(ФайлФото)=1 Тогда
Фотография.Загрузить(КаталогФотографий+ФС.НайтиПервыйФайл(ФайлФото));
КонецЕсли;
КонецЕсли;
КонецПроцедуры
| опубликовано: 17 Февраль 2009, 16:39
Просто. Для бухгалтерских конфигураций надо зайти желательно монопольно, в пункт меню Операции-Обработки, а затем выбрать «Обработку документов». Еще необходимо выбрать все документы и правильно установить период, а также выбрать вид обработки «Пометить на удаление». Затем уже в монопольном режиме нужно удалить все помеченные на удаление обработкой документы.
Для торговых конфигурации существует аналогичная по функциям обработка «Групповая обработка документов».
| опубликовано: 14 Февраль 2009, 16:38