Hi Attached screenshot#1 has my job. There are 2 if conditions. Action on data is set to Insert only on final output (S_BU) object with If Condition 1. Action on data is set to Insert or Update on final output (S_BU) object with If Condition 2. If Condition 1 is true then date is getting stored correctly in GMT. But if 2nd condition is true then the 2 fields are getting stored in my local date time. Why is such an odd behavior? Thanks Kalyan
... View more

I tried the option of TalendDate.parseDate("dd MMM yyyy HH:mm:ss",TalendDate.getCurrentDate().toGMTString()) This works fine on output object if the action on data is set to Insert. But the same thing fails to load the date time in GMT if the action on data is set to Insert or update. Any ideas?
... View more

Hi I am trying to update a date field using TalendDate.getCurrentDate() function in tMap but this one updates the field with local time zone. Is there a way to update the field in GMT? Thanks Kalyan
... View more

Hi I am trying to compare Big Decimal value and print Y or N based on the below condition. But syntactically it seems to be wrong with TALEND. Can someone please help me with correct syntax for below expression. (row3.ATTRIB_03 == "100" && row3.ATTRIB_24 > BigDecimal.valueOf(0)) ? "Y" : "N" row3.ATTRIB_03 is a String and row3.ATTRIB_24 is a BigDecimal and the expected output of this expression is a String. Thanks Kalyan
... View more

Hi Mathur, I tried the following and i get the error as below: (row3.ATTRIB_24 -(row3.ATTRIB_24.multiply(row3.ATTRIB_14).divide(BigDecimal.valueOf(100.00)))) The operator - is undefined for the argument type(s) java.math.BigDecimal, java.math.BigDecimal
... View more

Hi All I am struggling with a Mathematical operation in tMap. I have a need to subtract 2 Big Decimal values and convert the output to string. Can someone please help me on how to achieve this? Thanks Kalyan
... View more

Hi I am reading the values from a csv file and loading the context variables. When i am trying to override the context variable values set by metadata, they are not reacting. Please see the attached screenshot. The password is set to TALEND_2 in Load_Context_Variables job and when it comes to tJavaRow - It is set back to TALEND_1 because of ds_last_load_id object. Any idea on how can i stop overriding the context variables and only let the values passed from csv? Thanks Kalyan
... View more

:( So, I have to keep only one column and load those values from a text file? But how will i load the password? It seems to be stored as an encrypted value. Should i store the encrypted value in my text file?
... View more

Thanks for your reply. Attached is the screenshot in which i have marked a black line for each context variable. Can someone please let me know how do i load values in to the context variables depending on the environment - Default, STG and PROD and from where should i load them? I am hardcoding the values for each of them but thought that might not be a good practice. Please let me know if there is any sample job which i can refer to. There are around 60+ jobs in my studio, so should i keep loading the context variables everytime when a job runs? Thanks Kalyan
... View more

Thank you that helps. Just wondering how do i store the password in context variable? Looks like it is encrypted by TALEND. Also please let me know if i should create metadata's for each environment or is it just sufficient if i create metadata for one environment and just change the context variables accordingly for each environment?
... View more

Hi I have developed around 60 jobs which are all pointing to my DEV environment. The Input and Output components are using Property Type as "Repository". Now, I would like to execute all these jobs in STAGING and PRODUCTION environments? Please help me to understand on how can i make the same job pointing to different environment database connections depending on situation. How to configure metadatas? Best regards, Kalyan
... View more

Thanks Vaibhav, I have started working with your suggestion. But i would need to surpass one last hurdle to complete this job. As you suggested, I have taken the approach of PreJob -> Which reads the datetime from a sql table and updates a context variable of Date type. Then, i am using the context variable value to use it in where clause of a oracle table. But i am getting some exceptions like below: Exception in component tMSSqlInput_1 java.sql.SQLException: Unable to convert between net.sourceforge.jtds.jdbc.DateTime and INTEGER.
... View more

Hi Here is what i am trying to do. Screenshot 1 has the input columns with their data type. 2nd and 3rd screenshots has the context variable settings and 4th screenshot shows how i am trying to use context variable in Query part. Please let me know how to access the date context variable in query part of input table to filter based on the value available in context date variable. Best Regards, Kalyan
... View more

I am trying to read a date field value and assign it in to where clause of query part of an input table component. I am getting an incorrect syntax error while doing this. My query part looks something like this: "select col1, col2, col3dtCol fom tbName where col3dtCol > " + valreadfromtxtfile
... View more

Hi Thanks for your response. I am trying to access a date stored in context variable in my oracle input query to apply a where clause on date field. I get the below error, while trying to access the date field and apply it in select query: I am trying to access the context variable in the following way: "select col1, col2, col3dtcol from tblName where col3dtcol > " + context.myconfigdate Exception in component tOracleInput_1 java.sql.SQLSyntaxErrorException: ORA-00933: SQL command not properly ended at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:440) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396) at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:837) at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:445) at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:191) at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:523) at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:193) at oracle.jdbc.driver.T4CStatement.executeForDescribe(T4CStatement.java:852) at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1153) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1275) at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:1477) at oracle.jdbc.driver.OracleStatementWrapper.executeQuery(OracleStatementWrapper.java:392) at sandbox_kalyan_project.cdc_s_evt_act_0_1.CDC_S_EVT_ACT.tOracleInput_1Process(CDC_S_EVT_ACT.java:8359) disconnected at sandbox_kalyan_project.cdc_s_evt_act_0_1.CDC_S_EVT_ACT.runJobInTOS(CDC_S_EVT_ACT.java:16931) at sandbox_kalyan_project.cdc_s_evt_act_0_1.CDC_S_EVT_ACT.main(CDC_S_EVT_ACT.java:16763) Best Regards, Kalyan
... View more

Hi Can some one please let me know if it is possible to update the context variables? If yes, how? and is it possible to use the context variables in Query area of a Input table object? (Not using tFilterRow) Best Regards, Kalyan
... View more

Hi I have a need to read the data from a text file in Query part of a table Input component in order to include the value from text file in Query. Can someone please help me on how to retreive the value from text file and use it in Where clause of Query part (Not tFilterRow) Best regards, Kalyan
... View more

I don't think its an issue with my job. If i keep on working continuously for more than half an hour on TALEND studio, it crashes. I use some basic operations on the jobs to save run build etc. Jobs are dealing with very small database tables (Less than 100 rows). My Jobs has 2 to 3 tMaps with a max of 2 joins.
... View more

Hi Yes I am using 5.4.2. I get heap space error as follows: !ENTRY org.talend.platform.logging 4 0 2014-10-22 16:11:07.835 !MESSAGE 2014-10-22 16:11:07,833 ERROR org.talend.commons.exception.CommonExceptionHandler - Java heap space !STACK 0 java.lang.OutOfMemoryError: Java heap space at org.eclipse.swt.graphics.Image.getImageData(Image.java:1451) at org.talend.commons.ui.runtime.image.ImageUtils.saveImageToData(ImageUtils.java:193) at org.talend.commons.ui.runtime.image.ImageUtils.saveImageToData(ImageUtils.java:179) at org.talend.designer.mapper.managers.UIManager.refreshVisualMapImage(UIManager.java:913) at org.talend.designer.mapper.managers.UIManager.prepareClosing(UIManager.java:817) at org.talend.designer.mapper.managers.UIManager.closeMapper(UIManager.java:767) at org.talend.designer.mapper.ui.footer.FooterComposite$1.widgetSelected(FooterComposite.java:90) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:234) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657) at org.talend.designer.mapper.MapperComponent.open(MapperComponent.java:167) at org.talend.designer.mapper.MapperComponent.open(MapperComponent.java:268) at org.talend.designer.core.ui.editor.nodes.NodePart.performRequest(NodePart.java:514) at org.eclipse.gef.tools.SelectEditPartTracker.performOpen(SelectEditPartTracker.java:194) at org.eclipse.gef.tools.SelectEditPartTracker.handleDoubleClick(SelectEditPartTracker.java:137) at org.eclipse.gef.tools.AbstractTool.mouseDoubleClick(AbstractTool.java:1069) at org.eclipse.gef.tools.SelectionTool.mouseDoubleClick(SelectionTool.java:525) at org.eclipse.gef.EditDomain.mouseDoubleClick(EditDomain.java:231) at org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouseDoubleClicked(DomainEventDispatcher.java:291) at org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDoubleClick(LightweightSystem.java:518) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:189) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438) at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) Best regards, Kalyan
... View more

I have gone through the CDC approach but since it creates triggers at source database, we are not in favor of taking that approach. So i understand that i should create n number of jobs to achieve CDC in my way for n source tables.
... View more

