Join The Works program to have access to the most current content, and to be able to ask questions and get answers from Revelation staff and the Revelation community

At 22 NOV 2011 09:19:31AM John Bouley wrote:

I have a need to mask the contents of a SSN on the screen where only the last four digits are displayed. The problem is that on Iconv there isn't enough information in the control to store the raw number that was entered.

Is there an easy way of solving this problem?

I thought of creating a un-bound control and updating the actual control with data when the unbound changes, but this seems like a lot of work.

John


At 22 NOV 2011 09:59AM keith alvey wrote:

Could you not just create a custom format routine.

However, depending on the data, would it be / is it a requirement to secure the actual value on file so it isn't holding its actual value, eg Credit Card number

Simon


At 22 NOV 2011 10:17AM John Bouley wrote:

Securing the data and masking the digits are really two separate things.

I did create a special conversion routine that outputs ###-##-nnnn. However, this actually changes the data and on a form the masked numbers are replaced with #'s. With all other Iconv/Oconv routines there is enough data on the Oconv to produce an Iconv and vice versa. In this case the Oconv can not be Iconv'd.

My thinking is I have to create a hidden bound field for the SSN with no conversion and update an unbound field with the oconv'd mask. While I know this will work there has to be a better way…

John


At 22 NOV 2011 10:36AM keith alvey wrote:

Can you not use the following procedure.

New data entered …

(I presume not masking on entry …)

Secure the data and write it away.

Read the data, Un-secure that data and hold that value in a property of the field (Misc, user defined etc)

Mask it for display.

Editted, as above, but if the property above holds a value, then amend that as necessary before writing.

Probably better to have a field property as opposed to a hidden field.

Simon


At 22 NOV 2011 10:44AM John Bouley wrote:

Thanks Keith.

The encryption/decryption is solved with an MFS on the table. When the data is read it is decrypted. The problem is I don't want to display the entire value on the screen and an IConv/OConv does not work if you can't recreate the IConv data. It sounds like either setting up a hidden field or using the misc property are the only choices. Sigh…

Thanks,

John


At 22 NOV 2011 11:33AM John Bouley wrote:

Here is how I solved the problem. Perhaps there is an easier way.

1. Create a hidden databound editline with no conversion for validation.

2. Create a visible unbound editline for the user to enter the data into

3. Post Read event to take the data from the bound control and place it into the unbound after oconv.

4. Upon LostFocus of unbound control check Gotfocus_value against defprop. If changed then take data and stuff it into bound control, then oconv and stuff back into unbound control (defprop and gotfocus_value)

Thanks,

John

Wouldn't it be nice to have a "mask" property on the control that would be independent of defprop, invalue, and text?

View this thread on the Works forum...

  • third_party_content/community/commentary/forums_works/d145ab2a0004f1f74da21f200.txt
  • Last modified: 2023/12/30 11:57
  • by 127.0.0.1