Имя: Пароль:
1C
1C 7.7
v7: Мама-ДочкаПодчка - иерархия семейственности
0 Злопчинский
 
10.02.12
23:54
Как в ПриЗаписи() удостовериться, что записываемый текущий подчиненный документ - будет лежать позже документа-мамы?
.
только транзакциея - записать-снять позицию-если плохо - откатить назад?
1 Aleksey
 
10.02.12
23:56
Позже это раньше по времени или позже. Т.е. мама проведена в 9.00, а дочка во сколько?
2 Cthulhu
 
10.02.12
23:56
ПолучитьВремя() - узнать (у мамы).
Записать() + УстановитьВремя() - установить (у подчиненного).
3 Cthulhu
 
10.02.12
23:57
или ПолучитьПозицию() для обоих записанных, а потом сравнить их тупо на больше-меньше.
4 Aleksey
 
10.02.12
23:58
ЧЧ=0;ММ=0;СС=0;
АвтоВремяОтключить();
ВремДок.ПолучитьВремя(ЧЧ,ММ,СС);
УстановитьВремя(ЧЧ,ММ,СС-1);
5 Grusswelle
 
10.02.12
23:59
Судя по наименованию топика, я уж думал, было, что в раздел LIFE попал...
6 Злопчинский
 
11.02.12
00:01
Процедура ПриЗаписи()
..
НачатьТранзакцию();
Попытка
 Записать();
 Если ДокОснование.ПолучитьПозицию() >= ПолучитьПозицию()
 Тогда
   ОтменитьТранзакцию();
   Предупреждение("Проблема");
   СтатусВозврата(0);
   Возврат;
 КонецЕсли;
Исключение
 ОтменитьТранзакцию();
 Сообщить(ОписаниеОшибки());
 СтатусВозврата(0);
 Возврат;
КонецПопытки;    
ЗафиксироватьТранзакцию();
..
???
7 Злопчинский
 
11.02.12
00:02
(2) мама и доча могут быть в разных датах...
8 Злопчинский
 
11.02.12
00:02
(3) ну ия про то- см(6) - иначе никак?
9 Aleksey
 
11.02.12
00:05
(7) А если даты разные,Ю то смысл проверять?
10 Aleksey
 
11.02.12
00:07
(8)
АвтоВремяОтключить();
Синтаксис:
АвтоВремяОтключить()
Назначение:
Отключить режим автоматической установки времени для новых документов, при этом новые документы заносятся с временем, устанавливаемым при помощи метода УстановитьВремя.
11 Злопчинский
 
11.02.12
00:07
(9) если подч-документ - новый - куда ляжет на оси времени по отношению к маме?
12 Злопчинский
 
11.02.12
00:08
... надо подумать...
13 Aleksey
 
11.02.12
00:09
(11) Не понял вопроса. Если маму провели вчера в 19:30, то какая разница во сколько сегодня (текущим днем) провели дочку? Она гарантированно будет позже
14 Aleksey
 
11.02.12
00:10
Т.е. какая связь между датой проведения и датой документа
15 aleks-id
 
11.02.12
00:14
однополый инцест невозбранно обсуждаем?
16 Злопчинский
 
11.02.12
00:17
сегодня - 11.02.12 (пля! завтра симметричная дата!!!)
мама проведена вчера 10.02.12 в 19.30
дочку создать-новый сегодня-записать = ОК
открываем дочку - ставим дату 10.02.12
- куда запишется? раньше мамы/позже мамы? (исходим из того что юзверь не знает где мама).
17 Злопчинский
 
11.02.12
00:17
(15) здесь вам не там!
18 aleks-id
 
11.02.12
00:22
(16) ну чо ты мосх ломаешь. ну излови ты мамку, забубень доче дату рождения ?(доча.дата>мамка.дата, доча.дата,мамка.дата+1);
19 Aleksey
 
11.02.12
00:23
(16) А ну тут просто. Запишется с тем времени где сейчас
20 Aleksey
 
11.02.12
00:24
Смена даты время не меняет
21 Aleksey
 
11.02.12
00:24
Остаются еще кнопки в журнале, которые позволяют менять время
22 Aleksey
 
11.02.12
00:27
Если на регистрах, то  сервис->Параметры вкладка опер учет
23 Злопчинский
 
11.02.12
00:43
(19) а если есйчас ночь - и запишется со временем 04-00 - и попадет раньше мамы..?
24 aleks-id
 
11.02.12
00:44
пля (23) не тупи. возьми код из (18)
25 Злопчинский
 
11.02.12
00:45
короче склифасовские...
забульбенил как в (6) - вроде отлавливает все как надо.
кругом одни уроды ;-)
26 Aleksey
 
11.02.12
00:45
(23) И чё?

Ты же спросил каким временем я ответил. А уж дальше твоя забота поменять время на то что нужно, если надо
27 Aleksey
 
11.02.12
00:45
(25) Я тебе сказал где грабли
28 Aleksey
 
11.02.12
00:46
Возьми в журнале нажми ПКМ и скажи - изменить время
29 Aleksey
 
11.02.12
00:46
А если у тебя типовая, то там даже кнопка внизу есть изменить время
30 Aleksey
 
11.02.12
00:47
Процедура ПриИзмененииВремениДокумента(<?>)
КонецПроцедуры
Синтаксис:
ПриИзмененииВремениДокумента(<Докум>)
Назначение:
Предопределенная процедура при интерактивном изменении времени документа.
Параметры:
<Докум> - обрабатываемый документ.
Замечание:
Данная процедура может располагаться только в глобальном программном модуле.
Подробнее см. в документации, глава 'Системные предопределенные процедуры'
31 Злопчинский
 
11.02.12
00:48
(27) в (6) коде?
32 aleks-id
 
11.02.12
00:48
(25) если я такой гомнокод встречу в конфах - прикажу найти предшественника и анально(зачеркнуто) анально(зачеркнуто) анально(зачеркнуто)(зачеркнуто) анально покарать его!
33 Aleksey
 
11.02.12
00:49
(31) Нет в логике, а не в коде
34 Aleksey
 
11.02.12
00:50
Т.е. как твою защиту поиметь и записать дочку раньше мамы
35 Злопчинский
 
11.02.12
00:56
(34) и...??
36 Aleksey
 
11.02.12
00:57
(35) Чукча? Или кто то спать хочет?
37 Aleksey
 
11.02.12
00:58
(21), (28), (29)
Еще раз написать?
38 Злопчинский
 
11.02.12
00:59
(18) а скакого самовольно менять дату если юзверь сказал хочу вот сюда записать? задача - не дать юзверю записать неправильно, ане двигать самовольно доки туда сюда.
39 Aleksey
 
11.02.12
01:00
Я уже не говорю про ситуацию когда перепровели маму и она повелась на ТА, т.е. ПОСЛЕ дочки
40 Злопчинский
 
11.02.12
01:00
(37) блин.. возьмем вырожденный случай - никаких кнопок которые позволяют менят врем я- нет. юзверь может ввести новый док, записать его или изменить дату уже записанного...
41 Aleksey
 
11.02.12
01:00
Хотя если тебя "защита от дураков" не интересует, то да. Решение найдено, тему можно закрывать
42 Злопчинский
 
11.02.12
01:01
(39) о! это отдельная история...
43 Aleksey
 
11.02.12
01:01
(40) Я так и не нашел как победить правую кнопку с системным меню
44 Злопчинский
 
11.02.12
01:06
(43) ну.. есть вк которые модифицируют пкм убирают ли они оттуда штатные - вроде да... можно еще попробовать отлов самого ПКМ..
.
а вообще меня жутко напрягает, что типовые конфиги - что бухия, что тиса - не реализовано дата периода действия проводимого документа и дата самого документа...
хоть ты на расчете штрямкай...
45 Злопчинский
 
11.02.12
01:06
ок. вопрос закрыт.
46 sapphire
 
11.02.12
05:04
(0) "As is"
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан