Re: Experience with FTSY Sync Code//Speed up Sync Code

2017-04-24 Thread Douglas von Roeder via 4D_Tech
On Mon, Apr 24, 2017 at 8:30 PM, Wayne Stewart via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> Mine performs similarly slowly (5-6 records per second) but it sends only
> one record per web service call.
>
> A smarter and less lazy person than me would bunch a few records into the
> one call, use compression etc.  One day I might implement this but you
> never can tell, I think beer is more interesting.
>

As you're pointing out, your code is not optimized yet you're getting twice
as many records. Something seems amiss.

The payload is sent in a single web service call with data from multiple
records being packed into the BLOB sequentially. It's complex code,
elegantly written.

Some payloads are pretty good sized but I don't recall if compression is
used. The transmission time is very reasonable - everything just goes in
the crapper when it comes to unbundling. I haven't timed the decoding vs
encoding and then vs actually writing to disk. That might provide some
insight.

--
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: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Experience with FTSY Sync Code//Speed up Sync Code

2017-04-24 Thread David Adams via 4D_Tech
> The deal breaker is that the code is only updating about 3 records per
> second it can sometimes takes days for the server to catch up.

Ouch,  that is slow. I haven't followed closely...if your'e using SOAP, it
has to escape binaries to Base64...which is an absolutely hideous wire
format. If your'e trying to send a lot of binary data, base 64 is *not*
your friend. It works, but it makes your payloads just stupidly large.
Unless I'm wrong and you're getting the space back via compression. I think
that 4D added a special option for 4D:4D SOAP communications for
exactly this case.

You mentioned 4D Open. One of its strengths was using 4D's (binary) wire
format.

If you need to send binary objects in a smarter way, there are
options...but, again, I suspect I'm well off the main point 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
**

Re: Experience with FTSY Sync Code//Speed up Sync Code

2017-04-24 Thread Wayne Stewart via 4D_Tech
Mine performs similarly slowly (5-6 records per second) but it sends only
one record per web service call.

A smarter and less lazy person than me would bunch a few records into the
one call, use compression etc.  One day I might implement this but you
never can tell, I think beer is more interesting.


Regards,

Wayne


[image: --]
Wayne Stewart
[image: http://]about.me/waynestewart



On 25 April 2017 at 13:20, Douglas von Roeder via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> Jim:
>
> "I wrote similar code a long time ago, and just replaced it last year (it
> stored the metadata in the resource fork, which was going to be problematic
> soon). Exports usually contained hundreds of records of 3-4 tables of 100+
> fields, and when importing were parsed pretty much instantly.
>
> Unless the unpacking code is very very inefficient, it’s not likely to be
> the source of any noticeable slowness when compiled."
>
> Updating indexes takes some time but being able to update only 3 - 4
> records per second has got to have some other cause. If you've had positive
> experience with that approach, perhaps I need to look for some
> other factor.
>
>
> --
> Douglas von Roeder
> 949-336-2902
>
> On Mon, Apr 24, 2017 at 7:46 PM, James Crate via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
>
> > On Apr 24, 2017, at 9:25 PM, Douglas von Roeder via 4D_Tech <
> > 4d_tech@lists.4d.com> wrote:
> >
> > > Anyone here have experience with Brad Weber's "FTSY Sync" code?
> > >
> > > One aspect of the code that's challenging is that the V11+ code (the
> > "new"
> > > code) could no longer use 4D Open so the design was changed to pack
> field
> > > data into BLOB's. The BLOB's contain metadata for every field including
> > the
> > > field number, the field type, the data length, etc.
> > >
> > > When the synch records are unpacked, the metadata is used to move
> > > sequentially through the BLOB, converting each byte range back to its
> > > native 4D type using BLOB to text, BLOB to real, BLOB to longint, etc.
> >
> > [snip]
> >
> > > The underlying question is how much faster/slower would it be to
> > > encode/decode data using an alternative method?
> >
> > I wrote similar code a long time ago, and just replaced it last year (it
> > stored the metadata in the resource fork, which was going to be
> problematic
> > soon). Exports usually contained hundreds of records of 3-4 tables of
> 100+
> > fields, and when importing were parsed pretty much instantly.
> >
> > Unless the unpacking code is very very inefficient, it’s not likely to be
> > the source of any noticeable slowness when compiled.
> >
> > Jim Crate
> >
> > **
> > 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: Experience with FTSY Sync Code//Speed up Sync Code

2017-04-24 Thread Douglas von Roeder via 4D_Tech
David:

The transmission time is very manageable — these folks send in data from
very remote locations and the payload always arrives at the server. The
BLOB's are sent via web services and, IIRC, the BLOB's are pretty good
sized, some being over 100k.

The deal breaker is that the code is only updating about 3 records per
second it can sometimes takes days for the server to catch up.

--
Douglas von Roeder
949-336-2902

On Mon, Apr 24, 2017 at 7:42 PM, David Adams via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> > The current approach has got to be quite inefficient. The problem I've
> got
> > is that I can't come up with anything other than a WAG as to how much
> > faster it will be.
>
> It's been some time since I tested out size v. speed relationships in a
> similar setup. And, of course, it depends  on your hardware, network, etc.
> But, when I last tested it, the size of the download correlated pretty
> exactly with the download time. I mean end-to-end. So, the overhead on
> compression paid for itself nearly instantly. (The overhead proved to be
> small.) 30% smaller payload, 30% less time required to download it.
>
> Like you, I wasn't clear what the breakeven point was for the expense of
> compression. I couldn't find a place where compression was a bad bet.
>
> Assuming I'm on track with what you guys are talking about and
> haven't wandered off into the woods again...
> **
> 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: Experience with FTSY Sync Code//Speed up Sync Code

2017-04-24 Thread David Adams via 4D_Tech
> The current approach has got to be quite inefficient. The problem I've got
> is that I can't come up with anything other than a WAG as to how much
> faster it will be.

It's been some time since I tested out size v. speed relationships in a
similar setup. And, of course, it depends  on your hardware, network, etc.
But, when I last tested it, the size of the download correlated pretty
exactly with the download time. I mean end-to-end. So, the overhead on
compression paid for itself nearly instantly. (The overhead proved to be
small.) 30% smaller payload, 30% less time required to download it.

Like you, I wasn't clear what the breakeven point was for the expense of
compression. I couldn't find a place where compression was a bad bet.

Assuming I'm on track with what you guys are talking about and
haven't wandered off into the woods again...
**
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: Experience with FTSY Sync Code//Speed up Sync Code

2017-04-24 Thread Douglas von Roeder via 4D_Tech
Ron:

Oh yes, big fan of API Pack! I've used B2R and there's also JSON and a few
other approaches.

The issue I need to resolve is how much, if at all, will a different
encoding/deciding approach impact performance?

The current approach has got to be quite inefficient. The problem I've got
is that I can't come up with anything other than a WAG as to how much
faster it will be.

On Mon, Apr 24, 2017 at 7:06 PM Ronald Rosell via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> Doug,
>
> I may be misunderstanding your application, but wouldn’t API Pack’s Record
> to Blob and Blob to Record functions work?  (It’s from pluggers.nl)
>
> We use that, first compressing then converting the Blob that contains the
> entire record to text before sending it as a variable via an HTTP Post.
> So, on the sending side the pseudocode is:
>
> $err:=API Record to Blob ($tablenum;$record)
> COMPRESS BLOB ($record)
> BASE64 ENCODE ($record)
> $varToSend:= BLOB to text ($record;UTF8 C string)
>
> On the other end, the variable is converted back to a Blob and then we use
> Blob to Record to create a 4D record with all of the fields.
>
> TEXT TO BLOB($record;$recblob;UTF8 C string)
> BASE64 DECODE($recblob)
> EXPAND BLOB($recblob)
>  // do some stuff here using other passed variables to
> identify/load the table and record, or create a new record, per below, and
> then
> $err:=API Blob To Record ($tablenum;$recblob)
>
> Along with the variable containing the record data, the HTTP post contains
> a few other variables including the table number, the key index field and
> the key index value, so the receiving database knows what table it’s
> updating and whether it’s revising an existing record or adding a new one.
> Using UUID’s instead of sequence numbers as the key field takes care of any
> issue of duplication between locally-generated records and received records
> from a remote system. Other than that we don’t need metadata for each
> field, as Record to Blob and Blob to Record handle that.
>
> Hope this helps!
>
> Ron Rosell
>
>
> > On Apr 24, 2017, at 6:42 PM, Wayne Stewart via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
> >
> > Doug,
> >
> > I do something similar.
> >
> > I use Web services (lazy option).  The sync records are in JSON (v13 so I
> > used NTK later versions use C_OBJECT commands) for the "small" fields and
> > pack big fields into a Blob.
> >
> > I can send code if you're interested.
> >
> >
> >
> > Regards,
> >
> > Wayne
> >
> >
> > [image: --]
> > Wayne Stewart
> > [image: http://]about.me/waynestewart
> > 
> >
> >
> > On 25 April 2017 at 11:25, Douglas von Roeder via 4D_Tech <
> > 4d_tech@lists.4d.com> wrote:
> >
> >> Anyone here have experience with Brad Weber's "FTSY Sync" code?
> >>
> >> The code in question was written almost 20 years ago to synchronize
> records
> >> between standalones and a client server system, and I know that is was
> used
> >> by a couple of companies inclduing Husqvarna in North Carolina.
> >>
> >> One aspect of the code that's challenging is that the V11+ code (the
> "new"
> >> code) could no longer use 4D Open so the design was changed to pack
> field
> >> data into BLOB's. The BLOB's contain metadata for every field including
> the
> >> field number, the field type, the data length, etc.
> >>
> >> When the synch records are unpacked, the metadata is used to move
> >> sequentially through the BLOB, converting each byte range back to its
> >> native 4D type using BLOB to text, BLOB to real, BLOB to longint, etc.
> >>
> >> My suspicion is that this method of encoding/decoding is contributing to
> >> poor performance* for updating records and I'm hoping that someone has
> >> resolved this issue.
> >>
> >>
> >>
> >> The underlying question is how much faster/slower would it be to
> >> encode/decode data using an alternative method?
> >>
> >> A much more simple alternative is to use a "field ID" (String(Table
> >> number;"000")+ the ID (a string)" as the tag/property name and use OB
> >> Get/Set(property;data;field type) to deal with the data.
> >>
> >> This approach would eliminate a significant amount of code, no question,
> >> but what would be the impact on performance?
> >>
> >> Comments, thoughts, and questions appreciated.
> >>
> >>
> >> *this is a V13 system so I can't use Pause index
> >>
> >> --
> >> 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: 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: 

Re: 4D Write Pro CSS

2017-04-24 Thread Keisuke Miyako via 4D_Tech
Hello,

> I want to create HTML files and open them in 4D Write Pro.

> The docs state that the .4wp format is HTML, but if I try to import even a 
> very simple HTML document, it fails.

I am sorry to say this won't work.
4D Write Pro is not a Web Browser,
it so happens that a 4D Write Pro document can be fully represented in XHTML,
but the reverse is not true.



**
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: Experience with FTSY Sync Code//Speed up Sync Code

2017-04-24 Thread Ronald Rosell via 4D_Tech
Doug,

I may be misunderstanding your application, but wouldn’t API Pack’s Record to 
Blob and Blob to Record functions work?  (It’s from pluggers.nl)

We use that, first compressing then converting the Blob that contains the 
entire record to text before sending it as a variable via an HTTP Post.  So, on 
the sending side the pseudocode is:

$err:=API Record to Blob ($tablenum;$record)
COMPRESS BLOB ($record)
BASE64 ENCODE ($record)
$varToSend:= BLOB to text ($record;UTF8 C string)

On the other end, the variable is converted back to a Blob and then we use Blob 
to Record to create a 4D record with all of the fields.  

TEXT TO BLOB($record;$recblob;UTF8 C string)
BASE64 DECODE($recblob)
EXPAND BLOB($recblob)
 // do some stuff here using other passed variables to identify/load 
the table and record, or create a new record, per below, and then
$err:=API Blob To Record ($tablenum;$recblob)

Along with the variable containing the record data, the HTTP post contains a 
few other variables including the table number, the key index field and the key 
index value, so the receiving database knows what table it’s updating and 
whether it’s revising an existing record or adding a new one.  Using UUID’s 
instead of sequence numbers as the key field takes care of any issue of 
duplication between locally-generated records and received records from a 
remote system. Other than that we don’t need metadata for each field, as Record 
to Blob and Blob to Record handle that.

Hope this helps!

Ron Rosell


> On Apr 24, 2017, at 6:42 PM, Wayne Stewart via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Doug,
> 
> I do something similar.
> 
> I use Web services (lazy option).  The sync records are in JSON (v13 so I
> used NTK later versions use C_OBJECT commands) for the "small" fields and
> pack big fields into a Blob.
> 
> I can send code if you're interested.
> 
> 
> 
> Regards,
> 
> Wayne
> 
> 
> [image: --]
> Wayne Stewart
> [image: http://]about.me/waynestewart
> 
> 
> 
> On 25 April 2017 at 11:25, Douglas von Roeder via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
> 
>> Anyone here have experience with Brad Weber's "FTSY Sync" code?
>> 
>> The code in question was written almost 20 years ago to synchronize records
>> between standalones and a client server system, and I know that is was used
>> by a couple of companies inclduing Husqvarna in North Carolina.
>> 
>> One aspect of the code that's challenging is that the V11+ code (the "new"
>> code) could no longer use 4D Open so the design was changed to pack field
>> data into BLOB's. The BLOB's contain metadata for every field including the
>> field number, the field type, the data length, etc.
>> 
>> When the synch records are unpacked, the metadata is used to move
>> sequentially through the BLOB, converting each byte range back to its
>> native 4D type using BLOB to text, BLOB to real, BLOB to longint, etc.
>> 
>> My suspicion is that this method of encoding/decoding is contributing to
>> poor performance* for updating records and I'm hoping that someone has
>> resolved this issue.
>> 
>> 
>> 
>> The underlying question is how much faster/slower would it be to
>> encode/decode data using an alternative method?
>> 
>> A much more simple alternative is to use a "field ID" (String(Table
>> number;"000")+ the ID (a string)" as the tag/property name and use OB
>> Get/Set(property;data;field type) to deal with the data.
>> 
>> This approach would eliminate a significant amount of code, no question,
>> but what would be the impact on performance?
>> 
>> Comments, thoughts, and questions appreciated.
>> 
>> 
>> *this is a V13 system so I can't use Pause index
>> 
>> --
>> 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: 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
> **

__

Ron Rosell
President
StreamLMS

301-3537 Oak Street
Vancouver, BC V6H 2M1
Canada

Direct phone (all numbers reach me)
Vancouver: (+1) (604) 628-1933  |  Seattle: (+1) (425) 956-3570  |  Palm Beach: 
(+1) (561) 351-6210 
email: r...@streamlms.com  |  fax: (+1) (815) 301-9058  |  Skype: ronrosell

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: 

Re: Experience with FTSY Sync Code//Speed up Sync Code

2017-04-24 Thread Wayne Stewart via 4D_Tech
Doug,

I do something similar.

I use Web services (lazy option).  The sync records are in JSON (v13 so I
used NTK later versions use C_OBJECT commands) for the "small" fields and
pack big fields into a Blob.

I can send code if you're interested.



Regards,

Wayne


[image: --]
Wayne Stewart
[image: http://]about.me/waynestewart



On 25 April 2017 at 11:25, Douglas von Roeder via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> Anyone here have experience with Brad Weber's "FTSY Sync" code?
>
> The code in question was written almost 20 years ago to synchronize records
> between standalones and a client server system, and I know that is was used
> by a couple of companies inclduing Husqvarna in North Carolina.
>
> One aspect of the code that's challenging is that the V11+ code (the "new"
> code) could no longer use 4D Open so the design was changed to pack field
> data into BLOB's. The BLOB's contain metadata for every field including the
> field number, the field type, the data length, etc.
>
> When the synch records are unpacked, the metadata is used to move
> sequentially through the BLOB, converting each byte range back to its
> native 4D type using BLOB to text, BLOB to real, BLOB to longint, etc.
>
> My suspicion is that this method of encoding/decoding is contributing to
> poor performance* for updating records and I'm hoping that someone has
> resolved this issue.
>
>
>
> The underlying question is how much faster/slower would it be to
> encode/decode data using an alternative method?
>
> A much more simple alternative is to use a "field ID" (String(Table
> number;"000")+ the ID (a string)" as the tag/property name and use OB
> Get/Set(property;data;field type) to deal with the data.
>
> This approach would eliminate a significant amount of code, no question,
> but what would be the impact on performance?
>
> Comments, thoughts, and questions appreciated.
>
>
> *this is a V13 system so I can't use Pause index
>
> --
> 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: 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: Getting component to update

2017-04-24 Thread Chip Scheide via 4D_Tech
Thanks both Peter and Garri

Apparently, I copied, rather aliased the component into the test 
host

I am locating the component in the package of the test host. so it is 
only available to the test host.

The testing host is an empty database with no tables and only one 
method, strangely enough named "test"
:)

Thanks again
Chip

On Mon, 24 Apr 2017 16:50:35 -0400, Chip Scheide via 4D_Tech wrote:
> I have a test host database
> and a nascant matrix database (component)
> 
> I can get the component to load.
> I can not get it to update...
> 
> In the components folder of the host is an alias to the actual component
> - I can see the 1 method I am sharing
> - I can run it
> I made a change to the component code (a second copy of 4D on the same 
> machine), I opened another method to publication.
> - I saved the change
> - I went to the runtime environment
> (in the component)
> 
> I re-opened the host
> - The component shows up
> - the component does NOT show the new method
> - I have quit the component
> - I quit the host
> - I re-opened the host, component, but no noes method
> 
> how do I get the component update(s) to appear in the host?
> 
> 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
> **
---
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: Getting component to update

2017-04-24 Thread Peter Jakobsson via 4D_Tech
On 24 Apr 2017, at 22:50, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> wrote:

>  I opened another method to publication.

Hi Chip

When you made the change the first time, was the host structure still open ?

TRY:

 • open the component structure only
 • un-publish the method
 • re-publish it (click ‘Shared by components and host database’)
 • use an alternative function to check the “ Shared by components and host 
database” property (e.g. if you right-clicked in the method list the first time 
to access the property editor, then do the checking from the open method via 
“METHOD —> Method Properties…” (in menu bar)
 • once you’re sure it’s published, check it’s not invisible
 • go back to the host and check it’s not masked in the host by a method of the 
same name

If you’ve done all that I can’t think for the life of me why you’re not seeing 
it other than your alias is simply pointing to the wrong component structure.

h.t.h.

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

Re: Getting component to update

2017-04-24 Thread Garri Ogata via 4D_Tech
Hi Chip,


Is it possible you have the component in multiple places?


Heres from the manuals.  Not sure if this is your issue though.


Location of PlugIns and Components folder

You can put the PlugIns and Components folders in two different places:

  *   At the level of the 4D executable application, i.e.:
 *   Under Windows: next to the .exe file
 *   Under Mac OS: at the first level of the Contents folder inside the 
application package.
In this case, the plug-ins and components are available in every database 
opened by this application.

  *   At the same level as the database structure file.
In this case, the plug-ins and components are only available in this particular 
database.

The choice of location depends on how you want to use the plug-in or component.

If the same plug-in or component is placed in both locations, 4D will only load 
the one located next to the structure. In an application that is compiled and 
merged using 4D Volume Desktop, if there are several instances of the same 
plug-in or component present, this will prevent the application from opening.



Garri Ogata


From: 4D_Tech <4d_tech-boun...@lists.4d.com> on behalf of Chip Scheide via 
4D_Tech <4d_tech@lists.4d.com>
Sent: Monday, April 24, 2017 8:50 PM
To: 4D iNug Technical
Cc: Chip Scheide
Subject: Getting component to update

I have a test host database
and a nascant matrix database (component)

I can get the component to load.
I can not get it to update...

In the components folder of the host is an alias to the actual component
- I can see the 1 method I am sharing
- I can run it
I made a change to the component code (a second copy of 4D on the same
machine), I opened another method to publication.
- I saved the change
- I went to the runtime environment
(in the component)

I re-opened the host
- The component shows up
- the component does NOT show the new method
- I have quit the component
- I quit the host
- I re-opened the host, component, but no noes method

how do I get the component update(s) to appear in the host?

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
lists.4d.com
lists.4d.com
Information about the 4D Tech Mailing List <4D_Tech@lists.4D.com>, 4D Biz 
Mailing List <4d_...@lists.4d.com>, and 4D Pub Mailing List 
<4d_...@lists.4d.com ...



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

Getting component to update

2017-04-24 Thread Chip Scheide via 4D_Tech
I have a test host database
and a nascant matrix database (component)

I can get the component to load.
I can not get it to update...

In the components folder of the host is an alias to the actual component
- I can see the 1 method I am sharing
- I can run it
I made a change to the component code (a second copy of 4D on the same 
machine), I opened another method to publication.
- I saved the change
- I went to the runtime environment
(in the component)

I re-opened the host
- The component shows up
- the component does NOT show the new method
- I have quit the component
- I quit the host
- I re-opened the host, component, but no noes method

how do I get the component update(s) to appear in the host?

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

Re: Why does 4D have uppercase UUIDs?

2017-04-24 Thread Kirk Brooks via 4D_Tech
Tim,

On Mon, Apr 24, 2017 at 12:14 PM, Tim Nevels via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> I’m curious why you want to “read” a UUID? I can’t read one and remember
> it with or without lowercase characters. It’s just too long.
>
​Well, we all seem to have our favorite little data fetishes...

My use of UUIDs is primarily for primary keys. And in those situations
> where I need to do some debugging
> ​...
>
​Me too. And I couldn't remember one to save. But sometimes I look at an ID
field in record A then glance over to something else to verify things
happened the way I wanted them to. And in that instant I'm really looking
at the first or last few characters. Lowercase chars mixed with numbers
have more distinctive patterns than when it's all uppercase. ​

-- 
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: Why does 4D have uppercase UUIDs?

2017-04-24 Thread Tim Nevels via 4D_Tech
On Apr 24, 2017, at 11:37 AM, Kirk Brooks wrote:

> I was looking up something else yesterday and came across some comments and
> directions regarding UUIDs and saying that they should always be lowercase.
> But this isn't a hard rule, apparently. And 4D prefers to uppercase them -
> which I find harder to read.

I’m curious why you want to “read” a UUID? I can’t read one and remember it 
with or without lowercase characters. It’s just too long.

My use of UUIDs is primarily for primary keys. And in those situations where I 
need to do some debugging and have to query on a UUID to find something, I have 
this object method for the UUID field on an input form:

  // copy UUID to pasteboard if Mouse Enter and Shift Key down
If ((Form event=On Mouse Enter) & Shift down)
SET TEXT TO PASTEBOARD(Self->)
BEEP
End if 

Then I don’t have to read it or remember it and it is on the pasteboard ready 
for me to paste into the Query Editor.

Tim


Tim Nevels
Innovative Solutions
785-749-3444
timnev...@mac.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: Question about synching Resources folder from 4D Server

2017-04-24 Thread Tim Nevels via 4D_Tech
On Apr 24, 2017, at 2:00 PM,Kirk Brooks wrote:

> But would 4D server recognize the files changed? As I think about it I
> suppose there's no particular 4D event that would trigger is there? Or does
> 4D server have some built in process that monitors the resources folder for
> changes and broadcasts it?

I do something similar where I am modifying some files in the Resource folder. 
I have always called NOTIFY RESOURCES FOLDER MODIFICATION at the end of the  
Execute on Server method. I found that’s the only way to make all the clients 
get the updates immediately. And that’s what I wanted. 

Add the command and it work exactly like you want it to.

Tim


Tim Nevels
Innovative Solutions
785-749-3444
timnev...@mac.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: Question about synching Resources folder from 4D Server

2017-04-24 Thread Kirk Brooks via 4D_Tech
Hi Tim,
Thanks very much for picking up on this. I did look at the server guide,
which is where I saw the 2 minute lag between changes and updating. I'm
just not seeing that updating taking place when files in the Resources
folder are changed manually.

This may be a bit of an odd instance - I'm developing a js app and running
it in a web area. Since it will be deployed from a server I'm running the
server on my laptop and editing the files in the server's Resources folder
but looking at the js app in a client. So it's not really a real world
situation though I would expect these js files to update if, for example, I
install a new set of js, html or css files in the Resources folder.

But would 4D server recognize the files changed? As I think about it I
suppose there's no particular 4D event that would trigger is there? Or does
4D server have some built in process that monitors the resources folder for
changes and broadcasts it?


On Mon, Apr 24, 2017 at 10:26 AM, Timothy Penner via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> > I must be missing something.
>
> You are probably missing a call to the NOTIFY RESOURCES FOLDER
> MODIFICATION command -
> http://livedoc.4d.com/4Dv16-R2/help/Command/en/page1052.html
>
> The NOTIFY RESOURCES FOLDER MODIFICATION command "forces" 4D Server to
> send a notification to all the connected 4D machines indicating that the
> Resources folder of the database has been modified so that they can
> synchronize their local Resources folder.
>
-- 
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: Object visualize / browse

2017-04-24 Thread truegold via 4D_Tech
Hey Rolf,

4d web area and javascript! 

That’s simple and and elegant! 

Very cool!

Appreciate,
John…


> This is one possible solution we us a lot in our own applications:
> https://github.com/4dgeek/4d-component-jsonEditor
> 
> Kind Regards
> Rolf

**
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: Question about synching Resources folder from 4D Server

2017-04-24 Thread Timothy Penner via 4D_Tech
Hi Kirk,

> I must be missing something.

You are probably missing a call to the NOTIFY RESOURCES FOLDER MODIFICATION 
command -
http://livedoc.4d.com/4Dv16-R2/help/Command/en/page1052.html

The NOTIFY RESOURCES FOLDER MODIFICATION command "forces" 4D Server to send a 
notification to all the connected 4D machines indicating that the Resources 
folder of the database has been modified so that they can synchronize their 
local Resources folder.

This command can be used more particularly to manage the synchronization of the 
Resources folders of remote machines after this folder has been modified by a 
stored procedure on the server.
For more information about managing the Resources folder in remote mode, please 
refer to the 4D Server Reference Guide.

Only the information that modification has occurred is sent. Remote machines 
react according to current settings. The options are the following:

* No synchronization of the local Resources local folder during the session,
* Automatic synchronization of the local Resources folder during the session,
* Display of a warning so that the user may carry out a synchronization if 
desired.

Current settings are set either:
at the overall database level using the Update Resources folder during a 
session parameter of the Database settings. In this case, it applies to all the 
remote machines;
locally, using the SET DATABASE PARAMETER command executed on the remote 
machine (Auto synchro resources folder selector). In this case, it "overrides" 
the database setting and applies only to the remote machine for the duration of 
the session.

-Tim



**
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: Why does 4D have uppercase UUIDs?

2017-04-24 Thread Lee Hinde via 4D_Tech
python -c 'import uuid; print uuid.uuid4()'

returns: 

8f1dad2d-2eec-4da7-b484-63a7e7549824

Not that that’s canonical, just offering another sample.


> On Apr 23, 2017, at 10:03 PM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> I wasn't aware of the argument that they should always be lowercase.
> 
> it's true that the native function on Windows (UuidCreate, UuidToString) 
> creates lowercase,
> but on Mac (NSUUID.UUIDString, CFUUIDCreate/CFUUIDCreateString) they are 
> uppercase and also hyphenated.
> 
> uppercase-non-hyphenated seems like a reasonable cross-platform solution.
> 
>> 2017/04/24 4:21、Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> のメール:
>> 
>> I was looking up something else yesterday and came across some comments and
>> directions regarding UUIDs and saying that they should always be lowercase.
>> But this isn't a hard rule, apparently. And 4D prefers to uppercase them -
>> which I find harder to read.
>> Just curious what that's about and if there's some important distinction
>> here I'm not aware of.
> 
> 

**
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: Object visualize / browse

2017-04-24 Thread 4dgeek via 4D_Tech
This is one possible solution we us a lot in our own applications:
https://github.com/4dgeek/4d-component-jsonEditor

Kind Regards
Rolf




--
View this message in context: 
http://4d.1045681.n5.nabble.com/Object-visualize-browse-tp5751523p5751585.html
Sent from the 4D Tech mailing list archive at Nabble.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: Why does 4D have uppercase UUIDs?

2017-04-24 Thread Dennis, Neil via 4D_Tech
> uppercase-non-hyphenated seems like a reasonable cross-platform solution

Nicely put :)

Upper/Lower with or without dashes, under the hood it is a 128 bit integer, the 
letters and numbers are just the number in Hex (i.e. it doesn't make a 
difference on the case)

Even Wiki says upper or lower case 
https://en.wikipedia.org/wiki/Universally_unique_identifier 

Neil






--

Privacy Disclaimer: This message contains confidential information and is 
intended only for the named addressee. If you are not the named addressee you 
should not disseminate, distribute or copy this email. Please delete this email 
from your system and notify the sender immediately by replying to this email.  
If you are not the intended recipient you are notified that disclosing, 
copying, distributing or taking any action in reliance on the contents of this 
information is strictly prohibited.

The Alternative Investments division of UMB Fund Services provides a full range 
of services to hedge funds, funds of funds and private equity funds.  Any tax 
advice in this communication is not intended to be used, and cannot be used, by 
a client or any other person or entity for the purpose of (a) avoiding 
penalties that may be imposed on any taxpayer or (b) promoting, marketing, or 
recommending to another party any matter addressed herein.
**
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 CSS

2017-04-24 Thread Pat Bensky via 4D_Tech
Hi Keisuke,
Thanks for your reply.
Perhaps it would make more sense if I explain what I'm trying to do ...
I want to create HTML files and open them in 4D Write Pro.
So I need to know which CSS attributes 4D Write Pro supports.
Also, is it even possible to do this? The docs state that the .4wp format
is HTML, but if I try to import even a very simple HTML document, it fails.

Thanks!
Pat

On 24 April 2017 at 05:28, Keisuke Miyako via 4D_Tech <4d_tech@lists.4d.com>
wrote:

> Hello,
>
> if the question is "which experimental CSS is supported in 4D Write Pro?",
> then I think you might be asking the wrong question.
>
> quote:
> "4D specific tags" means 4D XHTML with a 4D namespace and 4D CSS styles.
> http://doc.4d.com/4Dv16/4D/16/WP-EXPORT-DOCUMENT.301-3048103.en.html
>
> in other words, non-standard CSS styles are not just experimental,
> (which implies some cutting edge browsers may support it),
> they are CSS properties with a vendor specific -d4 prefix.
>
> for example, you can
> WP EXPORT DOCUMENT + wk web page complete for the standard version, and
> then
> WP EXPORT DOCUMENT + wk 4wp for the proprietary version.
> http://doc.4d.com/4Dv16/4D/16/WP-EXPORT-DOCUMENT.301-3048103.en.html
>
> ".4wp" file is a zip file, so you can change extension and double click to
> see its contents.
>
> the proprietary version specifies
>
> text-decoration:underline;
> -d4-text-underline-style:double;
>
> for a double underline,
> but the standard version specifies
>
> text-decoration:underline;
>
> without the "-d4" style.
>
> note that the result in a browser is exactly the same; "-d4" styles are
> always ignored in a browser.
>
> -
>
> the "Show HTML WYSIWYG" property
> http://doc.4d.com/4Dv16R2/4D/16-R2.1620/Defining-a-4D-
> Write-Pro-area.200-3124235.en.html
>
> allows you to ignore the "-d4" styles in embedded mode,
>
> and the wk html wysiwyg for WP PRINT
> http://doc.4d.com/4Dv16R2/4D/16-R2.1620/WP-PRINT.301-3124247.en.html
>
> allows you to ignore the -d4 styles in printing.
>
> -
>
> but you are right, the doc seems to be missing a comprehensive list of all
> "-d4" styles.
>
> other than the aforementioned "-d4-text-underline-style"
> there is also a "-d4-text-transform:small-uppercase",
> but I am sure there are more.
>
> > 2017/04/24 8:12、Pat Bensky via 4D_Tech <4d_tech@lists.4d.com> のメール:
> >
> > I did a quick test - created a 4D Write Pro document with an
> experimental Stylesheet and
> > exported it as HTML.
>
>
>
> **
> 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 - The Database Publishing Solution
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
**