Не формируется суммарное количество продукта в отчете "Остатки по складам"
Не формируется суммарное количество продукта в отчете "Остатки по складам", причём только для одного определённого склада и только для одного определённого типа продукции.
При формировании отчёта выскакивает ошибка, что невозможно открыть такой-то датасет для такого-то поля, хотя другие поля замечательно инициализируются данными из него.
поле отчёта: Memo5
датасет: dsReportOfferingMovementRemain
Memo (значение) поля Memo5: [Sum()]
Нравится
Если поле с sum убрать и работает, то предположу что sum не нравиться null в данных, в выборку добавить ISNULL(xxxxxx,0). Хотя текст об неоткрытом датасете.
"Борисов Михаил Евгеньевич" написал:"причём только для одного определённого склада и только для одного определённого типа продукции" - если отчет в принципе работает, то предположу что sum не нравиться null в данных, в выборку добавить ISNULL(xxxxxx,0).
Михаил, вполне возможно, что вы правы, ранее добавлялось поле артикул, но ещё не все продукты его имеют. Если не сложно, можно поподробнее? Это добавить в селектквери? Если да, то куда именно и как?
В sq_ сервис добавить новое поле select, в нем написать ISNULL(Quantity,0) если БД MSSQL, в соотвествующем сервисе ds_ добавить числовое поле и указанть созданое поле в sq_, обновить отчет, вместо Quantity указать новое поле. Все это стоит делать только если отчет работает без этого поля. Как вариант поставить туда max например, если не заработает то не в данных проблема.
Алексей, попробуйте подменить
[Sum(<dsReportOfferingMovementRemain."Quantity">)]
на
[SUM(<dsReportOfferingMovementRemain."Quantity">,DetailData1)]
будет возникать ошибка?
"Бондарь Наталия" написал:Алексей, попробуйте подменить
[Sum(<dsReportOfferingMovementRemain."Quantity">)] на [SUM(<dsReportOfferingMovementRemain."Quantity">,DetailData1)] будет возникать ошибка?
не помогло,
"Борисов Михаил Евгеньевич" написал:В sq_ сервис добавить новое поле select, в нем написать ISNULL(Quantity,0) если БД MSSQL, в соотвествующем сервисе ds_ добавить числовое поле и указанть созданое поле в sq_, обновить отчет, вместо Quantity указать новое поле. Все это стоит делать только если отчет работает без этого поля. Как вариант поставить туда max например, если не заработает то не в данных проблема.
я так понимаю, ISNULL() - это вот эта функция?: http://msdn.microsoft.com/ru-ru/library/ms184325.aspx
в нем написать ISNULL(Quantity,0)Куда в нем это написать? где написать?
что писать в каждом из этих полей?
Я правильно понимаю, что смысл в том, чтобы преобразовывать NULL в "0"?
Мне не понятно, как с помощью конструктора sq_ это сделать. Простите, но если не сложно, можно ещё подробнее, или хотя бы какую-нибудь ссылочку для понимания происходящего
А обязательно ли это делать через sq?
Создайте в датасете вычисляемое поле ('FieldX'), и на OnDatasetCalcFields пропишите
if (Dataset('Quantity')==null) Dataset('FieldX') = 0; else Dataset('FieldX') = Dataset('Quantity');
И используйте в отчете это поле.
"Сазанов Александр Владимирович" написал:А обязательно ли это делать через sq?
Создайте в датасете вычисляемое поле ('FieldX'), и на OnDatasetCalcFields пропишите
if (Dataset('Quantity')==null) Dataset('FieldX') = 0;
else Dataset('FieldX') = Dataset('Quantity');
И используйте в отчете это поле.
Попробовал, пишет ошибку: "Источник данных "%s" не открыт"
Не помогло
А мы вообще туда копаем? Глянул на рисунок. Хоть немного непонятно, но
В MasterData датасет ...RemainHeader, а поле склад относится к датасету ...MovementRemain, а используете в MasterData.
Я думаю вот оно.
"Сазанов Александр Владимирович" написал:А мы вообще туда копаем? Глянул на рисунок. Хоть немного непонятно, но
В MasterData датасет ...RemainHeader, а поле склад относится к датасету ...MovementRemain, а используете в MasterData.
Я думаю вот оно.
Ок, Вы были правы я там исправил, но по-прежнему выскакивает та же ошибка.
Алексей, согласно телефонной договоренности направьте, пожалуйста, в техническую поддержку резервную копию БД.
"Бондарь Наталия" написал:Алексей, согласно телефонной договоренности направьте, пожалуйста, в техническую поддержку резервную копию БД.
Направлена