Monday, March 24, 2014

Fictional vignette

I arrived. She was there on the cliff. I'm not sure whether she was doing pushups or painting, but she was doing something while relaxing and keeping an eye on the horizon.

She cocked an eyebrow at me. I... dropped down next to her and started doing pushups, which she accepted silently. Eventually I spoke.

"Mount Rushmore?"

"Good guess," she said. "No."

I frowned, then shrugged. She'd tell me when it was done, or she wouldn't need to. "It has," I said, "been months since I vacuumed." 

She grinned lazily at me. 

"Yes, that goes without saying," I added. "I will try."

"What else is on your mind?" she said.

"I'm trying to convert oData queries into FetchXml expressions for CRM. There's a built-in LINQ provider, but it doesn't really fit complex oData scenarios. For example, it doesn't play nicely with $expand, $orderby, $top, or some kinds of $select. Rather than massaging my queries until it does fit that built-in LINQ provider, I think it's going to be simpler to fall back to generating FetchXML queries. Supposedly they are a little slower than LINQ-generated QueryExpressions, although even that is a little controversial, but at this point I'm more concerned with feature completeness... and FetchXml can supply outer joins, which I absolutely need in order to make oData expands work correctly."

"Hmmm," she said. "Parsing the results might be a bit of a job. It's not coming back in a flat table, is it?"

I paused. "I'm not sure." A few minutes later I said, "Actually, it is. I don't have to parse the XML, but conceptually it is coming back in one big SQL table, which I would be responsible for grouping back into the appropriate objects during an $expand scenario using the server metadata."

"Hmmm. Sounds non-trivial."


--
Deck thyself now with majesty and excellency; and array thyself with glory and beauty.
Cast abroad the rage of thy wrath: and behold every one that is proud, and abase him.
Look on every one that is proud, and bring him low; and tread down the wicked in their place.
Hide them in the dust together; and bind their faces in secret.
Then will I also confess unto thee that thine own right hand can save thee.

I could not love thee, dear, so much,
Loved I not Honor more.

No comments: