Re: 4D freezing on print preview

2017-03-23 Thread Keith Culotta via 4D_Tech
Just to add a datapoint, 4D Mac v15.current seems to be the only app that 
causes Preview to unexpectedly quit when getting a print preview.  It does not 
affect 4D however.

Keith - CDI


> On Mar 23, 2017, at 4:07 PM, Keith Goebel via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> So, nobody else in the world has encountered this?
> That’s good for you but bad for me…
> 
>> Hi all.
>> We are using 4D v15.2 on Win7, Win10, Win Server 2012 (or similar). All good.
>> 
>> We have just tested 4D v15.4 and v15.4 HF1 and found both to freeze whenever 
>> we print preview a report.
>> All seems to work fine until about the point where 4D would hand off control 
>> to XPS Viewer, and then 4D freezes.
>> 
>> After force quit, starting the exact same structure (and data) with 4D v15.2 
>> and print preview works fine, so I don’t believe it is the XPS printer at 
>> fault.
>> 
>> We were in the final stages of testing our application prior to releasing a 
>> new version that was going to use 4D v15.4.
>> This show stopper has prevented that.
>> 4D Tech Support are unable to duplicate the problem.
>> 
>> Has anyone else seen this?
>> Did you find a way to fix it?
>> Cheers, Keith
> **
> 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 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: y2038 -- is 4D ready?

2017-03-28 Thread Keith Culotta via 4D_Tech
I changed my system date to 1/1/2039 and started testing dates.  An android 
walked into my office and told me to cut it out.

Keith - CDI

> On Mar 28, 2017, at 10:37 AM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Just reading an article about the next Y2K - y2038.
> IN this year many systems that use 1970 as a base starting point for 
> time will exceed the 32bit integer used to track seconds.
> 
> Is 4D, natively, y2038 safe?
> 
> ---
> Gas is for washing parts
> Alcohol is for drinkin'
> Nitromethane is for racing  
**
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: "Placeholder" in property list

2017-04-22 Thread Keith Culotta via 4D_Tech
That new feature has been a help with clutter.  I was unable to use it a 
numeric field until the field's format was set to something where the zero 
value was hidden, like ";-;".  When the field does not have the focus, 
the placeholder appears.

Keith - CDI

> On Apr 22, 2017, at 8:37 AM, Jeffrey Kain via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Has anyone noticed that in 15.4 (HF2... maybe others) there's a new property 
> for fields and variables called 'Placeholder' that automatically fills an 
> empty field with descriptive text in a light gray font color, which 
> disappears when you type or the variable receives a value?
> 
> It's been awhile since I read the v15 documentation but I was surprised to 
> see it there!
> **
> 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 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: Which rows are selected?

2017-03-10 Thread Keith Culotta via 4D_Tech
listBox{$row}=true

Keith - CDI

> On Mar 10, 2017, at 1:56 PM, bob.miller--- via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi Everyone,
> 
> Call it Friday, call it memory loss, but don't call it lack of effort. 
> I've been scouring the docs looking for how, using an array-type listbox 
> with the 'Selection Mode = Multiple' attribute set, how can I detect which 
> rows are selected?
> 
> It's going to be a big 'ah, duh!' moment, but I just can't find it.
> 
> Thanks for the help -
> 
> 
> Bob Miller
> Chomerics, a division of Parker Hannifin Corporation
> 
> 
> 
> 
> **
> 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 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
**

Heads Up about Write Pro Style Transformations

2017-07-31 Thread Keith Culotta via 4D_Tech
This is something to be aware of if you plan to use Write Pro text outside of 
Write Pro areas.

A bug report has been submitted, but for now Write Pro Style Transformations 
are cosmetic only.

For instance, if you apply the Write Pro transformation 
  Uppercase to "This is a Test", 
  you will see "THIS IS A TEST" in the document.

If you copy the text, or retrieve it using "ST Get plain text", you end up with 
"This is a Test".

Keith - CDI
**
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: Heads Up about Write Pro Style Transformations

2017-08-01 Thread Keith Culotta via 4D_Tech
Spence,

As per Write Pro standard behavior, I am getting the right text.  But, this 
standard behavior seems more like "What you see is what you don't get".  You 
see "UPPERCASE TEXT".  Hand the data off to another program and you can get 
"Uppercase Text" or "UPPErcase Text or "upperCASE TExt"... and so on.  If a 
user were to use the transform feature to correct their typing, they could not 
be sure what is in the documents.

Thanks,

Keith - CDI

> On Aug 1, 2017, at 3:45 PM, Spencer Hinsdale via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> i'm confused.  he's getting the right plain text. isn't he saying that if 
> there were an emphatic style that displayed . as ! then the plain text ought 
> to change to ! too ?
> 
>> On Aug 1, 2017, at 1:05 PM, Pat Bensky via 4D_Tech <4d_tech@lists.4d.com> 
>> wrote:
>> 
>> Keith,
>> If you used ST Get Text instead of Get Plain Text, then you maybe could
>> strip out the style tags and end up with the correct plain text? (I haven't
>> tried this).
>> 
>> Pat
>> 
>> On 1 August 2017 at 15:08, Keith Culotta via 4D_Tech <4d_tech@lists.4d.com>
>> wrote:
>> 
>>> Well, It looks like this has been declared standard behavior.  I can't say
>>> it's unexpected to see the words "style" and "cosmetic" in the same
>>> vicinity.  I question their use with a text "transformation".  This is more
>>> about user expectations.  "a" and "A" have always been understood, by
>>> technical and non-technical users, to be two different character values.
>>> 
>>> Transforming a character from one case to another changes the value of the
>>> character in Text Edit, Word, other 4D commands, and so on.  In Write Pro
>>> there is no way to tell which character is in the text.  Suppose a client
>>> wants their customer name list to be Capitalized.  Write Pro would be a
>>> great tool for that, except the final product would be wrong.  They are
>>> unable to depend on the data.
>>> 
>>> All users of any software that I have met, have an expectation that the
>>> case of a character is a "real" thing, and the attributes like bold, etc...
>>> are the "cosmetic" part.  It seems unfortunate to introduce this kind of
>>> ambiguity.
>>> 
>>> Keith - CDI
>>> 
>>>> On Aug 1, 2017, at 4:10 AM, Pat Bensky via 4D_Tech <4d_tech@lists.4d.com>
>>> wrote:
>>>> 
>>>> Hi Keith,
>>>> I suppose it could be argued that ST Get Plain Text gets plain (i.e.,
>>>> unstyled) text ... text in its raw form ... but I agree with your point
>>> of
>>>> view.
>>>> 
>>>> Pat
>>>> 
>>>> On 31 July 2017 at 15:09, Keith Culotta via 4D_Tech <
>>> 4d_tech@lists.4d.com>
>>>> wrote:
>>>> 
>>>>> This is something to be aware of if you plan to use Write Pro text
>>> outside
>>>>> of Write Pro areas.
>>>>> 
>>>>> A bug report has been submitted, but for now Write Pro Style
>>>>> Transformations are cosmetic only.
>>>>> 
>>>>> For instance, if you apply the Write Pro transformation
>>>>> Uppercase to "This is a Test",
>>>>> you will see "THIS IS A TEST" in the document.
>>>>> 
>>>>> If you copy the text, or retrieve it using "ST Get plain text", you end
>>> up
>>>>> with "This is a Test".
>>>>> 
>>>>> Keith - CDI

**
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: Heads Up about Write Pro Style Transformations

2017-08-01 Thread Keith Culotta via 4D_Tech
Pat,

ST Get Text shows the tag in a regular text area: 
style="text-transform:uppercase", so maybe there is a way to strip the tags and 
then put the text back into a styled object.  I can see someone writing a 
utility one day for a customer who needs thousands of documents fixed.

Thanks,

Keith - CDI

> On Aug 1, 2017, at 3:05 PM, Pat Bensky via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Keith,
> If you used ST Get Text instead of Get Plain Text, then you maybe could
> strip out the style tags and end up with the correct plain text? (I haven't
> tried this).
> 
> Pat
> 
> On 1 August 2017 at 15:08, Keith Culotta via 4D_Tech <4d_tech@lists.4d.com>
> wrote:
> 
>> Well, It looks like this has been declared standard behavior.  I can't say
>> it's unexpected to see the words "style" and "cosmetic" in the same
>> vicinity.  I question their use with a text "transformation".  This is more
>> about user expectations.  "a" and "A" have always been understood, by
>> technical and non-technical users, to be two different character values.
>> 
>> Transforming a character from one case to another changes the value of the
>> character in Text Edit, Word, other 4D commands, and so on.  In Write Pro
>> there is no way to tell which character is in the text.  Suppose a client
>> wants their customer name list to be Capitalized.  Write Pro would be a
>> great tool for that, except the final product would be wrong.  They are
>> unable to depend on the data.
>> 
>> All users of any software that I have met, have an expectation that the
>> case of a character is a "real" thing, and the attributes like bold, etc...
>> are the "cosmetic" part.  It seems unfortunate to introduce this kind of
>> ambiguity.
>> 
>> Keith - CDI
>> 
>>> On Aug 1, 2017, at 4:10 AM, Pat Bensky via 4D_Tech <4d_tech@lists.4d.com>
>> wrote:
>>> 
>>> Hi Keith,
>>> I suppose it could be argued that ST Get Plain Text gets plain (i.e.,
>>> unstyled) text ... text in its raw form ... but I agree with your point
>> of
>>> view.
>>> 
>>> Pat
>>> 
>>> On 31 July 2017 at 15:09, Keith Culotta via 4D_Tech <
>> 4d_tech@lists.4d.com>
>>> wrote:
>>> 
>>>> This is something to be aware of if you plan to use Write Pro text
>> outside
>>>> of Write Pro areas.
>>>> 
>>>> A bug report has been submitted, but for now Write Pro Style
>>>> Transformations are cosmetic only.
>>>> 
>>>> For instance, if you apply the Write Pro transformation
>>>> Uppercase to "This is a Test",
>>>> you will see "THIS IS A TEST" in the document.
>>>> 
>>>> If you copy the text, or retrieve it using "ST Get plain text", you end
>> up
>>>> with "This is a Test".
>>>> 
>>>> Keith - CDI
>>>> **
>>>> 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
>>>> **
>>> 
>>> 
>>> 
>>> 
>>> --
>>> *
>>> CatBase - Top Dog in Data Publishing
>>> tel: +44 (0) 207 118 7889
>>> w: http://www.catbase.com
>>> skype: pat.bensky
>>> *
>>> **
>>> 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 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
>> **
>> 
> 
> 
> 
> -- 
> *
> CatBase - Top Dog in Data Publishing
> tel: +44 (0) 207 118 7889
> w: http://www.catbase.com
> skype: pat.bensky
> *
> **
> 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 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: Listbox Printing

2017-08-14 Thread Keith Culotta via 4D_Tech
I did not mean to miss your point, but the following does not work when called 
from within the component either.  The code I uploaded has it outside the print 
job.  All variations have worked when used in the matrix structure.

OPEN PRINTING JOB   
FORM LOAD("Form1")

ARRAY LONGINT(aA;0)
ARRAY TEXT(aB;0)
For ($i;1;10)
APPEND TO ARRAY(aA;$i)
APPEND TO ARRAY(aB;"Text"+String($i))
End for 

v1:="Test String"
$all:=Print object(*;"ListBox") 
$all:=Print object(*;"v1")

CLOSE PRINTING JOB

Keith - CDI

> On Aug 14, 2017, at 11:43 AM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> I am not sure I understand your code;
> 
> are you not supposed to populate the arrays AFTER you call FORM LOAD (unless 
> the listbox already exists in the current form) ?
> 
>> 2017/08/14 23:29、Keith Culotta via 4D_Tech <4d_tech@lists.4d.com> のメール:
>> 
>> I tried with the name as well. It works that way too, but not when run as a 
>> component.
>> 
>> SET PRINT PREVIEW(True)
>> If (OK=1)
>> 
>> ARRAY LONGINT(aA;0)
>> ARRAY TEXT(aB;0)
>> For ($i;1;10)
>> APPEND TO ARRAY(aA;$i)
>> APPEND TO ARRAY(aB;"Text"+String($i))
>> End for
>> 
>> OPEN PRINTING JOB
>> FORM LOAD("Form1")
>> $all:=Print object(*;"ListBox")
>> CLOSE PRINTING JOB
>> 
>> End if
> 
> 
> 
> 
> **
> 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 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: Listbox Printing

2017-08-15 Thread Keith Culotta via 4D_Tech
I see how that works.  What tripped me up initially was discovering what looked 
like an exception.

Run the app "LBPrint" and you'll see the listbox populates in the printout.
Then run "Host" which has no forms or methods.  It uses LBPrint as a component. 
 The the listbox does not populate.
In both cases run "aLBPTest" to insure a new process.

I have learned that something about the scope of its variables changes *within* 
an app when it is run as a component.  I was not aware of this at first.

Here is the latest I tested with in the method printLB:

SET PRINT PREVIEW(True)
If (OK=1)

OPEN PRINTING JOB
FORM LOAD("Form1")

ARRAY LONGINT(aA;0)
ARRAY TEXT(aB;0)
For ($i;1;10)
APPEND TO ARRAY(aA;$i)
APPEND TO ARRAY(aB;"Text"+String($i))
End for 

v1:="Test String"

$all:=Print object(*;"ListBox")
$all:=Print object(*;"v1")
CLOSE PRINTING JOB
End if 

Thanks,
Keith - CDI

> On Aug 14, 2017, at 5:51 PM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> FORM LOAD simply loads the form definition.
> the data source (variables and arrays) are not bound automatically in print.
> you need to populate the objects by their names:
> 
> SET PRINT PREVIEW(True)
> 
> If (OK=1)
> 
> OPEN PRINTING JOB
> 
> FORM LOAD("Form1")
> 
> $aA:=OBJECT Get pointer(Object named;"Column1")
> $aB:=OBJECT Get pointer(Object named;"Column2")
> 
> ARRAY LONGINT($aA->;0)
> ARRAY TEXT($aB->;0)
> 
> For ($i;1;10)
> APPEND TO ARRAY($aA->;$i)
> APPEND TO ARRAY($aB->;"Text"+String($i))
> End for
> 
> $printed:=Print object(*;"ListBox")
> 
> $v1:=OBJECT Get pointer(Object named;"v1")
> $v1->:="Test String"
> 
> $printed:=Print object(*;"v1")
> 
> CLOSE PRINTING JOB
> 
> End if
> 
>> 2017/08/15 3:14、Keith Culotta via 4D_Tech <4d_tech@lists.4d.com> のメール:
>> 
>> I did not mean to miss your point, but the following does not work when 
>> called from within the component either.  The code I uploaded has it outside 
>> the print job.  All variations have worked when used in the matrix structure.
> 

**
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: Listbox Printing

2017-08-14 Thread Keith Culotta via 4D_Tech
I tried with the name as well. It works that way too, but not when run as a 
component.


SET PRINT PREVIEW(True)
If (OK=1)

ARRAY LONGINT(aA;0)
ARRAY TEXT(aB;0)
For ($i;1;10)
APPEND TO ARRAY(aA;$i)
APPEND TO ARRAY(aB;"Text"+String($i))
End for  

OPEN PRINTING JOB
FORM LOAD("Form1")
$all:=Print object(*;"ListBox")
CLOSE PRINTING JOB

End if 

Keith
 http://www.compdim.com/ | https://www.apple.com/support/macbasics/

> On Aug 13, 2017, at 5:18 PM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> have you tried using the object name instead ?
> 
>> 2017/08/13 5:46、Keith Culotta via 4D_Tech <4d_tech@lists.4d.com> のメール:
>> $obj:=(->Box_Sum)
> 
> 
> 
> 
> **
> 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 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: Listbox Printing

2017-08-12 Thread Keith Culotta via 4D_Tech
I tried several combinations of the code below showing a button method on the 
form "SumForm".  The parent method gets passed some arrays, opens its form 
"SumForm", displays them in the LB, and provides a button with the below code.

The button method prints fine in a DB.  When the DB is used as a component, the 
page prints blank.  All code and the form are in the component.
The fix is to copy the source LB to the LB on the form being opened.  It's odd 
because it's the same form and LB.  Am I missing a simple step to make this 
work from a component?  FORM LOAD("SumForm";*) would not help since the Host 
does not contain the form.

PRINT SETTINGS  // Does not work when displaying the LB from a component
If (OK=1)
$obj:=(->Box_Sum)
OPEN PRINTING JOB
If (OK=1)
FORM LOAD("SumForm")  // this form has Box_Sum on it
Repeat 
$end:=Print object($obj->)
If (Not($end))
PAGE BREAK
end if
Until ($end)
End if 
CLOSE PRINTING JOB
End if 

Thanks,

Keith - CDI

> On Aug 2, 2017, at 10:34 PM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> I don't see any reasons why they won't work in tandem.
> 
> in the context of OPEN PRINTING JOB,
> you are just printing objects on top of each other, in memory.
> 
>> 2017/08/03 12:01、James Crate via 4D_Tech <4d_tech@lists.4d.com> のメール:
>> it doesn’t look like Print Object can work in combination with Print Form.
> 

**
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: Listbox Printing

2017-08-14 Thread Keith Culotta via 4D_Tech
One correction - the Listbox appears when I use the Name.  (The component built 
in an unused location when I tested your suggestion)

The listbox already appears in the current form, and does print as expected.  
However when the app is compiled as a component, and its method called from the 
Host, the values do not appear in the printout.

It can be called from both apps by the shared "printLB" method.  
http://cdinc.co/Sample/LBPrint.zip <http://cdinc.co/Sample/LBPrint.zip>  It 
just acts differently when "printLB" is called from a host.

v16.1

Keith - CDI

> On Aug 14, 2017, at 11:43 AM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> I am not sure I understand your code;
> 
> are you not supposed to populate the arrays AFTER you call FORM LOAD (unless 
> the listbox already exists in the current form) ?
> 
>> 2017/08/14 23:29、Keith Culotta via 4D_Tech <4d_tech@lists.4d.com> のメール:
>> 
>> I tried with the name as well. It works that way too, but not when run as a 
>> component.
>> 
>> SET PRINT PREVIEW(True)
>> If (OK=1)
>> 
>> ARRAY LONGINT(aA;0)
>> ARRAY TEXT(aB;0)
>> For ($i;1;10)
>> APPEND TO ARRAY(aA;$i)
>> APPEND TO ARRAY(aB;"Text"+String($i))
>> End for
>> 
>> OPEN PRINTING JOB
>> FORM LOAD("Form1")
>> $all:=Print object(*;"ListBox")
>> CLOSE PRINTING JOB
>> 
>> End if
> 
> 
> 
> 
> **
> 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 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: Arrays vs Object for Key/Value pair lookups

2017-07-17 Thread Keith Culotta via 4D_Tech
Take a look at the new 
http://livedoc.4d.com/4D-Language-Reference-15.4/Arrays/Find-in-sorted-array.301-3274895.en.html.
  This would change the FIA side of the equation.

Keith - CDI

> On Jul 17, 2017, at 5:46 AM, Peter Jakobsson via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> Hi
> 
> I remember at last year’s summit, JPR was emphasising how objects were far 
> more optimised than arrays for doing lookups over large numbers of key value 
> pairs.
> 
> e.g. we usually do this:
> 
> $x:=find in array(myKEYS;”product_code_x”)
> 
> if($x>0)
>  $0:=myPRICES{$x}
> end if
> 
> How do people prefer to do this with objects ? Enumerate the keys in some 
> systematic way and then populate the object like this >
> 
> For($i;1;$SIZE)
> 
>  $key:=string($i)
>  $value:=myarrayVAL{$i}
>  OB SET($object;$key;$value)
> 
> End For
> 
> Then for retreiving:
> 
> $key:=string($1)
> 
> $0:=OB Get($object;$key)
> 
> …or was JPR suggesting we use object arrays and do some kind of “find” over 
> the object arrays ?
> 
> Best Regards
> 
> Peter
> 
> **
> 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 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 Write Pro interface plug in or component?

2017-07-11 Thread Keith Culotta via 4D_Tech
As mentioned in Ortwin's link, the Widget and the WPro area are separate.  
Another alternative would be to put the Widget in a floating window OPEN WINDOW 
and DIALOG(*).  Most parts of the Widget worked when I tested that (I think I 
had to use the variable name), but there were problems with the Expressions 
page.

Keith - CDI

> On Jul 11, 2017, at 5:50 AM, Ortwin Zillgen via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> http://.mettre.de/wp/the-real-estate-blues/#english
> 
> Grüße/regards
> Ortwin Zillgen 

**
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 Write Pro interface plug in or component?

2017-07-10 Thread Keith Culotta via 4D_Tech
Don,

I feel your pain.  They took our old clunker and are giving us a collection of 
amazing car parts (plus instructions).

Here is one approach to giving the user a clue via "menus": 
http://cdinc.co/Updates/SimpleWP.zip.  It requires v16R3, which introduced some 
WPro standard actions.  

Keith - CDI

> On Jul 10, 2017, at 5:05 PM, Don Lapin via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hello,
> 
> I have just started looking at the 4D Write Pro interface. 
> 
> Currently I have an "old" (current) 4D Write area embedded into a fairly 
> complex form (25 tabs, lots of fields and listboxes, etc.). The program 
> generates complex, multi-page documents procedurally using 4D Write commands.
> 
> When the users work with the current 4D Write interface, it looks like a 
> normal word processor, and they know what to do without help. Click into some 
> text to see the style sheet. There's adequate room to see the document and 
> its margins.
> 
> The "new" interface consists of a stylized widget on the right side, which 
> consumes about one third of the available form space. No menus. The ruler is 
> three times as thick as the old one. There don't appear to be open and save 
> options. 
> 
> Tech support suggested that if I wanted a more conventional interface, I 
> could create it myself.
> 
> Is anyone aware of a plug-in or component that provides a normal interface 
> for 4D Write Pro? Or is 4D Write Pro actually intended for some other use 
> than its predecessor?
> 
> Thanks,
> Don 
> 
> 
> 
> **
> 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 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: nested components

2017-07-25 Thread Keith Culotta via 4D_Tech
I have one component that is used by the Host and by other components.  These 
other components are also used by the Host.
4D puts all the components at the same level in the Components folder at 
compile time and it works.
The Component can also call a Host method if the method in the Host is shared.


Component-1
  |
  Error_Component


Component-2
  |
  Error_Component


Top level (Host) system
  | 
  Component-1
  |
  Component-2
  |
  Error_Component


Keith - CDI

> On Jul 25, 2017, at 3:44 PM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I am working on a couple of components.
> in them I use (reuse) the same code for managing errors, like bad 
> parroter values.
> 
> can I:
> - break this error code out into a component, lets call it 'Text_Errors'
> - then place the 'Text_Errors' component into an other, eventually to 
> be built, component?
> -and then access the methods in the 'Text_Errors' component from the 
> 'higher level' component.
> 
> assuming I can do this, what happens with the final host database?
> - can the final (host) system see the lower/lowest level component?
> 
> (in Ascii)
> Top level (Host) system
>   | 
> Component-1
>   |
> Error_Component
> 
> 
> Thanks
> ---
> Gas is for washing parts
> Alcohol is for drinkin'
> Nitromethane is for racing 
> **
> 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 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 Forums no longer accessible -- too many redirects

2017-07-27 Thread Keith Culotta via 4D_Tech
Same here.  I tried from Partner Central, TOAW, and the usual link, and got too 
many redirects.

Keith - CDI

> On Jul 27, 2017, at 10:17 AM, Jeffrey Kain via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Is there a new way to access forums.4d.fr? For the past few days I haven't 
> been able to reach this site -- Safari displays an error saying too many 
> redirects.
> 
**
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 Forums no longer accessible -- too many redirects

2017-07-27 Thread Keith Culotta via 4D_Tech
In Safari: removed all "4D" website data (cookies).  After that the site came 
up and I was able to log in with the old saved username and password.  

I signed back out, went to the site, and clicked the "Sign In" button near the 
top right.  The next window was a migration window.  After the migration I'm 
auto-logged in with my partner credentials.

Keith - CDI

> On Jul 27, 2017, at 10:42 AM, Jeffrey Kain via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I think I tried that yesterday, and then also ended up with redirect errors.
> 
> What URL did you use to get in for the migration?  I'm using forums.4d.fr
> 
> 
> 
> --
> Jeffrey Kain
> jeffrey.k...@gmail.com
> 
> 
> 
> 
>> On Jul 27, 2017, at 11:39 AM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
>> wrote:
>> 
>> I was just able to get in and 'migrate' my account by following a link to
>> an old post which took me in without trying to login. Then I read the
>> banner and took the suggestion to click the LogIn link which redirected me
>> to the Partner Login screen. After that I was redirected to a simple little
>> form that let me enter my old user name and password.
>> 
>> You might try with a browser you don't use often to avoid any auto-sign on
>> stuff that might be getting in the way.
> 
> **
> 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 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: C-objects and memory use

2017-07-26 Thread Keith Culotta via 4D_Tech
Sorry, forgot to say v16R3 is required to use NEW OBJECT in the example.

Keith - CDI

> On Jul 26, 2017, at 3:07 PM, Keith Culotta via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> That's what I see here.  Same with passing the object to a new process.  So, 
> not ref-counting, or ref-counting just within a process?  
> 
> The behavior of passing an object to a method called from a form button is 
> slightly different from calling the method's commands directly in the button. 
>  It's cosmetic, the appearance of the c_object in the form does not change 
> first instance.
> 
> https://www.dropbox.com/s/v5yrxzzayqurmo5/testPtrPtr.zip?dl=0
> 
> Keith - CDI
> 
>> On Jul 25, 2017, at 3:31 PM, Peter Bozek via 4D_Tech <4d_tech@lists.4d.com> 
>> wrote:
>> 
>> On Tue, Jul 25, 2017 at 9:49 PM, Keith Culotta via 4D_Tech <
>> 4d_tech@lists.4d.com> wrote:
>> 
>> I asked 4D and was told that if object is passed to worker, worker gets
>> copy. Did not test that, but it makes sense.
>> -- 
>> Peter Bozek
> 
> **
> 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 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: C-objects and memory use

2017-07-26 Thread Keith Culotta via 4D_Tech
That's what I see here.  Same with passing the object to a new process.  So, 
not ref-counting, or ref-counting just within a process?  

The behavior of passing an object to a method called from a form button is 
slightly different from calling the method's commands directly in the button.  
It's cosmetic, the appearance of the c_object in the form does not change first 
instance.

https://www.dropbox.com/s/v5yrxzzayqurmo5/testPtrPtr.zip?dl=0

Keith - CDI

> On Jul 25, 2017, at 3:31 PM, Peter Bozek via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> On Tue, Jul 25, 2017 at 9:49 PM, Keith Culotta via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
> 
> I asked 4D and was told that if object is passed to worker, worker gets
> copy. Did not test that, but it makes sense.
> -- 
> Peter Bozek

**
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: How to close a modal window if user clicks outside of it?

2017-06-29 Thread Keith Culotta via 4D_Tech
Try with a Plain Form Window type and activate the On Deactivate event.  Put a 
Cancel in that event to close the window.  It can't tell if the mouse just 
moves outside the window (you can do that with an invisible, grow,grow object), 
but a click anywhere else will close the window.

Keith - CDI

> On Jun 29, 2017, at 1:02 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi folks,
> 
> I open a modal dialog within another form. I want to close this if the user
> moused to or clicks on something outside the form. Since I'm working with a
> modal dialog it just beeps.
> 
> I tried using the On mouse leaving form event. It fires when the mouse
> leaves any object on the form but not if I leave the form itself. This is
> close but not too good.
> 
> Is there some other way to recognize when the user is off the modal and
> take action programmatically?
> 
> Thanks
> 
> -- 
> Kirk Brooks
> San Francisco, CA
> ===
> 
> *The only thing necessary for the triumph of evil is for good men to do
> nothing.*
> 
> *- Edmund Burke*
> **
> 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 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
**

Standard action item appearance

2017-06-29 Thread Keith Culotta via 4D_Tech
In v16 R3, I'd like for a non-enabled standard action menu item to be visible 
and dimmed in the pop-up menu.
When working through a list of actions like in the example below, each item 
gets Appended, but will not appear in the menu if "enabled"=False.
Does anyone know a simple switch to change this behavior?

$actionInfo:=Get action info($acts{$i}) 
If (OB Is defined($actionInfo))  //action is defined in the process
APPEND MENU ITEM($menu;ak standard action title)
SET MENU ITEM PROPERTY($menu;-1;Associated standard action;$acts{$i})
If (Not(OB Get($actionInfo;"enabled")))
DISABLE MENU ITEM($menu;-1)  // commenting this line out does 
not change the menu behavior
End if 
End if 

Thanks,

Keith
**
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: Heads Up about Write Pro Style Transformations

2017-08-01 Thread Keith Culotta via 4D_Tech
Well, It looks like this has been declared standard behavior.  I can't say it's 
unexpected to see the words "style" and "cosmetic" in the same vicinity.  I 
question their use with a text "transformation".  This is more about user 
expectations.  "a" and "A" have always been understood, by technical and 
non-technical users, to be two different character values.  

Transforming a character from one case to another changes the value of the 
character in Text Edit, Word, other 4D commands, and so on.  In Write Pro there 
is no way to tell which character is in the text.  Suppose a client wants their 
customer name list to be Capitalized.  Write Pro would be a great tool for 
that, except the final product would be wrong.  They are unable to depend on 
the data.

All users of any software that I have met, have an expectation that the case of 
a character is a "real" thing, and the attributes like bold, etc... are the 
"cosmetic" part.  It seems unfortunate to introduce this kind of ambiguity.

Keith - CDI

> On Aug 1, 2017, at 4:10 AM, Pat Bensky via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi Keith,
> I suppose it could be argued that ST Get Plain Text gets plain (i.e.,
> unstyled) text ... text in its raw form ... but I agree with your point of
> view.
> 
> Pat
> 
> On 31 July 2017 at 15:09, Keith Culotta via 4D_Tech <4d_tech@lists.4d.com>
> wrote:
> 
>> This is something to be aware of if you plan to use Write Pro text outside
>> of Write Pro areas.
>> 
>> A bug report has been submitted, but for now Write Pro Style
>> Transformations are cosmetic only.
>> 
>> For instance, if you apply the Write Pro transformation
>>  Uppercase to "This is a Test",
>>  you will see "THIS IS A TEST" in the document.
>> 
>> If you copy the text, or retrieve it using "ST Get plain text", you end up
>> with "This is a Test".
>> 
>> Keith - CDI
>> **
>> 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
>> **
> 
> 
> 
> 
> -- 
> *
> CatBase - Top Dog in Data Publishing
> tel: +44 (0) 207 118 7889
> w: http://www.catbase.com
> skype: pat.bensky
> *
> **
> 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 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: Encrypted Data at Rest

2017-08-02 Thread Keith Culotta via 4D_Tech
FileVault 2 was a big improvement over Apple's first attempt.
This link describes the performance impact:
http://osxdaily.com/2011/08/10/filevault-2-benchmarks-disk-encryption-faster-mac-os-x-lion/

Keith - CDI


> On Aug 2, 2017, at 12:47 PM, Jody Bevan via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Chip:
> 
> Even longer than the hardware/firmware solutions there has been software to 
> do this. The performance hit is substantial though. I remember testing out a 
> software solution about 15 years ago with a compiled standalone version of 
> our application. Essentially with these they intercept the writing to the 
> hard drive for certain applications so that you do not have to do this for 
> all applications. It was substantially slower. Of course that was 15 years 
> ago, so this could have speeded up since then, especially with SSD. Still 
> though the hardware/firmware solution I could not see a difference in 
> performance between with it and without it.
> 
> Jody
> 
> 
>> On Aug 2, 2017, at 9:07 AM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
>> wrote:
>> 
>> depending on the computer system.
>> This is built into (software) OS X it is called 'FileVault'.
>> I believe that Windows 7+ has a similar feature, but this might not be 
>> true at all, or only for newer (8 and or 10).
>> 
>> I do not have explicit experience (I'm sure Jody does), i would expect 
>> there to be some performance hit with Filevault, as it is software.
>> 
>> 
>> her is a link to an ARsTechnica thread about SSD encryption
>> https://arstechnica.com/civis/viewtopic.php?t=1243475
>> 

**
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: Using SVG for button graphics

2017-08-22 Thread Keith Culotta via 4D_Tech
Saved as a method?  ..that draws the selected button and returns a picture to 
the form object

object get pointer(object named;"myButton")->:= draw_Pic("okbutton")

Haven't tried it

Keith - CDI

> On Aug 22, 2017, at 4:56 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi folks,
> 
> I'm playing around with some SVG to create simple button graphics and
> icons.
> 
> How can I set an SVG object as the picture source for a button without
> writing it to a file or saving it in a process var?
> 
> Many thanks
> 
> -- 
> Kirk Brooks
> San Francisco, CA
> ===
> 
> *The only thing necessary for the triumph of evil is for good men to do
> nothing.*
> 
> *- Edmund Burke*
> **
> 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 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: Using SVG for button graphics

2017-08-22 Thread Keith Culotta via 4D_Tech
I think your are right about that.  A button is a numeric value.  The button's 
picture is an [appendage?] that needs a source.  Didn't someone come up with a 
way to "create" variables at runtime?

Keith - CDI

> On Aug 22, 2017, at 5:30 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Keith,
> 
> I'm trying to avoid using process vars, on one hand, and a separate var for
> the button image, on the other. Pushing the envelope for totally portable
> code on forms, I guess. The stuff I'm doing is very simple (things like
> plus signs, the small triangular arrows in round buttons, that sort of
> thing. The SVG is fast enough - I just want a way to feed it directly into
> the button object.
> 
> But I think there's nothing in 4D at the moment to support this sort of
> thing.
> 
> On Tue, Aug 22, 2017 at 3:28 PM, Keith Culotta via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
> 
>> This got somewhere, but "pic" has to be a process variable, and can't be
>> cleared (pic:=pic*0).
>> 
>> $svg:=SVG_New
>> SVG_New_rect ($svg;1;1;4;4)
>> pic:=SVG_Export_to_picture ($svg)
>> $format:="1;1;pic;0"
>> OBJECT SET FORMAT(OBJECT Get pointer(Object named;"Button")->;$format)
>> SVG_CLEAR ($svg)
>> 
>> Keith - CDI
>> 
>>> On Aug 22, 2017, at 4:56 PM, Kirk Brooks via 4D_Tech <
>> 4d_tech@lists.4d.com> wrote:
>>> 
>>> Hi folks,
>>> 
>>> I'm playing around with some SVG to create simple button graphics and
>>> icons.
>>> 
>>> How can I set an SVG object as the picture source for a button without
>>> writing it to a file or saving it in a process var?
>>> 
>>> Many thanks
>>> 
>>> --
>>> Kirk Brooks
>>> San Francisco, CA
>>> ===
>>> 
>>> *The only thing necessary for the triumph of evil is for good men to do
>>> nothing.*
>>> 
>>> *- Edmund Burke*
>>> **
>>> 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 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
>> **
>> 
> 
> 
> 
> -- 
> Kirk Brooks
> San Francisco, CA
> ===
> 
> *The only thing necessary for the triumph of evil is for good men to do
> nothing.*
> 
> *- Edmund Burke*
> **
> 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 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: Using SVG for button graphics

2017-08-22 Thread Keith Culotta via 4D_Tech
This got somewhere, but "pic" has to be a process variable, and can't be 
cleared (pic:=pic*0).

$svg:=SVG_New 
SVG_New_rect ($svg;1;1;4;4)
pic:=SVG_Export_to_picture ($svg)
$format:="1;1;pic;0"
OBJECT SET FORMAT(OBJECT Get pointer(Object named;"Button")->;$format)
SVG_CLEAR ($svg)

Keith - CDI

> On Aug 22, 2017, at 4:56 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi folks,
> 
> I'm playing around with some SVG to create simple button graphics and
> icons.
> 
> How can I set an SVG object as the picture source for a button without
> writing it to a file or saving it in a process var?
> 
> Many thanks
> 
> -- 
> Kirk Brooks
> San Francisco, CA
> ===
> 
> *The only thing necessary for the triumph of evil is for good men to do
> nothing.*
> 
> *- Edmund Burke*
> **
> 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 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: POINTER TO ARRAY

2017-05-10 Thread Keith Culotta via 4D_Tech
Try changing the line "c_pointer($vPoint->)" to "c_pointer($vPoint)", and make 
sure $X is set to "1" or "2".

Keith - CDI

> On May 10, 2017, at 4:39 PM, stardata.info via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi All,
> 
> I use 4D V13 on windows.
> This code in interpreted work, but in compiled application give an error:
> 
> c_pointer($vPoint->)
> 
> ARRAY STRING(12;$aCodMat_1;0)
> ARRAY STRING(12;$aCodMat_2;0)
> DISTINCT VALUES([TABLE]Cod;$aCodMat_1)
> DISTINCT VALUES([TABLE]Cod_1;$aCodMat_2)
> 
> 
> $vPoint:=Get pointer("$aCodMat_"+String($X))
> >   error on this command$R:=Size of array($vPoint->)
> 
> Someone know because?
> 
> Thanks
> Ferdinando
> **
> 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 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: .ExternalData folder outside of the database folder?

2017-06-12 Thread Keith Culotta via 4D_Tech
Maybe two things to try...
Can you place the entire data folder on the external drive?
Would using a Symbolic or Hard link work instead of an alias.

Keith - CDI

> On Jun 10, 2017, at 11:07 AM, John Baughman via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> As I read the docs, there is no way to have the .ExternalData folder anyplace 
> other than inside the database folder and still have 4D manage the files. I 
> guess the mode “Automatic Location/Use default folder” says it all.
> 
> My question is, why can’t the path to the default folder be defined by the 
> developer or end user? 
> 
> The reason I chose automatic location using the default folder was because 
> photos are modified using QPix some time after the record containing the 
> photo is initially saved to 4D. I figured that letting 4D handle the external 
> storage would be a whole lot easier. Now that the .ExternalData folder has 
> grown to over 300gb I would like to put the folder on an external disk. I 
> tried using an alias, but that does not work.
> 
> I don’t see why there couldn’t be a way to designate the location of the 
> default folder. Is there a way to do this now that I am missing? Is my 
> thinking flawed in some way? Perhaps this is a good idea for a feature 
> request?
> 
> John
> 
> 
> 
> 
> **
> 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 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: Exploring CALL WORKER vs New process

2017-05-20 Thread Keith Culotta via 4D_Tech

That was a kind of mashup of several ideas, but you covered them in the 
preceding paragraph.  
Thanks for the observations.

Keith - CDI

> On May 19, 2017, at 5:41 PM, David Adams via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> You call a window, not a form, not process. That's precisely so that you
> can specify which window in a process you're trying to send the code to for
> execution. If you aren't using multiple windows in a single process or if
> you aren't using 'form variables', then it makes no difference.
> 
> * The code executes in the context of the _process_ holding the
> window/form. No matter which window/form it is.
> * The code has access to the form variables of the form in the specified
> window, if you want them.
> 
> A form's local variables are outside the purview of the "Worker called".
>> No event is triggered.  Any variable changed need a Call Process (-1) for
>> their display to change.
>> On the other hand, this is where form object names make the context
>> significant?
>> 
> 
> I don't think that I follow what you're saying here.

**
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
**

Exploring CALL WORKER vs New process

2017-05-18 Thread Keith Culotta via 4D_Tech
Are there good reasons to keep using "New process" in a situation like the 
following, or can it be replaced by "CALL WORKER"?  

//--Base process that shows a list of records from [Table].  Pick a record and
$p:=New process("wOpen";0;[Table]PriKey;*)

//--wOpen - displays the record on the screen
$key:=$1
Query([Table];[Table]PriKey=$key)
$w:=Open Form Window("ShowRecord")
Dialog("ShowRecord")

Now, "Base process" would like to tell the new process to change a value in the 
record.
After "Base process" gets the value of $w, it could use "CALL FORM" to 
accomplish that.
However, if I had used: CALL WORKER ( [Table]PriKey ; wOpen) instead of "New 
process" to create the process, I could, with minor changes in wOpen, use "CALL 
WORKER" to get the process to change the record's values.

//--process that shows a list of records from [Table].  Pick a record and
CALL WORKER ( [Table]PriKey ; wOpen)

//--wOpen - displays the record on the screen
PROCESS PROPERTIES ( Current Process ; $key ; $p1 ; $p2 )// $key gets the 
Process Name
Query([Table];[Table]PriKey=$key)
$w:=Open Form Window("ShowRecord")
Dialog("ShowRecord")
KILL WORKER

Thanks,
Keith - CDI
**
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: v13 - Warning Compiler misses syntax error

2017-05-24 Thread Keith Culotta via 4D_Tech
In v16 interpreted

C_TEXT($t)
C_POINTER($p1;$p2)

$t:="A"
$p1:=(->$t)
$p2:=(->$p1)

ALERT($p2->->) // Error
ALERT(($p2->)->) // A
ALERT(String(Type($p2->->))) // 2
ALERT(String(Type(($p2->)->))) // 2

Type and Alert have different tolerances?

Keith - CDI


> On May 24, 2017, at 1:50 PM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I accidentally typed the following line of code:
> $0:=(Type($To_Validate->->)=Is Pointer)
> 
> Notice anything wrong?
> At least the compiler did not...
> 
> Error is :
> ->->
> 
> I haven't checked newer versions
> Chip
> 
> 
> ---
> Gas is for washing parts
> Alcohol is for drinkin'
> Nitromethane is for racing 
> **
> 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 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: Exploring CALL WORKER vs New process

2017-05-18 Thread Keith Culotta via 4D_Tech
Tim,

Sure enough, Dialog puts the brakes on it.

Keith - CDI

> On May 18, 2017, at 1:41 PM, Timothy Penner via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> For example, if the Worker is running DIALOG then the method will not 
> complete until after the window is closed. Like in your example:

**
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: Exploring CALL WORKER vs New process

2017-05-18 Thread Keith Culotta via 4D_Tech
Kirk,

wOpen lets a user modify a record in a window in a new process.  This DB would 
have only a few records that could be picked from a floating list.

When the floating list process wants to change the record:
If the record is locked by a wOpen type process, the floating list could use 
CALL WORKER to send the change request to the process that has possession of 
the record.  If the record is not in use, the change could be made from the 
floating list (R/W, load record, change, unload, R/O).

To reduce chaos, a record will only be used by a single process.  
The process name would be the record's Primary Key.
No heavy processing, single user application.

Communication to a process seems easier if the process is started using CALL 
WORKER.  Not only can any of its windows be called with CALL FORM, but the 
process can also be called with CALL WORKER, without knowing which window, if 
any, is open.  

It got me to wondering if, in general, "CALL WORKER" has all the advantages 
over "New process" to manage processes.

Thanks,
Keith - CDI

--some corrections in the sample code below--

> On May 18, 2017, at 11:41 AM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Keith,
> 
> First off I'm not clear what the intent of wOpen is - are we modifying the
> record or simply displaying it?
> 
> If it's only being displayed you don't need CALL WORKER to change it - any
> process that can load it can change it. The issue becomes notifying the
> display process to refresh itself - which would probably be an On timer
> event (if you're running on 4D server it would have to be) or On outside
> call (or CALL FORM...) if it's standalone.
> 
> If wOpen is allowing the user to edit the record I'd say that's a bad idea
> to have outside processes modify a record the user has open - at least
> without the user having control and knowledge of what's going on. As I
> think about it if this is a case where you're handing off some processor
> intensive operation from the form you want to run by CALL WORKER and then
> get the results back that's plausible. Personally I'd rather have the input
> form receive the data and handle updating the record at the form level than
> allow another process to load, modify and unload the record.
> 
> It still seems like a lot of extra coding for not much benefit - but I may
> not fully get your intention. I do a lot of this sort of thing already
> using Execute on server to move the heavy processing off the client and
> avoid moving lots of data over the network.
> 
> On Thu, May 18, 2017 at 8:22 AM, Keith Culotta via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
> 
>> Are there good reasons to keep using "New process" in a situation like the
>> following, or can it be replaced by "CALL WORKER"?
>> 
>> //--Base process that shows a list of records from [Table].  Pick a record
>> and
>> $p:=New process("wOpen";0;[Table]PriKey;*)
>> 
>> //--wOpen - displays the record on the screen
>> PROCESS PROPERTIES ( Current Process ; $key ; $p1 ; $p2 )
>> Query([Table];[Table]PriKey=$key)
>> $w:=Open Form Window("ShowRecord")
>> Dialog("ShowRecord")
>> 
>> Now, "Base process" would like to tell the new process to change a value
>> in the record.
>> After "Base process" gets the value of $w, it could use "CALL FORM" to
>> accomplish that.
>> However, if I had used: CALL WORKER ( [Table]PriKey ; wOpen) instead of
>> "New process" to create the process, I could, with minor changes in wOpen,
>> use "CALL WORKER" to get the process to change the record's values.
>> 
>> //--process that shows a list of records from [Table].  Pick a record and
>> CALL WORKER ( [Table]PriKey ; wOpen)
>> 
>> //--wOpen - displays the record on the screen
>> PROCESS PROPERTIES ( Current Process ; $key ; $p1 ; $p2 )// $key Process Name
>> Query([Table];[Table]PriKey=$key)
>> $w:=Open Form Window("ShowRecord")
>> Dialog("ShowRecord")
>> KILL WORKER
>> 
>> Thanks,
>> Keith - CDI
> 
> 
> 
> -- 
> Kirk Brooks
> San Francisco, CA
> ===
> 
> *The only thing necessary for the triumph of evil is for good men to do
> nothing.*
> 
> *- Edmund Burke*

**
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: Exploring CALL WORKER vs New process

2017-05-18 Thread Keith Culotta via 4D_Tech
In just about all UI processes Dialog(TableOrProjectForm;plain window) is the 
only way a window gets opened.  I suppose this has simulated calling DIALOG(*) 
from a [I forget what kind of] window.  These can call their own DIALOG(*) 
windows too.  Wanting to use CALL WORKER would change that approach.  It looks 
like it will be best to find a window number and use CALL FORM after all.

Keith - CDI

> On May 18, 2017, at 2:26 PM, Timothy Penner  wrote:
> 
>>> Sure enough, Dialog puts the brakes on it.
>> Maybe using the * parameter to DIALOG will allow your design to function?
> 
> Actually, you would also need to remove the call to KILL WORKER because that 
> command will effectively close the open Window.

**
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: Exploring CALL WORKER vs New process

2017-05-18 Thread Keith Culotta via 4D_Tech
OK - I have to take that back.  I recall that calling 
Dialog(TableOrProjectForm;plain window;*) always closed the window immediately 
after it was opened, unless it was called from a "main" window.  I just tried 
it anyway, and it stayed open.  

Will rethink...
Keith - CDI

> On May 18, 2017, at 3:36 PM, Keith Culotta via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> In just about all UI processes Dialog(TableOrProjectForm;plain window) is the 
> only way a window gets opened.  I suppose this has simulated calling 
> DIALOG(*) from a [I forget what kind of] window.  These can call their own 
> DIALOG(*) windows too.  Wanting to use CALL WORKER would change that 
> approach.  It looks like it will be best to find a window number and use CALL 
> FORM after all.

**
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: Exploring CALL WORKER vs New process

2017-05-19 Thread Keith Culotta via 4D_Tech


> On May 18, 2017, at 5:38 PM, David Adams via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:

> * Workers don't die when their work is done, they wait. 

A method called by New Process
  $w:=Open Form Window("ShowRecord")
  Dialog("ShowRecord")
  ExitCode

A method called by CALL WORKER
  $w:=Open Form Window("ShowRecord")
  Dialog("ShowRecord";*)

So this is why when using CALL WORKER, the Dialog(*) windows hang around after 
the method has been exited.
This means moving the process ExitCode from the lines after Dialog into a 
form's "On Unload" event.

> but there are functionally two loops
A forms execution environment could be visualized as:
If (Worker called)
  // do worker method
Else
  // do form method
End if


> The method has
> access to all of the process values (variables, etc.) and the "form
> variables" of the specific form in the specified window.

If several forms were open in a process, would it matter which form was called? 
 A form's local variables are outside the purview of the "Worker called".  No 
event is triggered.  Any variable changed need a Call Process (-1) for their 
display to change.
On the other hand, this is where form object names make the context significant?


Handy use example:
A method that saves a file, processes it, and deletes the file got a 
significant performance boost when the delete part was handed off to a CALL 
WORKER invoked method.

Thanks,
Keith - CDI
**
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: Tags in record on 4d.

2017-05-19 Thread Keith Culotta via 4D_Tech
I have used Text fields and have considered using Objects for that kind of 
storage, but they both give me a hint of that old Subtable feeling.  The data 
is buried in a field within a record.  Objects have some tools to help with 
this, and it's easier to build a complex tag structure.

A related table gives access to all the convenient built in query, reporting, 
and display features of 4D.  

Keith - CDI

> On May 19, 2017, at 9:25 AM, Eric Naujock via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Has anybody come up with a good way add tags records in a table?
> 
> For instance I have a table of contacts, but I would like to be able to tags 
> them with labels and then be able to filter on those labels. Kind of like the 
> usage of tags in osx. 
> 
> In this case I would like to be able to add tags created by users to tag 
> contacts. I have my contacts table, I am thinking I should use objects to 
> handle this. Any suggestions?
> 
> I am running under 4D v15.4 on mac OSX.

**
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: Macro anyone?

2017-05-30 Thread Keith Culotta via 4D_Tech
This gets the text from and to the clipboard


$text:=Get text from pasteboard

ARRAY TEXT($array;0)
$delim:=Char(Carriage return)
$len:=Length($text)
$lenDel:=Length($delim)-1
$pos1:=1
$pos2:=Position($delim;$text;*)

While ($pos2>0)
$SS:=Substring($text;$pos1;$pos2-1)
APPEND TO ARRAY($array;$SS)
$pos1:=$pos2+$pos1+$lenDel
$pos2:=Position($delim;Substring($text;$pos1;$len);*)
End while 
APPEND TO ARRAY($array;$SS)

SORT ARRAY($array)
$text:=""
$size:=Size of array($array)
For ($i;1;$size)
$text:=$text+$array{$i}+$delim
End for 
SET TEXT TO PASTEBOARD($text)

Keith - CDI

> On May 30, 2017, at 10:04 AM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Anyone have a macro (or anything else)
> which will sort method editor text?
> 
> I have a method which I am using to keep track of other methods I have 
> worked on.
> I would like to sort this list. Currently I am copy/pasting in excel 
> and sorting and copy/pasting back
> 
> Would prefer not to do this.
> 
> Thanks
> Chip
> ---
> Gas is for washing parts
> Alcohol is for drinkin'
> Nitromethane is for racing 
> **
> 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 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
**

Cleaning Text & Replace string speed

2017-06-15 Thread Keith Culotta via 4D_Tech
I could not find it in the archives, so I quickly wrote a method to strip two 
unwanted, but unidentified characters from a body of text (6mb).  Each 
acceptable character was added to the output text var.  I stopped it after an 
hour of the compiled code not returning a result.

Since I am always impressed at how fast 4D commands are, I gave "Replace 
string" a try.
The same text file took 37 seconds to clean two offending characters, and 17 
seconds to clean all but uppercase only characters from the same text, and in 
interpreted mode.  It took about 4 seconds in compiled mode for both tests.

Here's the code.

Keith - CDI

  // 
  // Method: StringOmit
  // -   Uses REPLACE STRING* to clear characters
  // INPUT1: Text - to strip
  // INPUT2: Longint - lowest allowed character code
  // INPUT3: Longint - highest allowed character code
  // INPUT{4}: Longint - additional allowed character codes
  //
  // OUTPUT:  Text - with remaining characters
  // 
C_TEXT($inText;$1;$0;$outText)
C_LONGINT($i;$len;$low;$2;$high;$3;$cp;$cc;$start)
C_BOOLEAN($hasAdded;$canAdd)

$inText:=$1
$len:=Length($inText)
$low:=$2
$high:=$3

$cp:=Count parameters
If ($cp>3)
$hasAdded:=True
ARRAY LONGINT($added;0)
For ($i;4;$cp)
APPEND TO ARRAY($added;${$i})
End for 
End if 

$start:=1
$i:=$len+2

If ($hasAdded)  // also test the array of additional characters
While ($start<=$len) & ($i>($len+1))
For ($i;$start;$len)
$cc:=Character code($inText[[$i]])
If ($cc<$low) | ($cc>$high) & (Find in 
array($added;$cc)<1)
$inText:=Replace string($inText;Char($cc);"";*)
$start:=$i
$i:=$len+2
$len:=Length($inText)
End if 
End for 
End while 

Else   // no point in testing an empty array 
While ($start<=$len) & ($i>($len+1))
For ($i;$start;$len)
$cc:=Character code($inText[[$i]])
If ($cc<$low) | ($cc>$high)
$inText:=Replace string($inText;Char($cc);"";*)
$start:=$i
$i:=$len+2
$len:=Length($inText)
End if 
End for 
End while 

End if 

$0:=$inText



**
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: Cleaning Text & Replace string speed

2017-06-16 Thread Keith Culotta via 4D_Tech
Even better.  With Match regex it takes about a second to remove a smaller 
number of characters ($text;32;126;9;13) from this file.   However, when few 
characters are selected to remain in the result  ($text;65;90;9;13), the time 
goes up into minutes; 8 compiled and 11 interpreted.  I guess it's all about 
the payload.

Thanks,
Keith - CDI

> On Jun 15, 2017, at 9:08 PM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> as a match regex exercise, you could do...
> 
> $test:=Method1 ("abcdefghijklmnopqrstuvwxyz";\
> Character code("k");Character code("m");\
> Character code("d");Character code("y"))
>  //dklmy
> 
>>  // 
>>  // Method: StringOmit
>>  // -   Uses REPLACE STRING* to clear characters
>>  // INPUT1: Text - to strip
>>  // INPUT2: Longint - lowest allowed character code
>>  // INPUT3: Longint - highest allowed character code
>>  // INPUT{4}: Longint - additional allowed character codes
>>  //
>>  // OUTPUT:  Text - with remaining characters
>>  // 
>> 
>> C_TEXT($1;$in;$0;$out)
>> C_LONGINT($2;$3)
>> C_LONGINT(${4})
>> 
>> C_LONGINT($i;$pos;$len)
>> C_TEXT($min;$max;$motif)
>> 
>> $min:="\\u"+Substring(String($2;"");3)
>> $max:="\\u"+Substring(String($3;"");3)
>> 
>> $motif:="["+$min+"-"+$max
>> 
>> For ($i;4;Count parameters)
>> $motif:=$motif+"\\u"+Substring(String(${$i};"");3)
>> End for
>> 
>> $motif:=$motif+"]+"
>> 
>> $in:=$1
>> 
>> $i:=1
>> 
>> While (Match regex($motif;$in;$i;$pos;$len))
>> $out:=$out+Substring($in;$pos;$len)
>> $i:=$pos+$len
>> End while
>> 
>> $0:=$out
>> 
> 
> 
> 
> **
> 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 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: Counting # of specific characters in string/text

2017-05-05 Thread Keith Culotta via 4D_Tech
I haven't tested this for speed or unexpected conditions, but...

$a:="now is the timetime for all good men to come to the aid of their country"
$l1:=Length($a)

$b:="time"
$lb:=Length($b)

$a:=Replace string($a;$b;"";*)
$l2:=Length($a)

$l3:=$l1-$l2/$lb

ALERT(String($l3))


Keith - CDI

> On May 4, 2017, at 7:22 AM, Jörg Knebel via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi all
> 
> I’m wondering if someone has a clever routine to count the number of 
> appearances of a specific character/word in a string/text and is willing to 
> share it.
> 
> Thanks
> 
> Cheers
> Jörg
> 
> 
> **
> 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 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
**

Scheduler App request

2017-09-15 Thread Keith Culotta via 4D_Tech
I saw the following from an Apple Reseller.  Does anyone have a solution? I can 
forward the info to him.

We have 8-10 trucks on the road every day performing deliveries, installations, 
service calls, etc. For 30 years we have used old fashion pen and paper to 
create a schedule but our scheduling manager is getting overwhelmed with the 
amount of work it is taking.We are looking for a scheduling program, I think 
more advanced than iCal, that could potentially work with Lightspeed. Any 
suggestions?

Keith - CDI
**
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: SVG Scale

2017-09-19 Thread Keith Culotta via 4D_Tech
Sorry, there is also this: SVG_SCALING_CENTERED ( svgObject ; scale {; x ; y} ) 
 
http://doc.4d.com/4Dv16/4D/16/SVG-SCALING-CENTERED.301-3202422.en.html

Keith - CDI

> On Sep 19, 2017, at 11:03 AM, Jim Dorrance via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi,
> 
> I am looking for a very quick way to scale a SVG object (circle, rect etc.)
> but not move the center of the object.
> 
> I use:
> 
> *DOM SET XML ATTRIBUTE*($tObjectRef;"transform";"scale(2)")
> 
> 
> And of course, the object is  moved xy*2
> 
> 
> Any ideas how to scale on object but not its position on the cancas.
> 
> 
> Thanks
> 
> Jim
> 
> -- 
> 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
> **

**
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: SVG Scale

2017-09-19 Thread Keith Culotta via 4D_Tech
Here is a sample with the attributes hard coded: 100 and 2.  Comment out (and 
in) the middle section to see the effect.

$svg:=SVG_New 
$ref:=SVG_New_circle ($svg;100;100;20)

SVG_SET_TRANSFORM_SCALE ($ref;2;2)
SVG_SET_ATTRIBUTES ($ref;"cx";String(100/2);"cy";String(100/2))

vPic:=SVG_Export_to_picture ($svg)
SVG_CLEAR ($svg)

Keith - CDI

> On Sep 19, 2017, at 11:03 AM, Jim Dorrance via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi,
> 
> I am looking for a very quick way to scale a SVG object (circle, rect etc.)
> but not move the center of the object.
> 
> I use:
> 
> *DOM SET XML ATTRIBUTE*($tObjectRef;"transform";"scale(2)")
> 
> 
> And of course, the object is  moved xy*2
> 
> 
> Any ideas how to scale on object but not its position on the cancas.
> 
> 
> Thanks
> 
> Jim
> 
> -- 
> 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
> **

**
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: FORM SET OUTPUT -> project form

2017-10-16 Thread Keith Culotta via 4D_Tech
I think PRINT RECORD and PRINT SELECTION require a Table Form.  A project form 
is printed with PRINT FORM.

Keith - CDI

> On Oct 16, 2017, at 5:39 AM, Pat Bensky via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Using v14:
> 
> I get an error with
> 
> *FORM SET OUTPUT*("ReportHeaderLandscape")
> 
> ​"There is no table to apply the command to"
> 
> So how do you set the output form for a project form?
> 
> Pat
> 

**
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: v13 - How to clear Array list box selection

2017-10-16 Thread Keith Culotta via 4D_Tech
Something along the lines of the listbox variable being a BOOLEAN array.  The 
highlighted rows are TRUE.

Keith - CDI


> On Oct 16, 2017, at 4:36 PM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I have an array based listbox.
> I make a select the first row.
> I drag n drop something else onto the listbox, the previous selected 
> row remains selected.
> 
> How do I clear this?
> I know how to do this in a selection listbox.. but can't 
> remember/figure out how to clear the selection in an array listbox
> 
> Thanks
> Chip
> ---
> Gas is for washing parts
> Alcohol is for drinkin'
> Nitromethane is for racing 
> **
> 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 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: [OFF] PCI/DSS compliance

2017-09-08 Thread Keith Culotta via 4D_Tech
Compliance consisted of answering an online questionnaire and passing the scan. 
 Not storing customer credit card information made a big difference in lowering 
the "level" of security that we had to meet (Equifax level).  It made the 
questionnaire part much easier to pass.

Our cable modem sends all traffic to the AirPort, which has the outside IP 
address on the WAN port.  It forwards the VPN packets to the macOS Server which 
has the VPN service turned on.I rechecked and there is no forwarding of the 
credit card machine ports.  It seems the presence of the VPN was the trick.

Keith - CDI


> On Sep 8, 2017, at 1:38 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi Keith,
> I'm just getting back around to this - I like the idea of a VPN. I have
> three locations I need to accomodate and have to admit I haven't done
> anything with a VPN so if you'll allow me to ask some pretty naive
> questions:
> 
> Did you set up the VPN just within the router or get an actual VPN service
> to connect to?
> 
> I actually wanted to get some DSL lines but at a couple of locations ATT
> won't even install copper lines anymore.
> 
> ​Were you involved in the overall certification PCI certification process?
> I'm wondering about stuff like the internal paper handling aspects of the
> deal. Any insight is welcome.
> 
> Thanks much!​
> 
> 
> On Thu, Sep 7, 2017 at 1:51 PM, Keith Culotta via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
> 
>> Kirk,
>> 
>> I can't say that I understand the nuances of the system to the point of
>> having any details to contribute, but after lots of trying to figure it out
>> the thing that finally allowed us to pass the scan was to use a VPN.  We
>> open only the VPN ports and the ports required by the credit card machines.
>> We use the Apple Server's VPN and an AirPort Extreme.
>> 
>> I did not think to ask the compliance people if I could register the
>> standard 4D ports with them so that having those ports open would not
>> trigger a violation.  On the other hand, I think I read that credit card
>> machines are supposed to be on a separate network anyway.  A low speed DSL
>> would work.
>> 
>> Keith - CDI
>> 
>>> On Sep 7, 2017, at 2:46 PM, Kirk Brooks via 4D_Tech <
>> 4d_tech@lists.4d.com> wrote:
>>> 
>>> If anyone has experience with successfully completing a PCI/DSS audit and
>>> certification for your network, not just the 4D part, I would really
>>> appreciate talking with you. Ping me off line.
>>> 
>>> Thanks
>>> 
>>> --
>>> Kirk Brooks
>>> San Francisco, CA
>>> ===
>>> 
>>> *The only thing necessary for the triumph of evil is for good men to do
>>> nothing.*
>>> 
>>> *- Edmund Burke*
>>> **
>>> 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 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
>> **
>> 
> 
> 
> 
> -- 
> Kirk Brooks
> San Francisco, CA
> ===
> 
> *The only thing necessary for the triumph of evil is for good men to do
> nothing.*
> 
> *- Edmund Burke*
> **
> 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 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: SVG component question

2017-09-05 Thread Keith Culotta via 4D_Tech
There is a DOM.  
Lift the hood on SVG and you'll find XML.  
I missed SVG_GET_ATTRIBUTE until I discovered that
DOM GET XML ATTRIBUTE BY NAME works for that.

Keith - CDI

> On Sep 5, 2017, at 3:03 PM, Two Way Communications via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> 
> Thanks Keith, I was already afraid of that.
> 
> And yes, if there is a DOM then it is possible to use XML commands. But since 
> i created the SVG using SVG_New, I assume there is no DOM, but I am not sure 
> about that.
> 
> 
> Rudy Mortier
> Two Way Communications bvba  -----
> 
> 
> 
>> On 05 Sep 2017, at 19:19, Keith Culotta via 4D_Tech <4d_tech@lists.4d.com> 
>> wrote:
>> 
>> I think a 'text' element's text can only be set when it is created, unlike a 
>> textArea.  So the item that needs to be changed will need to be deleted and 
>> created again.  
>> 
>> OTOH, I didn't know about addressing the "4d-text" attribute.  Maybe it can 
>> be better addressed via XML commands?
>> 
>> Keith - CDI
>> 
>>> On Sep 5, 2017, at 12:05 PM, Two Way Communications via 4D_Tech 
>>> <4d_tech@lists.4d.com> wrote:
>>> 
>>> Hi guys,
>>> 
>>> For the past hour I have been trying to modify the content of a text (NOT 
>>> textarea) in an SVG document.
>>> 
>>> I use:
>>> SVG_SET_ATTRIBUTES ($RPMKlblObjRef;"4d-text";[REAP_Markers]Label)
>>> 
>>> But the text does not get updated.
>>> 
>>> SVG SET ATTRIBUTES($RPMKlblObjRef;"4d-text";[REAP_Markers]Label) does work, 
>>> but as soon as I refresh the SVG picture it is gone.
>>> 
>>> I can’t find an appropriate command in the SVG component.
>>> 
>>> Am I overlooking something?
>>> 
>>> 
>>> 
>>> Kind regards,
>>> 
>>> Rudy Mortier
>>> Two Way Communications bvba  -
>>> 
>>> 
>>> 
>>> **
>>> 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 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 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 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: SVG component question

2017-09-05 Thread Keith Culotta via 4D_Tech
I think a 'text' element's text can only be set when it is created, unlike a 
textArea.  So the item that needs to be changed will need to be deleted and 
created again.  

OTOH, I didn't know about addressing the "4d-text" attribute.  Maybe it can be 
better addressed via XML commands?

Keith - CDI

> On Sep 5, 2017, at 12:05 PM, Two Way Communications via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> Hi guys,
> 
> For the past hour I have been trying to modify the content of a text (NOT 
> textarea) in an SVG document.
> 
> I use:
> SVG_SET_ATTRIBUTES ($RPMKlblObjRef;"4d-text";[REAP_Markers]Label)
> 
> But the text does not get updated.
> 
> SVG SET ATTRIBUTES($RPMKlblObjRef;"4d-text";[REAP_Markers]Label) does work, 
> but as soon as I refresh the SVG picture it is gone.
> 
> I can’t find an appropriate command in the SVG component.
> 
> Am I overlooking something?
> 
> 
> 
> Kind regards,
> 
> Rudy Mortier
> Two Way Communications bvba  -
> 
> 
> 
> **
> 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 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: [OFF] PCI/DSS compliance

2017-09-07 Thread Keith Culotta via 4D_Tech
Kirk,

I can't say that I understand the nuances of the system to the point of having 
any details to contribute, but after lots of trying to figure it out the thing 
that finally allowed us to pass the scan was to use a VPN.  We open only the 
VPN ports and the ports required by the credit card machines. We use the Apple 
Server's VPN and an AirPort Extreme.

I did not think to ask the compliance people if I could register the standard 
4D ports with them so that having those ports open would not trigger a 
violation.  On the other hand, I think I read that credit card machines are 
supposed to be on a separate network anyway.  A low speed DSL would work.

Keith - CDI

> On Sep 7, 2017, at 2:46 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> If anyone has experience with successfully completing a PCI/DSS audit and
> certification for your network, not just the 4D part, I would really
> appreciate talking with you. Ping me off line.
> 
> Thanks
> 
> -- 
> Kirk Brooks
> San Francisco, CA
> ===
> 
> *The only thing necessary for the triumph of evil is for good men to do
> nothing.*
> 
> *- Edmund Burke*
> **
> 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 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 Write PRO how to ...

2017-08-22 Thread Keith Culotta via 4D_Tech

Maybe not super useful, but this:

WP EXPORT VARIABLE(waAreaPtr->;$destination;wk web page html 4D;wk html debug)
SET TEXT TO PASTEBOARD($destination)

gives this result:

http://www.w3.org/1999/xhtml; xmlns:d4="http://www.4D.com;>

4D Write Pro New Document



body { -d4-version:1.01;background-color:#FF }
ul, ol { margin:0;padding:0 }
p,li { 
white-space:pre-wrap;margin:0pt;padding:0pt;-d4-list-font:'Times New 
Roman';-d4-font:'Times New Roman';font-family:'Times New Roman' }
div.section1Footer { margin:0.5cm 2.5cm 1cm }
div.section1Header { margin:1cm 2.5cm 0.5cm }
p.Normal,li.Normal { white-space:pre-wrap }



===BODY text===

===HEADING text===


===FOOTER text===




Keith -CDI

> On Aug 22, 2017, at 8:22 AM, Koen Van Hooreweghe via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> Rudi,
> 
> Probably not for the faint-hearted! But I think it is not possible to access 
> a 4D Write Pro object’s contents and you’re limited to the ST and WP commands.
> 
> I did a quick test:
> 
> C_OBJECT($wpObject)
> C_TEXT($jsonText)
> $wpObject:=WP New
> ST SET TEXT($wpObject;"Hello World!")
> TRACE
> $jsonText:=JSON Stringify($wpObject)
> SET TEXT TO PASTEBOARD($jsonText)
> 
> If I look at the object in the debugger, I can only see the general settings, 
> not the actual content.
> 
> This is what I get on the pasteboard:
> {
>  "backgroundColor": 16777215, 
>  "dateCreation": "2017-08-22T13:17:56.918Z", 
>  "dateModified": "2017-08-22T13:17:56.918Z", 
>  "title": "4D Write Pro New Document", 
>  "version": 1.01
> }
> 
> Not much to manipulate.
> 
> Koen
> 
> 
>> Op 22 aug. 2017, om 14:26 heeft Two Way Communications via 4D_Tech 
>> <4d_tech@lists.4d.com> het volgende geschreven:
>> 
>> Would we be able to check the actual 4D Write PRO object and manipulate it? 
>> After all, it is a C_Object…
> 
> 
> 
> 
> Compass bvba
> Koen Van Hooreweghe
> Kloosterstraat 65
> 9910 Knesselare
> Belgium
> tel +32 495 511.653
> 
> **
> 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 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: SVG add object question

2017-10-23 Thread Keith Culotta via 4D_Tech
  // A heads up about embedding a SVG area into another SVG area.
  // Getting the ID of the embedded object requires SVG Find element IDs by rect
  // It does not seem to work using SVG Find element ID by coordinates

$svg:=SVG_New 
$svgArea:=SVG_New 

SVG_New_text ($svg;"This is a test";10;10)
$interPicture:=SVG_Export_to_picture ($svg)
$svgPictureRef:=SVG_New_embedded_image ($svgArea;$interPicture;5;0;".svg")
SVG_SET_ID ($svgPictureRef;"SVG_Codec")

SVG_CLEAR ($svg)

$PicMain:=SVG_Export_to_picture ($svgArea)
SVG_CLEAR ($svgArea)

ARRAY TEXT($a_GetsOneID;0)
SVG Find element IDs by rect($PicMain;5;0;1;1;$a_GetsOneID)
$ID_IsEmpty:=SVG Find element ID by coordinates($PicMain;6;1)

ALERT("SVG Find element IDs by rect gets ="+$a_GetsOneID{1}+Char(13)+"SVG Find 
element ID by coordinates ="+$ID_IsEmpty)


// Keith - CDI

> On Oct 22, 2017, at 3:16 PM, Ortwin Zillgen via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> this works for me
> 
> 
> 
> 
> 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
> **

**
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: SVG add object question

2017-10-22 Thread Keith Culotta via 4D_Tech
I think I recall a discussion a while back about SVG_Add_object not working 
well when the object being added was another svg document.
Two svg docs can be "combined" using SVG_ELEMENTS_TO_ARRAYS, and SVG_Add_object 
for each reference in the doc being added.
This technique doesn't produce a complete merge if doc2 has structures, like 
patterns, that the elements of doc2 depend on.

Keith - CDI

> On Oct 21, 2017, at 1:48 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I must be confused about how this works. I have some SVG files I want to
> use to create button icons. These are nice, simple, native SVG. I want to
> manipulate them using SVG. I can open a file and export it to a pic
> variable just fine. But I'm not able to put that object into a new svg.
> 
> For example:
> 
> $svgImg:=SVG_Open_file ($path+$aDocs{$n})
> 
> $svg:=SVG_Copy ($svgImg)
> $pic1:=SVG_Export_to_picture ($svg;0)
> SVG_CLEAR ($svg)
> 
> This works as expected.
> 
> $svg:=SVG_New
> $newObj:=SVG_Add_object ($svg;$svgImg)
> $pic2:=SVG_Export_to_picture ($svg;0)
> 
> 
> This doesn't work. $pic2 is blank even though $svg has received the new
> object. I can see that by looking at $svg in the viewer.
> 
> What am I missing here?
> 
> -- 
> Kirk Brooks
> San Francisco, CA
> ===
> 
> *The only thing necessary for the triumph of evil is for good men to do
> nothing.*
> 
> *- Edmund Burke*
> **
> 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 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: Slow characters visualization

2017-11-20 Thread Keith Culotta via 4D_Tech
Just to confirm, I have also seen the issue on my MacBook Pro since v15 was 
introduced.  It was intermittent, and I have not experienced it for a while.  
Sometimes quitting 4D and restarting would help.  Other times it would restart 
with the problem still present.  I never saw a clear pattern for what would 
trigger the slowness.

Keith - CDI

> On Nov 20, 2017, at 3:23 PM, stardata.info via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi All,
> 
> I have again the issue explained below using 4D V15.5 on windows.
> 
> I notice that when i write one command or one comment in a method, 4D is very 
> slowly to
> 
> display the characters typed on the keyboard and in task manager i can the 
> see that 4D take until 14% of cpu...
> When even the last character typed is displayed, the cpu for 4D return to 0.
> 
> No one have this issue ?
> 
> Thanks
> Ferdinando
> 
> Il 11/11/2017 00:26, stardata.info ha scritto:
>> 
>> Hi,
>> 
>> If i open only one method 50 rows... i have the same slow.
>> With 4D V15.4 not have this issue...
>> 
>> Thanks
>> /Ferdinando/
>> 
>> Il 10/11/2017 21:00, 4d_tech-requ...@lists.4d.com ha scritto:
>>> Message: 9
>>> Date: Fri, 10 Nov 2017 08:01:29 -0800
>>> From: Kirk Brooks
>>> To: 4D iNug Technical<4d_tech@lists.4d.com>
>>> Subject: Re: Slow characters visualization
>>> Message-ID:
>>> 

Re: Normalization question

2017-11-08 Thread Keith Culotta via 4D_Tech
[Project]<--[ProjectEmployeeType]-->   [Employee]  ?

Keith - CDI

> On Nov 8, 2017, at 2:06 PM, John Baughman via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Given a Project table and an Employee table where Employees can be Project 
> Principles, Project Managers, and Project Supervisors, what would be the 
> proper way to create a normalized table structure in 4D. In the end an 
> assigned employee’s information, like name for example, would automatically 
> be displayed in the project’s output form for each of these assignments.
> 
> I am pretty sure using the proper Select/Join commands in SQL this could 
> easily be done, but I am falling short with 4D as none of these structures 
> work...
> 
> [Employees]ID  <——— [Projects]PrincipleEmployeeID
> <——— [Projects]ProjectMangeEmplyeerID 
> <——— [Projects]SupervisorEmployeeID
> 
> OR using linked tables….
>   (There is only one record in each linking table for 
> each employee assigned a role)
> [Employees]ID  
> <———[Principles]EmployeeID<———---[Projects]PrincipleEmployeeID
><———[ProjectManagers]EmployeeID <——— 
> [Projects]ProjectMangeEmplyeerID
><———[Supervisors]EmployeeID <——— 
> ---[Projects]SupervisorEmployeeID
> 
> The only way I can see to make it work is to denormalize it and put the 
> pertinent data from the Employee table into the linking tables in which case 
> the relationship between the employee table and the linking tables become 
> irrelevant. 
> 
> I have no problem denormalizing, but thought this might be a good exercise to 
> retain a few more cells in my aging brain. ;-)
> 
> 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
> **

**
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: Normalization question

2017-11-08 Thread Keith Culotta via 4D_Tech
Something that stood out in a recent thread about the definition of the 
Relational Model was a statement that said related fields should contain 
meaningful information.  This was a surprise, especially since the use of UUIDs 
has been such a convenience.  I took 'meaningful' to imply 'user definable' 
(with guidance of course), in spite of the headaches it can lead to.

Keith - CDI

> On Nov 8, 2017, at 4:48 PM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> ** NO ** user definable data should be used as relational/unique key 
> value.
> generate your own internal values for relations, longint, UUIDs, 
> variations on the Batman Logo, anything that the user has no say in 
> what it is nor how it is used.
> 
> On Wed, 8 Nov 2017 17:38:38 -0500, Chip Scheide via 4D_Tech wrote:
>> 
>>> If, as is the case in my situation, one has a unique field in the 
>>> Employee table that is user recognizable such as an Employee Number 
> As I suggested, the employee number could change, be reused, they could 
> change the form of the ID, from say 10 digits, to a 4 character 
> alphanumeric, or to a retinal scan... who knows!!! And don't forget 
> that value will likely be typed (entered) at some point and there are 
> typos too.
> 
> Melinda Enters Joe's ID as 1234578 (which is Fred's), instead of 
> 1234587. It takes a month to find the issue (payday) as Joe doesn't get 
> a pay check and Fred gets an extra large one (way to go Fred! good work 
> here is a bonus).  I think you can see where this goes...how do you 
> untangle *that* mess as all of your internal data is tied to the 
> mis-entered employee ID.
> 
> my 2cents
> 
> 
> 
> ---
> Gas is for washing parts
> Alcohol is for drinkin'
> Nitromethane is for racing 
> **
> 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 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: pointers to arrays (and List Box Basics)

2017-10-31 Thread Keith Culotta via 4D_Tech
A past discussion mentioned creating arrays on the fly using a Listbox command 
that creates columns.


This is for an array listbox.
http://livedoc.4d.com/4D-Language-Reference-16.2/List-Box/LISTBOX-INSERT-COLUMN.301-3433513.en.html
 C_POINTER($NilPtr)
 LISTBOX INSERT 
COLUMN(*;"MyListBox";1;"MyNewColumn";$NilPtr;"MyNewHeader";$NilPtr)
 ColPtr:=OBJECT Get pointer(Object named;"MyNewColumn")
 ARRAY TEXT(ColPtr->;10)

Keith - CDI

> On Oct 31, 2017, at 2:42 PM, Peter Mew via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Thank You
> And How do I create the Arrays in the First Place
> -pm
> 
> On Tue, Oct 31, 2017 at 7:32 PM, npdennis  wrote:
> 
>>> Im pretty sure I need to use pointers to accomplish this, but I dont
>> know how.
>> 
>> Try the command Get Pointer…
>> 
>> $p:=Get Pointer(“Array201”)
>> or
>> $x:=201
>> $p:=Get Pointer(“Array”+string($x))
>> 
>> However compiled you may need to have the arrays declared some place.
>> 
>> Neil
>> 
>> 
>> 
> **
> 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 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: identify duplicates

2017-10-31 Thread Keith Culotta via 4D_Tech
The third parameter of DISTINCT VALUES really saves work.  Here is a strategy 
to find dups in a field within a selection.  The set can be a listbox highlight 
set.

  // 
  // Method: DuplicatesToSet
  // - 
  // INPUT1: Pointer - field
  // INPUT2: Text - Set Name
  // OUTPUT: 
  // 
$field:=$1
$set:=$2
ARRAY TEXT($aVals;0)
ARRAY LONGINT($aCount;0)

DISTINCT VALUES($field->;$aVals;$aCount)
SORT ARRAY($aCount;$aVals;<)
$pos:=Find in array($aCount;1)

If ($pos#-1)
ARRAY TEXT($aVals;$pos-1)
End if 

SET QUERY DESTINATION(Into set;$set)
QUERY SELECTION WITH ARRAY(;$field->;$aVals)
SET QUERY DESTINATION(Into current selection)


Keith - CDI

> On Oct 31, 2017, at 3:40 PM, David Witton via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I'm looking for a strategy to identify duplicate records in a table - that
> is, records for which 3 fields are identical across two or more records -
> or in another case, where a single field is not unique.
> 
> Does anyone have a suggestion on how to proceed?
> 
> -- 
> David Witton 
**
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: Picture resources

2018-04-27 Thread Keith Culotta via 4D_Tech
Take a look at this Tech Tip and its link to Tech Tip 76775: 
http://kb.4d.com/assetid=77713
The code must be run the the older version of 4D, the one compatible with the 
depreciated picture format.

Keith - CDI

> On Apr 27, 2018, at 2:09 PM, Dave Tenen via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I know this has probably been covered here but I searched and found no clear 
> answer to this and any direction would be appreciated!.  
> I am trying to upgrade some older dbs to version 16, that have picture 
> library entries that are all coming up with the default images.  How can I 
> retrieve the original Picture library images?  
> Also related to that…is there anything that will allow me retrieve old 
> embedded resources (mostly pics and icons) that have the format 15000;1 etc.?
> 
> Thanks for any help in this area!
> 
> Dave Tenen
> 
> 
> Personal Chef 
> 
> Coming to you from Spec Pond and I swear the fish was
> []
> this big
> 
> dte...@me.com
> 
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: Picture resources Related Question

2018-04-27 Thread Keith Culotta via 4D_Tech
The Picture Library is still in 17b, but you can only add a new pic to by 
loading it from a volume.  Pics in the library can still be assigned to form 
objects.

Keith - CDI

> On Apr 27, 2018, at 2:42 PM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Is the Picture library depreciated?
>   
> 
> 
> On Fri, 27 Apr 2018 15:09:43 -0400, Dave Tenen via 4D_Tech wrote:
>> I know this has probably been covered here but I searched and found 
>> no clear answer to this and any direction would be appreciated!.  
>> I am trying to upgrade some older dbs to version 16, that have 
>> picture library entries that are all coming up with the default 
>> images.  How can I retrieve the original Picture library images?  
>> Also related to that…is there anything that will allow me retrieve 
>> old embedded resources (mostly pics and icons) that have the format 
>> 15000;1 etc.?
>> 
>> Thanks for any help in this area!
>> 
>> Dave Tenen
>> 
>> 
>> Personal Chef 
>> 
>> Coming to you from Spec Pond and I swear the fish was
>> []
>> this big
>> 
>> dte...@me.com
>>  

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

Re: Why are columns of a non-focusable listbox not enterable?

2018-05-25 Thread Keith Culotta via 4D_Tech
Try something like this:

OBJECT SET ENTERABLE(*;"LB1";False)
OBJECT SET FOCUS RECTANGLE INVISIBLE(*;"LB1";True)

FORM GET ENTRY ORDER($aNames;*)
DELETE FROM ARRAY($aNames;1)  // the is "LB1"
FORM SET ENTRY ORDER($aNames)

Keith - CDI

> On May 25, 2018, at 1:08 PM, Piotr Chabot Stadhouders via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> Hi,
> 
> you've got me there
> 
> OK, so 90% of the time the listbox doesn't need to be enterable
> I don't want it to have the focus because I want other objects to keep the 
> focus
> At some point (the other 10%) I want it to be enterable
> OBJECT SET ENTERABLE on a column doesn't work, because the listbox is not 
> focusable
> OK, so I set the listbox to focusable with wait, where's the OBJECT SET 
> FOCUSABLE command?
> 
> Am I overlooking something?
> 
> Gr,
> 
> Piotr
> 
> 
>> -Oorspronkelijk bericht-
>> Van: Jeffrey Kain 
>> Verzonden: donderdag 24 mei 2018 13:03
>> Aan: 4D iNug Technical <4d_tech@lists.4d.com>
>> Onderwerp: Re: Why are columns of a non-focusable listbox not enterable?
>> 
>> "Why would you want to do that"?
>> 
>> How can something be enterable without getting the focus first?
>> 
>> 
>> --
>> Jeffrey Kain
>> jeffrey.k...@gmail.com
>> 
>> 
>> 
>> 
>>> On May 24, 2018, at 2:57 AM, Piotr Chabot Stadhouders via 4D_Tech
>> <4d_tech@lists.4d.com> wrote:
>>> 
>>> I need some listboxes that are not focusable However, as a side effect
>>> then the columns of these listboxes are not enterable Does anybody
>>> know the reason of this? Does this make sense?
>> 
> 
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: "Your password does not allow you to use this form"

2018-05-24 Thread Keith Culotta via 4D_Tech
This happened to me recently on a Mac that had no printers yet added to the 
Print System.

Keith - CDI

> On May 24, 2018, at 3:48 PM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> could it be that the table has no defined output forms (and the editor is 
> somehow looking for it) ?
> does the same happen using the same code and version with a brand new 
> structure?
> 
> ---
> 
> partners have access to the source code of 4D Label Editor,
> https://blog.4d.com/component-source-code-sharing-4d-partners/
> 
> but the method C_OPEN_EDITOR is evidently called when PRINT LABEL decides to 
> display the UI.
> if you are getting the error before the editor is displayed, it would be 
> outside the remit of the component.
> 
> ---
> 
> I once had a customer who wanted to display the editor with settings loaded 
> from s previously saved project file,
> but evidently the new 64-bit editor is design to either display the UI with 
> no settings or load settings and print immediately.
> 
> so we had to dismiss the official label editor.
> https://github.com/miyako/4d-component-label-editor
> 
> 
> 
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: Build with code signing

2018-06-11 Thread Keith Culotta via 4D_Tech
Would this still be relevant: http://kb.4d.com/assetid=76697 ?

Keith - CDI

> On Jun 11, 2018, at 12:34 PM, Peter Bozek via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
>> Can someone please direct me to documentation on how to code sign apps for
>> MacOS with 4D.  I need the entire process in a step-by-step guide from
>> explaining how to obtain the code signing certificate from Apple through
>> adding it to the 4D XML build files and building.

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

Re: Flexible SVG ID Strategy

2018-06-05 Thread Keith Culotta via 4D_Tech
The easiest way I've found to move the objects in a group is to 
SVG_SET_TRANSFORM_TRANSLATE the group when the mouse is moving.  
Later if you UNGROUP, the translation needs to be spread out over the group's 
children so they don't jump to new locations.

You can use SVG_Get_root_reference in a loop to find the topmost group of the 
clicked object (the last one whose TYPE is not "svg").

Unless an ID needs to be meaningful, I've been letting the 4D SVG Engine set 
the ID (SVG_SET_OPTIONS), or setting the ID to GENERATE UUID.

Keith - CDI

> On Jun 5, 2018, at 3:22 PM, John J Foster via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi All,
> 
> {I sent this yesterday & and again earlier today and it never made it 
> through?}
> 
> I am trying to create an interface built using SVG. The svg image will 
> include many different kinds of complex objects. Bu complex I mean that each 
> object is itself a complex object built by SVG and added into the main SVG 
> image.
> 
> I want to be able to identify any part of an image I click on even if it’s 
> part of a group. But I also want to be able to move the object around to 
> different coords in the image.
> 
> I am using SVG_SET_ID (domSvg;”id_name...”) set each part of the objects ID. 
> when I click on them I see the ID and this works great. BUT...
> 
> But when I move an object I want the entire object to move not just the part 
> of it.
> 
> So wondering if anyone has decided on a strategy for managing SVG OD’s and 
> how to best handle moving things around?
> 
> If this doesn’t make sense please ask questions.
> 
> BTW I am running in 4D v16 r6 and will be moving to v17.
> 
> Appreciate,
> John…

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

Re: Counting lines of text

2018-06-27 Thread Keith Culotta via 4D_Tech
That sounds like a job for TEXT TO ARRAY ( varText ; arrText ; width ; fontName 
; fontSize {; fontStyle {; *}} ) 

Keith - CDI

> On Jun 27, 2018, at 4:31 PM, Pat Bensky via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I have a need to know how many lines a block of text will occupy.
> Given:
> - the plain text
> - the font
> - font size
> - text area width
> 
> I'm thinking it should be possible to do this by creating a WritePro
> object, adding the text and setting the various parameters - this would
> create an accurate representation of the formatted text. But having done
> that, how to find out the no. of lines?
> 
> ​Using v16r6​
> 
> ​Pat​
> 
> -- 
> *
> CatBase - Top Dog in Data Publishing
> tel: +44 (0) 207 118 7889
> w: http://www.catbase.com
> skype: pat.bensky
> *
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: Uppercase Lowercase

2018-06-20 Thread Keith Culotta via 4D_Tech
or
C_BOOLEAN($0)
C_TEXT($1;$2)
$0:=(Position string ($1; $2; *) = 1)

Keith - CDI

> On Jun 20, 2018, at 2:19 PM, Jeffrey Kain via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> How about
> 
> C_BOOLEAN($0)
> C_TEXT($1;$2)
> $0:=(Replace string ($1; $2; *) = “”)
> 
>> On Jun 20, 2018, at 3:05 PM, stardata.info  via 
>> 4D_Tech <4d_tech@lists.4d.com > wrote:
>> 
>> I need to a function for use in a IF statement.
>> For the moment, i have done a function that make a confront char by char.
>> 
>> Thanks
>> Ferdinando
>> 
>> 
>> Message: 1
>> Date: Wed, 20 Jun 2018 13:38:22 -0400
>> From: Chuck Miller> >
>> To: 4DTechList Tech<4d_tech@lists.4d.com >
>> Subject: Re: Uppercase Lowercase
>> Message-ID:
>>   > >
>> Content-Type: text/plain;charset=us-ascii
>> 
>> If using sql you can select case sensitivity, but be careful, as it will be 
>> set for every sql query where clause
>> 
>> Regards
>> 
>> Chuck

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

Re: Uppercase Lowercase

2018-06-20 Thread Keith Culotta via 4D_Tech
...and check the length is =

Keith - CDI

> On Jun 20, 2018, at 2:32 PM, Keith Culotta via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> or
> C_BOOLEAN($0)
> C_TEXT($1;$2)
> $0:=(Position string ($1; $2; *) = 1)
> 
> Keith - CDI
> 
>> On Jun 20, 2018, at 2:19 PM, Jeffrey Kain via 4D_Tech <4d_tech@lists.4d.com> 
>> wrote:
>> 
>> How about
>> 
>> C_BOOLEAN($0)
>> C_TEXT($1;$2)
>> $0:=(Replace string ($1; $2; *) = “”)
>> 
>>> On Jun 20, 2018, at 3:05 PM, stardata.info <http://stardata.info/> via 
>>> 4D_Tech <4d_tech@lists.4d.com <mailto:4d_tech@lists.4d.com>> wrote:
>>> 
>>> I need to a function for use in a IF statement.
>>> For the moment, i have done a function that make a confront char by char.
>>> 
>>> Thanks
>>> Ferdinando
>>> 
>>> 
>>> Message: 1
>>> Date: Wed, 20 Jun 2018 13:38:22 -0400
>>> From: Chuck Miller>> <mailto:cjmil...@informed-solutions.com>>
>>> To: 4DTechList Tech<4d_tech@lists.4d.com <mailto:4d_tech@lists.4d.com>>
>>> Subject: Re: Uppercase Lowercase
>>> Message-ID:
>>>  >> <mailto:bde064c1-36c8-499e-ad31-a9a7a2ba5...@informed-solutions.com>>
>>> Content-Type: text/plain;charset=us-ascii
>>> 
>>> If using sql you can select case sensitivity, but be careful, as it will be 
>>> set for every sql query where clause
>>> 
>>> Regards
>>> 
>>> Chuck
> 
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: Is a package preferred?

2017-10-20 Thread Keith Culotta via 4D_Tech
I switched back to folders for development.  It's easier to manipulate the 
app's supporting folders and files.  Users get a package, but like Chip said, 
you have to guard against the unintentional use of the datafile within the 
package.

Keith - CDI

> On Oct 19, 2017, at 5:41 PM, Robert ListMail via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> It seems like most of my Mac-based 4D databases are in a folder with the 
> structure and datafile on the same level and where there might be a test data 
> file in folder elsewhere. Yet, I have a few newly inherited Mac-based 
> databases that are in packages. Regarding best practices, what approach do 
> you favor? Do we like packages?  :)
> 
> Thanks,
> 
> Robert
> **
> 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 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: Resizable subforms

2017-10-26 Thread Keith Culotta via 4D_Tech
Very odd.  If you place a subform object on the form, without adding content, 
set it to grow, run the form and resize it, do its borders grow?  If not, maybe 
try with a new host form?
Is the Write Pro object within the subform for sure set to grow?

Keith - CDI

> On Oct 26, 2017, at 12:47 PM, Pat Bensky via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Nothing grows ... not the subform or any of it contents.
> 
> On 26 October 2017 at 16:00, Keith Culotta via 4D_Tech <4d_tech@lists.4d.com
>> wrote:
> 
>> If the WP object in a form is set to grow, and that is used in a subform
>> which is set to grow, the WP object should grow the way you are thinking
>> when the host form is resized.
>> 
>> Keith - CDI
>> 
>>> On Oct 26, 2017, at 4:32 AM, Pat Bensky via 4D_Tech <
>> 4d_tech@lists.4d.com> wrote:
>>> 
>>> Using v16:
>>> I'm experimenting with using subforms in ways that I haven't previously
>>> used them :)
>>> I have created a subform which contains a Write Pro area. The resizing
>>> options on that object are both set to Grow.
>>> 
>>> I've placed this subform onto another form. I've set the resizing options
>>> for the subform object both to Grow. But if the parent form is resized,
>>> nothing changes. The subform doesn't grow and Write Pro area stays the
>> same.
>>> 
>>> Am I missing something or does it just not work that way?
>>> 
>>> Thanks!
>>> Pat
>>> 
>>> 

**
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: Resizable subforms

2017-10-26 Thread Keith Culotta via 4D_Tech
If the WP object in a form is set to grow, and that is used in a subform which 
is set to grow, the WP object should grow the way you are thinking when the 
host form is resized.

Keith - CDI

> On Oct 26, 2017, at 4:32 AM, Pat Bensky via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Using v16:
> I'm experimenting with using subforms in ways that I haven't previously
> used them :)
> I have created a subform which contains a Write Pro area. The resizing
> options on that object are both set to Grow.
> 
> I've placed this subform onto another form. I've set the resizing options
> for the subform object both to Grow. But if the parent form is resized,
> nothing changes. The subform doesn't grow and Write Pro area stays the same.
> 
> Am I missing something or does it just not work that way?
> 
> Thanks!
> Pat
> 
> 
> -- 
> *
> CatBase - Top Dog in Data Publishing
> tel: +44 (0) 207 118 7889
> w: http://www.catbase.com
> skype: pat.bensky
> *
> **
> 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 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: Resizable subforms

2017-10-26 Thread Keith Culotta via 4D_Tech
Here is a quick sample of what I think we are talking about: 
http://cdinc.co/Sample/SubformGrow.zip
The subform objects resize in this one.  Done in v16.2.

Keith - CDI

> On Oct 26, 2017, at 1:48 PM, Pat Bensky via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> If I place a subform object on the form without content, it doesn't display
> at all.
> For sure the WritePro object is set to grow.
> I created a simple new subform containing just a field, set to grow, and
> placed that on my form as a subform and set it to grow. It doesn't ):
> 
> 
> 
> On 26 October 2017 at 19:31, Keith Culotta via 4D_Tech <4d_tech@lists.4d.com
>> wrote:
> 
>> Very odd.  If you place a subform object on the form, without adding
>> content, set it to grow, run the form and resize it, do its borders grow?
>> If not, maybe try with a new host form?
>> Is the Write Pro object within the subform for sure set to grow?
>> 
>> Keith - CDI
>> 
>>> On Oct 26, 2017, at 12:47 PM, Pat Bensky via 4D_Tech <
>> 4d_tech@lists.4d.com> wrote:
>>> 
>>> Nothing grows ... not the subform or any of it contents.
>>> 
>>> On 26 October 2017 at 16:00, Keith Culotta via 4D_Tech <
>> 4d_tech@lists.4d.com
>>>> wrote:
>>> 
>>>> If the WP object in a form is set to grow, and that is used in a subform
>>>> which is set to grow, the WP object should grow the way you are thinking
>>>> when the host form is resized.
>>>> 
>>>> Keith - CDI
>>>> 
>>>>> On Oct 26, 2017, at 4:32 AM, Pat Bensky via 4D_Tech <
>>>> 4d_tech@lists.4d.com> wrote:
>>>>> 
>>>>> Using v16:
>>>>> I'm experimenting with using subforms in ways that I haven't previously
>>>>> used them :)
>>>>> I have created a subform which contains a Write Pro area. The resizing
>>>>> options on that object are both set to Grow.
>>>>> 
>>>>> I've placed this subform onto another form. I've set the resizing
>> options
>>>>> for the subform object both to Grow. But if the parent form is resized,
>>>>> nothing changes. The subform doesn't grow and Write Pro area stays the
>>>> same.
>>>>> 
>>>>> Am I missing something or does it just not work that way?
>>>>> 
>>>>> Thanks!
>>>>> Pat
>>>>> 
>>>>> 
>> 

**
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: SVG add object question

2017-10-22 Thread Keith Culotta via 4D_Tech
A nice solution!  Just to be sure, it was to use ".svg" rather than "svg"?

$svgPictureRef:=SVG_New_embedded_image 
($svgCopyrightLayer_Ref;$interPicture;5;0;“.svg“)
rather than
$svgPictureRef:=SVG_New_embedded_image 
($svgCopyrightLayer_Ref;$interPicture;5;0;“svg“)


As displayed in the web page:
Next I tried the defined codec-option „svg“
$svgPictureRef:=SVG_New_embedded_image 
($svgCopyrightLayer_Ref;$interPicture;5;0;“svg“)  // appears the same
to no avail.

Finally I checked my manual of the source. Actually codec means extension, ergo 
„.svg“. This line of code
$svgPictureRef:=SVG_New_embedded_image 
($svgCopyrightLayer_Ref;$interPicture;5;0;“svg“)  // appears the same
delivers what I was looking for: 4D renders SVG inside SVG perfectly well.


Keith - CDI

> On Oct 22, 2017, at 3:16 PM, Ortwin Zillgen via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> this works for me
> 
> 
> 
> 
> Regards
> O r t w i n  Z i l l g e n

**
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: Database locked in merged application

2017-12-21 Thread Keith Culotta via 4D_Tech
Re: So it looks like the data file which is wrapped up inside the application 
can’t be used

After opening the app's package, doing a "Get Info" on the contents, making 
permissions R/W, and then building the app, that message went away in the built 
application.  

I had set the DB preference to not alert when the database was in R/O mode, but 
now that I think about it, it was set for the app's DB and not for the Default 
Data folder's DB.  Might revisit that first.

Keith - CDI

> On Dec 21, 2017, at 2:47 AM, James Knight via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Can anyone help me with this?
> 
> Thanks
> 
> James
> 
> 
> Thanks to those who’ve replied so far with this.
> 
> I’m using 4D 15.5 build 15.216758 on Mac OS X 10.13.1
> 
> I think that I’ve followed the instructions for creating a default data file 
> - I have a Default Data folder next to my .4db file, and this contains the 
> default data file (Default.4dd, Default.4Dindx and Default.Match).
> 
> Having built the application, if I inspect the package contents, I see 
> Contents/Database and this contains my 4DC compiled application, with the 
> populated Default Data folder alongside it.
> 
> However, I cannot make this application run at all. It tells me that the data 
> file is locked and it’s impossible to open the database. The only way it will 
> open is if I put a data file in the same folder as the built application,
> 
> So it looks like the data file which is wrapped up inside the application 
> can’t be used, even though no write access is required.
> 
> I haven’t got as far as signing my application - I didn’t think I needed to 
> do this, as I am simply copying the application directly to individual 
> computers on the network. I usually use Remote Desktop to copy the built 
> application to all computers on the LAN.
> 
> Hope someone can help further with this.
> 
> Cheers
> 
> James Knight
> Waveney River Centre
> 
> ja...@waveneyrivercentre.co.uk 
> 
>> On 19 Dec 2017, at 23:16, Keisuke Miyako via 4D_Tech <4d_tech@lists.4d.com 
>> > wrote:
>> 
>> I don't have a solution but to better understand the situation:
>> 
>> are you actually using the v15 default.4dd system,
>> or simply placing a {name}.4dd adjacent to the compiled structure file?
>> http://doc.4d.com/4Dv15/4D/15/Default-data-file-in-merged-applications.300-2018649.en.html
>>  
>> 
>> 
>> did you code sign (and verify) your built application?
>> 
>> unlikely, but did you check if the read-only-allow property is passed on to 
>> your built application?
>> (for example, by implementing OPEN SETTINGS WINDOW)
>> 
>> http://doc.4d.com/4Dv15/4D/15.4/DatabaseData-storage-page.300-3285380.en.html
>> 
>> least but not least, always good to include the build number of 4D and the 
>> OS.
>> 
>>> 2017/12/20 7:41、James Knight via 4D_Tech <4d_tech@lists.4d.com> のメール:
>>> It’s clearly permissions related - but how can I fix it?
>> 
>> 
>> 
>> 
>> **
>> 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 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 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
**

Tip: SVG internal error Trace

2018-01-15 Thread Keith Culotta via 4D_Tech
In case I am not the last one to know...  

When an internal SVG error message pops up on the screen, the Trace button is 
disabled in the dialog, but Trace is still available to display the offending 
line of code.  You can use the option-command-click and select from the pop-up 
menu while the error dialog is being displayed to begin tracing the process 
code  ... in 16R5 at least.

Keith - CDI
**
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: File Size

2018-01-15 Thread Keith Culotta via 4D_Tech
Today I saw that somewhere around 1997 the answer to this 6÷2(1+2) changed from 
1 to 9, also because of techno-cultural influences.

Keith - CDI

> On Jan 15, 2018, at 2:10 PM, Tim Nevels via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> On Jan 15, 2018, at 2:00 PM, Wayne Stewart wrote:
> 
>> I'm trying to create a method that will return a file size as a string,
>> similar to how the Finder does.
>> 
>> Although I get "a result" it's not the "same result" as reported in the
>> Finder :(
>> 
>> It turns out that in the Finder KB are 1000 bytes, MB are 1000 KB etc.
>> 
>> I wasted a fair bit of time on this !
> 
> 
> Yes, a kilobyte is 1,024 bytes and it used to be if you saw “K” that was a 
> kilobyte. I guess now the standard is a “K” is 1,000. I remember learning 
> this in college back in the 80’s. And a MB was 1,024 * 1,024 back then too.
> 
> Didn’t this also have something to do with how hard drive manufacturers were 
> reporting drive sizes. People thought they were getting ripped off for some 
> bytes when it was really just a terminology issue. Then Apple decided to 
> change to match what the hard drive people were doing. Does anyone else 
> remember it like this?
> 
> https://discussions.apple.com/thread/3071175
> 
> Tim
>   
> Tim Nevels 
> timnev...@mac.com 
> Innovative Solutions
> 785-749-3444
> 
> 
> **
> 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 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: Anyone been using R5 for real work?

2018-01-19 Thread Keith Culotta via 4D_Tech
R5 has been very solid to the extent I've used it.  I'm using dot notation and 
the new FORM object to get a floating window to communicate with instances of a 
subform containing a SVG picture.  The FORM object is very convenient.  I 
haven't tried to access tables.

Keith - CDI

> On Jan 19, 2018, at 10:53 AM, Jeffrey Kain via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Just wondering how it's going... there's so much new stuff it's tempting to 
> jump on the "R" train. But 16.3 is so extremely solid...


**
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: ADA Compliance ???

2018-01-24 Thread Keith Culotta via 4D_Tech
No direct experience, but a couple of resources.

Government rules: 
https://www.access-board.gov/guidelines-and-standards/communications-and-it/about-the-ict-refresh/final-regulatory-impact-analysis#_Toc471376906

DOJ Quick Check: https://www.justice.gov/crt/software-accessibility-checklist

Real world example: https://www.dailymotion.com/video/x2zy0nd

Keith - CDI

> On Jan 24, 2018, at 10:04 AM, Randy Engle via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Every week, or so, one of our customers comes up with something that they 
> do/need that I've never heard of before.
> 
> This weeks winner is a major city in Southern California.  (no names 
> mentioned...)
> 
> They want to know at  what "Level" our web product is ADA compliant.
> 
> I'm aware of ADA compliance when it comes to physical spaces, ramps, 
> bathrooms, etc., but not for software (web pages, specifically)
> 
> Anybody had the pleasure of handling this one yet?
> Know of any resources?
> 
> Thanks
> 
> Randy Engle, Director
> XC2 Software LLC – XC2LIVE!
> 
> 
> **
> 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 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: ImageCaptureCore - to Variable?

2018-02-01 Thread Keith Culotta via 4D_Tech
maybe another time, if I find where it starts.

> On Jan 31, 2018, at 6:46 PM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> but you receive binary RGB data in chunks,
> and you have to build your own JPG, PNG, TIFF, whatever, by code.
> 
> do you really want to go down that path?

**
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
**

ImageCaptureCore - to Variable?

2018-01-31 Thread Keith Culotta via 4D_Tech
Hello,

I'm experimenting with 4d-plugin-ica and it's working.  Is it possible to avoid 
scanning to a disk file?
I tried ICA SET SCAN OPTION ($scanner;Scanner transfer mode;String(Scanner 
transfer mode data))
and can see a BLOB is being built.

Using BLOB TO PICTURE  and BLOB TO VARIABLE (with a picture variable) do not 
result in an image.

Is an image available somewhere using this option?

Thanks,

Keith - CDI
**
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
**

Wayback machine: 6.5 Client lost a form

2018-02-05 Thread Keith Culotta via 4D_Tech
Hello,

A customer gets a "Form not found" error when trying to access a Table form on 
one of their PCs.
All other PCs can view the form.
No user logged into this one PC can view the form.
It's a virtual Windows XP environment when accessing 4D.

Does anyone remember where the temp folder for the 4D Client 6.5 version is 
kept?  
I'm thinking a resource file is damaged.

Thanks,

Keith - CDI
**
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: Barber Pole Progress Indicator for Foundation

2018-02-21 Thread Keith Culotta via 4D_Tech
If you don't mind using the Progress component, this would work:
 
http://livedoc.4d.com/4D-Progress-16-R6/Progress-bars/Progress-SET-PROGRESS.301-3712491.en.html

Keith - CDI

> On Feb 21, 2018, at 4:57 PM, Douglas von Roeder via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> I'm working with a Foundation-based application that's running in an all
> Mac environment and I want to display a barber pole progress indicator.
> 
> Foundation does have scads of features but, unfortunately, a barber pole
> style progress indicator isn't one of them.
> 
> Has anyone created one that I could use or, lacking that, anyone know where
> that's available?
> 
> --
> Douglas von Roeder
> 949-336-2902
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Delivery problem

2018-02-21 Thread Keith Culotta via 4D_Tech
So I build a quick sample app for a client and send a zipped copy.  He writes 
back and says his Mac won't open it because it’s from an undignified developer

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

Re: Delivery problem

2018-02-21 Thread Keith Culotta via 4D_Tech
That works.  Dignity restored.

Keith - CDI

> On Feb 21, 2018, at 12:11 PM, Timothy Penner via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
>> So I build a quick sample app for a client and send a zipped copy.  He 
>> writes back and says his Mac won't open it because it’s from an undignified 
>> developer
> 
> Tech Tip: Changes to Gatekeeper in Sierra when running downloaded applications
> http://kb.4d.com/assetid=77688
> 
> TL/DR: Become an Apple Developer (pay $99/year) to get an App Signing 
> Certificate, sign the app using this certificate, create a DMG, place app on 
> dmg, sign the dmg, send the customer the dmg.
> 
> -Tim
> 
> 
> 
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: Memory leak with dynamic variables in list boxes?

2018-07-27 Thread Keith Culotta via 4D_Tech
Would something like this help...

ARRAY REAL(aFoot;0)  // Use this array to give each column a unique REAL footer 
var

 in the loop 
Append To Array(aFoot;0)
LISTBOX INSERT 
COLUMN(*;$lbName;$i;"C"+$iStr;$nilPtr;"H"+$iStr;$nilPtr;"Foot"+$iStr;aFoot{Size 
of array(aFoot)}) 
 in the loop 

Keith - CDI

> On Jul 27, 2018, at 10:35 AM, mferguson--- via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi,
> 
> Thank you for all your responses. I just need to get past this final road 
> block.
> 
> I have gotten dynamic variables to work on headers and footers with the 
> exception of the LISTBOX SET FOOTER CALCULATION.
> 
> Miyako pointed out that the default type for footers is text, and to change 
> it I have to use VARIABLE TO VARIABLE.
> 
> The documentation, in connection with retyping dynamic variables, describes 
> this as 
> if(form event=on load)
> 
> c_text($Init)
> $Ptr_Object:=OBJECT GET POINTER(Object named;”Comments”)
> $init:=””
> VARIABLE TO VARIABLE($Ptr_Object->; init)
> 
> end if
> 
> The documentation also says the dynamic variable can be subsequently be 
> referred to in the manner
> 
> $p:=object get pointer(object named;”start”)
> $p:=?12:00:00?
> 
> I am using an EMPTY current selection listbox on load, footers enabled, with 
> columns being assigned in a loop for the number of columns, using INSERT 
> LISTBOX COLUMN. The example above seems to presume that the column is already 
> assigned in the listbox, but modeling after the above within the loop:
> if(column = the one I want a footer total for)
> c_longint($Init)
> $Ptr_Object:=OBJECT GET POINTER(Object named;”Invoice Amount”)
> $init:=””
> VARIABLE TO VARIABLE($Ptr_Object->; init)
> 
> end if
> 
> This is in client server mode.
> 
> Please verify that the object should be the column name used in INSERT 
> LISTBOX COLUMN, or alternatively, the footer column name.
> 
> I have tried this with getting a pointer to the footer column name used in 
> INSERT LISTBOX COLUMN, and using the dynamically assigned footer name 
> retrieved with GET LISTBOX ARRAYS.
> 
> I get error 54.
> 
> Once I get by this problem I should be able to use
> 
> LISTBOX SET FOOTER CALCULATION(*;XXX;listbox footer sum)
> 
> where XXX is either the footer object name submitted with INSERT LISTBOX 
> COLUMN, or the dynamic footer name retrieved with GET LISTBOX ARRAYS. I don’t 
> know which.
> 
> Thanks,
> 
> Michael
> 
> 
> 
>> On Jul 26, 2018, at 4:30 PM, Keisuke Miyako via 4D_Tech 
>> <4d_tech@lists.4d.com> wrote:
>> 
>> dynamic variables create for footers are typed as text by default.
>> 
>> you need to change it to numeric by replacing it using VARIABLE TO VARIABLE.
>> 
>> 2018/07/27 7:34、mferguson--- via 4D_Tech 
>> <4d_tech@lists.4d.com>のメール:
>> Seems like it should be simple, but I’m missing something.
>> 
>> 
>> 
>> **
>> 4D Internet Users Group (4D iNUG)
>> Archive:  http://lists.4d.com/archives.html
>> Options: https://lists.4d.com/mailman/options/4d_tech
>> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
>> **
> 
> **
> 4D Internet Users Group (4D iNUG)
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: Anyone using FTP_Receive under 64-bit?

2018-08-15 Thread Keith Culotta via 4D_Tech
FTP_Receive used to show the progress of the download.  That is no longer 
available, and I think throws an error if it's used.

I think the cURL plugin shows the progress, or allows you to figure it out 
somehow.

Keith - CDI

> On Aug 15, 2018, at 4:10 PM, Allan Udy via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi all,
> 
> I'm having a problem with Internet Commands FTP_Receive under 64-bit -- the 
> command immediately returns a -2201 error and nothing is received (on Mac and 
> Windows).
> 
> Using 4D v16R6 32-bit, the code works fine and files can be received. Same 
> code using v16R6 64-bit fails.  The 64-bit version will successfully log in 
> to the FTP site, and will retrieve a directory listing etc, but will not 
> allow file download.
> 
> I've checked that the correct IC bundle is installed.  Have also tested with 
> v16rR4 and v16.3. Have tested with two different FTP sites. Same issue.
> 
> Anyone else seeing this?  Anyone successfully using FTP_Receive under 64-bit.
> 
> What are the advantages/disadvantages of re-writing the code to use Keisuke 
> Miyako’s cURL FTP plugin?
> 
> 
> Cheers,
> Allan Udy
> 
> Golden Micro Solutions Ltd, Blenheim, New Zealand
> http://www.golden.co.nz
> 
> **
> 4D Internet Users Group (4D iNUG)
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: V17 and Edit menu (Copy)

2018-08-09 Thread Keith Culotta via 4D_Tech
I just had an instance (v17 Mac) where "command C" and "command V" to copy and 
paste some form objects between two forms had no effect.  It worked when I used 
the menus with the mouse.  That also seems to have cured the problem.  This 
happens on such rare occasions that I've been blaming my keyboard (which hasn't 
had this problem in other apps).

Keith - CDI

> On Aug 9, 2018, at 11:58 AM, Jeffrey Kain via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Is anyone else experiencing a problem in 4D v17 on Mac where the Copy menu 
> item in the Edit menu becomes disabled permanently until a restart of 4D?
> 
> **
> 4D Internet Users Group (4D iNUG)
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: SVG IDs in Listbox Cells

2018-08-14 Thread Keith Culotta via 4D_Tech
Can you then

$svg:=SVG_Open_picture (agRM_Graph{1})
$ref:=SVG_Find_ID ($svg;"Value1")
SVG_SET_ATTRIBUTES ($ref;"fill-opacity";"1";"stroke-opacity";"1")
agRM_Graph{1}:=SVG_Export_to_picture ($svg)

?


Keith - CDI

> On Aug 14, 2018, at 9:40 AM, Cannon Smith via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Thanks for everyone who commented on this.
> 
> It is actually _almost_ doable. With some math it is possible to figure out 
> where the cursor is over a particular picture cell and "SVG Find element ID 
> by coordinates” works in this context. For example:
> 
>   $tID:=SVG Find element ID by coordinates(agRM_Graph{1};$x;$y)
> 
> returns the ID the mouse is over.
> 
> The part that does not work is the command SVG SET ATTRIBUTE. For example:
> 
>   SVG SET 
> ATTRIBUTE(agRM_Graph{1};"Value1";"fill-opacity";"1";"stroke-opacity";"1”)
> 
> does not work. This kills an idea I was _really_ hoping would work. Sigh.
> 
> I find it interesting that SVG Find element ID by coordinates works and SVG 
> SET ATTRIBUTE doesn’t work in this context. It seems logical to me that 
> either they would both work or neither would work in this context.
> 
> --
> Cannon.Smith
> Synergy Farm Solutions Inc.
> Hill Spring, AB Canada
> 403-626-3236
> 
> 
> 
> 
>> On Aug 13, 2018, at 4:14 PM, Keisuke Miyako via 4D_Tech 
>> <4d_tech@lists.4d.com> wrote:
>> 
>> moreover, commands such as SVG GET/SET ATTRIBUTES,
>> which are closely associated with ID based SVG manipulation,
>> requires an object name or variable,
>> but a cell inside a listbox are not accessible that way.
> 
> **
> 4D Internet Users Group (4D iNUG)
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: How to show subtotals in a list box

2018-08-20 Thread Keith Culotta via 4D_Tech
Starting at the top and working down an array based listbox:

A column could be "manually" subtotaled by inserting rows at the break points 
of a sorted column.  These rows would need a marker in an invisible column so 
they could be deleted in the next sort or selection change.

Or add a numeric column to the right of the numeric column to be subtotaled, 
and put each subtotal in the last break line. As you go down the list, a zero 
or a subtotal amount could be put in each Nth cell.

Keith - CDI

> On Aug 20, 2018, at 4:05 PM, Dani Beaubien via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> My situation is that I have a list box that has 1 level of break rows and I 
> have been asked to add a subtotal of the rows within each break level.
> 
> I am looking for suggestions on how to approach this?
> 
> Thanks in advance.
> 
> Dani Beaubien


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

Re: SVG - Simple Example

2018-08-24 Thread Keith Culotta via 4D_Tech
A basic approach could be like this:

---
C_TEXT($svg;$ref)
C_PICTURE($pict)

$svg:=SVG_New // this new svg document is referred to as "$svg"
$ref:=SVG_New_rect ($svg;10;10;100;100)  // refer to this new rectangle in 
"$svg" as "$ref"
SVG_SET_FILL_BRUSH ($ref;"red")
$pict:=SVG_Export_to_picture ($svg)  // get it to a picture variable
SVG_CLEAR ($svg)

SET PICTURE TO PASTEBOARD($pict)
INVOKE ACTION(ak show clipboard)
---

Keith - CDI

> On Aug 24, 2018, at 10:32 AM, Ed Glassgow via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Good morning all,
> 
> Can someone direct me to very simple SVG example?
> 
> Thanks!
> 
> Ed Glassgow
> glass...@pcisys.net
> 
> 
> 
> **
> 4D Internet Users Group (4D iNUG)
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Line count - compiled component vs interpreted

2018-08-24 Thread Keith Culotta via 4D_Tech
Hello,

A compiled component of mine is throwing an error message from within a host 
database.
It is correct to display the error message under its current conditions.
However, the error is reported on line 35 of the offending method, but the 
method has only 25 lines, blank lines and all.

Any ideas as to why the line count might display like this?

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

Re: Line count - compiled component vs interpreted

2018-08-24 Thread Keith Culotta via 4D_Tech
Thanks!  That makes sense.

Keith - CDI

> On Aug 24, 2018, at 3:12 PM, lists via 4D_Tech <4d_tech@lists.4d.com> wrote:
> 
> Hi,
> 
> From what I was able to decipher in similar instances, it seems to be the 
> line number in the method that calls the component method.
> 
> It's very (un)helpful and it's even worse if you do have more lines in the 
> component method, as you can spend a lot of time trying to debug something 
> like $i:=1, when in fact it has nothing to do with that line...
> 
> Cheers,
> 
> Lahav 
> 
> -Original Message-
> From: 4D_Tech <4d_tech-boun...@lists.4d.com> On Behalf Of Keith Culotta via 
> 4D_Tech
> Sent: Friday, August 24, 2018 11:10 AM
> To: 4D iNug Technical <4d_tech@lists.4d.com>
> Cc: Keith Culotta 
> Subject: Line count - compiled component vs interpreted
> 
> Hello,
> 
> A compiled component of mine is throwing an error message from within a host 
> database.
> It is correct to display the error message under its current conditions.
> However, the error is reported on line 35 of the offending method, but the 
> method has only 25 lines, blank lines and all.
> 
> Any ideas as to why the line count might display like this?
> 
> Thanks,
> Keith - CDI
> **
> 4D Internet Users Group (4D iNUG)
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **
> **
> 4D Internet Users Group (4D iNUG)
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: New record numbering system and CALL WORKER

2018-08-27 Thread Keith Culotta via 4D_Tech
Does the speed penalty apply to reading values from Storage, or just to writing 
values to Storage?

Thanks,
Keith - CDI

> On Aug 26, 2018, at 8:57 AM, John DeSoi via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Storage is the best option for interprocess communications if you want to use 
> preemptive processes.

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

Re: Sending Text Messages From 4D

2018-08-22 Thread Keith Culotta via 4D_Tech
This has been working for us, but we only use it occasionally. 

$err:=SMTP_QuickSend 
($Host;$FromAddress;$msgTo;$subject;$message;0;25;$vAuthUserName;$sequence) 
where $msgTo is a text/phone# like 555...@vtext.com

Keith - CDI

> On Aug 22, 2018, at 9:04 AM, Tim Nevels via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I have a client that has asked me to add the option to send text messages to 
> cell phones from 4D. I know this is possible via some websites or web 
> services for a fee. Has anyone done this and can recommend a web service that 
> you were able to use from 4D to do this?
> 
> Tim
> 
> *
> Tim Nevels
> Innovative Solutions
> 785-749-3444
> timnev...@mac.com
> *
> 
> **
> 4D Internet Users Group (4D iNUG)
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: Who’s got the gazpacho?

2018-07-19 Thread Keith Culotta via 4D_Tech
Sorry, looking for the Paula Deen list.

Keith - CDI

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

Re: Listbox Type?

2018-07-24 Thread Keith Culotta via 4D_Tech
Maybe this command : 
http://doc.4d.com/4Dv17/4D/17/LISTBOX-GET-TABLE-SOURCE.301-3730224.en.html

Keith - CDI



On Jul 24, 2018, at 11:56 AM, Bob Miller via 4D_Tech <4d_tech@lists.4d.com> 
wrote:

Hi Everyone,

Is there a way to tell through the language whether a listbox is an "Array 
Type" listbox or a "Field Type" listbox?

I have a listbox that is a "Field Type" listbox, but all it contains is 
formulas that point to fields, so I'm having fits trying to find out how 
to identify the type through code...


Thanks,


Bob Miller
phone 781-939-4726 · mobile 781-316-4864 

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

Re: Drag n drop between processes

2018-07-10 Thread Keith Culotta via 4D_Tech
Hope this is on topic...

During : (Form event=On Begin Drag Over) in the source list, I put the 
information about the item being dragged on the Pasteboard
LOAD RECORD([Item])
C_OBJECT($obj)
OB SET($obj;"$rec";Record number([Item]))
OB SET($obj;"$proc";Current process)
OB SET($obj;"$source";"LocEdit")
$text:=JSON Stringify($obj)
  // set your data type
SET TEXT TO PASTEBOARD($text)


Later on in the destination process, mouse button just up from On Begin Drag 
Over, the information was read back out...
: (Form event=On Drop)
  // check here to see if it's your data type on the 
clipboard
C_OBJECT($obj)
$obj:=JSON Parse(Get text from pasteboard)
$rec:=OB Get($obj;"$rec";Is longint)
$proc:=OB Get($obj;"$proc";Is longint)
$source:=OB Get($obj;"$source";Is text)

If ($proc#Current process) & ($source="LocEdit")...

Keith - CDI

> On Jul 10, 2018, at 12:43 PM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> 
> Context: dragging 1 (or more) records/rows from a selection listbox to 
> another form in another process. 4D v13.
> 
> I know, and can see by using GET PASTEBOARD DATA TYPE, and GET 
> PASTEBOARD DATA that if I drag a line/record from a selection listbox 
> to another process there is "stuff" put on the pasteboard.
> 
> (native data types)
> com.4d.private.pid  -- 4bytes
> com.4d.private.form.object  -- 510bytes
> 
> what I do not know, is how do I use the data on the pasteboard.
> Can someone help?
> 
> Thanks
> Chip
> ---
> Gas is for washing parts
> Alcohol is for drinkin'
> Nitromethane is for racing 
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: UUID version 4 needed

2018-07-06 Thread Keith Culotta via 4D_Tech
$a:=Substring(Generate UUID;13;1)
ALERT($a)

Mac 16.225201 64bit - returns a "4" (client/server)
Mac 17.224978 64bit - returns a "4"

Char 15 is random.

v16 tested on Macs of various ages and 10.12, 10.13.

Keith - CDI

> On Jul 6, 2018, at 10:33 AM, Piotr Chabot Stadhouders via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> Hi,
> 
> The Win32API command sys_GetGUID does return a version 4 UUID
> 
> So on Windows :
> Win32API generates a version 4 UUID --> 13th hex digit is a 4
> 4D v16 does not generate a version 4 UUID --> 15th hex digit is a 4

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

Re: New way to get into Design Mode - v16?

2018-07-09 Thread Keith Culotta via 4D_Tech
Where the menu was empty before, the standard action "design" could be added to 
it.

Keith - CDI

> On Jul 9, 2018, at 10:54 AM, Bob Miller via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I'm digging through the docs - is there a new way to get into the Design 
> mode in v16?
> 
> Up to v15, choosing a menu item with no associated method and no standard 
> action would do the job, but this doesn't work in v16.
> 
> I can Shift+Alt+Right Click and choose 'Go to Design Mode' - but clearly I 
> missed something in the docs...
> 
> Thanks,
> 
> 
> Bob Miller
> Chomerics, a division of Parker Hannifin Corporation
> 

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

Re: Quitting without IP var?

2018-07-03 Thread Keith Culotta via 4D_Tech
If using v17, shared Storage solves the problem.  It takes the place of IP vars.
http://livedoc.4d.com/4D-Language-Reference-17/Objects-Language/Storage.301-3730714.en.html

  // 
  // Method: setQuit
  // INPUT1: Boolean - Quit? 
  // 
C_BOOLEAN($1)

Use (Storage)
Storage.base:=New shared object
Use (Storage.base)
Storage.base.FQUIT:=$1
End use 
End use 


  // 
  // Elsewhere...
  // 
Repeat 
  // do deamon stuff
Until (Storage.base.FQUIT)

Keith - CDI



> On Jul 3, 2018, at 2:27 PM, Dani Beaubien via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Have you looked at the 4d command "Process aborted”?
> 
> 
>> On Jul 3, 2018, at 1:18 PM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
>> wrote:
>> 
>> My Question is:
>> How are you signaling to your stored procedures (Deamons) that the user 
>> is existing, without using an IP var?
>> 
>> Currently I am using an IP Var which is set in the Quit method.
>> This IP var is referenced in all of my 'Deamons' in a repeat loop
>> 
>> Repeat
>> // do deamon stuff
>> until (<>f_Quit)
>> 
>> With this IP var sitting in all my deamons - this makes all of that 
>> code thread unsafe.
>> I would like to re-work this code to b more multiprocessor friendly.
>> 
>> Thanks
>> Chip
>> 
>> ---
>> Gas is for washing parts
>> Alcohol is for drinkin'
>> Nitromethane is for racing 
>> **
>> 4D Internet Users Group (4D iNUG)
>> FAQ:  http://lists.4d.com/faqnug.html
>> Archive:  http://lists.4d.com/archives.html
>> Options: https://lists.4d.com/mailman/options/4d_tech
>> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
>> **
> 
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

  1   2   >