30 minutes with Servoy developer series

Servoy announcements

Re: 30 minutes with Servoy developer series

Postby grahamg » Fri Oct 19, 2018 6:48 pm

Hi Sean

Want to add my thanks for the time and effort you put into these Webinars. Nice, relaxed delivery that combines the theory and practice really well.

Have a request for a session that highlights the differences between developing in SV7 and SV8.x.

None of my current systems warrant a re-write in SV8 so still a big user of SV7. Watching some of the Webinars can see the benefits of SV8 and, with a couple of new prospects coming along, decided that SV8 was the way to go.

However, quickly discovered that there are just too many areas that have changed and it's really difficult to get productive when you don't know what you don't know - plus the training sessions I paid for when 8.0 launched are just too long ago for my brain cells to recall!

A Webinar combining basic SV8 best practices and how they differ from SV7 would be really helpful.
grahamg
 
Posts: 752
Joined: Fri Oct 03, 2003 3:15 pm
Location: Midlands UK

Re: 30 minutes with Servoy developer series

Postby sean » Mon Oct 22, 2018 3:03 pm

Hi Graham,

Thanks for your record attendance in the webinars ;-) and the good feedback.

Can I assume that you mean changing also to NG Client ? or just bumping from version 7x to 8x ?

...Because we are planning a session (or two) about about migrating to NG Client from Smart / Classic Web very soon.
sean
 
Posts: 370
Joined: Mon May 21, 2007 6:26 pm
Location: USA

Re: 30 minutes with Servoy developer series

Postby juan.cristobo » Mon Oct 22, 2018 5:37 pm

[quote="sean"]...Because we are planning a session (or two) about about migrating to NG Client from Smart / Classic Web very soon.[/quote]

Awesome!!
juan.cristobo
 
Posts: 186
Joined: Thu Apr 19, 2012 9:12 am

Re: 30 minutes with Servoy developer series

Postby grahamg » Mon Oct 22, 2018 8:27 pm

"....Thanks for your record attendance in the webinars ;-) ....." Hmmm - not sure if that's good or bad.

Initially looking for bumping from 7x to 8x and would imagine that extending to NG would be further step - but happy to be guided by you.

Cheers
grahamg
 
Posts: 752
Joined: Fri Oct 03, 2003 3:15 pm
Location: Midlands UK

Re: 30 minutes with Servoy developer series

Postby wichmann » Wed Dec 05, 2018 11:24 pm

Hi Sean,

I have seen the webinar about Excel Integration and would like to create a universal Excel interface for the datagrid / servoyextra-table.

Is this Demo-Application from the Webinar somewhere available ?

Thnkx!
DataBit GmbH
Mühletobel
CH-9217 Neukirch an der Thur
wichmann
 
Posts: 23
Joined: Fri Apr 12, 2013 2:44 pm

Re: 30 minutes with Servoy developer series

Postby sean » Fri Dec 07, 2018 5:10 pm

Hi Andreas,

Thanks for watching the webinars and for the question.

Here is the solution export: Excel Example Solution

Keep in mind that for the deeper integration, you'll need the SvyUtils project, which has binaries not included in the export.
The installation of these libraries can be a little bit tricky because there can be several versions. Fortunately, my colleague Patrick Ruhsert has compiled excellent instructions here.

Keep us posted!
Software Engineer
Servoy USA
sean
 
Posts: 370
Joined: Mon May 21, 2007 6:26 pm
Location: USA

Re: 30 minutes with Servoy developer series

Postby wichmann » Wed Dec 12, 2018 11:38 pm

Hi Sean,

Thanks for the example solution. There are some inspirations for the implementation a universal excel interface.
A first prototype run fine in developer, but is very slow on tomcat-server.

BR
Andreas
DataBit GmbH
Mühletobel
CH-9217 Neukirch an der Thur
wichmann
 
Posts: 23
Joined: Fri Apr 12, 2013 2:44 pm

Re: 30 minutes with Servoy developer series

Postby steve1376656734 » Fri Dec 14, 2018 6:32 pm

Hi Sean/Jan

Following the webinar today on the ViewFoundset could someone let me know how to do the -clean option on MacOS please?

Also, could we maybe have a webinar on the svyLogManager module that demonstrates best practices for using the module? I used to use a commercial product that had the ability for customers to go in and switch logging on for individual modules if they had a problem. I'm sure there must be a way to include this in our solutions using the svyLogManager but the documentation on it is very sparse.

8.4 is looking really got BTW!

Thanks
Steve
Steve
SAN Developer
There are 10 types of people in the world - those that understand binary and those that don't
steve1376656734
 
Posts: 326
Joined: Fri Aug 16, 2013 2:38 pm
Location: Ashford, UK

Re: 30 minutes with Servoy developer series

Postby Harjo » Tue Dec 18, 2018 5:08 pm

hi Sean,

I have a question.
In many of your demos your using a simple order - orderlines table and using a calculation: order_total()

like in this youtube video: https://www.youtube.com/watch?v=t4ZkJAnIz4Y at time: 28:37
Schermafbeelding 2018-12-18 om 16.05.38.png


I was always told, this is not the recommended way to use calculations! avoid Loops, and specially loops over related data.
So can you explain, why this is used, and not using a plain (Servoy) aggregate?
You do not have the required permissions to view the files attached to this post.
Harjo Kompagnie
ServoyCamp
Servoy Certified Developer
Servoy Valued Professional
SAN Developer
Harjo
 
Posts: 4321
Joined: Fri Apr 25, 2003 11:42 pm
Location: DEN HAM OV, The Netherlands

Re: 30 minutes with Servoy developer series

Postby sean » Tue Dec 18, 2018 5:52 pm

Hi Harjo,

Thanks for watching with a careful eye. Jeez, I'd better be careful! :shock:

Everything you said is true...but it's always a design decision. What is important to know is the impact of each line of code.
In this example, each order line will be queried and loaded to execute the calculation for each parent order.

So you can imagine, that showing this calculation on a grid/list view form could mean that dozens or hundreds of queries could execute.
You could more efficiently achieve the same with query-builder (simple Servoy-based aggregate won't work because of multiplication)

But it's also important to know that the related records will only load 1x and then remain cached.
So if you are looking at a detail form and the order lines are showing anyway, then it costs nothing and is easier to code.

It's not always black and white, but there are some things you never want to do in a calculation:
    Find/Search
    Sort
    Edits
    Query Builder
    Try to do things in UI

Hope this helps. Thanks for watching!
Software Engineer
Servoy USA
sean
 
Posts: 370
Joined: Mon May 21, 2007 6:26 pm
Location: USA

Re: 30 minutes with Servoy developer series

Postby Harjo » Tue Dec 18, 2018 6:06 pm

Hi Sean,

can you explain this a little bit more?
(simple Servoy-based aggregate won't work because of multiplication)


We just have stored calculation: orders_to_order_details.order_total (in which order_total is just an aggregate in order_details)
So don't understand why a Servoy aggregate wont work?

and second: I do see that you are using this order_total in a table or list-view..... or this something else?
Harjo Kompagnie
ServoyCamp
Servoy Certified Developer
Servoy Valued Professional
SAN Developer
Harjo
 
Posts: 4321
Joined: Fri Apr 25, 2003 11:42 pm
Location: DEN HAM OV, The Netherlands

Re: 30 minutes with Servoy developer series

Postby sean » Tue Dec 18, 2018 11:35 pm

In my example it doesn't work, because there is no stored column for subtotal on the orderline, only a calculation.

Correct about the list view - the performance is not bad because the table is small and the number of child records is small per order.
But under a different scenario, this could be a problem - you're totally correct.
Software Engineer
Servoy USA
sean
 
Posts: 370
Joined: Mon May 21, 2007 6:26 pm
Location: USA

Re: 30 minutes with Servoy developer series

Postby developers10 » Wed Dec 19, 2018 10:34 am

Hi Sean,

Concerning the ViewFoundSet : what is the gain/difference with the way we can now create foundsets based on inMem-datasources?
Apart from the listeners you can add that is.

Why doesn't the ViewFoundSet support newRecords or Search just like an inMem foundset does?
I mean, ok if the databaseManager.saveData can't handle this, but I should have the opportunity to handle those newRecords myself.

Are you also devising a method to which we can pass an existing form with a foundset as datasource and also relational dataproviders and which then returns the QBSelect for us?
We're just wondering where the gain is for us in design-time.

Thx
Chris
developers10
 
Posts: 31
Joined: Thu Feb 23, 2017 5:33 pm

Re: 30 minutes with Servoy developer series

Postby sean » Thu Jan 03, 2019 12:05 am

Hi Chris,

Happy New Year! Thanks for watching the webinars and for the great questions.

The main advantage over mem data sources is two things:
1. A mem data source is fully cached, where as a view foundset can fluidly page in more records; imagine a mem data source having 10M records.
2. A view foundset is able to respond to broadcasting, meaning changes in any of the constituent tables can update the view data. This would need to be custom coded for in-mem.

Correct, ViewFoundSet doesn't (currently) support search or new records, because that may go to the database in a way that is unknown.
For example, if a value is derived from a SQL function, how could it be updated in a real table? That would have to be mapped. Searching might be easier...

I don't understand the last question? Today there is nothing available at design-time for ViewFoundSet. Next release will have the ability to do design-time ViewFoundSet, very similar to in-mem data source.
sean
 
Posts: 370
Joined: Mon May 21, 2007 6:26 pm
Location: USA

Re: 30 minutes with Servoy developer series

Postby developers10 » Fri Jan 04, 2019 6:27 pm

Hi Sean, Happy New year to you as well!
By the last question I meant:
some forms we run are quite heavy on the database in that they not only use one datasource but also a lot of elements which refer to other tables using Relations
For instance a form Customer which also would contain elements pointing to "customers_to_address" fields and also customer_to_contacts and so one.
It would be great if Servoy would have a function to which we pass an entire form.frm and which returns the appropriate QBSelect for all elements on it (also those using Relations)
We could then refactor that form using the new viewfoundset.
At least, I think it would be great cause the entire form it's data would be fetched by only one QBSelect instead of x different select statements.

Thx again ;-)
developers10
 
Posts: 31
Joined: Thu Feb 23, 2017 5:33 pm

PreviousNext

Return to Announcements

Who is online

Users browsing this forum: No registered users and 0 guests

cron