Value expression error: "[BC30456] 'RdlObjectModel' is not a member of 'Reporting Services'
Asked Answered
B

4

34

Stumbled on an obscure problem. Posting this because my searches of stack overflow did not find my answer. Hopefully this will help someone else.

Problem: My reporting services report will compile, but at run-time provides an error along the lines of:

[BC30456] 'RdlObjectModel' is not a member of 'Reporting Services'

This happened after I copy/pasted an entire tablix over from one report to another.
After I reversed the change and removed the tablix, it worked again.
The original report with the tablix I'm copy/pasting works fine.

Buttonball answered 29/7, 2014 at 18:17 Comment(0)
B
83

Found this bug report which exactly explains the problem I had:

http://connect.microsoft.com/SQLServer/feedback/details/757358/pasting-objects-with-expressions-pastes-fully-qualified-functions

Summary of the above: When you copy/paste reporting services expressions from one place to another (I copied an entire tablix, with expressions in it) all the pieces of that expression get expanded to their full names. There is a bug specific to when you copy/paste an expression containing "Cstr()". It gets a full name that does not resolve correctly.

Fortunately this is easy to fix, even if you have a ton of such expressions in your report. --Go to View > Code Do a find for "RdlObjectModel" or "Cstr". You are looking for something like this:

Microsoft.ReportingServices.RdlObjectModel.ExpressionParser.VBFunctions.Cstr([your expression here])

-Remove everything from "Microsoft" to "Cstr" so it looks like this:

Cstr([your expression here])

-Save. You have essentially undone what Reporting services so "helpfully" tried to do when you copied/pasted the expresion in the first place.

Buttonball answered 29/7, 2014 at 18:17 Comment(5)
I had the same issue when copying a table containing expressions into the the same report. This answer solved it. Many thanks !Bilharziasis
Thanks, you have saved my time.Wealthy
This issue and resolution has been reproduced in RB2014 for "CDec". Anyone know if it happens in RB2008?Amman
had the same problem with Cdbl, this fix handled it.Acrocarpous
Had the same issue in VS2022 + RDLC Report Designer ExtensionMenispermaceous
S
5

I have just had a similar issue but it was with another conversion function - CDEC. My guess is that similar issues would occur using any function in the Conversion group and probably others.

I had figured it out myself and removed the Microsoft.ReportingServices.RdlObjectModel.ExpressionParser.VBFunctions. that the stupid editor added. Evidently, it adds fully qualified stupid dotNET notation when copying any other object.

Unfortunately, those jerks at Microsoft have marked this bug as WILL NEVER FIX (like most Microsoft bugs).

Sharpeyed answered 15/1, 2015 at 23:3 Comment(0)
L
1

if you are copy and post report just check your «Expr» . in my case the report change the data when i posted date .

from : =CDate(Fields!BillHeaderDate.Value).ToString("yyyy/MM/dd" )

TO : =Microsoft.ReportingServices.RdlObjectModel.ExpressionParser.VBFunctions.CDate(Fields!BillHeaderDate.Value).ToString

when i fixed the right value its work .

Lucier answered 15/10, 2023 at 12:54 Comment(0)
B
0

If anyone stumbles across this issue - i fixed this by renaming the field in my dataset from fieldname to fieldname1, then reflecting that in the fields’ expression.

Bushtit answered 10/7, 2020 at 4:49 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.