shared temp-table

oags

New Member
I am working with temporary tables (work-table) shared, but it marks error to me 1429, if somebody can help me I thank for it.

Unable to locate shared temp-table or work-table definition for table <table-name> in procedure <procedure-name>. (1429)
 

oags

New Member
I source in the first program that is where the table is created is the following one.

DEFINE NEW SHARED WORK-TABLE temporal
FIELD campo1 AS CHAR
FIELD campo2 AS CHAR
FIELD campo3 AS CHAR.

Once information in this table is fed, a Link to a second is created programs, that this showed information of the table which I am created previously, the definition of the table in the second programs is the following one.

DEFINE SHARED WORK-TABLE temporal
FIELD campo1 AS CHAR
FIELD campo2 AS CHAR
FIELD campo3 AS CHAR.

Greetings and many thanks.
 
Hi,

Are you using SQL statements or pure Progress statements. Because with SQL you can have problems.

/* a1.p */
DEFINE NEW SHARED WORK-TABLE temporal
FIELD campo1 AS CHAR
FIELD campo2 AS CHAR
FIELD campo3 AS CHAR.

INSERT temporal WITH 1 COL TITLE "INSERT".

RUN a2.p.

/* a2.p */
DEFINE SHARED WORK-TABLE temporal
FIELD campo1 AS CHAR
FIELD campo2 AS CHAR
FIELD campo3 AS CHAR.

SELECT temporal WITH 1 COL 1 DOWN TITLE "SELECT".

-- The result is an error message.


But, If you use Progress Code for it is working:
/* a1.p */
DEFINE NEW SHARED WORK-TABLE temporal
FIELD campo1 AS CHAR
FIELD campo2 AS CHAR
FIELD campo3 AS CHAR.

CREATE temporal.
UPDATE temporal WITH 1 COL TITLE "INSERT".

RUN a2.p.

/* a2.p */
DEFINE SHARED WORK-TABLE temporal
FIELD campo1 AS CHAR
FIELD campo2 AS CHAR
FIELD campo3 AS CHAR.

FOR EACH temporal:
DISPLAY temporal WITH 1 COL 1 DOWN TITLE "SELECT".
END.

An advice,
For this situation we use ONE include where "NEW" is a parameter. With this solution you can ensure that everywhere the same structure will be used.

/* Def_TT.i */
DEFINE {&New} SHARED WORK-TABLE temporal
FIELD campo1 AS CHAR
FIELD campo2 AS CHAR
FIELD campo3 AS CHAR.

/* a1.p */
{Def_TT.i &New=NEW}

CREATE temporal.
UPDATE temporal WITH 1 COL TITLE "INSERT".

RUN a2.p.

/* a2.p */
{Def_TT.i}

FOR EACH temporal:
DISPLAY temporal WITH 1 COL 1 DOWN TITLE "SELECT".
END.


Regards,
Istvan
 

oags

New Member
Hello.
This problem I have it in webspeed, because the same one I code I have it run correctly from the client of Progress, but is in webspeed where it fails. The error is next.

WebSpeed Error Messages
Unable to locate shared temp-table or work-table definition for table temporal in procedure gastos/prg/parte2.w. (1429)

Application Error
Unable to run Web object 'gastos/prg/parte2.w'

greetings and again thank you very much
 
Top