Search results

  1. G

    Question How To Disp Temp Table Rows In Html (front End)

    "Using AngularJS to display is easy as pie." Well, that is until you get into the 'link' function, the special meanings of ^, &, =, @, and the various other "let's take something easy and make it hard for fun!" aspects of Angular. Not to mention, doing it all over again (but way differently) in...
  2. G


    We use triggers for this sort of thing. The problem you typically run into is, sooner or later, somebody will perform a mass update and create a 6" thick report full of data that nobody cares about. At this point, you will either (a) if it's a one-off thing, remember to 'disable triggers' next...
  3. G

    Dynamic Temp-table To Static With Varying Fields Count

    AFAIK, you don't 'create' static temp-tables, you 'define' them, at compile-time. So if you really need a static temp-table in this case, you'd need to do something kinda horrible; such as define it with an array of 2000 character fields, where 2000 is > the maximum number of columns that you...
  4. G

    Write-xml: Exporting A Single Dataset Record

    You could WRITE-XML on the individual buffer handles buried inside tt1 and tt2 (via their table handles). But there is probably a more elegant way to do it by querying within the PDS.
  5. G

    Question Replace Exact Words

    Progress' lack of RE support is one of the more difficult things to defend, IMO, though maybe it's finally there in more recent versions? I'd shell out to Perl, or similar, for something like this. Absent that, you're going to have to write some hacky special-case-ridden hope-you-get-them-all code.
  6. G

    Question If We Were Increase A Field In Temp-table Index Either Primary Or Not .do We Get Performance Improve

    I think he was asking about whether PRIMARY made a difference, not whether indices per se made a difference? Anyway, the ratio of writes to reads is probably pretty important too.
  7. G

    Question If We Were Increase A Field In Temp-table Index Either Primary Or Not .do We Get Performance Improve

    I did a quick benchmark of this to prove that PRIMARY makes no difference to speed. This is mostly just because I had nothing better to do. FYI, from your examples, you can't define a temp-table NO-LOCK. You can do a NO-LOCK *FIND* on a temp-table, but if you do, you are probably confused about...
  8. G

    Answered Lock Table Overflow, Increase -l On Server (915)

    All that matters is that there is an EXCLUSIVE-LOCK (on a real DB table, not a temp-table). The fact that you later NO-LOCK it, or whatever, doesn't prevent it's transaction-starting effect. The downside to slapping DO TRANSACTION around it is that now it will be possible for the code inside /*...
  9. G

    Answered Lock Table Overflow, Increase -l On Server (915)

    Most likely in "/* RUN CODE TO READ JSON DATA TO TEMP-TABLE */" you have some code that triggers a transaction to start, which would wrap the whole thing in one big update. The most likely cause of this is an EXCLUSIVE-LOCK (on a real DB table, not a temp-table) or an assignment to a database...
  10. G

    Resolved Using Break By - Error "missing For, Find Or Create"

    I am guessing you also have a table named 'state' in your database, and that if you qualify the reference to the field, it will work. eg: 'if first-of(custs.state) ...'. Progress does some funny things with making assumptions/guesses for you, and applying defaults, but, so does every language.
  11. G

    Socket Negativity

    Thank you for your comments. We use Unix exclusively and have used the '~n' in production since forever, so I assume it works and in any case that should cause a HTTP problem, not a socket problem. Also, since this works on one server and not the other, despite their having identical ABL code...
  12. G

    Question First Transaction Slow

    To me, it would be normal for the first few things a Progress Win32 or HTTP client does to be slow while all the stuff that has to be initialized on the client happens. By "slow" I would think like maybe a couple of seconds where it normally takes a fraction of a second. It would not be normal...
  13. G

    Calling A Webspeed-based Super Procedure From External Program

    I don't really understand your question, but maybe this will help: 1. Rightly or wrongly, I look at WebSpeed as 'just another Progress AppServer' with a little bit of HTTP stuff in its PROPATH so we can do things like get-value. 2. We have a small WebSpeed product and a gigantic...
  14. G

    Socket Negativity

    Thanks a lot for your suggestions. Still the same problem though. Here's the most recent code, stripped down to its essentials. Our networking guys claim everything is OK because one can Telnet into port 443 on xxx without a problem. The only difference I can see is that the servers are...
  15. G

    Socket Negativity

    10.2B05, HP-UX I have code that uses ABL sockets to communicate with a web server. It's been running for weeks without incident. Today, we installed it on a different server. Suddenly, it fails 100% of the time (on that server only). The symptom is that following a seemingly normal connection...
  16. G

    Resolved Using Scope Defined With Condition

    That looks bizarre to me. I think what will happen is, when you compile, the value of STRM will be set to the final assignment of s-3, and that's the only thing that will make it to the compiler on lines 9 and 11. I didn't actually know you can specify multiple values for the same preprocessor...
  17. G

    Abl - Persistent Procedure

    Sure, but if you run it once a day for 20 seconds, who cares if you can get it down to 18 seconds. External procedures also encapsulate reusable code. I would argue at least as effectively, although, I don't think it really makes much difference unless you care about caching...
  18. G

    Abl - Persistent Procedure

    Oops, TamHas and I were typing at the same time. What he said, also.
  19. G

    Abl - Persistent Procedure

    I think your syntax is wrong. It should be something like: RUN CalcPrice.p PERSISTENT SET Hproc. /* This is like 'CalcPrice calcprice = new CalcPrice();' in Java or C# */ FOR EACH Thing: RUN someProcedure IN Hproc. /* This is like 'calcprice.someProcedure()' in Java or C# */ END. If for...
  20. G

    Question Dde(dynamic Data Exhange)

    We probably haven't written any DDE-related code in 10 years, and we only ever really wrote one program using DDE. BUT, it's one of our most popular and enduring features ever, and even today it probably runs thousands of times every day. Its more modern replacements aren't nearly as slick...