Hi The 2 topics are specifically talking with regards to one table loading. But in my case, i am talking about 50+ tables. so should i have one such job for each table? Best Regards, Kalyan
... View more

Hi All, I have around 50+ tables in the source Database for which i would like to identify the Insert, Delete and Updated records and load only those records in Destination database. I have taken the following approach to identify Insert/Update/Delete records on source and load the same to Destination table: Step 1: Identify Newly Inserted records: Source Database table is mapped as main row to tMap and Destination Database table is mapped as look up row to tMap. Both input tables are inner joined on Primary Key. Output table in tMap has Catch Lookup inner join reject property set to true and output of tMap is mapped to Destination database with action on data as Insert. Step 2: Identify Updated records: Source Database table is mapped as main row to tMap and a table which maintains the history of job runs is look up table to tMap. Output table of tMap is mapped to Destination database with action on data as update. Output of tMap has a condition - TalendDate.compareDate(row1.LAST_UPD,row4.LastModifiedDate,"yyyy-MM-dd") == 1 && row4.LastModifiedDate != null Step 3: Identify Deleted records on source: This is similar to Step 1, but Main row and look up row are exchanged and action on data on output of tMap is delete. Can some one please suggest if i Should create one job per source table with above 3 steps or is there a way to handle all 50+ jobs in a single job? Currently i am creating one job per one table which is taking lot of time in setting up the job. Best Regards, Kalyan
... View more

Hi I was wondering if we can compare a source table and destination table which are same in schema and delete those records which are not available in Source but are available in Destination. Is this possible using tMap? Best Regards, Kalyan
... View more

Hi I am receiving the following error while trying to run a job using TAC -> Job Conductor. The same job when i run using the local studio works fine. Some one please help me with the error. The job doesn't have any compilation errors if i run it in studio. java.lang.RuntimeException: org.talend.designer.runprocess.ProcessorException: Job compile errors At least job "ActiveCasesCount" has a compile errors, please fix and export again. Error Line: 6589 Detail Message: oracle cannot be resolved to a type There may be some other errors caused by JVM compatibility. Make sure your JVM setup is similar to the studio. at org.talend.commandline.command.ExtensionCommandSwitch.caseExtensionServerCommand(ExtensionCommandSwitch.java:148) at org.talend.commandline.client.command.extension.AbstractExtensionCommandSwitch.doSwitch(AbstractExtensionCommandSwitch.java:31) at org.talend.commandline.command.CommandProcessorSwitch.caseExtensionCommand(CommandProcessorSwitch.java:161) at org.talend.commandline.client.util.CommandAbstractSwitch.doSwitch(CommandAbstractSwitch.java:70) at org.talend.commandline.command.CommandConsumer.executeCommand(CommandConsumer.java:57) at org.talend.commandline.command.CommandConsumer.execute(CommandConsumer.java:35) at org.talend.commandline.mode.ServerCommandLine$CommmandConsumerRunnable.run(ServerCommandLine.java:139) at java.lang.Thread.run(Thread.java:761) Caused by: org.talend.designer.runprocess.ProcessorException: Job compile errors At least job "ActiveCasesCount" has a compile errors, please fix and export again. Error Line: 6589 Detail Message: oracle cannot be resolved to a type There may be some other errors caused by JVM compatibility. Make sure your JVM setup is similar to the studio. at org.talend.designer.runprocess.JobErrorsChecker.checkLastGenerationHasCompilationError(JobErrorsChecker.java:270) at org.talend.commandline.util.JobHandler.export(JobHandler.java:227) at org.talend.commandline.command.execute.BuildJobExecuteCommand.execute(BuildJobExecuteCommand.java:93) at org.talend.commandline.command.ExtensionCommandSwitch.caseExtensionServerCommand(ExtensionCommandSwitch.java:146) ... 7 more org.talend.gwtadministrator.client.module.dashboard.commandline.model.CommandLineBean.executeGroupCommand(CommandLineBean.java:250) org.talend.administrator.scheduler.business.job.generate.JobGenerator.executeGroupCommand(JobGenerator.java:308) org.talend.administrator.scheduler.business.job.generate.JobGenerator.generate(JobGenerator.java:148) org.talend.administrator.scheduler.business.ExecutionTaskHandler.generateJobScriptUnit(ExecutionTaskHandler.java:380) org.talend.administrator.scheduler.business.ExecutionTaskHandler.runTaskUnit(ExecutionTaskHandler.java:925) org.talend.administrator.scheduler.jobs.RemoteTaskExecution.executeRemoteJob(RemoteTaskExecution.java:351) org.talend.administrator.scheduler.jobs.RemoteTaskExecution.execute(RemoteTaskExecution.java:192) org.talend.administrator.scheduler.jobs.RemoteExecutionSwitcher.execute(RemoteExecutionSwitcher.java:50) org.quartz.core.JobRunShell.run(JobRunShell.java:199) org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:546) Caused by: java.lang.RuntimeException: org.talend.designer.runprocess.ProcessorException: Job compile errors At least job "ActiveCasesCount" has a compile errors, please fix and export again. Error Line: 6589 Detail Message: oracle cannot be resolved to a type There may be some other errors caused by JVM compatibility. Make sure your JVM setup is similar to the studio. at org.talend.commandline.command.ExtensionCommandSwitch.caseExtensionServerCommand(ExtensionCommandSwitch.java:148) at org.talend.commandline.client.command.extension.AbstractExtensionCommandSwitch.doSwitch(AbstractExtensionCommandSwitch.java:31) at org.talend.commandline.command.CommandProcessorSwitch.caseExtensionCommand(CommandProcessorSwitch.java:161) at org.talend.commandline.client.util.CommandAbstractSwitch.doSwitch(CommandAbstractSwitch.java:70) at org.talend.commandline.command.CommandConsumer.executeCommand(CommandConsumer.java:57) at org.talend.commandline.command.CommandConsumer.execute(CommandConsumer.java:35) at org.talend.commandline.mode.ServerCommandLine$CommmandConsumerRunnable.run(ServerCommandLine.java:139) at java.lang.Thread.run(Thread.java:761) Caused by: org.talend.designer.runprocess.ProcessorException: Job compile errors At least job "ActiveCasesCount" has a compile errors, please fix and export again. Error Line: 6589 Detail Message: oracle cannot be resolved to a type There may be some other errors caused by JVM compatibility. Make sure your JVM setup is similar to the studio. at org.talend.designer.runprocess.JobErrorsChecker.checkLastGenerationHasCompilationError(JobErrorsChecker.java:270) at org.talend.commandline.util.JobHandler.export(JobHandler.java:227) at org.talend.commandline.command.execute.BuildJobExecuteCommand.execute(BuildJobExecuteCommand.java:93) at org.talend.commandline.command.ExtensionCommandSwitch.caseExtensionServerCommand(ExtensionCommandSwitch.java:146) ... 7 more Best Regards, Kalyan
... View more

Hi I have a need to show CalendarYearweek and FiscalYearweek based on a configurable start date extending till 5000 days. Here Calendar Year means 1st Jan to 31st Dec and Fiscal Year means 1st July to 30th June. For CalendarYearweek: I did it this way: Integer.parseInt(TalendDate.formatDate("w", row1.date)) when i do this, i get all week numbers accurately except for the last week of 2011. My custom start date is from 01st July 2010, Last week of 2010 i.e., Dates in YYYYMMDD - (20101226 to 20101231) is showing as 1 instead of 53. For Fiscal Year: How do I calculate the Fiscal Year week assuming the financial year starts at July 1st of ever year? Best Regards, Kalyan
... View more

Hi I am trying to export a Oracle table to SQL Server table. While doing it, I am receiving following error: Please help me in understanding what needs to be done to fix this error. Exception in component tMSSqlOutput_16 java.sql.SQLException: Line 1: Length or precision specification 0 is invalid. at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:368) at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2820) at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2258) at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:632) at net.sourceforge.jtds.jdbc.JtdsStatement.processResults(JtdsStatement.java:584) at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL(JtdsStatement.java:546) at net.sourceforge.jtds.jdbc.JtdsStatement.executeImpl(JtdsStatement.java:723) at net.sourceforge.jtds.jdbc.JtdsStatement.execute(JtdsStatement.java:1160) at talend_demo_project.fulltransform_0_1.FullTransform.tOracleInput_136Process(FullTransform.java:2935) at talend_demo_project.fulltransform_0_1.FullTransform.runJobInTOS(FullTransform.java:7330) at talend_demo_project.fulltransform_0_1.FullTransform.main(FullTransform.java:7189)
... View more