Page 1 of 1

u_print_warning is not a member of APT_TOFunctions

Posted: Fri Apr 22, 2005 2:06 pm
by l_otoole
We receive a compiler error when compiling a job that includes transformer stage. The error message is as follows:

"TransformerTest_Transformer_2.C", line 404: Error: u_print_warning is not a member of APT_TOFunctions."

APT_TOFunctions is listed in the tfmop_functions.h file, but I do not see a method named u_print_warning. This leads me to suspect that we have outdated library files.

Also, this error message is kind of deceptive, as I infer from the generated code below that u_print_warning is really a "method" not a "member" of APT_TOFunctions.

Generated code is as follows:

void APT_TransformOperatorImplV0S16_lovTest1_Transformer_16::processRejectRecord(const APT_UString &errMsg,
const APT_UString &warningMsg,
APT_Int32 rejectDs)
{
// Output the log if we are not to the limit or if
// always log (any negative value) is set
if (rejectLogCount < maxRejectLogs ||
maxRejectLogs < 0)
{
APT_TOFunctions::get().u_print_warning(errMsg);
rejectLogCount++;
if (rejectLogCount == maxRejectLogs)
{
// output a log warning that this is the last reject log you will see
APT_TOFunctions::get().u_print_warning(warningMsg);
}
}

// Set the value of the reject column


if (rejectDs > 0)
transferAndPutRecord(rejectDs);
}

We are running EE 7.1r2 on SunOS 5.8.

Thank you for any assistance,

Larry

Posted: Mon Apr 25, 2005 3:12 am
by Amos.Rosmarin
Hi there,

It is hard to say without looking at the job but I'm quite sure it as nothing to do with the compiler settings.
Is this error specific to this job or to any PX job (that uses transformer)
It looks like you have a problem of using reject link option.
Check your constraints.



HTH

Posted: Mon Apr 25, 2005 10:38 am
by l_otoole
Amos.Rosmarin wrote:Hi there,

It is hard to say without looking at the job but I'm quite sure it as nothing to do with the compiler settings.
Is this error specific to this job or to any PX job (that uses transformer)
It looks like you have a problem of using reject link option.
Check your constraints.



HTH
See,

I am not so sure, because why would DataStage be generating C++ code that does not compile? The method name that it is complaining about seems like a logical method name - it seems reasonable that this method would exist in the class APT_TOFunctions.

What I was really hoping, was that someone with EE v 7.1 would check the contents of their tfmop_functions.h file; and that they would tell me whether or not u_print_warning() existed as a method of the class APT_TOFunctions in their version of the file. This would tell me whether I have the wrong version of that file or not.

The file is located under (install directory)/Ascential/DataStage/PXEngine/include/apt_framework/ on my solaris server.

Thank you for your feedback though, I really appreciate it.

Larry

Posted: Fri Apr 29, 2005 5:59 am
by ElBandido
Hi Larry,
mine is not an assistance... just a thought.
The tfmop_functions.h file on my system DOES contain the prototype of u_print_warning method of the class APT_TOFunctions.
I am working on version EE 7.5 for Windows, but the maintenance log of the header file does not show any change related to that method.
I only can figure out 2 possibilities:
1) The header file (if so, also the source one) are different between Unix and Windows version, just for that method;
2) There are unregistered changes between releases 7.1 and 7.5, just for that method.

Stefano

Posted: Fri Apr 29, 2005 8:37 am
by l_otoole
Stefano,

Thank you so much for your feedback. It will be very helpful as I suspected that tfmop_functions.h should have contained the prototype.
ElBandido wrote:Hi Larry,
mine is not an assistance... just a thought.
The tfmop_functions.h file on my system DOES contain the prototype of u_print_warning method of the class APT_TOFunctions.
I am working on version EE 7.5 for Windows, but the maintenance log of the header file does not show any change related to that method.
I only can figure out 2 possibilities:
1) The header file (if so, also the source one) are different between Unix and Windows version, just for that method;
2) There are unregistered changes between releases 7.1 and 7.5, just for that method.

Stefano