Re: Extra characters

2018-07-03 Thread Robert McKeever via 4D_Tech
Thanks, John. > On Jul 3, 2018, at 8:48 PM, John DeSoi via 4D_Tech <4d_tech@lists.4d.com> > wrote: > > The extra characters are the Byte Order Mark (BOM) - see the documentation. A > BOM is useless with UTF-8, but there is no way to prevent 4D from inserting > it when using TEXT TO DOCUMENT.

Re: Extra characters

2018-07-03 Thread John DeSoi via 4D_Tech
The extra characters are the Byte Order Mark (BOM) - see the documentation. A BOM is useless with UTF-8, but there is no way to prevent 4D from inserting it when using TEXT TO DOCUMENT. I use this method instead: C_TEXT($1;$2) C_BLOB($blob) TEXT TO BLOB($1;$blob;UTF8 text without length) BLO

Extra characters

2018-07-03 Thread Robert McKeever via 4D_Tech
4D V15, on a Mac. Once this works, the PC version is next. I have nine text files that contain java scripts. They contain the users password (not my idea). The health authority has decided that each site (maybe 45+ users) must change their passwords. So, I did the following: $MyRawDoc:=Document

Re: Application Metrics

2018-07-03 Thread Jody Bevan via 4D_Tech
Taking you back to JonokeMed days Dani circa ~ 2010. Jonoke did all of that so we could know what was used or not. I used the results a lot. Jody > On Jul 3, 2018, at 2:17 PM, Dani Beaubien via 4D_Tech <4d_tech@lists.4d.com> > wrote: > > Probably the easiest way to do this is to create a new

Re: problems with SEND RECORD

2018-07-03 Thread Noah via 4D_Tech
Many thanks, that was a silly oversight, explicitly saving to and moving to the next record in the Approvals table fixes the problem. I appreciate the suggestions for more efficient code! On Tue, Jul 3, 2018 at 3:52 PM npdennis wrote: > > > // THIS DOESN'T work! it approves the records but does

Re: problems with SEND RECORD

2018-07-03 Thread npdennis via 4D_Tech
> // THIS DOESN'T work! it approves the records but does append to the log Try this loop instead, you need a save record in the loop, and since you are saving each you don’t need the apply to selection and first record… the loop below will take less execution time and only modify the records

Re: problems with SEND RECORD

2018-07-03 Thread Robert McKeever via 4D_Tech
You need to save each record: [Approvals]log:=$new_line+$current_log SAVE RECORD([Approvals]) NEXT RECORD and, of note, just a bare NEXT RECORD command assume that [Approvals] is the default table. It might not be. > On Jul 3, 2018, at 3:00 PM, Noah via 4D_Tech <4d_tech@lists.4d.com> wrote: >

Re: problems with SEND RECORD

2018-07-03 Thread Noah via 4D_Tech
Thank you all for the quick feedback! The approvals table has all records with Approved defaulting to False. The problem was with not including Set Channel (which is not really what I wanted to be doing anyways). I must have taken a fork in the road (while reading the documentation this morning) w

Re: Quitting without IP var?

2018-07-03 Thread Chip Scheide via 4D_Tech
I see what you are saying, I will look at that as an alternative. Thanks however... the method called from exiting the program (menu_Quit) runs the loop over the processes For count processes resume process call process BEFORE calling Quit 4D, to allow all the processes to complete whatever

Re: problems with SEND RECORD

2018-07-03 Thread Chuck Miller via 4D_Tech
OK If you are going to do this, why not go all the way C_LonGINT($RECORDSINTABLE;$ALLRECORDS;$NOTAPPROVED;$APPROVED) $RECORDSINTABLE:=RECORDS IN TABLE([Approvals]) > ALL RECORDS([Approvals]) > ALLRECORDS:= Records in selection([Approvals]) SET QUERY DESTINATION(INTO VARIABLE;$NOTAPPROVED) QUERY([A

Re: Application Metrics

2018-07-03 Thread Dani Beaubien via 4D_Tech
Probably the easiest way to do this is to create a new table and and create a new row per event. Easy to conceptualize and easy to implement. And you can then run queries against it easily. For feature requests, it can help if you know that a feature request is being made against an area that i

Re: Quitting without IP var?

2018-07-03 Thread Dani Beaubien via 4D_Tech
Chip, Here is the documentation for “Process Aborted”: The Process aborted command returns True if the process in which it is called is about to be interrupted unexpectedly, which means that the execution of the command was unable to reach its “normal” completion. For example, this can occur a

Re: Application Metrics

2018-07-03 Thread Robert ListMail via 4D_Tech
Tom, can you give us an idea what/how this data is tabulated and how it’s reported back to you? Thanks, Rob Sent from my iPhone > On Jul 3, 2018, at 3:07 PM, Benedict, Tom wrote: > > We don’t keep track of features used, but we do keep track of performance > metrics, mostly around system re

Re: Application Metrics

2018-07-03 Thread Robert ListMail via 4D_Tech
Dani, how might the app be reporting this data back to the mothership? Imagine, 4D client server not a web app. Also, how would this help with feature requests...? Wouldn’t you need the feature available to the user before you could track it? Thanks, Rob Sent from my iPhone > On Jul 3, 2018

Re: Application Metrics

2018-07-03 Thread Benedict, Tom via 4D_Tech
Robert writes: > in your 4D applications are you tracking usage levels of any kind? I suppose > it >would be useful to know what features are heavily used and which are almost >never used. What metrics does your system collect that you've found useful? We don't keep track of features used, but w

RE: Quitting without IP var?

2018-07-03 Thread Stephen J. Orth via 4D_Tech
Chip, My thoughts exactly... Steve -Original Message- From: 4D_Tech [mailto:4d_tech-boun...@lists.4d.com] On Behalf Of Chip Scheide via 4D_Tech Sent: Tuesday, July 03, 2018 2:56 PM To: 4D iNug Technical <4d_tech@lists.4d.com> Cc: Chip Scheide <4d_o...@pghrepository.org> Subject: Re: Qu

Re: Application Metrics

2018-07-03 Thread Robert ListMail via 4D_Tech
Thanks Dani, that’s very helpful. Rob Sent from my iPhone > On Jul 3, 2018, at 2:07 PM, Dani Beaubien > wrote: > > Hi Robert, since you are talking about usage patterns I suggest you approach > it from the actions that your user’s are performing. ***

Re: Quitting without IP var?

2018-07-03 Thread Chip Scheide via 4D_Tech
so.. an IP var in an object :) Thanks! On Tue, 3 Jul 2018 14:33:15 -0500, Keith Culotta via 4D_Tech wrote: > 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 > >

Re: Quitting without IP var?

2018-07-03 Thread Chip Scheide via 4D_Tech
Dani, a 'Deamon" - a unix/linux term I believe - is a piece of code which once started does a task and then goes to sleep for a while then wakes up and does the task again. for example, watching a specific folder for additions, then processing the 'new' files. These tasks do not not normally ex

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? // ---

Re: Quitting without IP var?

2018-07-03 Thread Dani Beaubien via 4D_Tech
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

Quitting without IP var?

2018-07-03 Thread Chip Scheide via 4D_Tech
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_Q

Re: problems with SEND RECORD

2018-07-03 Thread Jeremy French via 4D_Tech
Since you encountering more records than expected, do all records in the table “Approval” have False assigned assigned to the field “approved”? Try this in your method: ALL RECORDS([Approvals]) $count_all := Records in selection([Approvals]) QUERY([Approvals];[Approvals]approved=False) $count_q

Re: Application Metrics

2018-07-03 Thread Dani Beaubien via 4D_Tech
Hi Robert, since you are talking about usage patterns I suggest you approach it from the actions that your user’s are performing. This can help you understand what the users are doing most along with some context. A good place to start would be to track every time the user - Selects a menu item

Application Metrics

2018-07-03 Thread Robert ListMail via 4D_Tech
I just learned that Facebook is getting rid of a few apps, partially based on low usage. So, in your 4D applications are you tracking usage levels of any kind? I suppose it would be useful to know what features are heavily used and which are almost never used. What metrics does your system colle

Re: problems with SEND RECORD

2018-07-03 Thread Charles Miller via 4D_Tech
There are other issues with this loop. You must for example make sure record is loaded and table is set to read/write. before doing something. I have seen code where programnmer didn’t load record and it was locked somewhere else. Thios causes all types of problems. I always for my for loops like

Re: problems with SEND RECORD

2018-07-03 Thread Chip Scheide via 4D_Tech
as noted elsewhere: for Send Record to do anything (and not give the error your have mentioned) you have to have opened/created a file on disk with Set Channel. However, it is possible that there was a typo somewhere, and what you are trying to do is to manipulate the record (do something with

Re: problems with SEND RECORD

2018-07-03 Thread Charles Miller via 4D_Tech
did you use open channel before the send record Regards Chuck On Tue, Jul 3, 2018 at 12:54 PM, Dennis, Neil via 4D_Tech < 4d_tech@lists.4d.com> wrote: > Not sure what your question is... this loops through all [Approvals] > records that have [Approvals]Approved = false > > QUERY([Approvals];[App

Re: problems with SEND RECORD

2018-07-03 Thread Bob Miller via 4D_Tech
Hi Noah, I'm not clear if your question regards SEND RECORD or, "Am I missing something in my understanding of looping over records?" Regarding SEND RECORD, the example in the documentation isn't complete, you first have to set up a destination for the record using SET CHANNEL. An error -28 me

RE: problems with SEND RECORD

2018-07-03 Thread Dennis, Neil via 4D_Tech
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: su

RE: problems with SEND RECORD

2018-07-03 Thread Dennis, Neil via 4D_Tech
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

problems with SEND RECORD

2018-07-03 Thread Noah via 4D_Tech
Good morning! I work with a large codebase that has had many developers over the years. Consequently, when building something new, I will sometimes look to see how something was done previously. More often it has been the case that I will go straight to the documentation to see the currently recomm

Re: 4D Integration with Microsoft Dynamics AX 2012 "cube"

2018-07-03 Thread netandwork via 4D_Tech
Hi Dan, I'm not sure if this may help you I'm working on a D365 integration right now. But we decided to use a Biztalk server in between. Our D365 consultants created the OpenData interface while I created the Restful interface to BizTalk. We transfer PO and SO. Best Adrian -- Sent from: