RE: poor performance LISTBOX INSERT COLUMN

2017-12-03 Thread Piotr Chabot Stadhouders via 4D_Tech
Hi Alan,

Thanks for testing! This is great news, because then maybe there is something 
else going on.
Remember, I only asked the community if this performance was normal behavior 
and if it could be confirmed.
Clearly not by you.

I tested this on an HP Intel Core i7-4710MQ 2.50GHz laptop with 24G memory
When showing the listboxes for the first time the arrays have 0 elements (after 
on load they are populated via 4D for OCI commands)
Maybe it does matter how many listboxes are on the form?
Maybe LISTBOX INSERT COLUMN becomes slower when more columns are inserted?

Miyako explained clearly LISTBOX INSERT COLUMN is a UI element, and that there 
are graphic engine calls involved
I use a 1920x1080 resolution.

I think I am going to test the creation of 20 columns for 10 listboxes on a 
blank form and see what happens.

Again, Thanks for testing Alan

Gr,

Piotr

> I just tested LISTBOX INSERT COLUMN command on array based LB that takes only 
> 0 to 1 ms to complete on my MBP 2.90GHZ with 16G memory. I'm not sure if size 
> of array is the factor.


**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: 4D View Pro license required in list box

2017-12-03 Thread John Baughman via 4D_Tech
Never mind. I just had to reapply my developer license. Fixed the problem.

Thanks,

John 

> On Dec 3, 2017, at 8:50 PM, John Baughman via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I am working on a new database in v16 R5. I develop on the Mac and this app 
> will deploy on windows. I am testing it on windows for the first time and I 
> have a form with 2 array based list boxes on it. The first populates the 
> second depending on it’s selection.
> 
> When the form opens up the second list box displays normally with an empty 
> grid. As soon as the first attempts to populate the arrays in the second list 
> box the second list box arrays are replaced with a grey box and “4D View Pro 
> license required.” in red letters appears in the box. This has worked fine 
> without any problems on the Mac.
> 
> Will be calling TS in the morning, Hoping someone knows why this might be 
> happening.
> 
> John
> 
> 
> John Baughman
> Kailua, Hawaii
> (808) 262-0328
> john...@hawaii.rr.com
> 
> 
> 
> 
> 
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: http://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

John Baughman
Kailua, Hawaii
(808) 262-0328
john...@hawaii.rr.com





**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

4D View Pro license required in list box

2017-12-03 Thread John Baughman via 4D_Tech
I am working on a new database in v16 R5. I develop on the Mac and this app 
will deploy on windows. I am testing it on windows for the first time and I 
have a form with 2 array based list boxes on it. The first populates the second 
depending on it’s selection.

When the form opens up the second list box displays normally with an empty 
grid. As soon as the first attempts to populate the arrays in the second list 
box the second list box arrays are replaced with a grey box and “4D View Pro 
license required.” in red letters appears in the box. This has worked fine 
without any problems on the Mac.

Will be calling TS in the morning, Hoping someone knows why this might be 
happening.

John


John Baughman
Kailua, Hawaii
(808) 262-0328
john...@hawaii.rr.com





**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: poor performance LISTBOX INSERT COLUMN

2017-12-03 Thread Alan Chan via 4D_Tech
I just tested LISTBOX INSERT COLUMN command on array based LB that takes only 0 
to 1 ms to complete on my MBP 2.90GHZ with 16G memory. I'm not sure if size of 
array is the factor.

Alan Chan

4D iNug Technical <4d_tech@lists.4d.com> writes:
>The LISTBOX INSERT COLUMN command takes on average 0.0286 seconds to complete, 
>tested on a Intel Core i7-4710MQ 2.50GHz laptop

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: poor performance LISTBOX INSERT COLUMN

2017-12-03 Thread Alan Chan via 4D_Tech
If your customer want to be king, he/she has to act like one, spend like one.

Did your customer try to put up more resources on hardware? Investing 32G+ 
memory on 4.0Ghz+ machine with great grahic chip for big monitor to run your 
application might be helpful especially populating 27 listbox with total 477 
columns (unknow
number of rows).

Alan Chan

4D iNug Technical <4d_tech@lists.4d.com> writes:
>When customers ask for showing 10 listboxes at once on screen, with each 
>listbox having 20 columns I don't know if it is reasonable, but as you 
>probably know customer is king.

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Subform Tabbing

2017-12-03 Thread John Baughman via 4D_Tech
Ok. Using a button seems like the way to go. In my particular case I have a 
real variable followed by a combo box which I want the tab to go from the 
variable to the combo box and back to the real variable. These are the only 2 
objects on the subform that have their tabable check box checked. As it is now, 
tabbing out of the combo box, focus goes into a list box.

OK. I put 2 very small buttons on the form (Invisible Buttons will not work). 
Button1 before the real variable and Button2 after the combo box. 

The Button1 has a SHIFT TAB shortcut and the on clicked event: GOTO 
OBJECT(combobox)
The Button2 has a TAB shortcut and the on clicked event: GOTO OBJECT(real 
variable)
So I have the Form’s Entry Order set to Button1 -> realvariable -> combobox -> 
Button2

I think with this setup I basically have a circular tab order in either 
direction between the 2 objects… 

 Tab from realvariable -> combobox
 Tab from combobox -> realvariable  (goes to Button2 which sends the 
focus to realvariable)
 Shift Tab from realvariable -> combobox  (goes to Button1 which sends 
the focus to combobox)

Unfortunately, for some reason tabbing from the realvariable skips the combo 
box and goes to Button2, which puts you right back in the real variable. Shift 
Tab from realvariable works as expected, focus goes to the combo box. 

The entry order displayed in the form with the entry order icon selected shows 
the proper tab order from Button1 -> realvariaable -> combobox -> Button2, but 
with button2 on the form tabbing from realvariable goes to button2 and not the 
combobox

I am curious what FORM GET ENTRY ORDER will show me and see if FORM SET ENTRY 
ORDER might allow me to set the entry order properly. I can’t figure out where 
or how to call these commands so that I get the entry order of the subform. No 
matter where I put the FORM GET ENTRY ORDER, I get an empty names array.

Maybe it’s time to call tech support.

John 

> On Dec 2, 2017, at 10:23 PM, Arnaud de Montard via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> 
>> Le 3 déc. 2017 à 08:25, John Baughman via 4D_Tech <4d_tech@lists.4d.com> a 
>> écrit :
>> 
>> [...]
>> So bottom line, how can one take a list box out of the tab order and still 
>> have the cells respect the enterable check box.
> 
> See the doc:
> 
> It says each active object of the form can be focussed but excluded from the 
> tab path. 
> 
> A sophist will point out that tabable property is described in the "active 
> objects" chapter, while "listbox" is the next chapter, so listbox is not an 
> active object. 
> 
> As a non sophist, I think it's a bug, otherwise I don't understand the 
> tabable checkbox in the property list of a listbox. 
> 
> Maybe some turnaround could be found (using on focus, on after edit, object 
> set enterable, object goto, and so on), but I did not find in a decent time.
> 
> -- 
> Arnaud de Montard 
> 
> 
> 
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: http://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

John Baughman
Kailua, Hawaii
(808) 262-0328
john...@hawaii.rr.com





**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: poor performance LISTBOX INSERT COLUMN

2017-12-03 Thread Keisuke Miyako via 4D_Tech
thinking aloud, does it make any difference if you insert 400 empty arrays,
and then populate (copy array) the rows,
instead of inserting arrays that already contain data?

> 2017/12/03 19:08、Piotr Chabot Stadhouders via 4D_Tech <4d_tech@lists.4d.com> 
> のメール:
>
> We use listboxes a lot and we really like them (We use array listboxes by the 
> way, populated by an Oracle DB).
> I think 4D invests a lot of time in making listboxes more advanced, and they 
> succeed very well.
> But I don't agree that inserting 400 columns in a list is something really 
> spectacular.
> When this command isn't designed for this, maybe they can give me another 
> command that IS designed for this.




**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Component works with compiled source but not as a component

2017-12-03 Thread Jim Dorrance via 4D_Tech
Apres moi, no sense to create an object to pass a simple text array of
record keys. I stuffed them into a local blob and passed the blob as a
parameter. I have the impression I am asking 4D to do much less doing it
this way.

On Sun, Dec 3, 2017 at 11:11 AM, Ortwin Zillgen via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> > Thanks, I'll try stuffing the array into a blob, and passing the blob.
>
> I'm passing them as objects.
> Objects passed can be local-vars, great!
>
>
> Regards
> O r t w i n  Z i l l g e n
> -
>    
>  
> member of developer-network 
>
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: http://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **
>



-- 
Jim Dorrance
jim.dorra...@gmail.com
4...@dorrance.eu
www.4d.dorrance.eu

PS: If you know of anyone that needs an experienced 4D programmer to add
energy and experience to their team, please let me know. I have
experience in many areas. Reasonable rates. Remote or Paris only.
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Component works with compiled source but not as a component

2017-12-03 Thread Ortwin Zillgen via 4D_Tech
> Thanks, I'll try stuffing the array into a blob, and passing the blob.

I'm passing them as objects.
Objects passed can be local-vars, great!


Regards
O r t w i n  Z i l l g e n
-
   
 
member of developer-network 

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Subform Tabbing

2017-12-03 Thread Keisuke Miyako via 4D_Tech
I tend to agree.

it feels like a bug, but one can probably implement a workaround (invisible 
buttons, tab/shift+tab shortcut, goto object, enable and disabled on the 
objects before and after the listbox in question) faster than sending a bug 
report.

I propose a button because it is not always easy to decide on losing focus 
whether the tab is going forward  or backwards.

> 2017/12/03 17:23、Arnaud de Montard via 4D_Tech <4d_tech@lists.4d.com> のメール:
>
> As a non sophist, I think it's a bug, otherwise I don't understand the 
> tabable checkbox in the property list of a listbox.
>
> Maybe some turnaround could be found (using on focus, on after edit, object 
> set enterable, object goto, and so on), but I did not find in a decent time.




**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

RE: poor performance LISTBOX INSERT COLUMN

2017-12-03 Thread Piotr Chabot Stadhouders via 4D_Tech
Hi Miyako,

>I think we need to set reasonable limits on how the commands is expected to be 
>used,
>before we device that its performance is "poor".

Sorry, maybe you are right and I shouldn't have called it poor performance, but 
it was my feeling because the command takes 10 times longer to execute than all 
other commands


>is it really reasonable to insert 400 columns in one call?

When customers ask for showing 10 listboxes at once on screen, with each 
listbox having 20 columns I don't know if it is reasonable, but as you probably 
know customer is king.
Even worse, customers want 20 columns per listbox, but than are making 60% 
invisible
So, I could do a lot to make things faster. Maybe, at first only create 
listboxes that are visible, and maybe even only create at first columns that 
are visible. But I prefer not to.


>at what point in developer did you notice the "poor performance"?

I must say I don't quite remember, because it has been a while. We first had 
the issue with some forms that were less important, and not so heavily used
But I am sure it began when converting from one 4D version to another
I believe it was when we converted our app from 4D v2004 to 4D v13


>the command name suggests that it is designed to insert a single column.
>so you can imagine that it goes through the same check list for every call.

So this sounds to me that a command LISTBOX INSERT COLUMNS would be a great 
addition, maybe with a width parameter at the same time


>but the speed issue discussed in this thread,
>seem to me like a case where a command has been used in a way for which it was 
>not designed.

We use listboxes a lot and we really like them (We use array listboxes by the 
way, populated by an Oracle DB).
I think 4D invests a lot of time in making listboxes more advanced, and they 
succeed very well.
But I don't agree that inserting 400 columns in a list is something really 
spectacular.
When this command isn't designed for this, maybe they can give me another 
command that IS designed for this.

 
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Subform Tabbing

2017-12-03 Thread Arnaud de Montard via 4D_Tech

> Le 3 déc. 2017 à 08:25, John Baughman via 4D_Tech <4d_tech@lists.4d.com> a 
> écrit :
> 
> [...]
> So bottom line, how can one take a list box out of the tab order and still 
> have the cells respect the enterable check box.

See the doc:

It says each active object of the form can be focussed but excluded from the 
tab path. 

A sophist will point out that tabable property is described in the "active 
objects" chapter, while "listbox" is the next chapter, so listbox is not an 
active object. 

As a non sophist, I think it's a bug, otherwise I don't understand the tabable 
checkbox in the property list of a listbox. 

Maybe some turnaround could be found (using on focus, on after edit, object set 
enterable, object goto, and so on), but I did not find in a decent time.

-- 
Arnaud de Montard 



**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**