Skip to main content

Hi All,

 

I have a List View and I need to set one of the fields to Uppercase before I commit it my sharepoint list through the smartobject.

 

I see I can add a pattern, but I don't care what they type as long as I can submit it to the List View Grid in Uppercase?

There seems to be something I'm missing. I get a Cannot do Icon when I try and move the Add/Edit Row field to the Expression editor for 'To Upper'.

 

the error is 'To avoid circular references, this element is not available for use in this expression'.

 

I understand it doesn't want to set to uppercase the text I'm typing in, there must be a simple way around this one.

 

Thanks

K

I believe you can do this by expanding the control that gives you that error message and using its Detail -> Text field inside the ToUpper() method instead of the control itself.  It will convert to uppercase after the control loses focus.


Thanks @JonathanT,

 

ToUpper() in the Details Text property of the controls just puts 'ToUpper()' as the text within the field. Am I missing something?

 

Do you mean in the Expression builder for the control to use the Smartobject Field instead of the Control? If so, I've tried that and I get the same error message.

 

Let me explain further. I have four fields in the list view.

 

When the User Clicks on the first Dropdown and selects ADD or REMOVE, then in the Text Box they will type a Role ie. x.xxx.xxx. I simply want this to translate to the underlying fields in uppercase.

 

Expression Builder:

When I try and apply the ToUpper(Roles to Change) expression to the Add/Edit Item: Text Box: Roles to change I get the Recursive error. Doesn't matter if I try and do it on the control or the underlying smartobject. This seems like it should be simple enough.

 

12700iD035E26CE888A6BA.png

 


Not really sure exactly what level you're trying to convert the text at, but this is what I was referring to by Detail -> Text under the control.  You need a text field or a similar element that gets processed once rather than using elements like the control itself which would call ToUpper() recursively.


 


13398i475D65ECFE6E2FC0.png


Also, if you're trying to match underlying values that are already capitalized, there's an Auto-Complete control that might help in this context. 


Thanks @JonathanT that was the answer

 

I needed to go down two more levels on the control to find the actual Text, exactly as you showed it.

 

the gui tricked me because the mouse kept showing an unavailable red icon, so I wrongly assumed I couldn't click on the field to

go lower down the fields list, and so I didn't try of course until I saw your screen shot.

 

Now that I know, it's very easy.

 

 

Thanks Jonathan again.

 

 


Yeah, sorry I forgot to mention the Ghostbusters cursor; it's pretty misleading.  Happy to help!


I tried the same but I guess I am missing something. Couldn't get it to work with the steps mentioned below but was able to get it working when I added the control itself. I blogged this at the below link in case anyone runs into this issue:

 

http://blogs.claritycon.com/blog/2015/06/convert-text-upper-case-save-database-list-view-smartforms/

 

 


Reply