This showcase session highlights the practical impact of adopting a procedure-driven approach to RPG development on IBM i. Through real-world examples, it demonstrates how procedural coding improves readability, maintainability, and reusabilityโkey factors in building efficient development teams...
1126+Procedure+Driven+RPG.pdf
Hello Marco, sorry never tried specifically with datamatrix. According to the image your scanner/reader (don't know which one) is set to pass the found symbology type through as string prefix. The DDS indeed produces a "d1" * that is plain ECC 200. Should be producing "d2" (as the online...
#RPG
esgs1dm - example.pdf
Hi to all. I would like to print a DataMatrix GS1 (UCC/EAN) barcode using an AFPDS printer file with the keyword BARCODE. The GS1 DataMatrix is formed by adding FNC1 codeword in the first position of Data Matrix ECC 200 version. In accordance with IBM documentation (https://www.ibm.com/docs/en/i...
Avoiding SQL injections in ILE-RPG with embedded SQL (SQLRPGLE) Dynamic embedded SQL is a great tool, if you have to create your SQL statements depending on user input. But "inserting" those user inputs directly into your SQL statement string, can be very dangerous. This kind of attack is...
There wasn't a problem with the SQL or the file. The file was being created and populated but was referenced by a different procedure without changing the fo value, clearing the file. Can I delete this thread to avoid a lifetime of embarrassment? ;) #RPG
I just ran it again in debug (because you're right, it's better to double check) and the file name is exactly what I expect and the nl value is the exact length and fo is 16 (SQFOVR). The file is always created/replaced after the execution with 0 bytes. I have a ticket open w/IBM now. I'll try...
If it really creates the file (empty I suppose) then I don't see why he's still complaining with a 3021. Maybe display the 3 values once more with "eval ggResponseFile ...:X" in debug to see if there's nothing special in the data. #RPG
Hi, Paul. Here's how I'm populating the subfields: ggResponseFile name = %trim(%scanrpl( '.json' : ' Response.json' : colTmxH.fileName )); ggResponseFile nl = %len(%trim(ggResponseFile name)); ggResponseFile fo = SQFOVR; The file name is similar to this: /home/dmiller/out/Account-2025-04-10-12...
3021 means "The value specified for the argument is not correct"... so how is your ggResponsFile filled ( Name, NL and FO subfields ) ? #RPG