Quantcast
Channel: Teradata Forums - Tools
Viewing all articles
Browse latest Browse all 4252

Fileds shifted in the database using TPT - response (4) by Anonyme

$
0
0

Hello below is my TPT script:
/*USING CHAR SET UTF8*/
DEFINE JOB MyJob_jb
  DESCRIPTION 'Loading'
  (
        DEFINE OPERATOR LOAD_ALL
        TYPE {OPERATEUR}
        SCHEMA *
        ATTRIBUTES (
                TdpId             = @TDPID,
                UserName          = @UserName,
                UserPassword      = @Password,
                VARCHAR  LogTable = 'MyJob_jb_LOG',
                VARCHAR  ErrorTable1 = 'MyJob_ERR1',
                VARCHAR  ErrorTable2 = 'MyJob_ERR2',
                VARCHAR  TargetTable = 'MyJob_TMPTD',
                VARCHAR  WorkTable = 'MyJob_TMPTD_WK',
                DropErrorTable    = 'Yes',
                QueryBandSessInfo = 'UtilityDataSize={QBSI};'
        );

DEFINE SCHEMA DATA_SCHM_LMXXXX_MSG
(
 "ERRCODE" VARCHAR(20),
 "MESSAGE" VARCHAR(255),
 "MyTable" VARCHAR(100)
);
DEFINE OPERATOR FILE_WRTR_LMXXXX_MSG
TYPE DATACONNECTOR CONSUMER
SCHEMA *
ATTRIBUTES
(
 VARCHAR FileName = 'LMXXXX.msg',
 VARCHAR Indicator ='N',
 VARCHAR OpenMode = 'Write',
 VARCHAR TextDelimiter = '|',
 VARCHAR Format = 'Delimited'
);
DEFINE OPERATOR SQL_SEL_LMXXXX_MSG
TYPE SELECTOR
SCHEMA DATA_SCHM_LMXXXX_MSG
ATTRIBUTES
(
 tdpiD = @TDPID,
 UserName = @UserName,
 UserPassword = @Password,
 SelectStmt=' SELECT DISTINCT CAST(A.ETC_ErrorCode AS VARCHAR(20)),
  B.Errortext, ''L_M'' AS MyTable
  FROM L_M_ERR_IS
  A INNER JOIN DBC.ERRORMSGS B
 ON B.ERRORCODE=A.ETC_ErrorCode;'
);
DEFINE SCHEMA DATA_SCHM1_L_M
(
   
 "ID" VARCHAR(350), 
 "NAME" VARCHAR(350),
 "CD" VARCHAR(350)
);
DEFINE OPERATOR FILE_WRTR1_L_M
TYPE DATACONNECTOR CONSUMER
SCHEMA *
ATTRIBUTES
(
 VARCHAR FileName = @BadFile,
 VARCHAR Indicator = 'N',
 VARCHAR OpenMode = 'WriteAppend',
 VARCHAR TextDelimiter = '|',
 VARCHAR Format = 'Delimited'
);
DEFINE OPERATOR SQL_SEL1_L_M
TYPE SELECTOR
SCHEMA DATA_SCHM1_L_M
ATTRIBUTES
(
 tdpId = @TDPID,
 UserName = @UserName,
 UserPassword = @Password,
 SelectStmt = 'SELECT
  A."ID",
  A."NAME",
  A."CD"
 FROM L_M_TMPTD A
 INNER JOIN L_M_ERR_IS B
 ON A.ROWID=B.ETC_ROWID;'
);
DEFINE SCHEMA DATA_SCHM1_L_M_PI

 "ID" VARCHAR(350), 
 "NAME" VARCHAR(350),
 "CD" VARCHAR(350)
 
);

DEFINE OPERATOR SQL_SEL1_L_M_PI
TYPE SELECTOR
SCHEMA DATA_SCHM1_L_M_PI
ATTRIBUTES
(
 tdpId = @TDPID,
 UserName = @UserName,
 UserPassword = @Password,
 SelectStmt = 'SELECT  
 "ID", 
 "NAME",
 "CD"
 FROM L_M_TMPTD
 WHERE FLAG=''1'';'
);
        DEFINE SCHEMA SCHEMA_GENERIC
        (
 COL0 VARCHAR(350),
 COL1 VARCHAR(350),
 COL2 VARCHAR(350),
 COL3 VARCHAR(350)
 
 
 
        );
        DEFINE OPERATOR DDL_OPERATOR
        TYPE DDL
        ATTRIBUTES (
                TdpId = @TDPID,
                UserName = @UserName,
                UserPassword = @Password,
                DateForm = 'ansiDate',
                DropErrorTable    = 'Yes',
                ARRAY ErrorList = ['3807']
         );
        DEFINE OPERATOR READER_G
        TYPE DATACONNECTOR PRODUCER
        SCHEMA SCHEMA_GENERIC
        ATTRIBUTES (
                AcceptMissingColumns = 'Y',
                AcceptExcessColumns = 'Y',
                FileName        = @FileName,
                Format          = 'Delimited',
                TextDelimiter   = ';',
                OpenMode        = 'Read'
        );
        STEP DROPG_STG(
                APPLY
                    ('DROP TABLE MyJob_jb_LOG;'),
                    ('DROP TABLE MyJob_ERR1;'),
                    ('DROP TABLE MyJob_ERR2;'),
                    ('DROP TABLE MyJob_TMPTD_WK;'),
                    ('DROP TABLE MyJob_TMPTD;')
                TO OPERATOR (
                        DDL_OPERATOR
                );
        );
        STEP CREATE_ERROR_TABLE(
                APPLY
 ('DROP TABLE L_M_ERR_IS;'),
 ('CREATE ERROR TABLE L_M_ERR_IS FOR L_M;')

            TO OPERATOR (
                DDL_OPERATOR
        );
);
        STEP CREATE_STG(
                APPLY
 'CREATE MULTISET TABLE MyJob_tmptd
( COL0 VARCHAR(350),
 COL1 VARCHAR(350),
 COL2 VARCHAR(350),
 COL3 VARCHAR(350)
 

 NO PRIMARY INDEX;'
                TO OPERATOR (
                        DDL_OPERATOR
          );
);
        STEP CREATE_INTER(
                APPLY
 ('DROP TABLE L_M_TMPTD;'),
 ('CREATE MULTISET TABLE L_M_TMPTD
 ( 
 "ID" VARCHAR(350), 
 "NAME" VARCHAR(350),
 "CD" VARCHAR(350), 
 FLAG BYTEINT)
 ;')
 
                TO OPERATOR (
                        DDL_OPERATOR
          );
);
        STEP LOAD_TABLE_STG
        (
             APPLY
            (
                'INSERT INTO MyJob_TMPTD
                (
   "COL0",
   "COL1",
   "COL2",
   "COL3"
   

                )
                VALUES
               (
   :COL0,
   :COL1,
   :COL2,
   :COL3
   
   
               );'
             )
               TO OPERATOR (
                    LOAD_ALL[1]
             )
                  SELECT
   "COL0",
   "COL1",
   "COL2",
   "COL3"
   
   
                 FROM OPERATOR (
                      READER_G[1]
               );
         );
 STEP LOAD_DWH1(
 APPLY(
 'INSERT INTO L_M_TMPTD
 (  
 "ID", 
 "NAME",
 "CD", 
 "FLAG"
  )
 SELECT
  COL1,
  COL2,
  COL3,
  CASE WHEN (G_COL1 ='''') THEN 1 ELSE 0 END
 FROM MyJob_TMPTD
  ;'
 )
 TO OPERATOR(
  DDL_OPERATOR
  );
 );
 
 STEP ERROR_EXP_L_M_PI(
 APPLY
 TO OPERATOR (FILE_WRTR1_L_M())
 SELECT * FROM OPERATOR (SQL_SEL1_L_M_PI());
 );
 STEP DEL_EXP_L_M_TMPTD(
 APPLY
  ('DELETE FROM L_M_TMPTD WHERE FLAG = ''1'';')

 TO OPERATOR(DDL_OPERATOR);
 );
 
 STEP LOAD_DWH101(
 APPLY(
 'INSERT INTO L_M
 (
 "ID", 
 "NAME",
 "CD"
  )
 SELECT
 "ID", 
 "NAME",
 "CD" 
 FROM L_M_TMPTD
 LOGGING ALL ERRORS WITH NO LIMIT ;'
 )
 TO OPERATOR(
  DDL_OPERATOR
  );
 );
 
 STEP ERROR_EXP_JJ(
 APPLY
 TO OPERATOR (FILE_WRTR1_L_M())
 SELECT * FROM OPERATOR (SQL_SEL1_L_M());
);

 STEP ERROR_MSG_LMXXXX(
 APPLY
  TO OPERATOR (FILE_WRTR_LMXXXX_MSG())
 SELECT * FROM OPERATOR(SQL_SEL_LMXXXX_MSG());
 );
        STEP DROP_ERROR_TABLE(
                APPLY
 ('DROP TABLE L_M_ERR_IS;')
                TO OPERATOR (
                        DDL_OPERATOR
                );
        );
        STEP DROP_INTER_TABLE(
                APPLY
 ('DROP TABLE L_M_TMPTD;')
                TO OPERATOR (
                        DDL_OPERATOR
                );
        );
        STEP DROPG_STG_END(
                APPLY
                    ('DROP TABLE MyJob_TMPTD;')
                TO OPERATOR (
                        DDL_OPERATOR
                );
        );
 );
 
 
 

Teradata Parallel Transporter Version 14.10.00.08


Viewing all articles
Browse latest Browse all 4252

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>