powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Ворпос к разработчикам
15 сообщений из 15, страница 1 из 1
Ворпос к разработчикам
    #33975950
sashko2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
<ReportItems>
                  <Textbox Name="textbox27">
                    <rd:DefaultName>textbox27</rd:DefaultName>
                    <ZIndex> 7 </ZIndex>
                    <Style>
                      <BorderStyle>
                        <Default>Solid</Default>
                      </BorderStyle>
                      <TextAlign>Right</TextAlign>
                      <PaddingLeft>2pt</PaddingLeft>
                      <PaddingBottom>2pt</PaddingBottom>
                      <Format>###.##</Format>
                      <BorderColor>
                        <Default>DimGray</Default>
                      </BorderColor>
                      <BackgroundColor>LightBlue</BackgroundColor>
                      <PaddingRight>2pt</PaddingRight>
                      <PaddingTop>2pt</PaddingTop>
                    </Style>
                    <CanGrow>true</CanGrow>
                    <Value>=iif(sum(Fields!Количество.Value) =  0 , 0 , sum(Fields!ОтклонениеМаржи.Value)/sum(Fields!Количество.Value))</Value>
                  </Textbox>
                </ReportItems>

Из формулы видно, что деления на 0 не предполагается.
При постороении отчета выдает Error в поле и ругается на деление на 0

[rsRuntimeErrorInExpression] The Value expression for the textbox ‘textbox27’ contains an error: Attempted to divide by zero.

Что я должен сделать? ;-) Может попрыгать?
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #33975977
a!rat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #33976272
sashko2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все-равно могли бы анализатор поправить.
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #33978416
parteigenosse
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дык, это известный закидон, видимо один из документированных багов, которые как известно, превращаются в фичи :) Дело в том, что при разборе оператора ииф, оцениваются ВСЕ выражения, а потом выбирается то, что подходит по условию. Так это работает во всех компиляторах вижуал бейсика и видимо во всех парсерах от МС тоже :)
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #33978448
ЛП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дело в том, что при разборе оператора ииф, оцениваются ВСЕ выражения, а потом выбирается то, что подходит по условию.
Блин, ну что за бред вы несете?
Нет такого оператора IIf
Есть функция IIf.
Функция принимает три аргумента. Разумеется все три аргумента вычисляются перед тем, как происходит их передача в функцию.
Что тут может быть непонятного - загадка.
Почему кто-то считает, что можно не вычислять аргументы перед тем как их в функцию передавать - обратно загадка.
Как можно так "анализатор поправить", чтобы он умел не передавать в функцию требующийся этой функции параметр - вообще загадка века.
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #33997984
sashko2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А могли бы и оператором сделать.
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #34003482
parteigenosse
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛП прав, пойду застрелюсь от стыда, что забыл термины, а оператором не сделают, не нужен такой оператор. ты же сам его не сможешь использовать.
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #34014510
sashko2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Даже в Turbo Pascale где-то лет 15 назад в компиляторе была опция проверки условий и нормально работала , почему Microsoft не может сделать?
Я, конечно, понимаю, что процессоры сейчас мощные, но репортинг и так мягко говоря тормозит, а тут ему еще лишние вычисления подсовывают.
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #34014550
мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛПФункция принимает три аргумента. Разумеется все три аргумента вычисляются перед тем, как происходит их передача в функцию.

Вовсе не разумеется. Есть передача по имени, отложенные вычисления и т.д.
Функция IIF не должна вычислять 2 и 3 параметры до того как выяснится какой именно надо вычислять.
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #34014615
tacit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #34016357
ЛП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 мод
Функция IIF не должна вычислять 2 и 3 параметры до того как выяснится какой именно надо вычислять.
Еще раз...
Есть функция:
Код: plaintext
1.
2.
3.
4.
5.
Public Function MySuperFunction 
        ( _
        argument1 As Variant, _
        argument2 As Variant, _
        argument3 As Variant _
        ) As Variant
Есть её вызов в виде
Код: plaintext
SomeVariable = MySuperFunction(<выражение1>,<выражение2>,<выражение3>)
Вы, конечно, можете думать, что компилятор при вызове этой функции не должен вычислять какое-либо из выражений (даже если оно имеет вид "что-то делить на ноль"). Но если Вы так думаете, то претензии явно не к майкрософту.
Опять таки претензии не к майкрософту, если Вы полагаете, что поведение компилятора должно меняться от того, что функция называется не MySuperFunction, а IIf.
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #34017278
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛПВы, конечно, можете думать, что компилятор при вызове этой функции не должен вычислять какое-либо из выражений (даже если оно имеет вид "что-то делить на ноль"). Но если Вы так думаете, то претензии явно не к майкрософту.Вообще-то, притензии как раз к мелкомягким. Уже давно придуман модификатор lazy для параметров функций который решает описаную проблему на раз-два. А вот почему языки производимые мелкомягкими до сих пор не имеют в себе этого или подобного модификатора - загадка? Тормозят наверное :)
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #34020632
ЛП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlВообще-то, притензии как раз к мелкомягким. Уже давно придуман модификатор lazy
Где придуман? Кем придуман? Нахера придуман? В каком языке придуман? На хер нужен? И (самый главный вопрос) - какое отношение "модификатор лэзи" должен иметь к репортинг серверу?

А так, знаете ли, мой сосед (алкаш) давным давно придумал язык hui++ с модификатором da-nu-zabei. И чо? Майкрософт должен его реализовать?

:)

Пы. Сы. Дятлы идут лесом. Типо искать в лесу чудодейственные модификаторы. Если дятлы не найдут модификаторы - то пусть идут в библиотеку.
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #34023433
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛП White OwlВообще-то, притензии как раз к мелкомягким. Уже давно придуман модификатор lazy
Где придуман? Кем придуман? Нахера придуман? В каком языке придуман? На хер нужен? И (самый главный вопрос) - какое отношение "модификатор лэзи" должен иметь к репортинг серверу?На дурные вопросы уж простите отвечать не буду. А какое отношение он имеет к отчетным ситемам - да самое прямое. Уж если встраивают в отчетную систему скриптовый язык - могли бы встроить и что-то нибудь более гибкое чем очередной потомок Бейсика. Поэтому притензии как раз к мелкомягким.
...
Рейтинг: 0 / 0
Ворпос к разработчикам
    #34025130
мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛП
Вы, конечно, можете думать, что компилятор при вызове этой функции не должен вычислять какое-либо из выражений (даже если оно имеет вид "что-то делить на ноль"). Но если Вы так думаете, то претензии явно не к майкрософту.

Претензии именно к майкрософту - не реализована передача параметров по имени - вот и все.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Ворпос к разработчикам
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]