|
v8: Шедевр определения длины номера документа ;-) | ☑ | ||
---|---|---|---|---|
0
runoff_runoff
03.02.14
✎
21:45
|
Наше в коде вот такую конструкцию..
ДлинаНомера = Документы.РеализацияТоваровУслуг.СоздатьДокумент().Метаданные().ДлинаНомера; |
|||
1
mistеr
03.02.14
✎
21:46
|
(0) Ну хорошо еще, что не Записать() + СтрДлина()
|
|||
2
IamAlexy
03.02.14
✎
21:47
|
(0) ваши предложения определения длины номера ?
|
|||
3
runoff_runoff
03.02.14
✎
21:51
|
Метаданные.Документы.РеализацияТоваровУслуг.ДлинаНомера
|
|||
4
DJ Anthon
03.02.14
✎
21:51
|
(1) а че? зато узнаем, сколько реально символов используется ))) только сразу после этого надо Удалить ))))
|
|||
5
IamAlexy
03.02.14
✎
21:55
|
(3) ваше решение работает лучше чем решение из (0) ?
более точно определяет длинну номера ? |
|||
6
runoff_runoff
03.02.14
✎
21:57
|
(5) ну наверное есть какая-то погрешность определения номера.. но все же стоит попробовать..
|
|||
7
Фокусник
03.02.14
✎
21:58
|
(5) в долях секунд быстрее ;)
|
|||
8
Aswed
03.02.14
✎
21:59
|
Надо просто использовать оператор
ДлинаНомераДокумента(Док) курите 8.3 |
|||
9
hhhh
03.02.14
✎
22:23
|
(7) вроде наоборот Документы быстрее, чем Метаданные.Документы
|
|||
10
H A D G E H O G s
03.02.14
✎
22:32
|
(5) Решение не будет давать ошибки, которая может таитца в инициации модуля документа.
|
|||
11
CepeLLlka
03.02.14
✎
22:40
|
(9)Да чё спорить то.. отладчик же есть..
(0)Проверил бы... и выложил скрин.. |
|||
12
Zerga
03.02.14
✎
23:17
|
Особенно шустро способ из (0) будет отрабатывать, если в модуле документа инициализируется куча всякой муйни.
|
|||
13
Armando
03.02.14
✎
23:19
|
(0) Выкладывай свой код, вместе поржем.
|
|||
14
pumbaEO
03.02.14
✎
23:29
|
(13) смотри (3) , код из (0) не будет работать если не будет права на запись, а только на чтение.
|
|||
15
Zombi
03.02.14
✎
23:33
|
(14) Где в (0) запись?
|
|||
16
GROOVY
03.02.14
✎
23:34
|
Мисти писала видать.
|
|||
17
zladenuw
03.02.14
✎
23:36
|
(16) сарказм ? :)
|
|||
18
Armando
03.02.14
✎
23:36
|
(14) Я не об этом, я вообще.
Бесят умники, найдет лажу в чужом коде, и радуется. Исправил молча и дальше фигачишь. Каждый ляп на мисту постить и высмеивать, это не профессионально. |
|||
19
zladenuw
03.02.14
✎
23:37
|
(0) а где именно расположен данный кусок ?
|
|||
20
Eugeneer
03.02.14
✎
23:38
|
У автора приступ гения.
Следующий хаг пойти к руководству и сказать - что за дибил у вас тут работал. Он ТАКОГО тут наделал. |
|||
21
Otkr
03.02.14
✎
23:41
|
(20) Маня, это был твой код? Палишься же
|
|||
22
mdocs
03.02.14
✎
23:42
|
(0) По мне так кривая объектная модель 1С-ки виновата. Метод методанные() доступен для ссылки или объекта, но нифига не доступен для менеджера. Вернее доступен но задом-наперед Метаданные.Доокументы.БлаБлаБла и это уже не метод.
|
|||
23
Eugeneer
03.02.14
✎
23:43
|
(21) а чо сразу мой? Параноя? чуть речь о каком то коде зашла, об 1С, деньгах - сразу все маню вспоминают. Я вам еще ночью не снюсь?
|
|||
24
zladenuw
03.02.14
✎
23:43
|
(20) так в 90% случаях так и есть. что за быдло тут писал.
а в итоге 70% а то и более. такие же кодеры |
|||
25
zladenuw
03.02.14
✎
23:43
|
у меня мантра перед сном. помни о стандартах 1с, при написание кода :)
|
|||
26
pumbaEO
03.02.14
✎
23:44
|
(15) а ты попробуй. Роль только чтение и попробуй СоздатьОбъект() , вывалиться по ошибке доступа.
|
|||
27
Eugeneer
03.02.14
✎
23:45
|
(24) "у вас бардак в базе, надо все переписывать" ))
Любой русский программист, после пары минут чтения кода, обязательно вскочит и произнесет, обращаясь к себе: переписать это все нафиг. Потом в нем шевельнется сомнение в том, сколько времени это займет, и остаток дня русский программист потратит на то, что будет доказывать самому себе, что это только кажется, что переписать это много работы. А если взяться и посидеть немного, то все получится. Зато код будет красивый и правильный. На следующее утро русский программист свеж, доволен собой и без единой запинки докладывает начальству, что переписать этот кусок займет один день, не больше. Да, не больше. Ну, в крайнем случае, два, если учесть все риски. В итоге начальство даст ему неделю и через полгода процесс будет успешно завершен. До той поры, пока этот код не увидит другой русский программист. http://jokesland.net.ru/programmer.html |
|||
28
zladenuw
03.02.14
✎
23:47
|
(27) 100500 :)
|
|||
29
GROOVY
03.02.14
✎
23:53
|
СоздатьДокумент() - это неявные объектные блокировки. Нафига они нам?
|
|||
30
Otkr
03.02.14
✎
23:53
|
(23) Я предпочитаю девушек, извини.
|
|||
31
Otkr
03.02.14
✎
23:54
|
(23) И да, о гомнокоде, заметь)
|
|||
32
Eugeneer
04.02.14
✎
00:01
|
(29) а я всю жизнь считал что Записать это блокировки.
|
|||
33
GROOVY
04.02.14
✎
00:07
|
(32) Это блокировки табличные.
|
|||
34
Classic
04.02.14
✎
00:07
|
(29)
А что там блокируется? |
|||
35
GROOVY
04.02.14
✎
00:15
|
(34) Объект. Со всеми свойствами.
|
|||
36
mdocs
04.02.14
✎
00:24
|
ИМХО Блокировки - это слишком громко. Объект еще в базу не записан ну висит от в памяти, у него даже номера еще нет, к данным БД никак не привязан и никак к нему не обратиться из БД. Разве что лишнее выделение памяти.
|
|||
37
Armando
04.02.14
✎
00:24
|
СоздатьОбъект - это же новый объект, пусть себе блокируется... только непонятно от кого.
|
|||
38
GROOVY
04.02.14
✎
00:37
|
Механизм объектных блокировок - не простая вещь. Не думайте о ней поверхностно.
|
|||
39
Фокусник
04.02.14
✎
00:38
|
(9) при создать объект код из модуля выполняется, и прав может не хватить...
|
|||
40
GROOVY
04.02.14
✎
00:39
|
(36) Все правильно, не табличные данные. Но к этому срабатывают механизмы объектных блокировок.
|
|||
41
Torquader
04.02.14
✎
00:46
|
(40) Новый объект ничего не блокирует кроме кода (и то, если последний в момент создания генерится).
Конечно, в модуле документа у того, кто писал (0) нас могут поджидать и ещё более интересные сюрпризы и недочёты, поэтому, наверняка сказать сложно. |
|||
42
NcSteel
04.02.14
✎
00:47
|
(33) Если упр блокировки то можно принебречь
|
|||
43
NcSteel
04.02.14
✎
00:47
|
(35) С потолка взял? ))
|
|||
44
NcSteel
04.02.14
✎
00:48
|
(38) Объектные блокировки не защищают данные и в данном случае максимум будет S блокировка в автоматическом режиме.
|
|||
45
NcSteel
04.02.14
✎
00:48
|
(44) / А по факту не будет ни каких.
|
|||
46
Classic
04.02.14
✎
11:31
|
(35)
В смысле экземпляр объекта? Или весь объект? |
|||
47
NcSteel
04.02.14
✎
11:33
|
(46) В общем блокировок создаваться не будет. Так как нечего блокировать.
|
|||
48
musdust
04.02.14
✎
11:36
|
Процедура ПриЗакрытии()
Открыть(); КонецПроцедуры Процедура ПриОткрытии() Закрыть(); КонецПроцедуры |
|||
49
Balabass
04.02.14
✎
11:39
|
Поется на распев:
"Если бы 1сники были врачами Какая жизнь тогда бы началась" |
|||
50
Zero on a dice
04.02.14
✎
11:43
|
(10) никакой разницы - источник один и тот же - метаданные, что бы там ни выполнялось при создании, результат не изменится.
|
|||
51
Classic
04.02.14
✎
11:46
|
(50)
Если модуль не компилится, то вариант в (0) вывалится с ошибкой. А вот вариант метаданные. ... ошибки не даст |
|||
52
Zero on a dice
04.02.14
✎
11:48
|
(51) понял о чем речь
|
|||
53
pumbaEO
04.02.14
✎
11:54
|
(52) мне кажеться ты не понял о чем речь.
|
|||
54
Ненавижу 1С
гуру
04.02.14
✎
11:54
|
Функция ИмяМесяца(Дата)
Если ТипЗнч(Дата) = Тип("Дата") тогда НомерМесяца = Месяц(Дата); НомерГода = Год(Дата); Иначе НомерМесяца = Число(Сред(Дата,5,2)); НомерГода = Число(Лев(Дата,4)); КонецЕсли; Если НомерМесяца = 1 тогда ИмяМесяца = "Январь"; ИначеЕсли НомерМесяца = 1 тогда ИмяМесяца = "Январь"; ИначеЕсли НомерМесяца = 2 тогда ИмяМесяца = "Февраль"; ИначеЕсли НомерМесяца = 3 тогда ИмяМесяца = "Март"; ИначеЕсли НомерМесяца = 4 тогда ИмяМесяца = "Апрель"; ИначеЕсли НомерМесяца = 5 тогда ИмяМесяца = "Май"; ИначеЕсли НомерМесяца = 6 тогда ИмяМесяца = "Июнь"; ИначеЕсли НомерМесяца = 7 тогда ИмяМесяца = "Июль"; ИначеЕсли НомерМесяца = 8 тогда ИмяМесяца = "Август"; ИначеЕсли НомерМесяца = 9 тогда ИмяМесяца = "Сентябрь"; ИначеЕсли НомерМесяца = 10 тогда ИмяМесяца = "Октябрь"; ИначеЕсли НомерМесяца = 11 тогда ИмяМесяца = "Ноябрь"; ИначеЕсли НомерМесяца = 12 тогда ИмяМесяца = "Декабрь"; КонецЕсли; Возврат ИмяМесяца + " " + Формат(НомерГода,"ЧГ=0"); КонецФункции |
|||
55
Classic
04.02.14
✎
11:56
|
(54)
годно |
|||
56
wowik
04.02.14
✎
12:00
|
(20) +100
|
|||
57
MSII
04.02.14
✎
12:17
|
(54) Рарус-стайл.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |