Имя: Пароль:
1C
 
Два вопроса в одном...
0 creezz
 
04.10.15
01:29
Обращаюсь ко вселенскому разуму ибо мой отказывает мне в решении задачи.
Пример запроса дающего такой результат:
Номенклатура|Месяц__________|Счет|Итого|
____________|_1_|_2_|_3_|_4_|____|_____|
Ребус_______|___|_4_|___|_8_|_2__|___12|

1,2,3,4 - недели месяца.
Счет - количество не нулевых недельных ячеек.

Ну и собственно вопросы (СКД):
1. Как в запросе разбить месяц на недели именно в таком виде?
2. Как посчитать количество значащих ячеек текущей строки и вывести результат итогом по строке?

Я не прошу написать за меня этот запрос, мне бы направление указать, но только не южное.
1 EvgeniuXP
 
04.10.15
01:33
7*4 = 28 дней получается, куда 3 дня деваешь?
2 creezz
 
04.10.15
01:35
EvgeniuXP. Остаток к последней неделе плюсую.
3 itlikbez
 
04.10.15
01:35
(0) КонецПериода() или НачалоПериода()
4 EvgeniuXP
 
04.10.15
01:38
тупо-глупо:

ВЫБОР КОГДА день <= 7 ТОГДА 1 неделя
КОГДА день <= 14 ТОГДА 2 неделя
КОГДА день <= 21 ТОГДА  3 неделя
КОГДА день <= 31 ТОГДА  4 неделя
5 creezz
 
04.10.15
01:41
(4) Это не "тупоглупо", это "просто". Направление понял.
Теперь второй вопрос
Как посчитать количество значащих ячеек текущей строки и вывести результат итогом по строке?
6 creezz
 
04.10.15
01:42
(4) Сорри, не поблагодарил. Спасибо за вектор направления )
7 EvgeniuXP
 
04.10.15
01:51
тоже тупо глупо: вывести без выбора еще одно числовое поле
8 EvgeniuXP
 
04.10.15
01:57
короче, остаток по номенклатуре просто выведи.
9 hhhh
 
04.10.15
02:00
(6( тут нужно выводить и значащие и незначащие ячейки. Поэтому тупо: количество значащих считать не нужно.
10 creezz
 
04.10.15
02:03
(9) (8) Остаток не пойдет. Нужно именно синоним екселевской функции "СЧЕТ". Тут как в песне: "Слово шефа - закон."
11 EvgeniuXP
 
04.10.15
02:10
на крайняк, если сложно - вызови функцию из общего модуля, туда передай и в модуле расчитай - если не хватает средств расчета в запросе
12 EvgeniuXP
 
04.10.15
02:11
но это не гуд
13 EvgeniuXP
 
04.10.15
02:14
а сколько цифр 0 впереди может быть?
14 hhhh
 
04.10.15
02:16
(10) ну тупо

ВЫБОР КОГДА Количество > 0 ТОГДА 1 КОГДА Количество = 0 ТОГДА 0 КОНЕЦ КАК КоличествоЗначащих
15 EvgeniuXP
 
04.10.15
02:17
если ограничено, делай
ВЫБОР
КОГДА число 0,001 ТОГДА умножь на 1000
КОГДА число 0,01 ТОГДА умножь на 100
КОГДА число 0,1 ТОГДА умножь на 10
ИНАЧЕ
* 1

если правильно понял из термина "значащие"
16 EvgeniuXP
 
04.10.15
02:19
вывод из этого сделал: "в приближенных вычислениях все цифры числа, начиная с первой слева, отличной от нуля, до последней, за правильность которой можно ручаться. Напр., в записи результата взвешивания 0,03020 кг значащими цифрами будут 3, 0, 2 и 0"
17 creezz
 
04.10.15
02:24
(15) Значащие, это отличные от нуля значения ячеек относящимся к неделям, а не разряды числа. Извини за не точную формулировку, но я вроде писал о ячейках, а не разрядах. :) (14) ... и выводить итогом по строке.
18 creezz
 
04.10.15
02:30
Всем спасибо, рабочий результат выложу сюда.
Может кому сгодится.
Независимо от того, куда вы едете — это в гору и против ветра!