|   |   | 
| 
 | v7: Запрет проведения документов задним числом | ☑ | ||
|---|---|---|---|---|
| 0
    
        uuee76 02.09.16✎ 07:59 | 
        Коллеги,не являясь спецом по 7.7 и по ТиС,прошу помочь в решении проблемки.
 Заказчик просит запретить изменять и проводить документы задним числом всем,кроме ну скажем с правами Администратора. Есть дата запрета,вроде подходит,но каждый день заказчику невозможно ее менять.Можно запретить править проведенные доки,и снять право отмены проведения,но есть непроведенные доки,которые можно править когда угодно любым числом и проводить.Как можно вывернуться типовым функционалом?Вариант послать уже обдумал.Дописывать в каждый документ условие проведения?Ето корежить всю конфу.Автоматом менять дату запрета?А как,при каком условии?Если было оперативное проведение,как в 8,но такого механизма вроде нет... | |||
| 1
    
        zak555 02.09.16✎ 08:01 | 
        Пусть меняет дату запрета робот     | |||
| 2
    
        uuee76 02.09.16✎ 08:06 | 
        (1) А как этого робота включить?Есть что-то,что запускается по расписанию автоматом?Где искать?Не знаю 7-ку,пните в правильном направлении.Администратор тем не менее тоже не может работать в закрытом периоде.Может без даты можно как то вывернуться?     | |||
| 3
    
        zak555 02.09.16✎ 08:08 | 
        (2) выделяем пользователя робота, атгоритм пишем в глобальнике, запускаем с помощью планировшика через пакетный режим     | |||
| 4
    
        uuee76 02.09.16✎ 08:13 | 
        (3) Понял куда рыть.Может еще мнения будут?     | |||
| 5
    
        zak555 02.09.16✎ 08:18 | 
        (4) перейти на 8ку
 Там можно выставить дату запрета, как вчерашний день | |||
| 6
    
        uuee76 02.09.16✎ 08:22 | 
        (5) Ну просто замечательный вариант!))Он мне тоже нравится.     | |||
| 7
    
        Это_mike 02.09.16✎ 08:27 | 
        (5) а что мешает сделать так же в клюшках?     | |||
| 8
    
        Это_mike 02.09.16✎ 08:30 | 
        Если ДатаДок<ТекущаяДата() Тогда
 Сообщить("нефик нафик!"); статусВозврата(0); Возврат; КонецЕсли; | |||
| 9
    
        Это_mike 02.09.16✎ 08:31 | 
        ну и опционально чонить типа:
 Если Константа.ДатаЗапретаРедактироваия < ТекущаяДата()-1 тогда Константа.ДатаЗапретаРедактироваия=ТекущаяДата()-1; конецесли; | |||
| 10
    
        Это_mike 02.09.16✎ 08:32 | 
        только это все-таки не "заднее число", а вчерашнее.
 заднее число - это уже утренний документ днем. Или документ 5-минутной давности... | |||
| 11
    
        Тихий омут 02.09.16✎ 08:32 | 
        Не нужен никакой робот. В ПриНачалеРаботыСистемы пишем что-то вроде
 Константа.ДатаЗапретаРедактирования=ТекущаяДата()-1 Исполняется при входе любого пользователя, и всё. Ну и проверки при открытии документов, само собой | |||
| 12
    
        zak555 02.09.16✎ 08:32 | 
        (8) это в какую процедуру?     | |||
| 13
    
        Тихий омут 02.09.16✎ 08:33 | 
        (10) это уже детали     | |||
| 14
    
        zak555 02.09.16✎ 08:33 | 
        (11) пользователь не выходит из базы ночью     | |||
| 15
    
        Это_mike 02.09.16✎ 08:33 | 
        (12) в обработку проведения, вестимо.
 или в глобальнике что-то типа глМожноПроводитьДокумент() есть | |||
| 16
    
        Это_mike 02.09.16✎ 08:35 | 
        (14) дык (9) в любой контроль записи/проведения     | |||
| 17
    
        Тихий омут 02.09.16✎ 08:35 | 
        (11)+ проверка в модуле формы доков примерно такая,в процедуре ПриОткрытии():
 Если ДатаДок<=Константа.ДатаЗапретаРедактирования Тогда ТолькоПросмотр(1) КонецЕсли и усё | |||
