PxPlus User Forum

Twitter Twitter Twitter

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Peter.Higgins

Pages: 1 2 [3] 4
31
Language / Unique alternate key question.
« on: February 07, 2020, 10:15:36 AM »
I am curious if it is possible to make an alternate multi-segment key unique in the dictionary where the secondary segments may repeat for other primary segments but should not for the primary segment which is also the first segment of the prime key?  Thinking no-way but hope to be surprised.


32
Programming / index object idxinfo.pvc
« on: December 24, 2019, 04:53:36 PM »
Can anyone tell me if the null suppression on the last segment for a Primary internal key is in anyway related to the K: or N: attributes in the index object? 

 ! IF POS("N"=COLUMNATTR$) THEN IDXINFO'COLUMNATTR$="N",IDXINFO'COLUMNNULLCHARACTER$=MID(COLUMNATTR$,POS("N;"=COLUMNATTR$)+2,2),BuildColumnAttr$+="N"
 ! IF POS("K"=COLUMNATTR$) THEN IDXINFO'NULLSUPPRESS=1,IDXINFO'NULLCHARACTER$=MID(COLUMNATTR$,POS("K;"=COLUMNATTR$)+2,2),BuildAttr$+="K"

33
Language / Easy way to split a numeric fixed string.
« on: December 05, 2019, 12:58:19 PM »
I was looking at some complicated date logic and thought of contributing this simple efficient technique example.   This uses the BBX string structures in PVX. 
The numeric and formatting validation is omitted.

1 DIM Dt$:"Y:N(4),M:N(2),D:N(2)" ! Structure is static and can be reused after ="" or read data from $$
2 Dt$="20191105"
3 ? jul(Dt.Y,Dt.M,Dt.D)
4 ? xfa(Dt$,"") ! Roughly equivalent to LST(IOL())
5 ?Dt.Y
6 ?Dt.M
7 ?Dt.D




34
Programming / Error 12 instantiating an object
« on: October 09, 2019, 09:24:05 AM »
This might save you some time if you happen to run into it.

Was getting file error 12 on an object instantiation and I wasn't looking for this issue because the object is a file wrapper.  After eliminating the file as perpetrator, while I was expecting a 92 type error, I wasn't expecting this as I wouldn't have thought it possible.  (The mistake obviously!  ;))

In the Class Def, one of the functions had a trailing comma in the arguments as shown below.

FUNCTION FieldByIndexList(KeyStart$,KeyEnd$,Where$,KeyNo,FieldIdx,FieldDelimiter$,)FIELD_BY_INDEX_LIST

This did not throw a line error in the *IT or on a load list in version 2017, only on instantiation.

35
Nomads / configuring font in Parrallels
« on: August 23, 2019, 02:03:56 PM »
My font calculation is fine in windows, but nomads panels are too large in Parallels so that the window can exceeds the screen size calculated by the DEC($00$+MID(_X$,29,2))
Have determined that a parallels server is hosting the display and I am picking up that resolution for font sizing. 
Is there a way to identify when a nomads window will display in Parallels?
Is there a way to get the final client from Parallels?
Have a great weekend.

36
Nomads / Cannot remember how folders work in Object Nomads.
« on: July 24, 2019, 09:15:52 AM »
Hi list,

Tried adding a two panel folder to an object nomads panel yesterday and could not get the second panel to load the data (iol variables in fields) unless it was visible when when the record was pulled up.  Illogically, in that case, the first panel had its data as well, and both panels kept their data while flipping back and forth and navigating other records then returning. 

Really seems like the second panel clears the record variables on it when first shown,  but first panel does not, even when displayed second. 

After sleeping on it I am still mystified.  What am I doing wrong? Is it necessary to make the last panel the current panel prior to reading a record and switch back?  Fldr'DisableFldr() until after the read?

Background:
V17.  Not using  RefreshScrn( ) as it does not work for the main panel.   
Key and navigation Btns use same logic from record read which is by record.
Record data is moved to screen variables, which is iol list.

 

37
Nomads / Accommodate different monitor sizes
« on: May 23, 2019, 04:33:51 PM »
Trying to make  panels relatively the same size on different monitors.

After obtaining the monitor DPI and calculating the new default graphic and text fonts
it looks like I need to drop and reinstantiate or init() the *obj/nomads.pvc object.
That's where nomads instantiation gets murky.

Does the font have any affect on character size?
Will I also have to set other fields like the Xchar, YChar, Xmax, Ymax? 


38
Language / database.pvc encapsulation issue gives wrong results.
« on: May 16, 2019, 03:09:06 PM »
Hoping this is already a non issue in V2019 because of the SQL export.   Nice job on all the upgrades. 

Just wanted to bring this to your attention. 
When using database.pvc :
If setdatabase(x$) method is used to set a new dictionary, the %Z__PVXDDF$ variable is not set. 
This is important as other methods besides password use CALL "*dict/dd_updt;... and these methods fail if the current path in %Z__PVXDDF$ is not the same as X$ because  "*dict/dd_updt" calls a dictionary open routine dependent on  %Z__PVXDDF$ path in the opens.   
Thanks

39
Language / database.pvc
« on: May 07, 2019, 11:08:35 AM »
Found something this morning.
Using a delimited file structure I get column width=0 for all key fields from the IDXINFO object returned from database.pvc method GetIndexInfo().
In the executed LOAD_INDICES procedure of database.pvc, the properties are loaded by the line
READ DATA FROM X$,SEP=":" TO KN,SN,COLUMNATTR$,COLUMNWIDTH,COLUMNOFFSET
x$ is a lightly modified Keydefinition$ from dde_fh. 
Both have contents of "1:1:AC"

If columnwidth is 0 after this statement then should not a columnwidth = num(length$,err=...) be added so a separate routine to poll COLINFO object to get field length is not required?


40
Language / web/ftp & websftp
« on: April 25, 2019, 02:27:33 PM »
I am occasionally getting error messages from one or both of these programs.
Error #12: File does not exist (or already exists)(At Line: 792)
Error #12: File does not exist (or already exists)(At Line: 878)

The application is run as a script and the client advises there is occasional network congestion. 
Since the program is encrypted, this is not much help in determining the where, what, how, of the issue. 

What needs to be known and cannot be determined any other way from the error for audit verification are Procedure and file name. 

What would be even nicer is an object that could re-classed and extended with such luxuries as
  • memory file lists for remote
  • memory file lists for transferred
  • file count remote
  • file count transferred
Why encryption is applied to a wrapper around curl which is open source, (even if it is not copy left), with the usage well and widely documented?
There are a significant number of unencrypted programs that would be far harder to figure out and reproduce. 


41
Language / AS2 / RFC4130
« on: March 29, 2019, 10:56:18 AM »
Question for PxPlus: 
Are there plans to implement AS2 document transfer in the pxplus utilities?
Just wondering if writing a utility for it would be worthwhile?

42
Nomads / Object Nomads Issue version 1400
« on: November 07, 2018, 09:52:01 AM »
I believe this is corrected but I cannot find an entry on the forum or in the old mail list.

When using object nomads in version 1400, the nomads fields with suppress val do not refresh when the ML variable is assigned and _obj'RefreshScrn() method is complete. 
I have had to manually assign the controlname.ctl'Value$=controlname$ to see the data on the screen.   

Update:  By replacing _obj'RefreshScrn() with Refresh_flg=1 and auto refresh checked the refresh works. 

43
Programming / Trace issue baffling me
« on: November 06, 2018, 05:19:12 PM »
When I trace a program in one environment I get this.  Centos7  to Windows via windx SSH
Any Ideas of what to try to fix it?  Nothing other than Host -> programs selected.   

WriteFile of 5 says it wrote 5
WriteFile of 6 says it wrote 6
Recvd Maj/Min:P/  Len:6 Crc=478C
Recvd Maj/Min:./p Len:32 Crc=75EA
<h> Recvd CTL:10009 EOM=$00802719$
 .. Acking ./p Data len=0 (AE)
Recvd Maj/Min:S/R Len:0 Crc=0000
 .. Acking S/R Data len=2 (53)
WriteFile of 11 says it wrote 11
Recvd Maj/Min:./p Len:42 Crc=FD02
<h> WinProc Cmd='' (Cur scrn=ÔYPE CTL=10009)
 .. Acking ./p Data len=0 (AE)
Recvd Maj/Min:P/  Len:6 Crc=80CD
Recvd Maj/Min:P/  Len:3 Crc=2341
Recvd Maj/Min:S/R Len:0 Crc=0000
 .. Acking S/R Data len=2 (53)
WriteFile of 11 says it wrote 11
Recvd Maj/Min:P/  Len:3 Crc=A484
Recvd Maj/Min:P/  Len:6 Crc=80CD

44
Programming / SafeArray from Linux
« on: November 02, 2018, 12:38:35 PM »
Has anyone tried using the dim structure with pxplus to create a safe array on a linux server.  I'd like to bulk transfer to excel without using the clip board.  Just wondering if there was any point in trying this. 

typedef struct tagSAFEARRAY {
  USHORT         cDims;
  USHORT         fFeatures;
  ULONG          cbElements;
  ULONG          cLocks;
  PVOID          pvData;
  SAFEARRAYBOUND rgsabound[1];
} SAFEARRAY, *LPSAFEARRAY;

https://msdn.microsoft.com/en-us/magazine/mt778923.aspx

45
Language / Parameter Questions
« on: October 30, 2018, 08:45:40 PM »
Had some questions on these system parameters and was wondering if
anyone has experience to share.

'AC'         Auto convert numbers & Strings
Appears to be a command line input only parameter.  Both Editors choke in 2018. 
Since it is new in 2017 I assume there is a reason for it, perhaps SQL? 

'AD'         Auto-DIM's an array.
Does the Auto Dim just work on {all} assignments? 
Tried  for loop and got the expected error assigning an array element to an undeclared array element. 

'BT'         Binary Test: 1st Read
Not sure how this is different.  Thought isz always meant binary.

This one looks useful.  But I still get an error 43 on a 17 digit number and 15 digit plus 4 commas mask.  Does it need to be combined with something? 
'F,'         Suppress Commas on Numeric Overflow

Pages: 1 2 [3] 4