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.

Show posts Menu

Messages - cwellis67

Off Topic / Direxions 2024?
June 18, 2024, 04:00:27 PM
I thought I saw somewhere that there was going to be a Direxions 2024 conference this year in September, but I can't find any information at all on it. Is there going to be one?
Programming / Re: Why use PVX?
June 18, 2024, 01:06:56 PM
Cedric said "Also, it's hard to seduce young developers to join the team since PVXPLUS has an old school approach that's really different to all the other popular "web based" technologies.  There's not a lot of documentation or info about the language that makes it hard for them to learn."

This is a very important point. We are in the process of hiring a new developer maybe, but they will not know PxPlus at all. Is there any type of training that new developers to PxPlus can go through to learn the language? The User Manual is a good reference, but is there something like "PxPlus for Dummies" type of documentation?
Hello all,
I am in the midst of replacing the old shell.explorer2 use of the Internet Explorer component while interfacing with CenPOS credit card processing. Has anyone else successfully done an integration with PxPlus and CenPOS (without using shell.explorer2)? If so, can you explain what you used? Was it a combination of using the newer *browser and *plus/web/request, or JavaScript, or a combination of both... or none of the above? Also at issue is creating a fix for prior versions of PxPlus before the *browser component was used.

Off Topic / SBOM generation
April 15, 2024, 11:12:49 AM
Has anyone had to create an SBOM for their PxPlus product, and/or does Pvx Plus Technologies provide an SBOM for the language?
Hey Mike,
Thanks for responding. I am currently trying to replace our use of shell.explorer.2 with *browser, and in particular, the line of our code where we use this:

x'navigate2(post_url$,flags,frame$,*postobj,headerinfo$) ! Start navigation with passed url

In that line, the POST data is sent with the navigate2() method. With *browser, it doesn't seem we can send POST data with the navigate2 method, and I just wanted to confirm that, or find out what I am doing wrong.
So does that mean that while the old shell.explorer.2 COM object allowed us to send data to the web page (like user name and log in), the *BROWSER object can only display the web page and we have to send a web/request to communicate with it?
Programming / How to send a POST request using *BROWSER
January 23, 2024, 12:55:36 PM
Is there a tutorial or other information that can explain how to send a POST request using *BROWSER instead of the old shell.explorer.2 COM object? Before, when we called the NAVIGATE2 method, we passed in the post data along with the URL, but it doesn't seem like the *BROWSER object is seeing it now.
Just to add, I am thinking that this issue may be related to some anti-virus software, or something similar that is controlled by our company. The pxplus.exe works fine everywhere except when it is in a particular folder. I can rename that folder and it works fine, and I can copy the executable from that folder and put it in a different folder and it works fine. I can also take a previous working version of PxPlus and put it in that folder and it now fails to access mapped drives. It seems like some kind of antivirus or firewall software saw an executable that it didn't recognize try to access mapped drives, and has flagged anything from that particular folder to not have access. I will update when I hear back from our IT department regarding the antivirus or other security measures that might be causing this behavior.
I have PvxPlus 19.10 installed in a folder, "C:\933\pvx". When I run the executable from that pvx folder and try to open a file on mapped drive, I get a message saying the file does not exist. However, if I rename the home folder to "C:\933rename" (or anything else), and then launch PxPlus from the pvx directory, I can open the file on the mapped drive. I've never had this issue before, and everything else seems to work fine EXCEPT for opening a file on a mapped drive.
** If it is important, we are using PxPlus v15.10

The FIN(ch,"INPUT") tells me that it is available for INPUT, but not that it is input ONLY, which would be the case for a Read Only file, right? When I use the FIN(ch, "INPUT") on a file that is NOT read only, it returns a "1" as well. I need to know that a file is set to Read Only or not. I thought I could use the "WRITE Ok" bit returned from checking the mid(FIN(ch),27,2) bytes, but even if the file is NOT read only, the "write ok" bit is still not set, just the OPEN INPUT bit is set.

An example of what I am seeing is this:
With a file ("1.txt") set to read only:
? hta(mid(fin(1),27,2))
? fin(1,"Input")


When the same file is not read only:
? hta(mid(fin(1),27,2))
? fin(1,"Input")

On Windows, I've noticed that the *tools\unzip utility will generate an untrapped error if the file being extracted already exists AND it is read only on the target system. There doesn't seem to be a way around this other than checking to see if the file on the target system is read only, and if it is, change the flag and then try the extract record from the zip file to overwrite it.

There also doesn't seem to be a nice and clean way of determining through PxPlus if a file is read only or not. Currently, I am OPENing the file, then checking the FIN() to see if the OPEN INPUT bit is set. That seems to be the only indicator that the file was Read Only; otherwise, the file is OPENed normally. Is this the best, or only, way to determine programmatically if a file is Read Only or not?

Likewise, changing the flag seems to require using the system call to use the "attrib" command. Is that also correct? There's no exposed Windows objects I assume?


Web Services / Error 400 - Bad Request
July 20, 2021, 04:35:46 PM
I am getting an error 400 (Requested URL is not properly formed) returned from the Webserver when an external program is sending a POST message to it. Is there a way to see the actual and full request the Webserver is getting? I'm totally guessing that the improperly formed URL is actually part of the body of the message, but I'm not sure of that. When I use Postman to send the request, the Webserver handles it fine, but when this external program (Infor OS) is trying to send a POST it fails. It succeeds on regular GET commands, though, and I'm trying to figure out what is failing.   

Here is what is in the request.log:
POST /ims/v2/multipartMessage HTTP/1.1
host: usalvwfacts2k16
x-forwarded-proto: https
x-forwarded-port: 443
x-amzn-trace-id: Root=1-60f5e322-2762508921d698154b7ac999
content-type: text/plain
authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkluZm9yQWNjZXNzVG9rZW5TaWduaW5nQ2VydGlmaWNhdGUtMTU2NjgwNDQzOSJ9.eyJzY29wZSI6IiIsImNsaWVudF9pZCI6IkZBQ1RTREVWX0RFVn4tUVUzcW9JM09aR1NKYldrN3pYTmd3VWxsUlF5dmx4LUpfQS1CNkFqMjFRIiwiaXNzIjoiaHR0cHM6Ly9xYWMtc3NvLnFhYy5hd3NkZXYuaW5mb3IuY29tIiwiYXVkIjoiaHR0cHM6Ly9xYWMtaW9uYXBpLnFhYy5hd3NkZXYuaW5mb3IuY29tIiwianRpIjoiQm4xdjdKdG9TOHh4UjZ2M083dXlQUHB1NU5KUTZ5czd1MDJBIiwiU2VydmljZUFjY291bnQiOiJGQUNUU0RFVl9ERVYjMFdMZUN2ckVHTHd2TzV3NERobUxvLUNwb2NiSXlVN3hRZGQzZjNpQzUtTFR3SXFCMGY0MUZqb2lGTmdIcjVTenZSemJJM29hbndoeDRQN1QwMEV4LVEiLCJJZGVudGl0eTIiOiJlMmE0OTUyZi0yYWQ3LTQ5OGItYWU4NS0xZDBlMGFlNWM1MDQiLCJUZW5hbnQiOiJGQUNUU0RFVl9ERVYiLCJFbmZvcmNlU2NvcGVzRm9yQ2xpZW50IjoiMCIsImV4cCI6MTYyNjczMDY2M30.NmjpfDpU8ieWlNcVmPldb6Rdv6FGSf_DRSZCfV1OLvr_owUW1kqSWrOCfHMkmtX2EyIYfMT8vdPhhI2ynFQPzL2cJn8cpOKbuYGd9S4L-5xKNZTMSXnCYvW9nMJ-8BzvwPMlox-5HPPSwwylbr99VXSOCWTl7yMXhA1L6rjb6tqkB3ejkyWvrZIfkTn9y5H8-2PIs8OBe6-UEp_eOtXrH2M0G0qxC7nshsi1GhXkeu5EfXSVj_TBlUfpxu7g8UIdikoN4I2TGJiRNqSDTlQMQ4rFrhVnR2_sbgEmV7hu2mQnFCYjfOwsWHuP0eY1r_y_SrAKTG_PHdG5aERrJBSQcQ
accept: application/json
x-tenantid: FACTSDEV_DEV
user-agent: Apache-HttpClient/4.5.12 (Java/1.8.0_282)
accept-encoding: gzip,deflate
x-request-id: 0496213e-29e8-97d4-b439-adbaea0682d2
x-b3-traceid: 0f5eaf078eb01f24
x-b3-spanid: 0f5eaf078eb01f24
x-b3-sampled: 1
Content-Length: 0
Connection: Keep-Alive

HTTP/1.0 400 Bad Request
Server: PxPlus-WebServer/1.3.18
Date: Mon, 19 Jul 2021 20:40:02 GMT
Content-Length: 256
Content-Type: text/html
Connection: close

      <title>400 Bad Request</title>
      <h1>400 Bad Request</h1>
      <p>The Requested URL is not properly formed.<br>
Method: POST  URI:/ims/v2/multipartMessage  ARGS:</p>