К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

В шоке: новый способ получить остатки регистра накопления

Uho
0 - 26.07.2013 - 11:35
Наткнулся на код в конфе, доставшейся по наследству.
Чел получает остатки Регистра накопления на каждую дату месяца следующим образом:

Пока День <= ДатаКон Цикл
СуммаДляПроцента = 0;
ЗапросПоСчетам = Новый Запрос(
"ВЫБРАТЬ
| Период, Начислено, Списано
|ИЗ
| РегистрНакопления.Овердрафт
|ГДЕ
| РегистрНакопления.Овердрафт.Период <= &КонДата и РегистрНакопления.Овердрафт.Поставщик = &Поставщик и РегистрНакопления.Овердрафт.Договор = &Договор");

ЗапросПоСчетам.УстановитьПараметр("КонДата", КонецДня(ПредДень));
ЗапросПоСчетам.УстановитьПараметр("Поставщик", Поставщик);
ЗапросПоСчетам.УстановитьПараметр("Договор", Договор);
Выборка = ЗапросПоСчетам.Выполнить().Выбрать();

Пока Выборка.Следующий() Цикл
СуммаДляПроцента = СуммаДляПроцента + Выборка.Начислено - Выборка.Списано;
КонецЦикла;

я в шоке...
кому лень читать код - вместо использования виртуальной таблицы Остатки, чел на каждый ДЕНЬ перебирает ВСЕ записи регистра накопления и ВЫСЧИТЫВАЕТ остаток.
не говоря уже о том, что структура регистра неправильная



Гость
1 - 26.07.2013 - 11:41
хотя бы уже в запросе сложил
Гость
2 - 26.07.2013 - 11:44
Свой расчёт может быть следствием аврального внесения изменений в алгоритм при разрушении таблицы итогов. Но тут, видимо, не тот случай...
В целом - да, зачётно :). Создание объекта Запрос внутри цикла, опять же, колоритненько
Uho
3 - 26.07.2013 - 11:48
1-angro > кстати, это "она"
4 - 26.07.2013 - 11:57
наглядный учебник как низя делать!
Гость
5 - 26.07.2013 - 11:58
(3) я в последнее время столкнулся с девушками программистами, нормально пишут, был худшего мнения.
Гость
6 - 26.07.2013 - 12:40
это - код одноЭсника!
Uho
7 - 26.07.2013 - 12:52
5-angro > я не говорю, что (0) это из-за пола ))

Вот еще оттуда же:

Код:
ВсегоДней = ?(Год(Дата) = 2008, 366, 365);
Гость
8 - 26.07.2013 - 13:20
(7) нормальный код в стиле 1це - типичная затычка "на сейчас"
Гость
9 - 26.07.2013 - 13:52
8-Helen1986 > Почему "в стиле 1це"? У нас счаз госдура фунциклирует в этом режиме. Вообще все структуры. И вкачивают в головы, что так надо.
Гость
10 - 26.07.2013 - 14:00
(0) Finish her!
Гость
11 - 26.07.2013 - 14:01
ну значит 1це и госдура - одного поля ягоды
и разводят нас одинаково - лишь бы самим бабла урвать
Гость
12 - 26.07.2013 - 14:02
(10)
her! Finish! как бы не так - оно будет вечно!
13 - 26.07.2013 - 14:07
31473677]ну значит 1це и госдура - одного поля ягоды[/quote]
Раз оне одинаковые, значт одну дуру можно убрать. Я за то, чтоб оставить 1с...
Uho
14 - 26.07.2013 - 14:50
13-bma1 > а как же конкуренция?
Гость
15 - 26.07.2013 - 15:05
(13) я за то, чтобы выкинуть обе прокисшие ягоды
16 - 26.07.2013 - 15:48
Цитата:
Сообщение от Helen1986 Посмотреть сообщение
я за то, чтобы выкинуть обе прокисшие ягоды
Helen1986 в президенты!!!
Гость
17 - 26.07.2013 - 17:39
есть замечательный сайт говнокод.ру. Там и про 1с.
Например:
Красный = Новый Цвет (255, 0, 0); //Красный
Зеленый = Новый Цвет (0, 255, 0); //Зеленый
Синий = Новый Цвет (0, 0, 255); //Синий
Гость
18 - 26.07.2013 - 20:40
(17) а в чем тут говнокод? есть такие константы? может свои названия хочется.
19 - 26.07.2013 - 21:58
2(17) И что? Я сам писал как-то такой код:
СерыйЦвет = WebЦвета.ЛососьСветлый;

точнее сперва это был действительно серый, но потом пользователи попросили цвет повеселее...
Гость
20 - 26.07.2013 - 23:03
19-bma1 > У нас как-то так повелось, что для парней набор лососевых цветов - это цвета "повеселее", а для девчонок - по умолчанию.
Гость
21 - 26.07.2013 - 23:59
Вы тут все идиеты, или только я?) дальтоники?)
Гость
22 - 27.07.2013 - 00:22
2(0) Это классика. Похоже он тебя обскакал, ух...
Гость
23 - 27.07.2013 - 00:29
+(22) Мне интересно было бы посмотреть твой правильный код. Этот код не критичный. Мне просто хотелось бы увидеть код идеального программиста. Я таковым являюсь, заранее скажу, да ты и сам знаешь. Но все же. Можно хоть одним глазком?
24 - 27.07.2013 - 01:13
(23) ого, ты уже успел стать идеальным программистом, скромняга!
и кто же короновал тебя этим званием?
Гость
25 - 27.07.2013 - 01:22
2(24) Да, брось. Я очень скромный человек.
Гость
26 - 27.07.2013 - 01:25
+(25) Я антигуманист, я белорус
27 - 27.07.2013 - 01:28
Цитата:
Сообщение от Моррисон Посмотреть сообщение
Кстати, фигачу уже поиски по кодам и всем рекомендую. И добавлять "КодSAP" и прочую [*****]. Не парьтесь - мы на задворках жизни. Ни к чему страшному это не приведет.
да, это действительно идеально!
Гость
28 - 27.07.2013 - 01:39
2(27) И...
Гость
29 - 27.07.2013 - 01:44
Настоящие герои всегда всегда в зопое
Гость
30 - 27.07.2013 - 08:54
(29)в состоянии программиста (зопое) вторая буква О лишняя
Гость
31 - 27.07.2013 - 09:15
2(30) Какая ты умничка, ты все правильно поняла.
Гость
32 - 27.07.2013 - 09:24
2(27) Ну так аргументы будут, Ирли? А то становится скучновато.
Гость
33 - 27.07.2013 - 09:46
2(0) Кстати, написать такой запрос это не просто, человек явно умен, а ты его грязью на форуме...
Гость
34 - 27.07.2013 - 09:47
Ирли, чего застыл? Послушай вот лучше, какие демоны тебя ведут? Я уже 88 вешу.

http://music.yandex.ru/#!/artist/41051/tracks

"Демоны" само собой.
35 - 29.07.2013 - 08:31
На днях одному начинающему 1с-нику долго объяснял, что отрицание истины не всегда есть ложь. Во всяком случае в запросах... два варианта:
...ГДЕ НЕ ИСТИНА В (ВЫБРАТЬ ИСТИНА ИЗ ...)
...ГДЕ ЛОЖЬ В (ВЫБРАТЬ ИСТИНА ИЗ ...)
дают принципиально разные результаты :)
Гость
36 - 29.07.2013 - 08:47
35-bma1 > Одни из моих любимых тем про запросы:
1. Что вернет А=Null?
2. Что больше - истина или ложь?
37 - 29.07.2013 - 09:57
2(36)
1. Как что вернет? NULL и вернет.
2. Обычно true == 1 а false == 0, т.о. даже маленькая истина больше огромной лжи...
P.S. ненавижу разработчиков баз данных, кто пользуется возможностью при отсутствии явной инициализации полей новой записи таблицы позволять неинициализированным полям иметь значение NULL (а не в соответтсии с их типом: пустая строка, ложь или обычный ноль).
38 - 29.07.2013 - 09:59
2(17)
Зеленый = Новый Цвет (0, 255, 0); //Зеленый

RGB - Rot,Gelb,Blau ???
Гость
39 - 29.07.2013 - 10:43
(38) это на каком языке?


К списку вопросов






Copyright ©, Все права защищены