You need to watch out when you’re choosing names for your BAM Activities, BAM Views
and all the elements that make up these artifacts. The tool used to create these is
a wizard in Excel which isn’t really fussy about what you call them. But you need
to realise that behind the scenes when you come to deploying these activities and
views, bm, the BAM deployment tool, creates a whole
bunch of tables, views, stored procedures, OLAP cubes and DTS packages.
In order to conform to ensure no problems with SQL Server naming conventions, the
deployment tool strips out any characters it doesn’t like .. and these includes digits
and punctuation. The only things it leaves are letters and underscores. The results
of this range from downright annoying (when From1Sec-5Secs gets converted to FromSecSec)
to plain disastrous.
The reason I’m highlighting this is that today I deployed an activity which had a
‘-‘ in the activity name. This was stripped out by the deployment tool, but apparently
not consistently. When trying to test my View I kept getting BAM errors saying that
some stored procedure didn’t exist. When looking at the PrimaryImport table I noticed
that the ‘-‘ had been stripped and the actual procedure didn’t have this character.
Some other routine, however, must have been looking for the complete name. I renamed
my Activity, redeployed and the whole thing worked like a dream.
The morale of the story: only use the characters: ‘a’ to ‘z’ and ‘_’ for identifiers