25.09.2015 Views

Teradata Parallel Data Pump

Teradata Parallel Data Pump Reference - Teradata Developer ...

Teradata Parallel Data Pump Reference - Teradata Developer ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Appendix C: INMOD and Notify Exit Routine Examples<br />

Sample Notify Exit Routine<br />

UInt32 *feedback;<br />

} DMLError;<br />

} Vals;<br />

} TLNotifyExitParm;<br />

#ifdef I370<br />

#define TLNfyExit MLNfEx<br />

#endif<br />

extern Int32 TLNfyExit(<br />

#ifdef __STDC__<br />

TLNotifyExitParm *Parms<br />

#endif<br />

);<br />

#ifdef WIN32<br />

__declspec(dllexport) long _dynamn(TLNotifyExitParm *P)<br />

#else<br />

Int32 _dynamn(P)<br />

TLNotifyExitParm *P;<br />

#endif<br />

{<br />

FILE *fp;<br />

int i;<br />

if (!(fp = fopen("NFYEXIT.OUT", "a")))<br />

return(1);<br />

switch(P->Event) {<br />

case NMEventInitialize : /* Nothing */<br />

fprintf(fp, "exit called @ Tpump init.\n");<br />

fprintf(fp, "Version: %s\n", P->Vals.Initialize.VersionId);<br />

#ifdef __MVS__<br />

P->Vals.Initialize.UtilityName[MAXUTILITYNAMELEN-1] = '\0';<br />

#else<br />

P->Vals.Initialize.UtilityName[MAXUTILITYNAMELEN] = '\0';<br />

#endif<br />

fprintf(fp, "Utility: %s\n", P->Vals.Initialize.UtilityName);<br />

fprintf(fp, "User: %s\n", P->Vals.Initialize.UserName);<br />

if (P->Vals.Initialize.UserStringLen)<br />

fprintf(fp, "UserString: %s\n", P->Vals.Initialize.UserString);<br />

break;<br />

case NMEventFileInmodOpen :<br />

fprintf(fp, "Exit called @ File/Inmod Open\n\<br />

File/Inmod Name : %s Import : %d\n",<br />

P->Vals.FileOpen.FileOrInmodName,P->Vals.FileOpen.nImport);<br />

break;<br />

case NMEventCkptBeg :<br />

fprintf(fp,"exit called @ checkpoint begin : %u Records .\n",<br />

P->Vals.CheckPt.Records);<br />

break;<br />

case NMEventCkptEnd :<br />

fprintf(fp,"exit called @ checkpoint End : %u Records Sent.\n",<br />

P->Vals.CheckPt.Records);<br />

break;<br />

case NMEventCLIError :<br />

<strong>Teradata</strong> <strong>Parallel</strong> <strong>Data</strong> <strong>Pump</strong> Reference 253

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!