> I'm looking for some feedback and any code you are willing to share.
Twilio SMS is really easy, and their docs are pretty clear.
1 - Set up and account with them
2 - Setup a URL http://api.clickatell.com/http/sendmsg?user=
&password= &api_id=
&to=&text=
3 - To send the
> Does the customer’s internally hosted 4D app also need to be configured with
> a SSL certificate in order to exchange data over SOAP securely?
It depends on the data flow...
The machine serving the data needs SSL, the machine connecting and retrieving
the data needs to use the secure port.
S
> When I click the up or down buttons I find that I can click them a second
> time before the code to perform the action has completed.
> I would have thought that button clicks were not stacked up until code
> underneath has completed.
I just created a sample using 4D v18... a one form button w
> 1. What options are available?
> 2. How it works with 4D?
> 3. Has anyone done this as an OEM and what issues/obstacles have you run
> into?
>4. and so forth...
... As was said before a load balancer... it is a device that is put in front
of a pool of machines. It balances the
> Is anyone uploading files as large as 2GB to 4D?
I do up to 1GB, never had an issue.
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 t
Try setting the maximum request size on the web to a bigger value
WEB SET OPTION(Web maximum requests size;)
https://doc.4d.com/4Dv17R6/4D/17-R6/WEB-SET-OPTION.301-4310668.en.html
Neil
Privacy Disclaimer: This message contains confidential information and is
intended only f
> So it appears that my client (in Michigan) and I (in Seattle) with running
> the current versions of
> Windows 10 Pro and 4D v17.2 64-bit are the only developers experiencing this
> issue?
I tested with 4D v17R6... Windows 10 64bit
OK is set to 1 for me.
Are you saying this comes back as zer
> Neil is dead on in the case of RELATE MANY - you can access this directly from
> the entity via the name of the relation. But you are asking about
> RELATE MANY SELECTION where you have a selection of one-records and
> you want a selection of all the many-records.
This actually also works for R
> RELATE MANY SELECTION is a convenient way to get a set of related many
> records.
> Is there a more succinct or efficient ORDA method than the following to do
> the same thing?
Just dot follow the relation name
$clients:=ds.Client.query()
$relatedmany:=$clients.ManyRelationLinkName
This
>> What does putting something in front of 4D gain?
4D claims and I have tested, out of the box 4d will get A+ ratings on security
checks... as long as you are using the latest version and latest operating
systems you are OK.
Neil
--
Privacy Disclaimer: This message contains confidential
> There is a horrible bug in ORDA where regardless of which field the relation
> is
> drawn to in the one table, it will always locate the one record by querying on
> the primary key field of the one record using the value you have entered into
> the many field.
Justin,
I just ran a couple of te
>HTTPS://WAS.COMPANY.COM/PRODF/HDMS/Repository/DMMATC/123456.pdf
Coming in late to this conversation but maybe this will help:
You can use HTTP Get to retrieve the document then save it where you need.
Neil
---
Privacy Disclaimer: This message contains confidential information a
The plugin sounds suspect, but you said you removed it... so I'm not sure.
Plugins do have hooks into 4D before startup is run, and they can mess up
memory.
Neil
--
Privacy Disclaimer: This message contains confidential information and is
intended only for the named addres
> Anyone have any other ideas?!?!?!?!
Sorry Chip, I have mostly ignored this thread until now... did your run a
maintenance repair on the structure?
I would assume you did, but it wasn't mentioned specifically.
Neil
--
Privacy Disclaimer: This message contains confidential information an
> The other thing about VM vs metal is the whole pre-emptive process
> benefit basically goes away.
... can go away...
If you have a physical machine with 32 cores and your VM run 8 shared with 4
other VMs running 8 cores, then you may really get 8 cores. If you run 32 VMs
all wanting 8 virtua
> I need to somehow open this and convert it back to the source character base
Before you spend too much time on a manual conversion verify that FTP does not
do this for you. In my experience (with English) EPCIDIC is converted to ASCII
automatically during transfer. I have assumed it was done
> I am trying to usse type ahead on a field based list box where search as
> character is typed.
>If I am using old style output form, there does not seem to be a need to a
>entry variable
> to implement this feature.
>
>Any ideas as to how I would do this using a field base listbox in v15
Some
>It seems to be working, in that the listbox is updated, but I’m finding that
>the first window
> (in whose context the method invoked by CALL FORM is run) jumps to the front.
> I don’t see anything in the >documentation that suggests it will do that.
> It’s probably easy>
enough to work around,
> On the left side pane the Variables is the top and anything above that I do
> not have access to. I cannot get to the debugger buttons.
There was a debugger reset method that was posted a few years ago. I don't have
the one for v15 but if you search you might be able to find it. I think it was
> "Failed to launch DB4D Server. Please make sure that the port assigned to the
> DB4D Server is not used by another application."
Ensure that no other version of 4D are running on the machine... as a service
or as another user.
Neil
Privacy Disclaimer: This message contains confid
> If a shared method is marked as preemptive capable, any shared method it uses
> must also be marked as preemptive capable. Otherwise 4D says the method
> further down in the call chain is not thread safe even if it has no thread
> unsafe commands.
Wait, If the parent is marked preemptive the
> The NEW PROCESS command is able to spawn a Preemptive or Coopertive process;
> this depends on the preemptive method property of the method that is called
> by the NEW PROCESS command.
Thanks Tim,
Is this new with 4D v17?
I see in the v17 docs it is documented that new process can run preem
> If all that happens, that process will be scalable across cores.
Did I miss something?
I thought for a process to work on a separate core it needed to be a WORKER
process and preemptive capable. So if you call new process it will not be
preemptive. If you call worker it can be preemptive if t
>c.push(obj)
>On V17 it gives an error ":=" expected.
>The 'push' is not syntactically highlighted like V16R6.
Did you turn on dot notation in the compatibility preference?
Neil
Privacy Disclaimer: This message contains confidential information and is
intended only for the named addressee
> In this applications i use again 4D V13.3 without backup
Maybe turn on backup if are able, it is a good idea to backup or mirror in case
of problems.
But if you don't use backup you will need to shut down the application to
ensure a clean copy.
Neil
--
Privacy Disclaimer: This message
> If you open the data file using your own copy of the structure, maybe your
> copy of the structure has a field indexed that the client's copy does not
> have indexed?
This is a possibility, but if the structures are the same, the re-index is
probably because you didn't get a good copy (use sh
>1 - I select the tre files
>2 - Compact this files using winzip
>3 - Take the zipped files and expand the files for use on my pc
Try this:
1 - Run a backup of the data it will save you time launching the new data if
you add the 4Dindx to the backup
http://docs.4d.com/4Dv16/4D/16/Maintenance-P
>> sometimes I need to take data files from one application running on
>> some my customer without close the application.
It is best to either close the application and make a copy... or back it up and
take a backup. When you copy it while it is running, more times than not it
will be corrupted
>UUID value ="E092AB501E1D41F5A5D15B56E835D2EE"
>this value appears to be duplicated in my database!
Is the field set to auto generate?
Was a record exported and imported?
Neil
--
Privacy Disclaimer: This message contains confidential information and is
intended only for the named addres
>- Do I **really** want to type a UUID to try to follow/check on related
>records when something goes pear-shaped?
>- Do I want my admin(s) to have to type a UUID to try to chase related records?
>- Do I want to have to work with UUIDs, other then knowing that they exist and
>are inplace as requ
I use UUID for links between tables, I wouldn't ever go back to longint keys.
They are faster than sequential keys in a lot of respects (long discussion)...
I love them.
Neil
--
Privacy Disclaimer: This message contains confidential information and is
intended only for the named address
Is there a way to determine where an entity is from? In the debugger it shows
in the value "Entity () from ", but I can't fine a way to get
using a method from code. Does such a method exist?
Neil
--
Privacy Disclaimer: This message contains confidential information and is
intended on
> I LOVE it that there are no longer ANY global variables necessary when
> working with forms
Is there a way to do hidden rows in a list box? So far I have not found a way
and still have to use a process array. If you know of something please share.
Neil
--
Privacy Disclaimer: This messag
> Anyone got any pointers on how to identify the correct port to use
> with SET CHANNEL (I assume this is the way we have to
> go) and general advice with getting this working?
Did you check out the documentation...
http://doc.4d.com/4Dv16/4D/16.4/SET-CHANNEL.301-3979404.en.html
If you are writ
> Thanks for the report Tim. I'm very impressed that anyone is doing
> development on 4D Server over the internet.
We have been developing over the internet for about 9 years now. One thing that
it does is show us where the application is network intensive. We have tuned
the performance so that
Randy
There might be something else in the mix, all of my databases do a set menu bar
during startup and open a window for progress. I'm not having the same crash
you are. However I haven't tested with 4D v16r6.
Neil
Privacy Disclaimer: This message contains confidential information and i
> And in fact, my 4D generated UUID is rejected by the web service, saying it
> isn't a 4 version UUID
Very possible, it has been a while since I looked into it and I was going off
of my fuzzy memory.
Neil
--
Privacy Disclaimer: This message contains confidential information and is
inten
> As far as I know most computers generate pseudo random and if so will
> increase chance of UUID's colliding no?
Correct
> However it would be an advantage to "know" what the limitations (of what we
> mostly use to generate unique keys) are
For there to be a one in a billion chance of duplica
> Does anybody know how to generate an UUID version 4
Doesn't 4D already generate version 4 UUIDs? In version 4 the 15th hex digit is
always a 4, it seems that this is what 4D uses.
If you need a good explanation, of the various types, wikipedia works
https://en.wikipedia.org/wiki/Universally_u
I just noticed you use send record instead of save record, that should work too
as long as you have an open channel using Set Channel.
-Original Message-
From: 4D_Tech [mailto:4d_tech-boun...@lists.4d.com] On Behalf Of Dennis, Neil
via 4D_Tech
Sent: Tuesday, July 03, 2018 10:55 AM
To
Not sure what your question is... this loops through all [Approvals] records
that have [Approvals]Approved = false
QUERY([Approvals];[Approvals]approved=False)
For ($vlRecord;1;Records in selection([Approvals])) // loop through the
selection of Approvals
// Do something with the record
> But if the letter editing process is sitting idle waiting for another letter
> to edit, it is resumed,
> and I get a message from 4D that you are trying to edit a letter that you are
> already editing.
> Damn, now running too fast. 4D is not recognizing the UNLOAD RECORD in the
> resumed
> pr
I also did some digging our servers are patched on a monthly bases and
restarted. So usually restart is few days over the 24.74 days. We have only had
one instance of the delay process bug. So most of the time, even if it is a 32
bit signed integer problem, we don't have an issue with the delay
> 32-bit long integer flips to negative, after 24 days.
You might be on to something 😊
Could pass this on to the 4D tech guys... there are several bugs already
reported for this.
Neil
Privacy Disclaimer: This message contains confidential information and is
intended only for the named addre
> DELAY PROCESS never comes back
Be sure to submit a bug with 4D when this happens. I submitted one and they
said if it isn't reproducible they "can't" fix it. If there is enough
complaining about it, I hope they would spend time digging into it and realize
it is a problem even if it can't be r
> $code:="$4deval($1->:=->["+$tablename+"]"+$fieldname+")"
> PROCESS 4D TAGS($code;$code;->$pField)
This is a nice little gem to keep in mind :)
Thanks
Neil
--
Privacy Disclaimer: This message contains confidential information and is
intended only for the named addressee. If you are no
> It seems to work and it also seems like it would be fast!
> EXECUTE FORMULA("$pField:=->["+tablename+"]"+fieldname)
Unless something has changed, this will not work compiled.
Neil
Privacy Disclaimer: This message contains confidential information and is
intended only for the named addre
To get a field pointer to a field from the field name you can loop through the
table incrementing the field number until you find the correct name and return
a pointer to it, this is very fast since it is all in memory.
For ($i;1;Get last field number($TableNumber))
If (Is field number v
> Has anyone succeeded in setting up a 4D server on a virtual Windows server on
> AWS?
I have set one up and it does work. Make sure your virtual machine firewall has
TCP/UDB 19812, 19813, 19814 open. If that doesn't work let me know. I remember
also working with the AWS access manager... but I
> Has anyone come across this problem?
I can confirm... we cannot use the new network layer as it will leave users
logged in. We see this especially in development (client/server) if we lose
network connection with the server.
Neil
--
Privacy Disclaimer: This message contains confidentia
I have created docx documents using the the zip plugin, but my arguments to the
plugin are different than yours. Unless the plugin signature has changed or it
is a different plugin, try this:
$lOK:=Zip
($tSource;$tDestination;$tPassword;ZIP_Compression_level_5;ZIP_Without_enclosing_folder)
Nei
> No offense intended:
It is hard to offend me, even if you are trying :)
I don't use 4D SOAP very often... but I have always been able to get it work
even if I had to go to a low level. I totally agree it is difficult to
understand and way over complicated. In more recent years I have found th
> Is anyone there that can help me?
What you are looking for is the web services in 4D there are a few sections on
this topic in the language reference, this would be a good place to start:
http://doc.4d.com/4Dv16/4D/16.3/4D-Language-Reference.100-3651020.en.html
http://doc.4d.com/4Dv16/4D/16.3
> MAJOR security issue on OS X 10.13 - anyone can login as Root
Apple put in a patch for this already, just download and install if you haven't
done so yet.
Neil
--
Privacy Disclaimer: This message contains confidential information and is
intended only for the named addressee. If
> They can run the server app as an admin, but “Register Current Database as
a Service” is disabled.
If you are not running the 4D Server Application "as an Administrator" (right
click and select run as an administrator) then the menus will be disabled.
Neil
--
Privacy Disclaimer:
>Can anyone provide me with a download link to the current (and
>apparently
>last) version of Footrunner?
Try this link... there is a free download link on this page
http://www.footprints-inc.com/FootRunnerGold
http://www.footprints-inc.com/FRGold/FRGold_v15.0.1_FullRelease.zip
Neil
--
P
My number three choice that would work in an output form would be this:
> [Employees]ID <——— [Projects]PrincipleEmployeeID
><——— [Projects]ProjectMangeEmplyeerID
><——— [Projects]SupervisorEmployeeID
Your list form would consist of two or three var
> Does anyone know the relative performance impact on a server of calling a
> QUERY wrapped inside
> a SET QUERY DESTINATION (Into Variable...), compared to calling Records In
> Table?
In theory, related to each other the into variable would execute a bit faster
in that it isn't building and pa
> I opened it with 64-bit 4D standalone on windows and except for an ugly
> dialog with a big X through that referred to pict formatted images
The 64 bit client doesn't support quick time. You need to update your images to
a supported format. JPR has a great utility component that will find inva
> Now in the context of this thread, this appears to be an anomaly?
Not an anomaly.
I have found the same great service, even with a tough bug... we had a problem
with web packets not being delivered. We had wireshark captures and web logs
showing the problem but could not reproduce it outside
> I'm with John on this one. The payoff for sending in bug reports and feature
> requests is incredibly low. Zero feedback and results are rare.
> *No matter what hoops are jumped.*
I have a different experience, I have reported a few bugs.
The ones that I have submitted that are reproducible I i
> I’m getting users logged in twice to 4D Server 16.2 Mac. One of the duplicate
> is stuck for days.
> A manual “Drop User” doesn’t do anything. The only choice is to quit and
> restart 4D Server.
Try running legacy network if you are not doing that already. We saw this
problem when running wi
> (3+4)*5)^2)/6)-3)*(1+2)
>
> Not exactly easy to read.
In 4D this could be simplified to
3+4*5^2/6-3*(1+2) // but with the compiler bug is real then it would be
(3+4*5)^2/6-3*(1+2) // this one
4D only has 2 rules of precedence () first then left to right. I didn't know
about the compil
> 150*10^6 # 10^6*150
Been this way forever... 4D is () first, then strict left to right.
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 o
I don't know of a way to do this in code, but you can always unplug the network
cable :)
If there was a way to do it in code it would probably be via the Set Database
parameter, but I don't see it there.
Neil
--
Privacy Disclaimer: This message contains confidential information and is
in
I would only use legacy network for now... when users crash with the new
network, they never get logged out of the system and leave all of their records
locked. I haven't taken time to reproduce this in a small database and report
the issue to 4D.
Neil
--
Privacy Disclaimer: This mes
I have not seen this, could it be that you use an execute on server and do not
unload the record when you are done?
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 no
> When are you doing your commits? With each method? Daily? Neil suggested he
> was looking for incremental commits. Which seems ‘noisy’.
Commit each method each time it is modified. Yes it does sound noisy, but
required for an audit trail of method modifications.
I have the code to the point w
I recall that someone has worked with Git as a 4D code repository but I don't
exactly remember where I heard it.
I'm looking to automatically check out and check in 4D methods to Git as they
are modified via a 4D client. To give you the full picture we want to use TFS
and single sign on to conn
> Found that most (not all) of my PICTURE LIBRARY pictures went south.
Did you migrate you pictures to png or some other supported type?
There is a cool update tool that JPR wrote to help you update your images. It
was demonstrated at the last road show.
Neil
--
Privacy Disclaimer: Th
> what is the difference between a display only field showing an internal ID
> number,
> and a duplicate, display only ID number showing on the entry form?
It really comes down to preference, you can link how you wish. A read only
numeric ID works in most cases.
The reason I don't use them is
> How do you deal with that problem (Preventing duplicate data)
When unique data is required because of a business need, I do implement one of
your suggested methods: "Carefully program your system to detect and prevent
duplicate rows."
I would suggest not doing this in a trigger, but instead o
> Have others had to deal with this and if so what options did you find
> available and what did you choose as your solution?
The easiest is to turn on the drive encryption. However I also selectively
encrypt more sensitive information so it is double encrypted.
Neil
Privacy Disclaim
> here come the warm jets - full album
I must be younger of the older group... I think I was 4 when this album was
released :)
Neil
--
Privacy Disclaimer: This message contains confidential information and is
intended only for the named addressee. If you are not the named addressee you
sho
Not considered a good random number generator when you are looking for random
numbers.
Add in milliseconds or seed it by looking for a random number (from millisecond
or something) of random numbers and tossing them.
I usually use something like this Random+Abs(Milliseconds) and they seem rando
> If you are using domain\user then make sure to escape the \ like this:
> Domain\\User
I was using the format correctly...
To test what was going on I used telnet session went like this:
telnet server 143
> *ready message
A1 LOGIN "domain\\user" "password"
> A1 NO LOGIN failed
So I did some m
Paul
I'm seeing the same thing, I use domain\username as the user name. I have
verified at a low level that the IMAP_Login opens a connection to the exchange
server (It looks like the client and server are talking). But IMAP_Login
returns an error anyway.
I have not found a solution yet.
Neil
> Which port are you connecting to? SSL? Is it set using IT_SetPort?
I don't specify the port with IT_SetPort, I let IMAP_Login pick the port
depending on the SSL flag. I have confirmed that IMAP_Login is using port 143
for clear connection and 993 for SSL/TLS connections.
When I test with TCP_
Did anyone ever get the IMAP_Login to work with MS Exchange server?
When I connect with IMAP_Login I get either a 10061 or a 10064 (connection time
out or reset) but when I connect to the same machine and port with TCP_Open I
get a valid connection and a response:
"* OK The Microsoft Exchange I
> Thanks for the reply. It’s a pity. With Apple having abandoned server
> hardware years ago,
> the only legal choice is Windows. What a shame for a non-Windows shop to have
> to support
> a Windows server just for that. That adds lots of cost and complexity.
Just because Apple doesn't have an X
> I've only used dynamic vars on forms.
You and I are the same in that so far the only use of dynamic variables I have
done is from forms and list boxes.
I'm reluctant to use get pointer to create a process array dynamically until it
is documented as being safe, however it does seem to work.
N
I just created a new database and created a method with this code:
C_POINTER($pArray;$pLongInt)
$pArray:=Get pointer("Array")
ARRAY REAL($pArray->;1)
$pArray->{1}:=7
ALERT(String($pArray->{1}))
Compiled it, and it ran without error. How long have we been able to get a
pointer to an array that wa
> The only differences I can think of are (1) a constant is compiled into the
> raw binary
> and (2) because of that, a constant is the same across all instances of an
> app, where
> a “static” variable can be computed at launch (or when it is created). It
> just can’t change
> later on while th
> $span:=" 800; font-size: 8px "+Char(Double Quote) +">"+$text+""
What you have is perfect, however there is a cool way to code the above line
with less string math
$span:=""+$text+""
I find this just as readable and easier to type, but the other way is just a
personal preference over
> I'm just clicking the minus sign below the project methods list. Is there
> another way?
Run a verify on your structure, repair if needed. Also try quitting, deleting
the .4dindy, and restarting.
Neil
--
Privacy Disclaimer: This message contains confidential information and is
inten
I would say best practice is to always specify a type, that way you get a blank
value when the property is not in the list (avoiding an error)
tValue:=OB GET(oObject;"textValue";is text)
--
Privacy Disclaimer: This message contains confidential information and is
intended only f
> 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
> I see that this can set this on the form, but if I toggle the enterability
> on and off via code (Object Set Enterable) it seem lose the focusable
> setting.\
Never mind, this is not a problem.
Neil
--
Privacy Disclaimer: This message contains confidential information and is
intended on
> you set the field to non-enterable+focusable.
That is what I was looking for, can the focusable setting be set via code?
I see that this can set this on the form, but if I toggle the enterability on
and off via code (Object Set Enterable) it seem lose the focusable setting.
Neil
--
Pri
I thought there was a setting on a read only variable or field to allow
selecting and copying data but not pasting or changing. I can't seem to figure
it out. In my mind it was Object set enabled true and Object set enterable
false. However I have tried every combination but none seems to have t
> OK what about when I connect from a v11 single user via sql row 64 BIT Mac
> server.
> What network layer does it use. I have been running tests with v15 latest hot
> fix. I have many disparate connection types.
If I had to take a guess, you are using the new network layer (as that is all
th
> (Mac and Windows clients) and connect to a MAC server using 64 bit
This is true, you need to use the new network layer with a 64 bit MAC server...
legacy network doesn't exist.
Neil
--
Privacy Disclaimer: This message contains confidential information and is
intended only for the nam
> OK I am a little confused. Ifs I build clients using 32 bit volume (Mac and
> Windows clients) and
> connect to a MAC server using 64 bit server, the new network layer is always
> used? or not?
> I thought 32 bit volume desktops did
> *NOT* support the new network layer
That would be 4D 32 b
> I am using truncate. I just want to make sure that by using this command then
> then running MSC repair,
> I will get new fast indices for these tables and table space will be correct.
> If one uses delete command and deletes
> most of the records table space is screwed up. That was my real que
> On Windows this can be done by typing Alt-spacebar-M. But that only works on
> the main 4D window - not the process window.
On windows, you can hold down the windows key, control key and alt key (all at
the same time), then click with both left and right mouse buttons at the same
time anywher
> If you pack a date into an object in one time zone... for example execute on
> server when your server
> is in a different time zone. Then you unpack the date in a local time zone
> the date could be shifted.
Wow, 4D thought of this and created a way to set it.
SET DATABASE PARAMETER has a se
If you pack a date into an object in one time zone... for example execute on
server when your server is in a different time zone. Then you unpack the date
in a local time zone the date could be shifted.
I ran into this by packing a date on the server in central time OB SET
($object;"myDate";!2
> Is 4D, natively, y2038 safe?
Yes, 4D dates are good valid from 1/1/100 to 12/31/32,767
http://doc.4d.com/4Dv15/4D/15.4/Data-Types.300-3273704.en.html
Neil
--
Privacy Disclaimer: This message contains confidential information and is
intended only for the named addressee. If you are not th
> Any and all information regarding the above will be accepted with much
> gratitude!
I thought most firewall routers will stop a DDos attack before it hits your 4D
server. Was this not the case for you or are you testing without a firewall?
Neil
--
Privacy Disclaimer: This message contai
One thing I left out... be sure to index the date field.
-Original Message-
From: 4D_Tech [mailto:4d_tech-boun...@lists.4d.com] On Behalf Of Dennis, Neil
via 4D_Tech
Sent: Friday, March 24, 2017 9:27 AM
To: '4D iNug Technical' <4d_tech@lists.4d.com>
Cc: Dennis, Neil
S
1 - 100 of 103 matches
Mail list logo