Имя: Пароль:
1C
 
А вас не задолбало постоянно писать 24 * 60 * 60 ?
0 toypaul
 
гуру
24.05.21
09:45
:) ?

Вот специально в типовой УТ сделал поиск по 24 надеясь найти функцию которая посчитает дни или добавит дни к дате. И что я вижу - куча кода 24*60*60

это позор :)
1 Aleksey
 
24.05.21
09:46
и то верно, нет чтобы написать 86400
2 Mikeware
 
24.05.21
09:46
прямо как в анекдоте про медведя: "ну я услышал! полегчало?"©
много такой мелочи всякой...
3 toypaul
 
гуру
24.05.21
09:46
(1) это нечитаемо
4 ДенисЧ
 
24.05.21
09:47
Я всегда так пишу. Потому что понятней. И не надо запоминать лишние магические числа
5 Почему 1С
 
24.05.21
09:48
(3) КоличествоСкундВСутках = 86400
6 Mikeware
 
24.05.21
09:49
(5) чт ткое "скунд"?
7 toypaul
 
гуру
24.05.21
09:50
"посчитает дни" имел ввиду дни в секундах
8 RomanYS
 
24.05.21
09:51
(5) в старых типовых почти стандартом было (встречал неоднократно)
мДлинаСуток = 86400;
9 lodger
 
24.05.21
09:53
напишите общий модуль по работе с датами.
10 Почему 1С
 
24.05.21
09:55
(6) Привед медевед, это
11 VladZ
 
24.05.21
10:04
(0) Ну дык...
Подход производителя: Программа не должна быть идеальной. Программа должна быть определенного уровня качества за определенный уровень стоимости.
Не "идеальный уровень качества", а именно "некий определенный уровень", достаточный для того, чтобы взять за это "определенный уровень" денег.
12 dmpl
 
24.05.21
10:06
(8) А для Марса оно менялось? Лучше тогда вычесть из начала текущего дня начало предыдущего дня.
13 dmpl
 
24.05.21
10:06
(0) Просто надо пользовать ДОБАВИТЬКДАТЕ().
14 Галахад
 
гуру
24.05.21
10:08
(12) Вот оно как? 1С готовиться к экспансии а Марс?
15 mikecool
 
24.05.21
10:11
чистый код по вам плачет
16 Mikeware
 
24.05.21
10:17
(15) а по вам? :-))
17 Megas
 
24.05.21
10:24
(3)
КоличествоСкундВСутках = 86400; // 86400 = 24*60*60
18 ads55
 
24.05.21
10:29
(12) "Лучше тогда вычесть из начала текущего дня начало предыдущего дня."
А зачем плодить ещё переменные, когда проще написать 86400?
19 RomanYS
 
24.05.21
10:33
(18) Да похоже разработчики БСП так и считают. В 33 случаях из 35 "84000" используется без каких-либо комментариев. И даже есть такой шедевр:
Если Шаг = "Час" Тогда
        ШагЧисло = 86400 / 24;
...

В одном модуле есть неэкспортная функция
Функция ДлинаСуток()
    Возврат 24 * 3600;
КонецФункции
20 Serg_1960
 
24.05.21
10:35
"И что я вижу - куча кода 24*60*60" - не куча, а всего лишь 42 раза в ЗУПе :) Это куда меньше, чем в УПП - 90 повторов.
21 dmpl
 
24.05.21
10:36
(14) Ну, Маск готовится. Почему бы 1С не подсуетиться?
22 Serg_1960
 
24.05.21
10:36
Мне больше понравилось СписокИнтервалов.Добавить(1*24*60*60,"1 день") и СписокИнтервалов.Добавить(1*7*24*60*60,"1 неделя") :)))
23 dmpl
 
24.05.21
10:37
(18) Потому что оно будет правильно работать на любой планете. В том числе на той, с которой разработчики типовых ;)
24 Mikeware
 
24.05.21
10:38
(19) "Если Шаг = "Час" Тогда  ШагЧисло = 86400 / 24;" - зачет!
25 RomanYS
 
24.05.21
10:44
(24) меня тоже впечатлило. Похоже у типового современного одинесника константа 86400 должна быть уже в ДНК вшита))
26 acanta
 
24.05.21
10:45
Восьмерочники против констант?
27 ads55
 
24.05.21
10:47
(23) Все, собираю вещи и валю к Альфе Центавра 1С внедрять! :)
Не знаете, там интернет хороший или сразу все дистрибы выкачать?
28 RomanYS
 
24.05.21
10:53
(27) там пинги по 4 года, так что качай сразу ещё и на будущее
29 pavig
 
24.05.21
10:53
(0)
Давно уже сделал для себя магическую функцию "ОбщегоНазначенияКлиентСервер.ДобавитьДень()"
30 acht
 
24.05.21
10:54
(26) О, точно! Надо хранить это все в базе. В наш век уважения прав пользователя навязывать ему мнение о времени преступно. Время каждого имеет значение!
31 Dzenn
 
гуру
24.05.21
11:07
Запросы в цикле могут задолбать, в том числе и платформу, а умножение — это очень приятная "разминка" для процессора, я бы сказал ;-)
32 CepeLLlka
 
24.05.21
11:23
(3)Чем это не читаемо? Если конечно человек в профессии один месяц, то может быть не читаемо, в ином случае это пролетает в мозгу само, даже внимания не обращаешь.
33 Mikeware
 
24.05.21
11:41
(30) ну не зря же после пресс-конференций Маска иногда уточняют его планы - "по ET" ("Elon Time")
34 tmk315
 
24.05.21
12:29
До сего людей лень доводит .
35 polosov
 
24.05.21
12:38
(31) 24*60*60 вычисляется на этапе компиляции скорее всего.
36 mikecool
 
24.05.21
12:41
(16) и по мне тоже, но я стараюсь исправляться )))
37 Bigbro
 
24.05.21
12:44
никогда не писал, в те редкие моменты когда ковырял 8ку - встречал 86400 чаще чем 24*60*60.
38 Kassern
 
24.05.21
12:44
(37) а 24*3600 нынче не в моде?)
39 mishaPH
 
модератор
24.05.21
12:45
(0) гм. грешен
40 mishaPH
 
модератор
24.05.21
12:46
+ 39 это видимо из разряда визуального подсчета дней недели по школьному дневнику страничкам.
что у кого-то из олдов не встает в мозгах визуальный образ школьного дневника?
41 Bigbro
 
24.05.21
12:50
(38) не знаю, я редко в 8ку залезаю, не помню )
в 7ке этого не нужно, а основная учетная система сейчас на ней.
42 Обработка
 
24.05.21
12:52
(0) Меня больше бесит "ЕСТЬNULL" или набирать "[]" или "{}" или "< >" или & !!!
43 fisher
 
24.05.21
12:54
(0) Не считаю это позором. Что так, что 86400 - вполне норм. Так и пишу. Когда как, в зависимости от контекста и сложности формулы. Но в комментарии обычно пишу бизнес-смысл всего выражения вычисления даты. "Позор". Это ж надо. Если такое сильное слово потратить на невинную inline-функцию, то какие же слова для настоящего позора останутся?
44 polosov
 
24.05.21
12:55
(42) Делюсь с тобой https://1c.chistov.pro/2012/11/1.html
45 Почему 1С
 
24.05.21
13:00
(42) я пишу isnull, а на [] у меня есть шаблон
46 Mikeware
 
24.05.21
13:00
(42) в турбоконфе набираю, и даже не задумывался... с альтом - скобки и больше-меньше нормально вставляет...
47 ДенисЧ
 
24.05.21
13:02
(46) а я и без турбоконфа так делаю... И ещё альт-т - NULL вставляет... )))
48 Mikeware
 
24.05.21
13:02
(47) да? а чего тогда они жалуются?
49 Обработка
 
24.05.21
13:04
(44) Спс. Заюзаю. Вроде слышал что придумали что-то. Но не вдавался в детали.
50 ДенисЧ
 
24.05.21
13:05
(48) Кто они?
51 Mikeware
 
24.05.21
13:05
(50) ну, (42) (45)
52 ДенисЧ
 
24.05.21
13:06
(51) А... Ну на это можно внимания не обращать... Так, 2%...
53 fisher
 
24.05.21
13:09
Я вообще преклоняюсь перед людьми которым не лень шаблоны ввода настраивать, раскладки менять и т.п.
Видимо, они намного лучше программисты, чем я. Мне это всегда казалось слишком мелкими проблемами на фоне мировой революции.
54 СвинТуз
 
24.05.21
13:12
ДобавитьМесяц(..., 1/30)
55 polosov
 
24.05.21
13:12
(53) Товарищ Ленин, перелогиньтесь.
56 fisher
 
24.05.21
13:14
(0) Что, вот реальнее приятнее было бы писать ОбщегоНазначенияКлиентСервер.ДобавитьДнейКДате(Дата, Дней)?
57 Mikeware
 
24.05.21
13:15
(53) дык себе ж удобней делаешь
58 acanta
 
24.05.21
13:16
А можно вот не общегоНазначения а как в синтакс-помощнике, модуль ДатаВремя.ДобавитьМесяц()?
59 acanta
 
24.05.21
13:17
И чтобы не писать клиент/сервер/оба например разным цветом ?
60 Обработка
 
24.05.21
13:19
(52) Сам ты 2 %!
61 Mikeware
 
24.05.21
13:22
(59) "когда  в программе нет цветовой дифференциации модулей - у нее нет будущего"?
62 fisher
 
24.05.21
13:33
(57) Ну, меня как-то переключение раскладок не запаривает настолько сильно, чтобы я начал искать специальные пути решения этой проблемы.
(58)(59) "Обязательно бахнем. И не раз! Весь мир в труху. Но потом." (с) ДМБ
(60) Не понял. Будет приятнее, если тебя в серую массу запишут? :)
63 Mikeware
 
24.05.21
13:38
(62)  ну, в подобных ассистентах кроме переключения раскладок - много другого разного всякого "сахара"... Оно по-мелочи, но приятно... Знаешь, я в свое время только из-за "авторских комментариев" использовать начал - привык в опенконфе... вагон времени для флуда в мизде сэкономил..
64 GANR
 
24.05.21
13:43
(0) На фоне других проблем эта "беда" кажется крохотной точечкой на фоне громадной тучи.
65 Mikeware
 
24.05.21
13:48
(64) зато легко и быстро решаемой.
66 fisher
 
24.05.21
13:50
(63) Ну а я как выучил в первом франче слепой десятипальцевый, так с тех пор вообще не парюсь. Наоборот - напрягаюсь, когда какие-то окошки выскакивать начинают. А так - думаешь себе спокойно мысль, пальцы параллельно ее спокойно набирают - красота текущей воды без всплесков. Ну, не без контрл-пробела ессно. Еще вот в упор не пойму, почему в дефолтных настройках конфигуратора подсветки поиска текущего идентификатора нет - это то из немногого, что я меняю в стоковых настройках. Дико удобная штука. А новичку ведь даже про это и узнать негде.
67 GANR
 
27.05.21
23:07
(65) Как в анекдоте. Люди знают, что потеряли часы в парке, но ищут по фонарем потому что под ним светлее.
68 Волшебник
 
28.05.21
00:43
86400 — это число всем известно. Это константа типа Пи. Только глупые необразованные люди не знают это число.
69 RomanYS
 
28.05.21
00:58
Число Пи обычно зашивают в "платформу" потому что никто не знает его с нужной точностью.
70 de Bug
 
28.05.21
04:43
А я вот слышал, что сутки стали на полсекунды короче. 1С собирается что-то предпринимать по этому поводу?
71 ДенисЧ
 
28.05.21
04:49
(69) 3.1415926 хватит, чтобы до Луны долететь...
72 Bigbro
 
28.05.21
04:57
(70) с чего бы вдруг? вращение Земли замедляется, сутки постепенно удлиняются.
https://ru.wikipedia.org/wiki/Дополнительная_секунда
для корректировки доп, секунду вносят
крайне редко бывает локальное ускорение вращения в результате землетрясений и т.п.
но это исключение.
73 de Bug
 
28.05.21
05:32
(72) Следовательно, 86400 - не такая уж и константа.
74 Волшебник
 
28.05.21
07:04
(73) Вводят 0 секунду. Количество полноценных секунд остаётся константой
75 ДенисЧ
 
28.05.21
07:07
Ну, вот, начинается сегрегация и апартеизм...
Секунды у них, видите ли, неполноценные...
76 Irbis
 
28.05.21
07:08
Разве не раз в 400 лет високосный год кастрируют? Вот ещё на какие-то левые секунды внимание обращать
77 Волшебник
 
28.05.21
07:48
78 Волшебник
 
28.05.21
07:48
(76) Вы не путайте високосный год и високосную секунду
79 Bigbro
 
28.05.21
07:56
(76) и действительно, да какая разница между вращением Земли вокруг Солнца и вращением вокруг собственной оси? )))
80 DrZombi
 
гуру
28.05.21
08:31
(77) А не проще ли вместо 24 часа, сделать 24.3  и потом 25 часов (спустя 1000 другую лет) :)
81 Mikeware
 
28.05.21
08:46
(80) вы сначала до 2038 доживите... :-)
82 Вафель
 
28.05.21
08:58
(77) в последний раз много подзависло из-за этой секунды
83 DrZombi
 
гуру
28.05.21
09:05
(81) Вот так и в 7.7 думали, когда дату рисовали до в формате "01.01.99"... Ну ни как в будущее не смотрели ;)
84 ДядяМитяй
 
28.05.21
14:33
(66) А новичку ведь даже про это и узнать негде.
Новичку Габец на курсах расскажет. Как мне в свое время рассазал...
85 Злопчинский
 
28.05.21
14:38
(72) "вращение Земли замедляется, сутки постепенно удлиняются."
об эфир трется (он есть, вон даже наши сторожат, у меня даже от автора с подписью есть ;-)
https://content.screencast.com/users/Che66/folders/Capture/media/b35adc0b-4bcb-409f-a66a-0f2e8af3e31b/LWR_Recording.png
86 Злопчинский
 
28.05.21
14:39
(83) в 77 правильно думали. 01.01.99 - и пусть хоть 100 хоть 100 лишних секунд в дне, и вообще пофиг сколько секунд в дне. это 8-ку какие-то мажоры писали...
87 Обработка
 
28.05.21
15:37
(86) Не помню уже но в 1с 77 точно какие-то заморочки с временем и с датой было. Все мы парились.
В 1с8 уже все нормализовали.
88 Mort
 
28.05.21
16:18
Да, использовать 86400 это так нечитаемо...

Стандартная картина:


куча непонятного говнокода
...
ТекДата = ТекДата + 24 * 60 * 60; // ну так то точно всё понятно.
...
продолжается говнокод
89 RetardedToBoot
 
29.05.21
06:43
(66) не, подсветка тек.идентификатора не удобна, я ее всегда отключаю. Постоянно код то в одном месте засветится, то в другом, что отвлекает. Удобна возможность выделить строку и ее везде подсветить. В 1С такое можно если в поиск забить и нажать поиск, но эта подсветка пропадает при отклонении от поиска. Да и окно при этом лишнее, нужно сразу по Ктрл+Эф без вспомогательных окон.
90 RetardedToBoot
 
29.05.21
06:45
(87) там была дата начала столетия.
91 RetardedToBoot
 
29.05.21
06:52
А по ЕстьНулл, я в шаблоны занес ЕстьНулл -> ЕстьNull, ну и набираю естьнулл, дальше Ктрл+ЮзатьШаблон и в результате нужная строка. И просто Нулл на Null.

Так же удобны шаблоны й -> |, ц -> &, у -> #, а кнопку шаблона поменять на Ctrl+Q.
Получится: й+Ктрл+й -> |, и т.д.
Ошибка? Это не ошибка, это системная функция.