PDA

View Full Version : paActionData requiem in pace



ivansc
17-Jan-2014, 05:09 PM
Hi, Not only tWebRow has changed, but paActionData has disappeared. If you search in the help of 17.1 you can find it more than 100 times, in 18.0 only one (and a bad reference). I guess it is replaced by ptActionData, but works very different, using these apparently old commands: ValueTreeSerializeParameter and ValueTreeDeSerializeParameter. I have used paActionData in 17 to transfer data to and from client and server in different routines. A sample of use of the new way (if I am not wrong) can be found in the adjacent zipfile. It is an upgrade of the WebFileTransfer to 18.0 alfa. Of course the official new upload package is the recommended way. This is only for sport and to try to understand the new methods. An explanation from Harm about the use of ptActionData would be great. Best regards Ivan Schoof PD: I am losing the LF/CR in my posts, donīt know why...

chuckatkinson
18-Jan-2014, 08:51 AM
i am losing the lf/cr in my posts, donīt know why...

ie10/11 ?

Michael Mullan
18-Jan-2014, 09:15 AM
Or an apple iThing? I don't get them when I post from my iPhone.

ivansc
19-Jan-2014, 10:44 PM
Or an apple iThing? I don't get them when I post from my iPhone.

No apples here.

ivansc
19-Jan-2014, 10:46 PM
It seems to be relate with restrictions at office (new proxy and/or firewall rules?). IT guys love this.
At home I have no problems.

Harm Wibier
20-Jan-2014, 10:06 AM
Hi Ivan,

We have changed the system for sending complex data to the client. The tWebRow used to be the format for all controls to send complex data that cannot be passed as regular parameters or web properties to the client. The tWebRow was added for the List & Grid controls. There where two problems, one was that we wanted to extend the tWebRow for the Grids and the other was that it became pretty inconvenient for other controls (like the cWebTreeView and the cWebCombo) to manually convert from the sensible format to the tWebRow.

So the tWebRow is replaced by the tWebValueTree in the communication format. The ValueTree is a generic structure to which the runtime can write and read any struct or array regardless of its structure. This allows controls to send data to and from the client in their own format. In DataFlex we already had the ValueTreeSerializeParameter and ValueTreeDeserializeParameter commands (which are not as old as you might think) for converting from and too the value tree. On the client we added the df.sys.vt library for the same purpose. The client does need to know the format in which the data comes in to be able to deserialize it. This format can be passed to the df.sys.vt library to deserialize data. As an optimization you can also compile a faster deserialize and serialize function which is what you are using in your code.

I’ve read through your code and what you are doing seems pretty much correct. I’ll make sure that the help gets updated (as far as these advanced technologies are documented) and am considering writing a blog about it (so many things I could blog about…).

Regards,

Samuel Pizarro
20-Jan-2014, 07:14 PM
I lost them too when I post from my smartphone (galaxy note 2), and it happens on both browsers (chrome or android default one).:(I was not able to find the reason as well. (Ps. This post should had 4 paragraphs)

Samuel Pizarro
20-Jan-2014, 07:18 PM
I am really anxious for your blogs...

ivansc
20-Jan-2014, 10:18 PM
Thanks Harm,

I guess you have a lot of work: bugs fixing, writing blogs, changing diapers at night (I did it centuries ago) and so on.

best regards

Ivan

Mike Peat
21-Jan-2014, 03:36 AM
Harm has been helping DF developers for quite a while now, so dealing with s**t will be nothing new to him. :)

Mike

DaveR
21-Jan-2014, 08:39 AM
Harm has been helping DF developers for quite a while now, so dealing with s**t will be nothing new to him. :)

Mike <groan> :cool: