Я создаю несколько отчетов с использованием объектных источников данных.
У меня есть следующий сценарий:
В моем программном обеспечении пользователь может создать список продуктов с указанием кода , название продукта , цена и ставка НДС (эти два последних атрибута будут использоваться в качестве подсказок, когда пользователь разместит продукт внутри заказа).
Когда пользователь создает заказ, он может разместить в нем продукты, указав для каждого продукта количество, а также он может переопределить предлагаемую цену и ставку НДС.
Таким образом, в основном у меня есть двамодели для представления продуктов:
- ProductModel (используется для определения названия продукта, кода продукта и предложения по умолчанию для цены и ставки НДС)
- OrderProductModel (используется для размещения товаров в заказе, указания количества и отмены предложения по умолчанию для товара и номера НДС)
ProductModel :
OrderProductModel:
- id
- order (ссылка на объект OrderModel)
- product (ссылка на ProductModel для чтения кода и названия, а также предложениядля цены и ставки НДС)
- количество
- цена
- НДС
Теперь мне нужно заполнить таблицу, чтобы заполнить таблицуобъектов OrderProduct и отображают следующую информацию для каждого продукта:
- код (orderProduct.product.code)
- имя (orderProduct.product.name)
- цена(orderProduct.price)
- количество (orderProduct.quantity)
(предположим, что orderProduct является экземпляром OrderProductModel)
Теперь вопрос " howопределить правило отчета для доступа к коду и имени?"...
Я использую Visual Studio 2010 и прочитав здесь: http://www.gotreportviewer.com/objectdatasources/index.html они говорят, чтосинтаксис: =Fields!Object.Value.attribute
больше не работает ...
Я подумал, что смогу решить проблему, добавив в OrderProductModel некоторые свойства, которые будут считывать свойства соответствующего экземпляра ProductModel.Но я уверен, что есть лучший способ, который не сломает модель ...