Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Ограничение на документы  (Прочитано 12547 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Lunik
Постоялец

ru
Offline Offline

« : 16-07-2009 09:21 » 

Возник такой вопрос.
Есть документы в которые после их закрытие не желательно, что бы любой пользователь мог их поправить.
Возможно ка кто,
Например:
Есть пользователи Кассиры, Бухгалтер, Главный Бухгалтер, Администратор.
Например Главный Бухгалтер закрывает документы за 30 июня. и что бы после закрытия Данный документ не кто не смог поправить, кроме гл. бухгалтера.

Хоть попробовать через права, но там можно только ограничить на конкретное действие. а не по дате, году или месяцу.
Как -то можно это решить?
Спасибо.


Дополнение: Как блокировать стандартно я знаю. Суть в том что, в Нашей Базе есть Так сказать свое нововедение. Так называемая Выручка новая
И данный документ не блокируеться.
« Последнее редактирование: 16-07-2009 09:35 от Lunik » Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #1 : 16-07-2009 09:35 » 

а расшареная папка с правом только для чтения подойдёт ? Улыбаюсь
Записан

Lunik
Постоялец

ru
Offline Offline

« Ответ #2 : 16-07-2009 09:36 » 

а расшареная папка с правом только для чтения подойдёт ? Улыбаюсь
А причем, тут расшареная папка?
Записан
Kivals
Модератор

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 16-07-2009 13:02 » 

Леш, Документ - это в смысле объект БД
Lunik, "Выручка новая" - это документ, созданный именно в вашей базе?
Если да - посмотрте как в стандартных документах вызывается проверка на запрет редактирования и вставьте такие же вызовы в свой документ (при открытии формы, при проведении, ...)
Кстати - платформа какая?
Записан
Lunik
Постоялец

ru
Offline Offline

« Ответ #4 : 16-07-2009 15:58 » 

Леш, Документ - это в смысле объект БД
Lunik, "Выручка новая" - это документ, созданный именно в вашей базе?
Если да - посмотрте как в стандартных документах вызывается проверка на запрет редактирования и вставьте такие же вызовы в свой документ (при открытии формы, при проведении, ...)
Кстати - платформа какая?
1C 7.7, если не трудно подскажите где просмотреть, на примере какого. Спасибо.
Записан
Kivals
Модератор

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 17-07-2009 07:01 » 

Любого стандартного. Какая конфигурация была исходной?
Вот Бухгалтерский Учет для Украины, документ Договор:
Код:
// Модуль формы
// ===============================
Процедура ПриОткрытии()
глПроверкаДатыДок(Контекст,"Открытие");
...
КонецПроцедуры
...
// ===============================
Процедура ПриЗаписи()
...
глПроверкаДатыДок(Контекст,"Запись");
КонецПроцедуры

// Модуль документа
Процедура ОбработкаПроведения()
...
глПроверкаДатыДок(Контекст,"Проведение");
...
КонецПроцедуры

// Глобальный модуль
// ===============================
Процедура глПроверкаДатыДок(Конт,Режим = "Открытие") Экспорт
Перем ДатаДок;
Попытка
ДатаДок = Конт.ДатаДок;
Исключение
ДатаДок = Конт.ДатаОперации;
КонецПопытки;
...
КонецПроцедуры

Вот это самое глПроверкаДатыДок() в те же процедуры (желательно в те же места) и нужно вставить в новый документ
Записан
Lunik
Постоялец

ru
Offline Offline

« Ответ #6 : 17-07-2009 07:44 » 

Любого стандартного. Какая конфигурация была исходной?
Вот Бухгалтерский Учет для Украины, документ Договор:
Код:
// Модуль формы
// ===============================
Процедура ПриОткрытии()
глПроверкаДатыДок(Контекст,"Открытие");
...
КонецПроцедуры
...
// ===============================
Процедура ПриЗаписи()
...
глПроверкаДатыДок(Контекст,"Запись");
КонецПроцедуры

// Модуль документа
Процедура ОбработкаПроведения()
...
глПроверкаДатыДок(Контекст,"Проведение");
...
КонецПроцедуры

// Глобальный модуль
// ===============================
Процедура глПроверкаДатыДок(Конт,Режим = "Открытие") Экспорт
Перем ДатаДок;
Попытка
ДатаДок = Конт.ДатаДок;
Исключение
ДатаДок = Конт.ДатаОперации;
КонецПопытки;
...
КонецПроцедуры

Вот это самое глПроверкаДатыДок() в те же процедуры (желательно в те же места) и нужно вставить в новый документ
Вот у меня получаеться  Документ Выручка1
Код:
//_____________________________________________________________________________

Процедура ОбработкаПроведения()
глКомментарийПроведения("Начало", Контекст);

...
// Для карт
           

...
КонецЕсли;

...
КонецЕсли;

   ...
КонецЕсли;                           

  ...
КонецЕсли;

КонецЕсли;



...
КонецЕсли; // Сумма НП <> 0
КонецЕсли; // Сумма Безнала <> 0
//**********************************************************    Проводки для оборота по сч 62.1 на сумму НАЛИЧКИ
Если (СуммаН <> 0)  Тогда   
Операция.НоваяПроводка();
Операция.СодержаниеПроводки = "Приход наличных ";
Операция.НомерЖурнала = "БК";
Операция.Дебет.Счет = Сч62_1;
Операция.Дебет.Контрагенты = чл; 
Операция.Дебет.Договоры =  дог;
Операция.Дебет.ВидыРасчетовСПокупателями=  ра;
Операция.Кредит.Счет = Сч90_1;
Операция.Кредит.ВидыНоменклатуры = Субконто1;
Операция.Кредит.СтавкиНДС = Субконто2;
Операция.Кредит.СтавкиНП = Субконто3;

Операция.Сумма = СуммаН;        // Приход налички
КонецЕсли;

//**********************************************************    Окончание проводок для оборота по сч 62.1 на сумму НАЛИЧКИ

//**********************************************************    Дополнительные проводки для НАЛОГОВОГО УЧЕТА
...
КонецЕсли;
//**********************************************************    Окончание дополнительных проводок для НАЛОГОВОГО УЧЕТА
КонецЕсли;                                                                          

Операция.Записать();
...
глКомментарийПроведения("Окончание", Контекст);
КонецПроцедуры
 //_____________________________________________________________________________
Записан
Lunik
Постоялец

ru
Offline Offline

« Ответ #7 : 17-07-2009 07:44 » 

Немного не разобрался
Записан
Kivals
Модератор

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #8 : 17-07-2009 07:46 » 

глКомментарийПроведения - это скорее всего не проверка, а диагностические сообщения. Ищи еще...
Какая кофигурация была взята за базовую?
Записан
Lunik
Постоялец

ru
Offline Offline

« Ответ #9 : 17-07-2009 08:17 » 

глКомментарийПроведения - это скорее всего не проверка, а диагностические сообщения. Ищи еще...
Какая кофигурация была взята за базовую?
1с 7.7. Бухгалтери, беру Документы выручка
Записан
Lunik
Постоялец

ru
Offline Offline

« Ответ #10 : 17-07-2009 08:27 » 

Нашел вот пример смотри что у меня там стоит:
Код:
Процедура ПриЗаписи() //предопределенная
Если глМожноЗаписатьДокумент(Контекст) = 0 Тогда
СтатусВозврата(0);
Возврат;
ИначеЕсли глКонтрольДатыДокумента(Контекст, НачальнаяДатаДокумента) = 1 Тогда
СтатусВозврата(0);
Возврат;
КонецЕсли;
Тоесть поидее стоит ведь проверка почему тогда она не проходит
Записан
Lunik
Постоялец

ru
Offline Offline

« Ответ #11 : 17-07-2009 08:47 » 

Спасибо большое разобрался)) Не там сначало сморел)
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines