Import org. pentaho. di. core. KettleEnvironment;
Import org. pentaho. di. core. database. DatabaseMeta;
Import org. pentaho. di. job. JobMeta;
Import org. pentaho. di. job. Job;
Import org. pentaho. di. repository. Repository;
Import org. pentaho. di. repository. RepositoryDirectoryInterface;
Import org. pentaho. di. repository. kdr. KettleDatabaseRepository;
Import org. pentaho. di. repository. kdr. KettleDatabaseRepositoryMeta;
Public class execRepositoryJobs {
Private static String jobName = "Job ";
Public static void main (String [] args ){
Try {
KettleEnvironment. init ();
KettleDatabaseRepository repository = new KettleDatabaseRepository ();
DatabaseMeta databaseMeta = new DatabaseMeta ("repository", "MSSQL", "Native", "192.169.0.146", "repository", "1433", "sa", "sa ");
KettleDatabaseRepositoryMeta kettleDatabaseMeta = new KettleDatabaseRepositoryMeta ("repository", "ERP", "Transformation description", databaseMeta );
Repository. init (kettleDatabaseMeta );
Repository. connect ("admin", "admin ");
RepositoryDirectoryInterface directory = repository. loadRepositoryDirectoryTree ();
JobMeta jobMeta = (Repository) repository). loadJob (jobName, directory, null, null );
// RepositoryDirectoryInterface fooBar = directory. findDirectory ("/");
//
// JobMeta jobMeta = repository. loadJob (repository. getJobId (jobName, fooBar), null );
Job job = new Job (repository, jobMeta );
Www.2cto.com
Job. start ();
Job. waitUntilFinished ();
If (job. getErrors ()> 0 ){
Throw new RuntimeException (
"There were errors during transformation execution .");
}
} Catch (Exception e ){
E. printStackTrace ();
}
}
}