Forums for Groups

IMPORTANT! You can read every forum, but you can only post in a forum if you are member of the 'Organic Group' that owns the forum. See groups for a complete list of Organic Groups on the Hive. Content (forums, pages, blogs, etc) on OE Hive is all organized using a module called 'Organic Groups'. Every Group has its own forum.


Adverts and Commercial Forum

This Forum is for the posting of adverts and commercial materials. This is the only Forum on the Hive where this is allowed. Posting commercial material here is currently free, as long as it is obvious to the Hive editors exactly why the commercial material is of concern to Progress users.


Book Corner discussion

Forum for the Book Corner Group. Review and recommend software industry books.


CIM Load QAD EE

Good Afternoon,

I've being using cimloads in QAD all the way from 74i to SE2013. We are now using EE2014 and I'm having an issue with the messages that come out from the screen.

So a simple sample of how I'm doing the cimload would be:

input from value(cim_file).
output to value(log_file).
batchrun = true.
execname = "pitcmt1.p".
{gprun.i execname}
input close.
output close.


Program_root block

Given the code:

mobBlockNode = cast( ipobNode, BlockNode ).
mobBlock = mobBlockNode:getBlock().
mlgIsMethod = mobBlock:isMethodBlock().
mlgIsProgram = mobBlock:isProgramBlock().

for a node which is a block node, I would expect the Program_root node to give IsProgramBlock, but instead it gives IsMethodBlock. Why?

Curious too why the CLASS node is not considered a BLOCK.


Remote method calls

Given a call to a remote method call:

obNominal = new Nominal().
chTest = obNominal:SayHi( chTest ).

which tokenizes as:

ASSIGN        0:0    
    EQUAL    =    66:66    
        Field_ref        0:0    
            ID    chTest    66:66    
        Widget_ref        0:0    
            Field_ref        0:0    
                ID    obNominal    66:66    
            OBJCOLON    :    66:66    
            ID    SayHi    66:66    
            Method_param_list        0:0    
                LEFTPAREN    (    66:66    
                INPUT        0:0

JPNode:getBlockBuffers

OK, trying another path, if I do, on nodes of type BlockNode:

define variable mobBlock as class Block no-undo.
define variable mobBlockNode as class BlockNode no-undo.
define variable mobTableBuffer as class TableBuffer extent 20 no-undo.

mobBlockNode = cast( ipobNode, BlockNode ).
mobBlock = mobBlockNode:getBlock().
mobTableBuffer = mobBlock:getBlockBuffers().

It compiles, but I get a run time error
Error: Uninitialized array used as source of assignment. (14906)
on the last line, whether I provide an number for extent or not.


Includes

PareseUnit:getMarcroGraph returns an object of type IncludeRef which seems like it would be a link to an Include file ... but shouldn't it them be an array?


JPNode:getLink()

I am trying to use this to get from a statement to the block for the statement. The doc says:

java.lang.Object getLink(java.lang.Integer key)

in the code I see things like

public Call getCall() { return (Call) getLink(CALL); }

but, if I try in ABL to say

mobBlockNode = cast(ipobNode:getLink(JPNode:BLOCK), BlockNode).

it tells me

Parameter 1 for METHOD getLink is not type compatible with its definition. (12905)

I have tried a bunch of things for JPNode:BLOCK including -214

So, what does it want?


Proparse and Organize Using

If one attempts to use Organize Using in PDSOE 11.5, all of the existing Proparse using statements simply disappear from the top of the file. This is now recognized by PSC as bug PSC00335347.

I wonder if this has to do with some known issue with IKVM and reflection since the Proparse DLL shows no internals in the PDSOE Class Browser.


Protected

It appears to me that the AST of a subclass does not contain any definitions for protected data members in the superclass.

I am also guessing that there is no Symbol for it either since my version of TokenLister is getting the Symbol for any node of type ID and optionally showing the number of reads and writes and I don't get this with a reference to such a variable or property.

Is there an indication of where it is defined and its properties?


Utilities

BTW, I have documented some of the Proparse utilities which I have been developing as a part of ABL2DB here http://www.oehive.org/node/2294

At present, these are included in the ABL2DB distribution, but they could be packaged separately if there was demand.


Rest of statement

I was thinking that TreeUtils:fullPreproText( mobToken ) might get me the rest of the statement from the specified node forward to the end of the statement, but it seems to only provide the text of the specified token.

Is there some other function that does this or am I going to have to code my own?


Syndicate content