Method level

Methods that run successfully on one platform can cause a problem on another platform.

Consider, for example method programId in the IccControl class:
void IccUserControl::run()
{
if (strcmp(programId.name(), "PROG1234") == 0)
//do something
}

Here method programId executes correctly on CICS® TS for z/OS® but throws an IccException object of type 'platformError' on CICS(r) for AIX®.

Alternatively, if you initialize your application with family subset enforcement on (see initializeEnvironment function of Icc structure), method programId throws an IccException object of type 'familyConformanceError' on any CICS server platform.