| 18
    
        zak555 02.09.16✎ 08:35 | 
        (15) т.е. изменить документы можно, а провести нельзя?     | |||
| 19
    
        uuee76 02.09.16✎ 08:36 | 
        (11) Это понятно,а вот без константы никак нельзя вывернуться?Нетрадиционными способами)))?Суть задачи не дать возможность изменить данные не сегодняшние)).     | |||
| 20
    
        Тихий омут 02.09.16✎ 08:36 | 
        (14) ни разу не видел таких высоконагруженных систем, в которых безвылазно сидят пользователи и в течении суток ни один не зайдёт заново.     | |||
| 21
    
        Это_mike 02.09.16✎ 08:38 | 
        (18) ну, в глМожноРедактироватьДокумент() вставить. 
 Не суть важно. сказали жк человеку, куда копать... | |||
| 22
    
        Тихий омут 02.09.16✎ 08:38 | 
        (19) гм... от всех дураков защиту не поставишь. Например, особенно умные пользюки могут и дату компа поменять, чтобы сделать вид, что сегодня-ещё вчера, а то и раньше. Вот тут как раз робот на серваке актуален, спору нет     | |||
| 23
    
        Это_mike 02.09.16✎ 08:38 | 
        (19) см (8)     | |||
| 24
    
        zak555 02.09.16✎ 08:38 | 
        (20) когда много пользователей, то они обычно в терминале
 и закрывают терминал "крестиком" рдп -- вот тебе и повисший сеанс | |||
| 25
    
        Это_mike 02.09.16✎ 08:39 | 
        (24) авотхрен.     | |||
| 26
    
        _stay true_ 02.09.16✎ 08:39 | 
        Есть в семерке подписки на события?)))     | |||
| 27
    
        Это_mike 02.09.16✎ 08:39 | 
        (22) получать с сервера, если база сиквельная :-)     | |||
| 28
    
        Это_mike 02.09.16✎ 08:39 | 
        (26) в правильной семерке - есть     | |||
| 29
    
        Тихий омут 02.09.16✎ 08:40 | 
        (19) Собственно, ответ на вопрос - в процедуре ПриОткрытии модуля формы дока пишем любую нужную проверку типа
 Если ДатаДок<=НекоеЗначениеДатыЗапрета Тогда ТолькоПросмотр(1) КонецЕсли здесь НекоеЗначениеДатыЗапрета - что угодно, пусть даже получение точного времени откуда-нибудь из инета | |||
| 30
    
        Это_mike 02.09.16✎ 08:42 | 
        (20) у кого работают высоконагруженные системы - такие вопросы не задают :-)     | |||
| 31
    
        uuee76 02.09.16✎ 08:43 | 
        (29) Товарищи,база не скульная,люди могут не выходить ночью,утром продолжать работать.     | |||
| 32
    
        Тихий омут 02.09.16✎ 08:45 | 
        (19) И кстати, если форма дока ну очень сильно переписанная, например, стандартная ТЧ заменена тз на форме, то ТолькоПросмотр(1) не пойдёт, там всё намного хитрее может оказаться.
 (31) И что, за сутки прям реально ни один пользюк не зайдёт в базу, все сидят и сидят? Не верю. Ну даже если так - стучись из ПриОткрытии к поставщикам точного времени в инет, что тут тебе ещё сказать. | |||
| 33
    
        Это_mike 02.09.16✎ 08:46 | 
        (31) см. (8)+(9)+(15)     | |||
| 34
    
        Это_mike 02.09.16✎ 08:49 | 
        (32) Можно получать через WSH с сервера.     | |||
| 35
    
        Смотрящий 02.09.16✎ 08:58 | 
        (0) тАК ПРАВАМИ и разруливается - галка "Проведение документов задним числом"
 Только заблокировать надо проведение документов будущей датой. Иначе ТА уедет "в завтра" и документы от сегодня система будет блокировать на редактирование - придется всех выгонять и откатывать ТА | |||
| 36
    
        varelchik 02.09.16✎ 11:55 | 
        (25)+100!     | |||
| 37
    
        varelchik 02.09.16✎ 11:55 | 
        пардон (35)     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |