|
Дробное выражение как правильно написать | ☑ | ||
---|---|---|---|---|
0
MoydodbIR
09.12.15
✎
23:53
|
Все привет! я только учусь по этому кто поможет спасибо! в общем пытаюсь написать пользовательское выражение в СКД и не пойму где что упускаю пишет ошибку синтаксиса. Нужно получить одно из двух выражений, нужно получить целое число а не дробное из 2 выражений. Не могу понять где я ошибся в выражение. И правильно ли я пишу выражение?
CH=[Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]; Если CH=Цел(CH) Тогда [Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов] Иначе ([Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]); * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) / [Номенклатура.Коэффициент единицы для отчетов] КонецЕсли; |
|||
1
MoydodbIR
10.12.15
✎
01:41
|
АП недоехал
|
|||
2
MoydodbIR
10.12.15
✎
03:30
|
Проше написать так видимо как можно реализовать синтаксис не знаю в скд
вобшем 1 уровень число общее 500 второе 120 третье 10 2 уровень число общее 25 второе 6 У второго уровня только 2ва числа (500 - Цел(500/120)*120)/10=2 считайем по первому уровню получаем цело число значит показываем в отчете. Если пойти по тому же принципу во втором уровне, поскольку там только два числа то получается следующее (25 - Цел(25/6)*6)/6=0,16 дробное число не устраивает Поэтому если число дробное то убираем последнее деление поскольку оно лишнее 25 - Цел(25/6)*6=1 поскольку получили целое число то показываем его Как написать это синтаксисом в СКД Выбор ТОГДА КОГДА КОНЕЦ |
|||
3
ЧеловекДуши
10.12.15
✎
07:38
|
(2) Читай, скачивай, разбирай, что не понятно в терминологии, ищи в Синтаксис-Помощнике (СП). Гугл хорошо работает http://www.forum.mista.ru/find.php
http://1cskd.ru/2010/07/primery-otchetov-na-skd/ |
|||
4
MoydodbIR
10.12.15
✎
10:53
|
ЧеловекДуши
Спасибо! за отклик, если есть возможность написать как проводить сравнение про выборку я понял. Мне не понятно как сравнивать из 2 выражений на языке скд условие сравнения как задать, что в дробное число не устраивает, выводить только целое из 2ух выражений. |
|||
5
cw014
10.12.15
✎
11:12
|
(4) 4 раза прочитал - не осилил поток сознания
|
|||
6
MoydodbIR
10.12.15
✎
13:03
|
Дробное выражение как правильно написать
если выражение = дробному из условия 1 то выводить, если дробное то пересчитать по 2 условию. Поток прост нужно сравнить 2 выражения и вывести то которое делится без дробного остатка. 0,833 не делится, 1,2,3 делится. |
|||
7
Лефмихалыч
10.12.15
✎
13:08
|
(6) как у тебя это получается? Опять не понятно ни шиша...
|
|||
8
Nuobu
10.12.15
✎
13:14
|
Выбор Когда Цел((25 - Цел(25/6)*6)/6) <> (25 - Цел(25/6)*6)/6 Тогда (25 - Цел(25/6)*6)/6 Иначе 0 Конец
|
|||
9
hhhh
10.12.15
✎
13:15
|
(6) ну а в чем проблема? Ты же написал в (0)
теперь вместо Если напиши ВЫБОР КОГДА вместо КонецЕсли КОНЕЦ и вместо переменной СН ее значение пиши |
|||
10
MoydodbIR
10.12.15
✎
13:55
|
№7 Прости ну как могу так и разгоняюсь
№8 как при сравнении 2ух одинаковых ты строго не равны? не понял честно как это описать. #9и вместо переменной СН ее значение пиши Тк значение с начало надо определить по одному из выражений. Попробовал Так CH=[Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]; ВЫБОР КОГДА CH=Цел(CH) Тогда [Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов] Иначе ([Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]); * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) / [Номенклатура.Коэффициент единицы для отчетов] КОНЕЦ; Ошибка синтаксиса. |
|||
11
Nuobu
10.12.15
✎
14:45
|
/ [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]); *
Крапка с комой. |
|||
12
Eugene_life
10.12.15
✎
15:17
|
(10) Вместо СН пиши полностью выражение в условии
|
|||
13
MoydodbIR
10.12.15
✎
15:48
|
#11 Спасибо не заметил
#12 Я правильно понял? ВЫБОР КОГДА [Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов] = Цел([Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов] ) ТОГДА [Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов] ИНАЧЕ ([Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) / [Номенклатура.Коэффициент единицы для отчетов] КОНЕЦ; Ошибку синтаксиса выдает |
|||
14
Eugene_life
10.12.15
✎
15:51
|
(13) убирай по частям (заменяй выражение на "Истина") и ищи, где не так с синтаксисом
|
|||
15
MoydodbIR
10.12.15
✎
16:25
|
(14) Да ошибка была в КОНЕЦ;
но теперь другая тема при проверке все равно выдает дробное то есть от условия ничего не поменялось ВЫБОР КОГДА ([Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) / [Номенклатура.Коэффициент единицы для отчетов] = Цел(([Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) / [Номенклатура.Коэффициент единицы для отчетов] ) ТОГДА ([Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) / [Номенклатура.Коэффициент единицы для отчетов] ИНАЧЕ [Конечный остаток] - Цел([Конечный остаток] / [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов]) * [Номенклатура.Набор упаковок.Коэффициент единицы для отчетов] КОНЕЦ немного местами выражение поменял. хотя я проверяю выражение на дробность но дроби как выходили так и выходят ( |
|||
16
MoydodbIR
10.12.15
✎
17:11
|
(14) Большое спасибо! крыша поехала сори ))) все норм СПАСИБО! ВСЕМ
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |