We use include files solely for tt definitions that need to be tossed around and we only define one temp-table per include. Exception is a dataset where the complete definition is in one include. The name of the include is always the same as the name of the include file, so we have calls like...
In that case you might benefit from using the library I mentioned. My suggestion:
Download the file "resizable.p" from Github (or used attached file)
Place it in your codebase.
Remove the code you currently have in the ON WINDOW-RESIZED event
Run resizable.p in the init section of your...
Progress is nasty when you are resizing. Your logic for resizing a window should take into account whether the user is enlarging or shrinking the window. I have done a lot on resizing for the application I work on, so I do have some experience here.
I worked on a library that could be used for...
Ok, try this. If you right-click outside the browse, but on the frame itself (not on buttons or anything else on the frame) then the popup for the browse will appear
And to add to the documentation part @Stefan posted: it suggests to use shared variables instead for more efficient code.
For this the same advice applies, namely: DON'T!
Shared variables are evil, just as includes with code and the release statement.
They all might have their place, but as...
I was puzzledly looking at your code, wondering how it could possibly run and - if it would run - what it should do.
Still not convinced that I know what you are trying to achieve here.
The example does not compile in 11.7, let alone run. I think you are trying to use run-time parameters.
If...
Not quite sure what you want to achieve, but I use below code to enforce right click when the user presses the left button.
Maybe this can get you on track:
PROCEDURE SendMessageA EXTERNAL "user32.dll":
DEFINE INPUT PARAMETER hwnd AS long NO-UNDO.
DEFINE INPUT PARAMETER wmsg AS long...
I dusted off an old version of DataDigger and got it running in v9. Don't ask why I keep a copy of v9 :)
Check the repo at GitHub - patrickTingen/DataDiggerV9: DataDigger for Progress v9 or simply download it here
It contains both source files and .r files for v9.1D
Extract the zip in...
Alternative approach:
#Tray:
FOR EACH tray NO-LOCK
WHERE tray.tf-own = l-cus
AND tray.tf-type >= l-type1
AND tray.tf-type <= l-type2
AND tray.tf-delete-date = ?:
FOR EACH item NO-LOCK
WHERE item.if-tray = tray.tf-tray
AND...
Try this
FOR EACH tray NO-LOCK
WHERE tray.tf-own = l-cus
AND tray.tf-type >= l-type1
AND tray.tf-type <= l-type2
AND tray.tf-delete-date = ?
,
EACH item NO-LOCK
WHERE item.if-tray = tray.tf-tray
AND item.if-delete-date = ?
BREAK BY...
For the past few days, I have been receiving blank emails from our ERP system. We have several places where the system mails strange things so sending mail is not uncommon. Blank emails are, though. I managed to trace the mails back to the specific server and checked the logfiles of smtpmail...
Not sure, based on your example, but my experience is that if you encounter strange problems with locking, you can do yourself an enourmous favour by using explicit buffers for each table you reference. No exceptions; always use a buffer. I've seen multiple times strange and seemingly unsolvable...
With the DataDigger, you can use the built-in query analyzer. It will report both the nr of reads and the time it takes for a query to run. You can get it here if you don't already have it
This might be a language issue (English is not my native tongue) but I think I don't understand what it is that you want to achieve. Your query looks good; you build a truly dynamic query and then attach it to the browse. So your user selects a couple of filters, you build the query, attach it...
I am not fully sure what you are trying to do but it looks as if you are making your life extremely complicated by mixing UI and logic. You use the screen-value of your filters in the query, if I am correct. By building a dynamic query, using the actual value from the filters (not a reference to...
If I read your response, I think you may have a partially dynamic query, one that uses or does not use fields from the frame. A fully dynamic query would look something along the example attached. Look in the choose event of the button
In this demo I just copied the records from the customer...
Indeed, that was what I meant, but I can see your case for usage of frames (scrolling) so I think it is wise to stick with that. However, what might be possible is to delete the widget when you move it from one frame to another and then re-create it in the new frame, like @Cringer mentioned.
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.