Yes, even though the AVM is single-threaded and events will only fire based on actions, ie not automatically, pstimer can be used to sprinkle events around that occur while another program is running and which could do anything disruptive.
As to the why:
google site:progress.com utf-8 performance longchar
INDEX and SUBSTRING functions are slow with UTF-8 client
So yes, Jean-Christophe's solution should work.
Constant date values are always a bit of a nuisance. Generally they always need to be MDY even if your session date-format is DMY. Safest to use the date function which prevents any ambiguity:
where idm_mod_date >= date( 3, 31, 2023 ) // date function is always m,d,y
We replaced our com-handle Excel documents a long long time ago with office xml documents. These were replace a long time ago by xslx.
An xslx is a zipped container of various xml documents which can all be generated by ABL and then zipped by a .Net class or a Linux zip.
The same applies to a...
If the trigger is overridable then you can use:
on write of <table> override do: end.
The override automatically reverts when the block is left. If you need to revert earlier, you can use:
on wrote of <table> revert.
I do very little GUI coding and this may be completely wrong with horrendous side effects, but it works:
def var tg1 as logical no-undo.
def var fi1 as char no-undo.
define frame fr
fi1 view-as fill-in
tg1 view-as toggle-box
.
on any-printable anywhere do:
apply lastkey to...
Are you intentionally pointing to a Data Direct driver page?
The 'regular' documentation at Progress Documentation has:
So it would seem you are out of luck. You could question how SQL92 compliant this really is.
Leave localhost on the first page of the dialog and click on next.
On the second page of the dialog you choose your OpenEdge Explorer connection, if you click on 'Configure...' next to that combo box you can add a config pointing to your remote OpenEdge Explorer.
Sending messages sounds like a recipe for failure since your existing prowin session is not multi-threaded.
I think at most you can let your application poll (using pstimer tick once a second or so) either:
a. the database
b. the file system
For simplicity I would go with b.
You are not showing any iterating block, here is a simple example to get you started:
define temp-table tt field ii as int.
create tt. tt.ii = 1.
create tt. tt.ii = 2.
create tt. tt.ii = 3.
ttblock:
for each tt:
if tt.ii modulo 2 = 0 then
next ttblock.
message tt.ii.
end...
Disclaimer: I've never done this myself.
You can register an application to a URI scheme:
https://stackoverflow.com/questions/32694642/registering-an-application-to-a-uri-scheme-in-windows-10
So you have no distinction between Abraham Abraham and Abraham? Or Dong Dong and Dong? Or closer to your neck of the woods, Grace Grace and Grace? See more examples on Wikipedia.
def var mp as memptr no-undo.
mp = chDocument:Range():EnhMetaFileBits.
copy-lob from mp to file 'c:\temp\preview.emf'.
Will create a file that can be opened by Windows, but it cannot be used on a Progress image widget since that does not support emf files and will throw error 2290.
You may...
Did you add a retry block too? Otherwise the AVM will not retry and just leave the block.
_main:
do on stop undo, retry:
if retry then do:
message 'retry?' view-as alert-box buttons yes-no update lretry as logical.
if not lretry then
leave _main.
end...
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.